From: Simon McVittie Date: Mon, 4 Feb 2019 14:46:07 +0000 (+0000) Subject: merged usr: Refer to lib* rather than lib X-Git-Url: https://git.donarmstrong.com/?p=debian-ctte.git;a=commitdiff_plain;h=8bb088593fda5ca522c864fa268aebdce24f5019 merged usr: Refer to lib* rather than lib If the /usr merge is carried out, it also affects the biarch directories referred to in the FHS as libQUAL, notably /lib64 on amd64. --- diff --git a/914897_merged_usr/ballot.md b/914897_merged_usr/ballot.md index 949b2f4..11d8da1 100644 --- a/914897_merged_usr/ballot.md +++ b/914897_merged_usr/ballot.md @@ -4,7 +4,7 @@ ## What is "merged `/usr`" -"Merged `/usr`" describes a possible future standard directories scheme in which the `/{bin,sbin,lib}/` directories have been made superfluous through replacing them by symlinks to their `/usr` equivalents (/usr/{bin,sbin,lib}). +"Merged `/usr`" describes a possible future standard directories scheme in which the `/{bin,sbin,lib*}/` directories have been made superfluous through replacing them by symlinks to their `/usr` equivalents (/usr/{bin,sbin,lib*}). The motivation to get Debian systems to converge towards such a scheme is vastly documented elsewhere ([FDO's TheCaseForTheUsrMerge][0], [wiki.d.o UsrMerge][1]) but can be summarized as the following points: * having separate `/` and `/usr` filesystems has been useful in the past for booting without initramfs onto a minimal root filesystem that carried just enough to mount the `/usr` filesystem later in the boot process. Given the evolution of physical hosts' capabilities, initramfs'es have been default in Debian (and elsewhere) for a long time, and most systems no longer have an intermediate state during boot in which they have only `/`, but not `/usr`, mounted. @@ -17,7 +17,7 @@ The motivation to get Debian systems to converge towards such a scheme is vastly The arguments against moving the base directories' scheme towards "merged `/usr`" are as follows: * there's no gain in disrupting something that is not inherently broken; -* `/{bin,sbin,lib}/` → `/usr/{bin,sbin,lib}/` symlinks create confusing views of the system (`/bin/cat` and `/usr/bin/cat` are the same file), and dpkg doesn't support this situation cleanly [#134758](https://bugs.debian.org/134758). +* `/{bin,sbin,lib*}/` → `/usr/{bin,sbin,lib*}/` symlinks create confusing views of the system (`/bin/cat` and `/usr/bin/cat` are the same file), and dpkg doesn't support this situation cleanly [#134758](https://bugs.debian.org/134758). [0]: https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/ [1]: https://wiki.debian.org/UsrMerge @@ -26,12 +26,12 @@ The compatibility symbolic links `/lib` → `/usr/lib` and `/lib64` → `/usr/li ## "merged `/usr`" in Debian -In Debian buster, the current testing suite, "merged `/usr`" is only considered for implementation with symlinks (there are no proposals for simply dropping `/{bin,sbin,lib}`) and is implemented in two distinct ways: +In Debian buster, the current testing suite, "merged `/usr`" is only considered for implementation with symlinks (there are no proposals for simply dropping `/{bin,sbin,lib*}`) and is implemented in two distinct ways: * existing hosts can be made to have a "merged `/usr`" by installing the [usrmerge][2] package; -* new hosts get the `/{bin,sbin,lib}/`→ `/usr/{bin,sbin,lib}/` symlinks by default when using debootstrap >= 1.0.102. +* new hosts get the `/{bin,sbin,lib*}/`→ `/usr/{bin,sbin,lib*}/` symlinks by default when using debootstrap >= 1.0.102. -The usrmerge package contains a `/usr/lib/convert-usrmerge` perl executable that runs in `postinst`, that will move the contents of `/{bin,sbin,lib}/` and replace these directories with symlinks when empty. +The usrmerge package contains a `/usr/lib/convert-usrmerge` perl executable that runs in `postinst`, that will move the contents of `/{bin,sbin,lib*}/` and replace these directories with symlinks when empty. [2]: https://tracker.debian.org/pkg/usrmerge