Open
Description
This issue will be used to track Linux projects that do not currently support hermetic-usr configuration style (ie: /usr/lib/foo as default, /run/foo as ephemeral local override, /etc/foo as persistent local override). The purpose is to have a cross-distribution list of items to slowly work through, to be able to have a bootable and working minimal Linux image-based system with only /usr.
This list is not definitive and will get updated as we go.
- glibc:
- /etc/nsswitch.conf (https://bugzilla.suse.com/show_bug.cgi?id=1215487)
- /etc/host.conf
- /etc/rpc
- nscd (/etc/nscd.conf)
- ldconfig (/etc/ld.so.conf, /etc/ld.so.conf.d, but no /usr/...)
-
/etc/shells
(ref: Support for vendor locations (pam_shells and /etc/shells) linux-pam/linux-pam#498 (comment)) -
/etc/services
(used bygetservbyname
/getservbyport
, which make little sense and are not widely used, but there still are some applications which do). It should be moved under/usr
.
- update-alternatives (from dpkg) uses /etc/alternatives. There is https://github.com/openSUSE/libalternatives but this only works for binaries, not e.g. manual pages
- SELinux
- policycoreutils/sestatus (/etc/sestatus.conf)
- selinux-policy installs the policy in /etc/selinux/ and /var/lib/selinux/. Tracker for Fedora: https://bugzilla.redhat.com/show_bug.cgi?id=1290659. Especially the last is a problem, as this mixes user changes with policy defaults. /var/lib/selinux needs to be split: the package defaults belongs somewhere to /usr, which should be merged with the admin changes (should be stored in /etc/, not /var) at runtime.
- apparmor
- sudo has /etc/sudo.conf, /etc/sudoers and /etc/sudo_logsrvd.conf
- audit (/etc/audit/auditd.conf, /etc/libaudit.conf)
- rsync (/etc/rsyncd.conf)
- chrony (/etc/chrony.conf)
- podman and releated tools/libraries (/etc/containers)
- apt
- dpkg
- dnf5 which requires
/etc/dnf/dnf.conf
- systemd "empty" main config files in
/etc/systemd
- udev "empty" main config files in
/etc/udev
- Xorg:
/etc/X11/xinit/xinitrc.d/50-systemd-user.sh
- mailx (/etc/mail.rc)
- util-linux (/etc/blkid.conf)
- fcoe-utils (/etc/fcoe/)
- open-iscsi (/etc/iscsi/iscsid.conf)
- krb5 (/etc/krb5.conf)
- libnl (/etc/libnl/)
- libssh (/etc/libssh/)
- e2fsprogs (/etc/mke2fs.conf)
- nftables (/etc/nftables/)
- smartmontools (/etc/smartd.conf, /etc/smartd_warning.sh)
- wpa_supplicant (/etc/wpa_supplicant/wpa_supplicant.conf)
- attr (/etc/xattr.conf)
- zypper (/etc/zypp/zypp.conf, /etc/zypp/zypper.conf)
Metadata
Metadata
Assignees
Labels
No labels