[arch-general] Alternative init system proposal

Ivan parazyd at dyne.org
Mon Feb 8 04:43:06 UTC 2016

On Sun, 07 Feb 2016, Patrick Burroughs (Celti) wrote:

> The big question you have to answer, the one you need to start with, is:
> Why is it in the Arch dev's interests to maintain two init systems and
> that much more area for incompatibility, that many more packages and
> bugs to wrangle? Especially if they are happy using systemd?
> Nobody could answer that question a few years ago, so the original Arch
> initscripts were dropped in favour of a systemd-only distro.
> If you have a serious answer, by all means, present it — but that *is*
> the stumbling block here.

I would start by taking out some quotes out of

"Arch is installed as a minimal base system, configured by the user upon
which their own ideal environment is assembled by installing only what
is required or desired for their unique purposes."

"Arch Linux has always been, and shall always remain user-centric. The
distribution is intended to fill the needs of those contributing to it
rather than trying to appeal to as many users as possible."

"... it is the user who decides what his system will be."

I know everyone always cites this in their anti-systemd rands, but Linux
really has always been about choice, and yet all the major distributions
seem to embrace the same init system: systemd. Thus, distros are giving
up on their "distinctiveness" Now I keep seeing almost all the "big" 
GNU/Linux embracing nothing but systemd and that's very dissapointing.
(Arch) Users aren't picking systemd because it's there and it's perfect,
because there is no other choice, and was to a certain point imposed to
them... I am most certainly not going back to the past and referencing
mailinglist discussions where initscrips was dropped in favor of
systemd. That was the decision, and I fully respect it. Nevertheless,
consider: does Arch really have to *demand* systemd to be the only init
system? Not saying it will happen, and this being really farfetched:
Eventually the difference between distros seems to boil down to having a
different distribution name and a different package manager. It may
eventually become impossible to use Linux without also using systemd.
For me, and many other communities out there this is not a very pleasant
thing. I don't want to impose it here, but I'm sure you are aware of all
the init/systemd wars going on...

Since 2012, a lot of things happened. systemd gained a lot more
traction, maybe even due to the fact Arch implemented it. 
Note: OpenRC is actively developed since 2007. by developers coming from
the Gentoo community. Since then, it has grown into a very big project.
As for udev (it was integrated into systemd, and knowing hotplugging is
necessary for most users nowadays), The Gentoo developers have forked it
and named it eudev. Since then, eudev is also under active development.
It provides everything udev does, and doesn't break current udev stuff.
I can even personally confirm this, since I use OpenRC and eudev on my
personal computer (running Arch Linux, of course) instead of systemd.

To those saying "What does OpenRC have that systemd doesn't?": OpenRC
isn't made as a clone of systemd. It's a tool for itself, and works the
way it's made to work. If you still with to ask that question, note that
OpenRC can actually do as much as systemd (possibly even more, but I'm
no systemd wizard). Also here is the forum post where tomegun talks
systemd adoption and lists some key points. Feel free to compare it to
OpenRC and the tools OpenRC is used with.
Anyone willing to discuss this in more depth, feel free to reply.

Let's go back to Arch itself, as the distro. 
As we all know, Arch is built around the KISS principle. (Yes, I know
this is contradictory to my request, but also note the beginning of this
So, the KISS principle... I'm still sticking to OpenRC, and now I will
have to make some short notes:
    * Daemon management is as simple as systemd. As a matter of fact,
      most (if not all) OpenRC users I've talked to say that it's even
      simpler than systemd because we can find everything in /etc/init.d/ 
      as opposed to `systemctl edit` and its tmpfiles/overrides. (Again, 
      I'm not a systemd wizard, don't take things for granted)
    * Simplicity through /etc/init.d helps you fix misconfigured daemons
      more easily than systemd in case you forgot what you did. (Sort
      /etc/init.d/* by latest file modification)
    * "Networking is difficult" - Absolutely not! In fact, even
      NetworkManager works just fine with OpenRC. With proper packaging,
      users will not need to do anything.
    * "It's for power users" - Again, no. While many power users and (older
      system administrators prefer not using systemd, this does not mean
      OpenRC is necessarily complicated to use. Quite the opposite,
      OpenRC makes management very user-friendly and simple. Also, in my
      case (being shell-literate), I find editing init scripts much
      better than systemd services, I would dare to say it even offers
      you more customization.

Cliche-time: I would like to mention, through the past 14 years, Arch 
Linux has evolved into one amazing GNU/Linux distribution and has
to build a community truly worth mentioning. The developers behind Arch 
are some very smart people, I would like to believe they have grown to 
have more than enough experience and capability to maintain an
init system alongside the current one.

~ parazyd
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.archlinux.org/pipermail/arch-general/attachments/20160208/c494447e/attachment.asc>

More information about the arch-general mailing list