You heard it here first folks: systemd is coming to postmarketOS! As a mobile oriented OS, our main goal has always been to work for everyone. From technical folks to casual users. postmarketOS should have all the benefits you expect from a Linux based distribution, such as being free software, respecting your privacy, getting updates until your device physically breaks, respecting your attention and not shoving advertisements in your face. Your phone should be a tool you use, not the other way around.
This is of course not an easy task, one of the main blockers we found as we collaborate more closely with KDE and GNOME developers is that they have a hard time with our OpenRC-based stack. In order to get KDE and GNOME working at all, we use a lot of systemd polyfills on top of OpenRC. So while we are technically “not using systemd”, in practice we already do use a large chunk of its components to get KDE and GNOME running, just different versions of those components. While we are very grateful for everybody who works on these polyfills, we must point out that most aren’t a full replacement, and take additional effort to support and maintain. As much as we might want to romanticise the idea of spending 6, 12, 24 months attempting to come up with an even vaguely competitive alternative to systemd, we would quite simply rather be working on making postmarketOS better.
↫ postmarketOS blog
This is the sensible choice to make, and I’m glad they made it. It makes no sense for a relatively small project that already has to deal with the difficulties of supporting smartphones to also have to deal with shoehorning the smartphone variants of GNOME and KDE into an init system they’re not at all made for.
If I had a nickel for every time a Linux software component forced itself into being irreplaceable, despite considerable concerns and the trail of upheaval left in its wake, I’d have two nickels, which isn’t a lot but it’s telling that it’s happened twice now 😐
Imagine replacing the only bridge in a city by building the second bridge at the same time as dismantling the first one so that *both* bridges are broken at the same time for everybody.
Fantastic analogy.
What’s your take on MacOS’ launchd?
https://www.youtube.com/watch?v=o_AIw9bGogo (Benno Rice – Tragedy of systemd. BSD developer’s take on systemd)
Systemd is just better than anything we had before. Yes, it all could have been implemented in OpenRC, but it wasn’t.
I do miss the turing complete scripting language in startup scripts, but the improved flexibility of getting rid of runlevels and introducting generic .targets? wow.
Namespace isolation and resource limitation at the stroke of a directive? wow.
Not having to worry about the init sequencing of my multiprocess solution? Yes please.
I do worry a bit about all that stuff being in one repository, but nobody complains about the Linux kernel being one repo, Even BSD is one repo.
Serafean,
Sysvinit runlevels sucked, but it’s always annoying when systemd gets compared to one of our worst init systems, of course that makes systemd look good, but there were lots of good choices that did “keep it simple stupid” better than systemd.
Maybe i have had bad luck, but on my systems runit is soo much faster than any distro i have tried with systemd. Some systemd distros even boot slower than windows nowadays.
NaGERST,
+1
I really like runit too! Simple, fast, doesn’t try to replace userspace daemons!