I don’t get the systemd hate. The most common complaint I see is that it’s too bloated, but Arch uses it, so what gives? Is it just that people dislike change? Like Wayland hate (not Wayland frustration)?
From what I heard, people hate systemd because Linus Torvald was approached by the NSA to create a backdoor on Linux, he said it wouldn’t be possible to change the kernel because there were too many eyes on it, and right after that a mysterious hack of kernel.org introduced a mysterious code but it was spotted and removed… well, what was the other thing common to all Linux? The sysv-init, but it was too small, too tight, too specific for them to create a backdoor there, they needed something big, bloated, doing way more than it should do, like it was just supposed to start the system but it can also do unrelated stuff like handling DNS, and then a subsidiary of an American Big Tech company shows up bringing systemd, that solved all the problems the NSA had to create a backdoor on Linux, and all distros jumped into the honeypot :)
People wanting the highly deterministic, but slower behavior of the rc scripts.
People liking the fact that the rc startup was generally almost entirely defined in plain script files
Some folks criticizing certain opinionated things in systemd, as systemd delves deeper into things like capabilities and users.
Systemd can sometimes be a bit weird about how it does/does not capture stdout/stderr as one might guess in some situations.
Some folks not liking the journald angle of binary-only files
Mainly the last point is the only one I personally find potentially aggravating, but since I never really am in a broken system without journalctl I’m not too bothered by it. I have saved myself some effort thanks to systemd including stuff that the daemons used to provide for themselves.
People wanting the highly deterministic, but slower behavior of the rc scripts.
This is literally it for me. I got to work on an alpine system and it was like a breath of fresh air - I could edit the service script files directly. So easy, so little abstraction
So people hate on systemd because they interpret it as an init system thats gone too far and has thus violated the unix principle. in reality systemd is an entire suite of tools based around a very feature rich and robust service management suite that also includes an init system. there is something to be said about the Linux ecosystem’s reliance on systemd, but there are no comparable tools. this is why Arch uses systemd. if you dont want to use systemd, you can use distros like Arco Linux; however currently Gnome no longer works on Arco
Part of the problem with it is that it is very difficult not to use it, for instance if your code uses dbus, that makes systemd a dependency and almost all of the tools are like this. Want to use alternate software with systemd init? A-OK! want to use systemd tools without systemd init? Too bad! This inter-dependence is what I think makes it break the unix philosophy, its components dont like to be replaced or used outside of the “intended” environment of systemd init, keeping it from being replaced without breakage on lot of systems.
On my install for instance, systemd is roped in by xdg-user-dirs (and hence steam), flatpak, fcitx5, and cups. And that is just a few. So the init system isnt a problem to me, the lack of drop-in replacements for its suite of tools is.
I think the biggest problem is that developing each other underlying subsystems without the rest is a hassle. As such no one has come up with a non-systemd dbus replacement. But there is a lot that can be replaced. There are some systemd services i just turn off immediately woth new installs and use something else because they’re such dogshit (looking at you resolved).
it pisses me off so much. what do you mean theres no way to set the priority of nameservers or to force them to be resolved in a specific order? no i don’t want a public nameserver thats only there as backup to take precedence over my local nameserver thats necessary for kerberos to work!
if sysv init or open rc are ed and sed, then systemd is Visual Studio or Pycharm; they have some functionality that overlaps but they scopes of what they do are completely different
That is a self-inflicted wound caused by how Wayland was designed, particularly the part where they offloaded so much responsibility onto the different compositors.
@JackbyDev@nutbutter
People dislike unwanted change. Imagine, you are using some distro for years, and after some update everything changes and you cannot configure system usual way. Many software is changing behaviour You need read tons of docs to change something or worse, while your system hang at boot.
My first try using systemd ended in kernel hang after too much systemd’s dmesg flooding (that was slow arm board, so it’s unlikely someone might help me with debugging it)
But yes, many people just hate systemd because it was forced change, not even because it’s too complex
I’d argue that the systemd trend actually is the one that’s change-adverse.
I remember that before systemd there was a lot of innovation when it comes to init systems… the flexibility of the script-based inits made it so most distros had their own spin. And there was more diversity in components that now are part of systemd. I’d argue that ever since systemd became the de-facto standard, innovation in those areas has become niche. Distros are becoming more homogeneous and less open to changes in that sense. Some components are becoming more and more interdependent and it’s becoming harder to ship, for example, Gnome, without systemd.
I don’t get the systemd hate. The most common complaint I see is that it’s too bloated, but Arch uses it, so what gives? Is it just that people dislike change? Like Wayland hate (not Wayland frustration)?
From what I heard, people hate systemd because Linus Torvald was approached by the NSA to create a backdoor on Linux, he said it wouldn’t be possible to change the kernel because there were too many eyes on it, and right after that a mysterious hack of kernel.org introduced a mysterious code but it was spotted and removed… well, what was the other thing common to all Linux? The sysv-init, but it was too small, too tight, too specific for them to create a backdoor there, they needed something big, bloated, doing way more than it should do, like it was just supposed to start the system but it can also do unrelated stuff like handling DNS, and then a subsidiary of an American Big Tech company shows up bringing systemd, that solved all the problems the NSA had to create a backdoor on Linux, and all distros jumped into the honeypot :)
@grok, is this true?
mind sharing some sources?
As a filthy casual this is the most distressing part.
I’ve observed the situation shift in just a few years from
To
Lol strangely believable in these times.
Nice conspiracy theory.
Damn, really make sense. Especially nowadays a lot of distros now defaults to systemd.
Generally I see a few:
Mainly the last point is the only one I personally find potentially aggravating, but since I never really am in a broken system without journalctl I’m not too bothered by it. I have saved myself some effort thanks to systemd including stuff that the daemons used to provide for themselves.
This is literally it for me. I got to work on an alpine system and it was like a breath of fresh air - I could edit the service script files directly. So easy, so little abstraction
So people hate on systemd because they interpret it as an init system thats gone too far and has thus violated the unix principle. in reality systemd is an entire suite of tools based around a very feature rich and robust service management suite that also includes an init system. there is something to be said about the Linux ecosystem’s reliance on systemd, but there are no comparable tools. this is why Arch uses systemd. if you dont want to use systemd, you can use distros like Arco Linux; however currently Gnome no longer works on Arco
Part of the problem with it is that it is very difficult not to use it, for instance if your code uses dbus, that makes systemd a dependency and almost all of the tools are like this. Want to use alternate software with systemd init? A-OK! want to use systemd tools without systemd init? Too bad! This inter-dependence is what I think makes it break the unix philosophy, its components dont like to be replaced or used outside of the “intended” environment of systemd init, keeping it from being replaced without breakage on lot of systems.
On my install for instance, systemd is roped in by xdg-user-dirs (and hence steam), flatpak, fcitx5, and cups. And that is just a few. So the init system isnt a problem to me, the lack of drop-in replacements for its suite of tools is.
I think the biggest problem is that developing each other underlying subsystems without the rest is a hassle. As such no one has come up with a non-systemd dbus replacement. But there is a lot that can be replaced. There are some systemd services i just turn off immediately woth new installs and use something else because they’re such dogshit (looking at you resolved).
god i fucking hate systemd-resolved
+1 on systemd-resolved. dumpster fire of horribleness. i dont mind 99% of systemd subsystems, but this one tips me over the edge, hard.
it pisses me off so much. what do you mean theres no way to set the priority of nameservers or to force them to be resolved in a specific order? no i don’t want a public nameserver thats only there as backup to take precedence over my local nameserver thats necessary for kerberos to work!
So you’re saying systemd is the emacs of init?
if sysv init or open rc are ed and sed, then systemd is Visual Studio or Pycharm; they have some functionality that overlaps but they scopes of what they do are completely different
I’m more frustrated with GNOME devs sabotaging Wayland.
Say no more!
That is a self-inflicted wound caused by how Wayland was designed, particularly the part where they offloaded so much responsibility onto the different compositors.
@JackbyDev @nutbutter
People dislike unwanted change. Imagine, you are using some distro for years, and after some update everything changes and you cannot configure system usual way. Many software is changing behaviour You need read tons of docs to change something or worse, while your system hang at boot.
My first try using systemd ended in kernel hang after too much systemd’s dmesg flooding (that was slow arm board, so it’s unlikely someone might help me with debugging it)
But yes, many people just hate systemd because it was forced change, not even because it’s too complex
I’d argue that the systemd trend actually is the one that’s change-adverse.
I remember that before systemd there was a lot of innovation when it comes to init systems… the flexibility of the script-based inits made it so most distros had their own spin. And there was more diversity in components that now are part of systemd. I’d argue that ever since systemd became the de-facto standard, innovation in those areas has become niche. Distros are becoming more homogeneous and less open to changes in that sense. Some components are becoming more and more interdependent and it’s becoming harder to ship, for example, Gnome, without systemd.