On Mon, Aug 19, 2019 at 10:42 AM Raffaele Belardi <[email protected]> wrote: > > Rich Freeman wrote: > > Next time you do something like this, keep in mind that Gnome and xfce > > can co-exist on the same system, and so can openrc and systemd. > > Good point, I did not know, in particular for the init systems I thought it > was exactly > the opposite. >
The only area of incompatibility I'm aware of are the sysvinit-compatibility links. Both sysvinit and systemd provide implementations of common utilities like poweroff, halt, reboot, telinit, and so on. There is also init itself. The versions that come with sysvinit are compatible with both sysvinit and systemd. If you don't have sysvinit then systemd can supply these. Systemd itself doesn't require these utilities but they are useful both for compatibility and convenience. (ie "systemctl poweroff" works fine, as does sending the command via dbus, but scripts or sysadmins might prefer to be able to just run "poweroff"). The versions of these supplied by systemd are not compatible with sysvinit. A USE flag toggles whether systemd installs these utilities. If it does then it blocks sysvinit. So, you just have to switch that USE flag to install the two in parallel. If you don't have systemd install "init" then you do need to have a kernel command line to launch systemd directly as init. Offhand I think that is really the only conflict between the two. Systemd doesn't use anything but those compatibility utils from sysvinit but it doesn't mind them being around, and nothing in sysvinit/openrc should even notice that systemd is installed. As long as you set the USE flag appropriately you can dual-boot between the two very easily. The only gotcha is keeping all your configs up-to-date as openrc and systemd store things in different places. When you install systemd it takes a snapshot of many of your openrc settings but that is a one-time operation. Some of those settings are hard to change if systemd isn't running as PID 1 - I think the wiki has instructions for how to do this. -- Rich

