Hard dependencies on systemd

A systemd free system
Ideally packages should not depend on a specific init system, however a number do:


 * - GNOME depends on . There are ways to produce a systemd-free GNOME, see Dantrell B.'s GNOME without systemd project.


 * ( USE="wayland" emerge mutter ) - Mutter's native (KMS) backend requires . Building the native backend is optional, and enabled by the script's   option. This option is turned on when the   USE flag is set. Mutter 3.28.1 allows building the native backend with elogind as an alternative to systemd, but this version is not in Gentoo's repository yet. If or when more recent versions get added, >=x11-wm/mutter-3.28.1 should have   and   USE flags with a   REQUIRED_USE specification like e.g. the D-Bus ebuild, or at least specify a   dependency.


 * - This package provides a bash script,, intended to be periodically executed with a  argument, and a timer unit file and accompanying service unit files to implement that with systemd. The script is likely usable on Gentoo without systemd regardless, e.g. with explicit cron setup by the user, provided the XDG_RUNTIME_DIR environment variable is appropriately set as per the XDG Base Directory Specification . The psd preview command also uses systemctl is-active to show the status of its supplied units as part of its output ("Systemd service is currently active", "Systemd resync service is currently active"), which is meaningless without systemd. Running the unmodified script would be ugly because of the shell's "command not found" error messages instead of the intended output, but otherwise nonfatal. Cosmetic patches could be applied to suppress that part of the output, and to fix other error messages that suggest systemd commands to the user in order to fix the situation that caused the error.


 * This package requires systemd. unit files only provided. makes use of unitfiles and systemctl to interact with the system


 * - This package includes three daemons,, and , that extract core dumps, oopses and Xorg crashes, respectively, logged in systemd's journal. These tools are useless on Gentoo without systemd. However, the package's build system builds them unconditionally, and because they access the journal using the sd-journal API of libsystemd, this results in a build failure if that library is not present. Assuming the rest of the package is still worth it without these programs, a possible workaround would be patching the build system to make it conditionally build the  daemons, based on a  script option that a modified ebuild could turn on or off depending on the   USE flag state. The Gentoo ebuild installs OpenRC service scripts for other daemons though, in addition to upstream's service unit files.