I use Artix Linux with runit and am happy. Artix offers multiple init systems other than systemd. If you’re familiar with using Arch Linux, basically Artix is the same without systemd.
You can install the various ISOs and see the differences for yourself, but the complaints launched against systemd that have any validity are either technical and/or philosophical in nature.
In a lot of ways, systemd has become like the JavaScript of init systems in that it handles a lot more than what it originally was needed for (init starts other processes after boot, JavaScript adds small amounts of interactivity to web pages).
As opposed to what each became (systemd now handles DNS, cron, bootloader, and is a suite of tools tightly coupled with the init system) (JavaScript has now become a scripting language with access to the C level exec library to the point where an OS can and has been written in it).
In the early days of systemd adoption, there was much controversy over. SysV init needed a modern replacement, and indeed, alternatives like Upstart, openrc, and others were in production to eventually replace it. Lennart Poettering and Kay Sievers over at Red Hat created and heavily promoted systemd.
Lennart was already somewhat beloved/hated in the community as he had developed PulseAudio, which was a boon over the previous Alsa implementation, but was considered bloated and unnecessary by the less audio oriented Linux users of the time. He was inspired to create systemd after researching Apple’s new init implementation, launchd.
Controversy spread as Lennart would dismiss adoption of systemd into the BSD family of UNIX like OSes. He also dismissed competitors like Upstart, as their implementation of certain modern features like CGroups was not as developed as systemd at the time. Additionally, Linux users at the time were heavily concerned that Red Hat was trying to take over tje entirety of the Linux soace, enforcing a more corporate and commercial influence on what had previously beenaa commynity more in line with the aims of the FSF.
In the early days of systemd adoption, conflicts emerged in email exchanges between the Linux Kernel Devs and the systemd devs, as Kay Sievers in particular wouldn’t resolve cettain bugs that prevented booting in a dismissive manner that eventually prompted Linus Torvaulds to write a short rant about it in an email exchange.
Much of this culminated in a months long email exchange on the Debian email list, where many of these grievances, pros and cons of systemd adoption, and overall discourse around this topic took place in 2013-2014. Eventually the result was that Debian adopted systemd as the default init system, which along with Fedora, Arch, and other distros, sealed the fate of other alternative init systems as being fringe, out of date, and irrelevant.
More and more system admins would learn the ins and outs of systemd as it would become required for their jobs, and the criticism of systemd became more and more quiet as it just became part of the every day Linux experience.
Truth be told, the birth of systemd really heralded in the death of the UNIX philosophy as an old way of thinking about software development and program scope. Doing one thing only, and doing it well, while looking good on paper, and oftentimes is a good general rule of thumb, doesn’t apply to modern application development, for better and worse.
I personally like runit not for its speed, but for its simplicity. I can peruse the C code in an afternoon and appreciate it for what it is, an init system. I can’t say the same when I look at systemd’s code.
But most could care less. As long as it works. And all the power to them…
It does surprise me somewhat, however, that Linux users will condemn bloated browsers, electron apps, and text editors, but will give a pass to systemd, which holds so much more importance over whether your kernel even launches pid 1 and starts user space.
Let the downvoting commence.