Page MenuHomeSolus

Merge `/usr`
Open, NormalPublic

Description

Now systemd will drop support for unmerged-usr setups, it seems we have to switch to a merged /usr as well. Also see the Case for the /usr Merge.

There are two orders in which we can do this:

  1. Move first:
    1. Get all main package contents out of /bin, /sbin, /lib32 and /lib64. Provide compatibility symlinks where needed (eg: /bin/bash).
    2. Remove compatibility symlinks, and directly
    3. Symlink /{bin,sbin,lib32,lib64} to their /usr/ counterparts with a usysconf trigger. The trigger will be trivial as those directories should be empty.
  1. Move later:
    1. Remove compatibility symlinks, and directly
    2. Symlink /{bin,sbin,lib32,lib64} to their /usr/ counterparts through a usysconf trigger. The trigger will be somewhat complicated as it would need to actually merge the directories.
    3. Get all main package contents out of /bin, /sbin, /lib32 and /lib64 (leisurely).

Packages with files in /{bin,sbin,lib,lib32,lib64} (where the file is not a symlink to /usr/):

  • Programs (/bin and /sbin):
    • acl
    • apcupsd
    • attr
    • audit
    • bash
    • busybox
    • bzip2
    • cifs-utils
    • coreutils
    • cpio
    • davfs2
    • e2fsprogs
    • fuse2
    • iproute2
    • kmod
    • lvm2
    • mdadm
    • multipath-tools
    • nfs-utils
    • ntfs-3g
    • ocamlbuild
    • procps-ng (also see T9039)
    • shadow
    • systemd (note: broken symlink in /lib/udev/udevd)
    • tar
    • tcsh
    • tlp
    • util-linux
    • wpa_supplicant
    • xfsprogs
    • zsh
  • Libraries:
    • musl
    • notmuch
  • Firmware (/lib/firmware):
    • alsa-firmware
    • intel-microcode
    • linux-firmware
    • sof-firmware
    • wireless-regdb
  • Kernel modules (/lib/modules):
    • bbswitch
    • broadcom-sta
    • linux-current
    • linux-lts
    • nvidia-470-glx-driver (also: /sbin/create-uvm-dev-node)
    • nvidia-beta-driver (also: /sbin/create-uvm-dev-node)
    • nvidia-developer-driver (also: /sbin/create-uvm-dev-node)
    • nvidia-glx-driver (also: /sbin/create-uvm-dev-node)
    • openrazer
    • v4l2loopback
    • vhba-module
    • virtualbox (also: /sbin/mount.vboxsf)
    • xone
  • PAM (/lib*/security):
    • fprintd
    • gdm
    • gnome-keyring
    • kwallet-pam
    • libcap2
    • libpwquality
    • pam-krb5
    • pam-u2f
    • pam (also: /sbin)
    • samba
    • systemd
    • virtualbox
    • yubico-pam
  • Other/mixed:
    • apparmor (waiting on pam)
    • glibc
    • iptables

Packages with symlinks to /usr in /{bin,sbin,lib,lib32,lib64} or vice versa:

  • coreutils
  • dash
  • gcc (/lib/cpp -> /usr/bin/cpp)
  • glibc
  • grep
  • sed
  • systemd
  • util-linux
  • xfsdump

Third party packages with files in /{bin,sbin,lib,lib32,lib64}:

  • google-earth (/lib/ld-lsb-x86-64.so.3)

Event Timeline

silke removed joebonrichie as the assignee of this task.
silke triaged this task as Normal priority.
silke added a subscriber: joebonrichie.