public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
@ 2024-01-02  4:10 Eli Schwartz
  2024-01-02  8:22 ` Ulrich Mueller
  2024-01-02  9:15 ` karl
  0 siblings, 2 replies; 10+ messages in thread
From: Eli Schwartz @ 2024-01-02  4:10 UTC (permalink / raw)
  To: gentoo-dev, pr; +Cc: sam

Revival of commit a79dd69b0cca439bc0c483c9193c79e0554819d0.

Bug: https://bugs.gentoo.org/868306#c10
Bug: https://bugs.gentoo.org/902829
Bug: https://bugs.gentoo.org/915379
Bug: https://bugs.gentoo.org/825078
Signed-off-by: Eli Schwartz <eschwartz93@gmail.com>
---
 ...separate-usr-now-requires-an-initramfs.txt | 47 +++++++++++++++++++
 1 file changed, 47 insertions(+)
 create mode 100644 2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt

diff --git a/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt
new file mode 100644
index 0000000..bfcbd87
--- /dev/null
+++ b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt
@@ -0,0 +1,47 @@
+Title: Separate /usr now requires an initramfs
+Author: Eli Schwartz <eschwartz93@gmail.com>
+Content-Type: text/plain
+Posted: 2024-01-02
+Revision: 1
+News-Item-Format: 2.0
+Display-If-Installed: sys-apps/baselayout[split-usr]
+
+Systems which have /usr and / on separate filesystems have always required a
+dedicated initramfs to bring up both partitions. Systems where both /usr and /
+are on the same filesystem may use an initramfs if they wish, or choose not
+to.
+
+Historically, Gentoo has tried to make the separate filesystems use case work
+anyway. Despite all our efforts, it is broken and continues to get more broken
+under various configurations. The only workable solution is to support
+separate /usr but only when an initramfs is present. For more details on why
+this is broken, see:
+
+- https://bugs.gentoo.org/868306#c10
+- https://bugs.gentoo.org/902829
+- http://freedesktop.org/wiki/Software/systemd/separate-usr-is-broken
+- https://bugs.gentoo.org/915379
+- https://github.com/trofi/nix-guix-gentoo/commit/43d84cc00af530ef912d9c98448b64d6b5282907
+- https://github.com/trofi/nix-guix-gentoo/commit/8f194519982fbfabb6b3ca84c0806b1a379b5d06
+- https://bugs.gentoo.org/825078
+
+In 2013, Gentoo policy determined that separate /usr without an initramfs was
+officially no longer supported:
+
+- https://projects.gentoo.org/qa/policy-guide/filesystem.html#pg0202
+- https://gitweb.gentoo.org/data/gentoo-news.git/tree/2013/2013-09-27-initramfs-required/2013-09-27-initramfs-required.en.txt?id=a79dd69b0cca439bc0c483c9193c79e0554819d0
+
+11 years later, the support is being withdrawn. On 2024-02-01, we plan to
+begin work on decommissioning existing workarounds and will not accept any
+more.
+
+User Action Required
+====================
+
+If you have separate /usr and are not currently using an initramfs, you have
+until 2024-02-01 to set up an initramfs. If you do not, then at some point on
+or after this date, routine system upgrades will leave your system unbootable.
+
+For details on setting up an initramfs, see:
+
+https://wiki.gentoo.org/wiki/Initramfs/Guide
-- 
2.41.0



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  4:10 [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item Eli Schwartz
@ 2024-01-02  8:22 ` Ulrich Mueller
  2024-01-02  8:30   ` Ulrich Mueller
                     ` (2 more replies)
  2024-01-02  9:15 ` karl
  1 sibling, 3 replies; 10+ messages in thread
From: Ulrich Mueller @ 2024-01-02  8:22 UTC (permalink / raw)
  To: Eli Schwartz; +Cc: gentoo-dev, pr, sam

[-- Attachment #1: Type: text/plain, Size: 1636 bytes --]

>>>>> On Tue, 02 Jan 2024, Eli Schwartz wrote:

> +++ b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt

The short-name is rather long. GLEP 42 strongly recommends to stay below
20 characters:
https://www.gentoo.org/glep/glep-0042.html#news-item-identities

> +Title: Separate /usr now requires an initramfs
> +Author: Eli Schwartz <eschwartz93@gmail.com>
> +Content-Type: text/plain
> +Posted: 2024-01-02
> +Revision: 1
> +News-Item-Format: 2.0
> +Display-If-Installed: sys-apps/baselayout[split-usr]

This is not a valid header. (Format 2.0 doesn't have Content-Type.)

> +In 2013, Gentoo policy determined that separate /usr without an initramfs was
> +officially no longer supported:
> +
> +- https://projects.gentoo.org/qa/policy-guide/filesystem.html#pg0202
> +- https://gitweb.gentoo.org/data/gentoo-news.git/tree/2013/2013-09-27-initramfs-required/2013-09-27-initramfs-required.en.txt?id=a79dd69b0cca439bc0c483c9193c79e0554819d0

The 2013-09-27-initramfs-required news item already said:

| Linux systems which have / and /usr on separate file systems but do not
| use an initramfs will not be supported starting on 01-Nov-2013.
|
| If you have / and /usr on separate file systems and you are not
| currently using an initramfs, you must set one up before this date.
| Otherwise, at some point on or after this date, upgrading packages
| will make your system unbootable.

It is also in the Handbook since 2014:
https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel#Optional:_Building_an_initramfs

What has changed that we would need another news item?

Ulrich

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 507 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  8:22 ` Ulrich Mueller
@ 2024-01-02  8:30   ` Ulrich Mueller
  2024-01-02  8:32   ` Sam James
  2024-01-02 12:47   ` Eli Schwartz
  2 siblings, 0 replies; 10+ messages in thread
From: Ulrich Mueller @ 2024-01-02  8:30 UTC (permalink / raw)
  To: Eli Schwartz; +Cc: gentoo-dev, pr, sam

[-- Attachment #1: Type: text/plain, Size: 244 bytes --]

>> +++ b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt

> The short-name is rather long. [...]

In fact, the filename is also invalid by GLEP 42.

Sorry for missing this the first time.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 507 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  8:22 ` Ulrich Mueller
  2024-01-02  8:30   ` Ulrich Mueller
@ 2024-01-02  8:32   ` Sam James
  2024-01-02 12:47   ` Eli Schwartz
  2 siblings, 0 replies; 10+ messages in thread
From: Sam James @ 2024-01-02  8:32 UTC (permalink / raw)
  To: Ulrich Mueller; +Cc: Eli Schwartz, gentoo-dev, pr, sam


Ulrich Mueller <ulm@gentoo.org> writes:

> [[PGP Signed Part:Undecided]]
>>>>>> On Tue, 02 Jan 2024, Eli Schwartz wrote:
>
>> +++ b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt
>
> The short-name is rather long. GLEP 42 strongly recommends to stay below
> 20 characters:
> https://www.gentoo.org/glep/glep-0042.html#news-item-identities
>
>> +Title: Separate /usr now requires an initramfs
>> +Author: Eli Schwartz <eschwartz93@gmail.com>
>> +Content-Type: text/plain
>> +Posted: 2024-01-02
>> +Revision: 1
>> +News-Item-Format: 2.0
>> +Display-If-Installed: sys-apps/baselayout[split-usr]
>
> This is not a valid header. (Format 2.0 doesn't have Content-Type.)
>
>> +In 2013, Gentoo policy determined that separate /usr without an initramfs was
>> +officially no longer supported:
>> +
>> +- https://projects.gentoo.org/qa/policy-guide/filesystem.html#pg0202
>> +- https://gitweb.gentoo.org/data/gentoo-news.git/tree/2013/2013-09-27-initramfs-required/2013-09-27-initramfs-required.en.txt?id=a79dd69b0cca439bc0c483c9193c79e0554819d0
>
> The 2013-09-27-initramfs-required news item already said:
>
> | Linux systems which have / and /usr on separate file systems but do not
> | use an initramfs will not be supported starting on 01-Nov-2013.
> |
> | If you have / and /usr on separate file systems and you are not
> | currently using an initramfs, you must set one up before this date.
> | Otherwise, at some point on or after this date, upgrading packages
> | will make your system unbootable.
>
> It is also in the Handbook since 2014:
> https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel#Optional:_Building_an_initramfs
>
> What has changed that we would need another news item?

The fact that we continued to support it means we had various confused
users (like in the cited bug 868306). The job was never finished, with
usr-ldscript remaining pervasive in the tree, and then it appearing
supported - or at least not unsupported.

>
> Ulrich
>
> [[End of PGP Signed Part]]



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  4:10 [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item Eli Schwartz
  2024-01-02  8:22 ` Ulrich Mueller
@ 2024-01-02  9:15 ` karl
  2024-01-02  9:41   ` Arsen Arsenović
  2024-01-02 12:53   ` Eli Schwartz
  1 sibling, 2 replies; 10+ messages in thread
From: karl @ 2024-01-02  9:15 UTC (permalink / raw)
  To: gentoo-dev

Eli Schwartz:
[...]
> +Systems which have /usr and / on separate filesystems have always required a
> +dedicated initramfs to bring up both partitions. Systems where both /usr and /
> +are on the same filesystem may use an initramfs if they wish, or choose not
> +to.
[...]

Well, that is not technically correct, just have the required kernel 
drivers (eg. AHCI and ext2/4) compiled in and use the same busybox
commands as in the initrd, but placed in /, to bring up the system
to the point that /usr is mounted.

I have a static dev, compiled in drivers, busybox init and mount, and
separate / and /usr on a box here, works perfectly well.
 Soo, add a clause about what gentoo supports out of the box and that
you can make it work if you wish.
 If there is a general wish I can write an article about how to make
it work.

Regards,
/Karl Hammar

-----------------------------------------------------------------------
Aspö Data
Lilla Aspö 148
S-742 94 Östhammar
Sweden




^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  9:15 ` karl
@ 2024-01-02  9:41   ` Arsen Arsenović
  2024-01-02 19:26     ` karl
  2024-01-02 12:53   ` Eli Schwartz
  1 sibling, 1 reply; 10+ messages in thread
From: Arsen Arsenović @ 2024-01-02  9:41 UTC (permalink / raw)
  To: gentoo-dev

[-- Attachment #1: Type: text/plain, Size: 1592 bytes --]


karl@aspodata.se writes:

> Eli Schwartz:
> [...]
>> +Systems which have /usr and / on separate filesystems have always required a
>> +dedicated initramfs to bring up both partitions. Systems where both /usr and /
>> +are on the same filesystem may use an initramfs if they wish, or choose not
>> +to.
> [...]
>
> Well, that is not technically correct, just have the required kernel
> drivers (eg. AHCI and ext2/4) compiled in and use the same busybox
> commands as in the initrd, but placed in /, to bring up the system
> to the point that /usr is mounted.
>
> I have a static dev, compiled in drivers, busybox init and mount, and
> separate / and /usr on a box here, works perfectly well.
>  Soo, add a clause about what gentoo supports out of the box and that
> you can make it work if you wish.

Is there a need to state this?   To me, it feels obvious, and falls into
the category of 'you can do it but don't expect much help'.  As an
example of entries in this category, I used to use runit for service
management and supervision, and only used the openrc boot target.
Naturally, this worked, but it worked due to me maintaining it, and had
no Gentoo-provided support.

The same is true for many, many configurations, so I don't see the need
to state that explicitly.

>  If there is a general wish I can write an article about how to make
> it work.
>
> Regards,
> /Karl Hammar
>
> -----------------------------------------------------------------------
> Aspö Data
> Lilla Aspö 148
> S-742 94 Östhammar
> Sweden


--
Arsen Arsenović

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 381 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  8:22 ` Ulrich Mueller
  2024-01-02  8:30   ` Ulrich Mueller
  2024-01-02  8:32   ` Sam James
@ 2024-01-02 12:47   ` Eli Schwartz
  2 siblings, 0 replies; 10+ messages in thread
From: Eli Schwartz @ 2024-01-02 12:47 UTC (permalink / raw)
  To: Ulrich Mueller; +Cc: gentoo-dev, pr, sam

On 1/2/24 3:22 AM, Ulrich Mueller wrote:
>>>>>> On Tue, 02 Jan 2024, Eli Schwartz wrote:
> 
>> +++ b/2024-01-02-separate-usr-now-requires-an-initramfs/2024-01-02-separate-usr-now-requires-an-initramfs.txt
> 
> The short-name is rather long. GLEP 42 strongly recommends to stay below
> 20 characters:
> https://www.gentoo.org/glep/glep-0042.html#news-item-identities
> 
>> +Title: Separate /usr now requires an initramfs
>> +Author: Eli Schwartz <eschwartz93@gmail.com>
>> +Content-Type: text/plain
>> +Posted: 2024-01-02
>> +Revision: 1
>> +News-Item-Format: 2.0
>> +Display-If-Installed: sys-apps/baselayout[split-usr]
> 
> This is not a valid header. (Format 2.0 doesn't have Content-Type.)


Thanks, I was too hasty in my double-checking -- I fixed all 3
formatting bugs locally.


>> +In 2013, Gentoo policy determined that separate /usr without an initramfs was
>> +officially no longer supported:
>> +
>> +- https://projects.gentoo.org/qa/policy-guide/filesystem.html#pg0202
>> +- https://gitweb.gentoo.org/data/gentoo-news.git/tree/2013/2013-09-27-initramfs-required/2013-09-27-initramfs-required.en.txt?id=a79dd69b0cca439bc0c483c9193c79e0554819d0
> 
> The 2013-09-27-initramfs-required news item already said:
> 
> | Linux systems which have / and /usr on separate file systems but do not
> | use an initramfs will not be supported starting on 01-Nov-2013.
> |
> | If you have / and /usr on separate file systems and you are not
> | currently using an initramfs, you must set one up before this date.
> | Otherwise, at some point on or after this date, upgrading packages
> | will make your system unbootable.
> 
> It is also in the Handbook since 2014:
> https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel#Optional:_Building_an_initramfs
> 
> What has changed that we would need another news item?
> 
> Ulrich


As Sam said, the idea is to give people a heads up that they have to do
something to adapt -- given it's been 10+ years, it feels a bit not-good
to suddenly carry out the original promise without warning. This is a
good reason why when something is promised, it should actually be done
on schedule...

Given everything was already decided and signed off on, there's no need
to rehash whether or not to do it. We can just do it. But users should
get a heads up that there is something they need to do to ensure their
system will be working -- and 10+ years is simply too much of a gap
between the time of the news and the time of fulfillment.


-- 
Eli Schwartz



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  9:15 ` karl
  2024-01-02  9:41   ` Arsen Arsenović
@ 2024-01-02 12:53   ` Eli Schwartz
  2024-01-02 13:28     ` Peter Böhm
  1 sibling, 1 reply; 10+ messages in thread
From: Eli Schwartz @ 2024-01-02 12:53 UTC (permalink / raw)
  To: gentoo-dev, karl


[-- Attachment #1.1.1: Type: text/plain, Size: 1637 bytes --]

On 1/2/24 4:15 AM, karl@aspodata.se wrote:
> Eli Schwartz:
> [...]
>> +Systems which have /usr and / on separate filesystems have always required a
>> +dedicated initramfs to bring up both partitions. Systems where both /usr and /
>> +are on the same filesystem may use an initramfs if they wish, or choose not
>> +to.
> [...]
> 
> Well, that is not technically correct, just have the required kernel 
> drivers (eg. AHCI and ext2/4) compiled in and use the same busybox
> commands as in the initrd, but placed in /, to bring up the system
> to the point that /usr is mounted.
> 
> I have a static dev, compiled in drivers, busybox init and mount, and
> separate / and /usr on a box here, works perfectly well.
>  Soo, add a clause about what gentoo supports out of the box and that
> you can make it work if you wish.
>  If there is a general wish I can write an article about how to make
> it work.


You need the required kernel drivers regardless of having /usr on a
separate partition.

The problem here is solely about after the kernel has booted, mounted
the / filesystem, and run init -- init needs to fully bring the system
up. While it's no doubt possible to do this with finely-crafted busybox
usage, there's a lot of ways it could break if you aren't *very*
careful, and that should not require ongoing support.

It's firmly in the "you break it, you bought it" category. But I have no
objection if it's mentioned on the wiki in the initramfs article or
somewhere similar.

I don't think this is a blocker for dropping hacks like
usr-ldscript.eclass usage, though.


-- 
Eli Schwartz

[-- Attachment #1.1.2: OpenPGP public key --]
[-- Type: application/pgp-keys, Size: 18399 bytes --]

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02 12:53   ` Eli Schwartz
@ 2024-01-02 13:28     ` Peter Böhm
  0 siblings, 0 replies; 10+ messages in thread
From: Peter Böhm @ 2024-01-02 13:28 UTC (permalink / raw)
  To: Eli Schwartz, gentoo-dev

Hello Eli,

Maybe add also a link to:

https://wiki.gentoo.org/wiki/Early_Userspace_Mounting

(IMHO this article is a better starting point than
https://wiki.gentoo.org/wiki/Custom_Initramfs )

Many Greetings,
Peter






^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item
  2024-01-02  9:41   ` Arsen Arsenović
@ 2024-01-02 19:26     ` karl
  0 siblings, 0 replies; 10+ messages in thread
From: karl @ 2024-01-02 19:26 UTC (permalink / raw)
  To: gentoo-dev

Arsen::
> karl@aspodata.se writes:
> > Eli Schwartz:
...
> >> +Systems which have /usr and / on separate filesystems have always required a
> >> +dedicated initramfs to bring up both partitions.
...
> Is there a need to state this?
...

"Always required" is false.
Not supported by gentoo is correct.

Regards,
/Karl Hammar




^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2024-01-02 19:26 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-02  4:10 [gentoo-dev] [PATCH] 2024-01-02-separate-usr-now-requires-an-initramfs: add news item Eli Schwartz
2024-01-02  8:22 ` Ulrich Mueller
2024-01-02  8:30   ` Ulrich Mueller
2024-01-02  8:32   ` Sam James
2024-01-02 12:47   ` Eli Schwartz
2024-01-02  9:15 ` karl
2024-01-02  9:41   ` Arsen Arsenović
2024-01-02 19:26     ` karl
2024-01-02 12:53   ` Eli Schwartz
2024-01-02 13:28     ` Peter Böhm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox