all 23 comments

sorted by: hot top controversial new old
[โ€“] 21 points 1 day ago (17 children)

What's the issue with systemd?

I was shy about Linux for far too long, but have jumped in with both feet recently.

  • source
  • hideshow 17 child comments
  • [โ€“] 8 points 9 hours ago

    Basically systemd is not just a replacement for init, it's a huge project which reimplements a lot of "legacy" services that were handled by other packages. So people think it steps over its boundaries. Not being very Unix-y.

    That said, anything is better than bloody sysvinit. Kids these days don't know how much jank and spaghetti we had to deal with back in those crappy days

  • source
  • parent
  • [โ€“] 8 points 16 hours ago (4 children)

    There is no issue with systemd. It has been a huge improvement over what was there and it is still improving.

    It makes the system consistent without having to configure it using arcane shell scripts. It gives you easy to read config files. It just makes the administrator's life easier.

  • source
  • parent
  • hideshow 4 child comments
  • [+] -6 points 16 hours ago (2 children)

    There is no issue with systemd. It has been a huge improvement over what was there and it is still improving.

    Everything you just said is false.

  • source
  • parent
  • hideshow 2 child comments
  • [โ€“] 9 points 10 hours ago* (last edited 10 hours ago)

    Sorry. But, imho, you're wrong :)

    1. Have you ever written a proper SysV script? It was a nightmare.. The last Systemd unit I wrote was 4 lines I think
    2. SysV had lots of race conditions and was a nightmare to troubleshoot
    3. The old scripts were entirely distribution specific.
    4. The old Init scripts depended on all kinds of hacks to work properly.
    5. Dependencies in init scripts? not really a thing.. You basically just fudged everything all together in a specific order and hope they loaded in sequence as required.. In SystemD, they build dependency handling in (and, built in a lot of prerequisites to handle it)
    6. Because Init scripts don't do real dependency management, they also ain't fast.

    Init scripts are the equivalent of using a perl script as the kernel programming language. They were crappy, hard to read, hard to modify, hard to maintain.

    The biggest objection against Systemd as it stands today was because Linus had an opinion about it (but, admits something like it is needed), and the assumption that redhat == bad, so therefore Systemd == bad

    It's one of those silly arguments that is repeated, by the "OMG, but wayland doesn't have network transparency" crowd. Everyone else just gets shit done (like the pulseaudio crowd) which is why this stuff was heavily adopted

  • source
  • parent
  • [โ€“] 21 points 23 hours ago (1 child)

    The main concerns are:

    • It's mainly developed and funded by red hat a company owned by ibm which has made a lot of bad decisions over the years (of the top of my head I remember their distro's source code was made available to customers only)
    • it's one piece of software that does a ton of different things, this is generally considered a bad thing as it increases the attack surface for potential vulnerabilities but as far as I understand, since it's one of the most maintained software in the Linux ecosystem the probability of it having critical vulnerabilities is probably still pretty low

    That being said, if it works fine for you and those problems don't bother you there's not much reason to use something else.

  • source
  • parent
  • hideshow 1 child comment
  • [โ€“] 10 points 23 hours ago

    Yeah, CachyOS has been working just fine for me. And while both of those points raise an eyebrow for me, I have also heard things about the Cachy team that do the same. Perfect can't be the enemy of good enough. Though to that second point you raised, I just watched a [Veritasium?] video recently on how just such a system-level package was very nearly compromised by what has all the hallmarks of a malicious state actor precisely because it was so seemingly innocuous and open.

    I appreciate the clear and concise explanation. Cheers, friend.

  • source
  • parent
  • [โ€“] 14 points 22 hours ago (5 children)

    I use it and it does the job, but the problem is that it doesn't adhere to Unix philosophy of pluggable components that do one thing. In fact, the systemd suite does dozens of things:

    • init system
    • manages services
    • login
    • user sessions
    • system logs
    • devices
    • networking
    • DNS resolution
    • timers
    • clock synchronization
    • containers
    • even boot loader
  • source
  • parent
  • hideshow 5 child comments
  • [โ€“] 3 points 17 hours ago* (last edited 16 hours ago) (1 child)

    People keep mentioning this. It's not actually a problem

    It's not even a good philosophy anymore (although, not actually even sure where this statement originated). The Linux kernel does more than 1 thing. So does Gnome, KDE, etc.

    The old init scripts did "one thing", but, because they did too little, the scripts were difficult to write, there were issues like race conditions, etc.

    Anyone who ever wrote a SysV script would tell you what an absolute nightmare they were.. Whereas, SystemD, even more complex ones which depend on a lot of factors are now easy (and only a few lines).

  • source
  • parent
  • hideshow 1 child comment
  • [โ€“] 2 points 1 hour ago* (last edited 1 hour ago)

    systemd init scripts are more ergonomic than sysvinit scripts. I agree.

    Does systemd work? Yes. Can I live with it? Yes. I've embraced it since it became a de facto standard.

    The thing I somewhat dislike is that you cannot easily replace individual systemd components. The systemd-logind and systemd-journald for example have to be compiled from the exact same systemd version (e.g. both v234). There are way more gotchas like that if you try to replace them for non-systemd alternatives.

    If you're solely interested in having a working OS then it's all good. If you like to tinker and learn, and want to fully embrace Unix modularity mindset then systemd made your life a little more difficult in that aspect.

    Also I'm glad that distributions like Void Linux, Guix or Devuan from this post title exist that try another approach. I hope one day I'll have enough time to daily drive them!

  • source
  • parent
  • [โ€“] 2 points 15 hours ago*

    I love devuan!!

  • source
  • [โ€“] 8 points 1 day ago (1 child)
  • [โ€“] 6 points 1 day ago (1 child)

    Gonna stick with my CachyOS for now

  • source
  • hideshow 1 child comment