Package: debian-policy Severity: wishlist I could have sworn we already had a bug open about this, but I couldn't find it. If someone else does find it, please merge.
Some other distributions have merged /bin, /sbin, and /lib into /usr via the symlinks: /bin -> /usr/bin /sbin -> /usr/sbin /lib -> /usr/lib /lib64 -> /usr/lib64 While Debian has not decided to do the same thing at this time, it's desirable, and not particularly difficult, to support this configuration if the local administrator wants to adopt it. However, this requires avoiding file conflicts between those directory pairs. It's worthwhile to make this change even apart from this possible merge since having two programs with the same name at different points in the PATH is confusing. Note that this bug does not deal with the separate problem that Policy is not clear abot applying the rule against conflicting binaries to binaries elsewere on the PATH (conflicts between /usr/games/foo and /sbin/foo, for example). I believe there is a separate bug open about that, and we should also resolve that issue. I wanted to open this discussion, but it's not clear whether we're ready yet to actually merge this patch. On my local system, I have the following conflicts, all of which are symlinks and therefore don't pose a functionality problem: lrwxrwxrwx 1 root root 10 May 20 2013 chacl -> /bin/chacl* lrwxrwxrwx 1 root root 13 Feb 17 2013 dumpkeys -> /bin/dumpkeys* lrwxrwxrwx 1 root root 12 May 20 2013 getfacl -> /bin/getfacl* lrwxrwxrwx 1 root root 9 Jun 5 2013 less -> /bin/less* lrwxrwxrwx 1 root root 13 Jun 5 2013 lessecho -> /bin/lessecho* lrwxrwxrwx 1 root root 13 Jun 5 2013 lessfile -> /bin/lesspipe* lrwxrwxrwx 1 root root 12 Jun 5 2013 lesskey -> /bin/lesskey* lrwxrwxrwx 1 root root 13 Jun 5 2013 lesspipe -> /bin/lesspipe* lrwxrwxrwx 1 root root 13 Feb 17 2013 loadkeys -> /bin/loadkeys* lrwxrwxrwx 1 root root 12 May 20 2013 setfacl -> /bin/setfacl* lrwxrwxrwx 1 root root 10 Apr 12 16:34 touch -> /bin/touch* lrwxrwxrwx 1 root root 10 Jul 27 2013 which -> /bin/which* These symlinks would have to be removed to follow this new Policy rule, which means that one of the two paths by which those programs can be addressed would go away. Removing, at least, /usr/bin/which would break various packages: http://codesearch.debian.net/search?q=%2Fusr%2Fbin%2Fwhich We therefore may have to do something more complex or slower than this. Anyway, for discussion purposes, here's a patch. diff --git a/policy.sgml b/policy.sgml index 6eac491..b00995b 100644 --- a/policy.sgml +++ b/policy.sgml @@ -8473,6 +8473,21 @@ fi renamed. If a consensus cannot be reached, <em>both</em> programs must be renamed. </p> + + <p> + Packages should not install a file in <file>/usr/bin</file> with + the same name as a file in <file>/bin</file>, a file + in <file>/usr/sbin</file> with the same name as a file + in <file>/sbin</file>, or a file in <file>/usr/lib</file> with + the same name as a file in <file>/lib</file>.<footnote> + This rule permits <file>/bin</file> to be a symlink + to <file>/usr/bin</file> and similarly for the other top-level + directories. This is not Debian's current directory layout, + but it is desirable to support if the local administrator + wants to use it. + </footnote> + </p> + <p> Binary executables must not be statically linked with the GNU C library, since this prevents the binary from benefiting from -- System Information: Debian Release: jessie/sid APT prefers unstable APT policy: (990, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.14-2-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash -- To UNSUBSCRIBE, email to debian-policy-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20140827165910.14784.11077.report...@mithrandir.eyrie.org