Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: williamh@g.o, robbat2@g.o
Subject: Re: [gentoo-dev] rfc: locations of binaries and separate /usr
Date: Sun, 01 Jan 2012 17:54:13
Message-Id: 20120101185434.3d019941@pomiocik.lan
In Reply to: [gentoo-dev] rfc: locations of binaries and separate /usr by William Hubbs
On Sat, 31 Dec 2011 19:59:47 -0600
William Hubbs <williamh@g.o> wrote:

> I see three options: > > 1) Start migrating packages along with upstream and have everyone who > has a separate /usr (including me by the way) start using an initramfs > of some kind, either dracut or one that we generate specifically for > gentoo. The reason I suggest the initramfs, is, unfortunately if we > migrate everything, nothing else would work. > > 2) Combine the sbin and bin directories both on the root > filesystem and in /usr by moving things from /sbin to /bin > and /usr/sbin to /usr/bin. > > 3) Try to maintain things the way they are as long as possible.
We should *at least* start doing some preparations, like ensuring that random things don't unnecessarily hardcode /sbin or /bin paths. Most importantly, if a particular tool runs in a complete environment (which is true for most of the cases), there is no need to hardcode paths to tools. As I see it, 2) seems achievable within a reasonable time now. It shouldn't require any specific changes from users (except for fixing their own broken scripts) yet some tree-wide action of fixing hardcoded paths. We could create /sbin and /usr/sbin symlinks as well but that shouldn't be really necessary, especially if we prepare packages well beforehand. Introducing such symlinks would be hard to perform and getting rid of them later would be even harder; mostly due to PMS-enforced limitations. For a long-term view, 1) is the only way to go. Splitting packages randomly between rootfs and /usr was never really correct, and we especially shouldn't force users to junk their systems with shattered packages and cheap glue to keep it all working. I'd suggest going the other way than I did with kmod. Temporary IUSE like 'install-to-usr', disabled by default for now. Packages having that IUSE should have correct USE-dependencies, and users who need not to use that could just enable 'install-to-usr' globally (we'd probably want to mask it first). Of course, that way will require removing hardcoded paths as well, or supporting switching them on IUSE. For the latter, it may be simpler to use '[install-to-usr=]' kind of dependencies. -- Best regards, Michał Górny


File name MIME type
signature.asc application/pgp-signature


Subject Author
Re: [gentoo-dev] rfc: locations of binaries and separate /usr William Hubbs <williamh@g.o>