systemd in Exherbo – Rules of Engagement

As you may have noticed, I’ve recently added systemd to ::philantrop for use in Exherbo. I’m writing this to

  • warn you that I will break systemd (and consequently your boot process) until further notice recklessly, repeatedly and without prior warning to anyone
  • make clear what I intend to do with systemd in Exherbo
  • make a plan for myself.

What I want to do first is get a feeling for systemd and see if it might have the potential to replace baselayout-1 (bl-1) and, at least for myself, be used instead of the init-system-that-is-not-to-be. ;)

As I really want to replace bl-1, I’m not going to go the Gentoo way of simply adding a handful of pseudo-units that essentially just call the openrc init scripts. If you want that, you’re on your own and I won’t accept patches that do that. Instead, I’m aiming for:

  • a full native set of systemd units not tainted by anything else
  • a minimal set of non-native configuration files (what we currently have in /etc/conf.d; I don’t think it will be possible to avoid them completely but I will if I can)
  • staying as near to upstream as possible and I’ll try to submit my patches upstream even though the DISTRO_PORTING instructions don’t exactly make inclusion seem likely
  • the units included in the systemd package will at most get you to some kind of login (either graphical or console)
  • all additional units for services like sshd should eventually be added to their respective packages, possibly using a “systemd” option.

The process to make systemd really usable in Exherbo will be a slow one. One that I expect to take till autumn this year because:

  • I’m really busy at work,
  • this summer seems to become a damn hot one again and I spend quite some time after work in our pool,
  • I’ll be on holidays in France for most of July.

The steps I intend to take:

  • finalise the Exherbo patches for systemd (90% done, ETA: Mid June)
  • create and enhance a basic set of units for booting (5% done)
  • create units for other services

How you can help:

  • Remind me of the stuff I’ve forgotten due to a power outage here. :-)
  • Make yourself acquainted with systemd units.
  • Once I’ve pushed the Exherbo patches, test systemd and
  • submit patches for the missing units. :-)
  • Leave comments here or on the dev mailinglist so that I can consider your input, comments and concerns.