Having sniffed around the Linux community for years, I feel like whatever flaws SystemD has as a computer program are of tertiary importance when faced with the thing that really matters:
- The developer of SystemD was mildly rude to some community members that one time. That means he is two hitlers and a stalin wearing a trenchcoat and everything he makes must be utter garbage.
Yeah they seem to think he “took over” the Linux init process all by himself. Like distro maintainers aren’t the ones who made the decision to move to systemd based on technical merits (presumably).
I think people like that view Linux as some kind of fiefdom rather than a community of individuals.
It is on technical merits as you don’t see maintainers complaining about systemd, only users who just don’t like it for number of randomly picked reasons.
It’s a giant mess of interconnected programs that could theoretically still be disentangled, but in practice never are. It was very quickly and exclusively adopted by pretty much every major distro in a short period of time, functionally killing off any alternatives despite a lot of people objecting. Also, its creator was already pretty divisive even before systemd, and the way systemd was adopted kinda turned that into a creepy hate cult targeted at him.
There’s nothing actually wrong with systemd. I personally wish there was still more support for the alternatives though. Systemd does way more than I need it to, and I just enjoy having a computer that only does what I want.
Am not sure about “giant mess” but indeed it has a lot of moving parts. All that said,
systemd
is solving tangible problems which is why you will almost never see maintainers complain about it. It’s mostly Linux users which by definition oppose any change, Firefox 4 → Firefox 5, Gnome2 → Gnome3, SysV → systemdIf there were better options then they would have been adopted.
I didn’t say there were better options. I didn’t say it shouldn’t have been adopted. I said it has some drawbacks, wasn’t rolled out very well, and I miss having other options even if they aren’t as generally useful for everyone, and it is inevitable that some people would complain because of that. That isn’t a problem. It’s okay to complain sometimes. We all do it.
Pros: Really useful AIO program that does everything Cons: Really useful AIO program that does everything
Great example:
Systemd makes it very easy to bring up DNS with systemd-resolved, and it bridges a gap from the old resolv.conf file and newer DNS standards n stuff.
But then it also means that any alternative DNS clients have to tell resolvd to go away if they want to run, or often times make a systemd service to autostart with systemd and ensure it works perfectly with every possible systemd setup.
There’s nothing inherently wrong with this method of having a centralized AIO thing that handles a a lot of stuff for you, but lots of early Linux people preferred the hardcore KISS principle and found it very beneficial to have everything neatly separated and modular with the service manager’s job to only start and stop services.
Overall, systemd has been remarkably (and relatively) stable and beneficial which people thought would be impossible back when it became initially popular.
If you really want the short version:
Systemd was half baked literally when it came out and figuratively as an idea, so much so that there’s already a replacement for it in the works.
A longer version:
Systemd replaced the init script style of boot and process management, which had been in place for decades. init scripts were so simple they could be understood just by looking at the name: the computer is Initialized by Scripts. Systemd was much more complex and allowed many more tools to interact with the different parts of the computer, but people had to learn these tools. Previously all a person had to understand to deal with the computer was how to edit a text file and what various commands and programs did. After systemd a person has to understand how to use the dozens of invocations of systemctl and it’s variants and if they are dealing with a problem, —you know, the only reason a person would ever be dealing with initializing services— they gotta know what’s going on with the text files that systemd uses to run different commands and programs.
So a person who already understood what was going on might rightly say “hey, this systemd thing is just the same shit with different file locations and more to learn”.
People complain about the creator and maintainer of systemd, lennart poettering . Poettering is also the person behind pulseaudio, an powerful but complex audio management daemon in Linux whose name you only recognize because it’s caused you no end of trouble. Pulseaudio was also replaced relatively quickly by pipewire.
The argument could be made (and probably has) that poetterings work is indicative of the problems with foss developers working as employees of major companies with their job responsibilities inclusive of their foss projects. The developer in that situation has an incentive to make big sweeping changes, they’re being paid for it after all, instead of being more careful and measured.
When every big foss maintainer is trying to find a way to justify being paid for it, their projects are never done.
At least poettering is working for Microsoft, ruining windows now…
E: oh my god I forgot about the binary log files! So before (and now), the universal format for log files was plain text. You know, because it’s a log that’s text. Systemd uses binary log files that need a special tool to open and parse. So if you want to look through them on a computer without that tool you’re kinda screwed. Now systemd isn’t the only software package with binary log files, but many people have made the very persuasive argument that it’s not a trait to copy.
E2: actually spelled the man’s name right. Thanks @floofloof@lemmy.ca !
Init scripts were simple? Man you haven’t seen a bunch of shitty init scripts then.
Oh man you reminded me of bad init scripts that would prevent you from getting to multi-user login. I hope you remembered your root password so you can get into single user mode!
Simple doesn’t mean well done. Badly written code can be simple but still bad