[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: merged /usr vs. symlink farms



Hi Russ,

On Mon, 2021-08-23 at 13:41 -0700, Russ Allbery wrote:
> Right now, in the absence of such a plan, it's obvious that having
> two
> unrelated packages (that do not Conflict) ship a binary with the same
> name
> in /bin and /usr/bin is not sensible, yes?  (I believe that's the
> topic
> under discussion in this thread.)  I'm trying to understand if enough
> people thought this was a sensible, non-buggy thing to do today that
> it's
> worthwhile adding something to Policy explicitly saying that it's
> not.

Different, non-conflicting packages shipping binaries with the same
name in /bin and /usr/bin (or similar) should be resolved for a while
now. That as looked at when usrmerge was first introduced. I'm aware of
one instance where this was intentional to prefer one program over the
other (molly-guard), but it since uses diversions.

(Actually molly-guard ships several /sbin/pm-* binaries, while pm-utils
ships them as /usr/sbin/pm-*, but I think this is fine as the ones in
pm-utils are diverted by molly-guard's preinst script.)

For what it is worth I could find the following instances in Debian
bookworm (amd64 + all), not taking into account package conflicts,
covering /bin, /sbin and /lib*:

sbin/pm-hibernate: root=admin/molly-guard usr=admin/pm-utils,metapackages/progress-linux-container
sbin/pm-suspend: root=admin/molly-guard usr=admin/pm-utils,metapackages/progress-linux-container
sbin/pm-suspend-hybrid: root=admin/molly-guard usr=admin/pm-utils,metapackages/progress-linux-container
sbin/syslogd: root=utils/busybox-syslogd usr=net/inetutils-syslogd
bin/systemctl: root=admin/systemd usr=admin/systemctl
sbin/update-service: root=admin/runit usr=admin/daemontools-run
lib/x86_64-linux-gnu/libsystemd.so.0: root=libs/libelogind0 usr=libs/libsystemd0
sbin/exfatlabel: root=otherosfs/exfat-utils usr=otherosfs/exfatprogs
sbin/fsck.exfat: root=otherosfs/exfat-utils usr=otherosfs/exfatprogs
sbin/mkfs.exfat: root=otherosfs/exfat-utils usr=otherosfs/exfatprogs

And one additional instance in unstable:

lib/systemd/system/ifup@.service: root=admin/ifupdown2 usr=admin/ifupdown
lib/systemd/system/networking.service: root=admin/ifupdown2 usr=admin/ifupdown

Ansgar


Reply to: