Just accept it, package maintainers had enough of the absolute shitty state of init systems. Systemd solves this very complex problem elegantly, giving some standard userspace can depend on.
Same with Wayland. "it's not a program it's a protocol"
Still sucks, still is a thorn in my side and gets in the way.
Systemd is an attempt to consolidate the OS/service layer into one thing. Compilation options don't mean shit when every component is tightly coupled to systemd, its journal, dbus, or some other quackery.
Systemd would have been better as an entire distro to itself.
But as usual, people cannot handle the idea of running anything other than what's shoved in their faces from corporate programmers.
If I wanted corporate software I'd buy Apple or Microsoft.
I am doing something about it by researching ways to excise Red Hat from as much of the tech stack as possible. Can't do much about the kernel, but every layer above it is moldable.
I don't care to provide 'usefulness' to you; if you're not paying me why would I give up any value?
It was an arrogantly managed project using the guise of standardization to bypass people's social tendencies. People are stupid, so they fell for the 'only consider the code, not our social fuckery!' Hook, link, and sinker.
It really opened my eyes to how ignorant and passive a lot of techies actually are. They're happy to slurp up whatever's advertised to them as the better thing.
Systemd runs my current laptop and I hate having to dive under the hood for anything. In a sysvinit, runit, or OpenRC system, I can achieve things quickly and don't need a book's worth of corporate style documentation to operate my damn system.
Systemd still doesn't support a one-time script on boot. You have to hack together a unit for that. Most other systems just run an rc.local script in /etc!
Binary logs are only useful if systemd is running, and only that version of it too!
Good luck understanding journalctl output. It doesn't capture everything.
Long story short, systemd has not improved a single area of my computing life. I guess I can ogle at a boot time graph. But the main goal seems to be for systemd to take away knowledge of the lower levels of the stack.
Like it or not, open software ecosystems are resistant to standardization by default.
Systemd and dbus and friends would not have bothered me if they weren't coupled with weird ideology about One True Linux or other crap.
Systemd never solved problems for me. I'm sure it solves many business problems but none of them apply to me.
Poettering worked for Red Hat during the development of both PulseAudio and systemd. If he was not writing code they wanted, he would have worked on another project. Ergo, one can conclude those projects to be Red Hat-oriented, or sponsored at minimum.
I firmly believe the profit motive in the software world is what leads to dark patterns, user-hostile design, and other maladies we face in the modern software world. Their obligation to seek profit over all other things leads to compromised values, leading to compromised software.
> It should only do one thing well.
I know this is a popular principle that some believe to be part of the unix philosophy. But an OS should also be coherent. Some tools can do their own thing and be independent from the rest of the system. But I think this works best for simple userland tools, not tightly integrated system services.
In any case I really like resolved.
Most hate seems to be from enthusiast/tinkerer types who want to hand maintain highly customized systems.
Systemd is great for ople who just want a commodity OS, maintained by pros, and kept stock.
It is only bad for people who love debugging race-conditions between shell scripts that run very early in their boot process.
[1]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=727708#695...