Peppermint OS Community Forum

General => GNU/Linux Discussion => Topic started by: scifidude79 on June 10, 2019, 06:26:11 pm

Title: systemd
Post by: scifidude79 on June 10, 2019, 06:26:11 pm
OK, serious question here. Why do people hate systemd?

It's been around nearly a decade now, yet you still see people complain about it. Why? What's supposed to be so bad about it? Is it really that much worse than what there was before?

I'm just curious. I usually don't pay much attention to what's underneath the OS, as long as it works.
Title: Re: systemd
Post by: PCNetSpec on June 10, 2019, 07:27:45 pm
It tends to be old timers that dislike it (people who understood, worked with, and appreciated earlier init systems), when I came to Linux (and started to understand how it worked) I was absolutely amazed at how logical and simple configuring it was. Sure you had to understand scripts, but once you did it all became so transparent .. the simplicity was a breath of fresh air and ULTRA powerful.

init in Linux had (AFAIK) always been a set of human readable scripts, usually all doing a simple job then passing output or control to another script .. it all made sense, and you could follow (in either direction) what was going on.

It all followed the Unix philosophy of "do one job, and do it well", where like bash you have single commands that do one job well but can be strung together with pipes, etc. to achieve complex things.

Then along comes systemd, it trashes that simplicity and the Unix philosophy by taking over EVERYTHING .. systemd started off relatively small but as it progressed it suffered major feature creep and effectively took over EVERYTHING, it does stupid things like save logs in binary format so a human can't read them without interpreting software in between. Having absorbed a LOT of tasks that used to be separate it is now one giant single point of failure (and possibly attack), it's harder to backtrack from a failure point and understand what it's doing, it requires a different (and I'd say harder) skillset to understand, it's much harder to tweak to your own requirements, and after all that it hasn't really achieved the goals it claimed of lightness and speed (if anything heavier and slower).

Think of it like this .. You look at the Windows registry and think "what a friggin mess, I could spend 20 years studying it and not understand it", then you discover the beauty and simplicity of the Unix/KISS philosophy .. and just when you've discovered nirvana it's ripped away and you're handed systemd.

systemd works (kinda), but it's become a bloated behemoth that's inflexible and hard to work with .. well at least that's my take on it, it may not be everyone's.


That said, we bitch at everything new (specially when it complicates for no apparent benefit) .. I'm also not a great fan of things like dconf/gsettings either, like the Windows registry that too has become a harder to understand single point of failure for graphical apps where if it becomes corrupt ALL settings (contained in it) are lost .. I was happier when all apps had their own configs, if one became corrupt you lost the settings for a single app.

In short, scripted init systems were simple, powerful, and VERY flexible .. systemd is not simple, takes on WAY too much scope, and (at least for me) is less flexible.

[EDIT 2]

It also doesn't help that systemd was written by the same guy as pulseaudio .. another disruptive technology that's also seemed a little overly complex, and feels 'unfinished' to the extent it constantly seems on a breakage knife edge.
Title: Re: systemd
Post by: scifidude79 on June 10, 2019, 09:22:33 pm
Ah, gotcha. I knew there was more to it than old timers complaining because something new came along. As I said, I don't dive deep into the OS or what's underneath. The only thing I ever used init for was manually installing Nvidia drivers in Ubuntu 9.10 and 10.04. Then Canonical changed something with 10.10 where that didn't work anymore. Other than that, init or systemd, it doesn't matter to me.

I just saw another comment about it on Distro Watch Weekly and I was wondering what the big deal is. Now I know, so thanks for that.
Title: Re: systemd
Post by: PCNetSpec on June 11, 2019, 06:51:33 am
"modularity" and piping those modules together are what made Unix and Linux super powerful, intuitive, and great .. systemd is just another thing stamping all over that simplicity/modularity (along with a lot of the newer DE's), it's simply taken over too much control loosing simplicity and the ability to be flexible in the admin's hands.

It's making Linux more "you get what we give you as a whole", and less "here's a bunch of simple to understand tools/modules, string them together however you wish for your own use case"

Linux got less Linuxy :(

There, that's probably a better (certainly shorter) explanation.
Title: Re: systemd
Post by: scifidude79 on June 11, 2019, 07:28:07 pm
See, I have different wants/priorities when it comes to Linux than some others do. Mine can basically be summed up by:

computer runs = good
computer runs faster without a $100+ "rental" license = f***ing awesome!

The ethos/politics behind the kernel and OS don't matter as much to me. I'm just happy Linux Torvalds decided that people shouldn't have to pay just to turn on and boot up their computer and to run programs. Because, when it's all said and done, that's all an OS really does. What software you can run on top of that OS and how well that software runs makes it a good or bad experience. I'm also glad that so many Linux developers have taken hold of this idea and have turned out so many great operating systems that run on the Linux kernel. You guys make this a great OS that I love to run and that runs my programs great. :)

However, I am sympathetic to the fact that switching from one thing (init) to another (systemd) makes things harder for the people doing the "heavy lifting" as far as the OS is concerned. That's not cool. I wish it was easier for you guys, but this is what you have to work with. I know from reading up on systemd that Ubunut started activating it by default in 2015. I'll bet that unfortunately made a number of peoples' lives harder. :(

Now, the people whining in the DWW comments about systemd making their computer boot 20 seconds slower need to get a life. I'm sorry, but that's how I feel about it. My computer boots in under 1 minute, and that's including the 10 second GRUB countdown because I have another Linux OS installed. To me, that's fast enough. I don't know what another 20-30 seconds less is supposed to get me, in the grand scheme of things.  ::)
Title: Re: systemd
Post by: PCNetSpec on June 11, 2019, 08:20:31 pm
Oh I agree with you, the majority of 'desktop' Linux users have very little reason to care one way or the other .. but you have to remember that Linux use is still MUCH more heavily weighted with system admin types than the other 2 major OS players (desktop Linux use is still VERY small, but that's NOT the case in the server room) .. so this kind of thing hits the fan in a more noticeable way :)

Make system admin harder and less flexible and there's a MUCH higher proportion of Linux users that are alienated than Windows/Mac users .. and bare in mind it's usually those types that are contributors and/or the ones keeping us all safe by being the "many eyes" on the codebase. Alienate those guys at EVERYONE'S peril.

It's system admins (who are still the majority of Linux users) bitching that things are being made less flexible for them just to satisfy a relatively small 'desktop' use case, when it's not necessary and hasn't yet shown ANY real world benefit even to the desktop use case.

Historically it's precisely these kind of arguments that decided the path of Linux development from grass roots UP, so technical arguments were a good thing .. recently however these decisions seem more and more taken at corporate level and FORCED downwards.
(and are also attracting input from people who generally haven't a clue what they're actually arguing for/against, but who think the world damn well needs to hear their opinion anyway .. for want of a better term let's just call them .. erm .. 'Manjaro users Mouthy', yeah that'll do :)))
(oh $%^&, did I say that out loud)

I'm still waiting to be shown evidence of a plus side to systemd .. but I can easily point out its shortcomings.

Put simply, I'm a HUGE fan of flexibility through modularity, it's a MASSIVE strength and what made me fall in love with Linux in the first place .. yet it seems to be being eroded quickly for gain in negative figures :(

Even system admin types are okay with change .. but it has to be shown to be BETTER than what came before, they're against change with no or negative value.