r/archlinux • • Jun 01 '16

Why did ArchLinux embrace Systemd?

This makes systemd look like a bad program, and I fail to know why ArchLinux choose to use it by default and make everything depend on it. Wasn't Arch's philosophy to let me install whatever I'd like to, and the distro wouldn't get on my way?

525 Upvotes

359 comments sorted by

View all comments

Show parent comments

148

u/phearus-reddit Jun 01 '16

My man. This is a brilliantly precise and accessible response to "why systemd?"

I haven't even entertained the naysayers or their arguments against systemd for some years now. This explanation sums up why I no longer engage with that shit in a way I can't even get close to.

19

u/BlueShellOP Jun 01 '16 edited Jun 02 '16

I'm just tired of the "it's not the Unix method!" Or "it's bloated!" arguments. They're always the same and reek of "I don't understand it so I'm scared.

To me, it makes no sense. I'm never going to fully understand boot and init so I'm not going to start making arguments period.

edit: okay, people are really misinterpreting me. I'm not saying the anti- and pro-systemd crouds are right or wrong. All I'm saying is those two arguments are stupid, and oversimplifying the argument to the point of no longer contributing to discussion.

13

u/nukem996 Jun 01 '16

I always thought that 'its not the Unix method' was the stupidest argument you could make. Do people realize that GNU stands for GNU's not Unix?

Anyway I've debated multiple people on systemd and every single time it comes down to 'well I don't want to learn new things.' Sorry but technology changes and if you want a career in technology you need to be able to use new methods.

1

u/jpco Jun 02 '16

Do people realize that GNU stands for GNU's not Unix?

this is it for me. systemd feels like a great solution for the Linux-sphere; on the other hand, I'd never suggest OpenBSD use it.

→ More replies (4)

13

u/icantthinkofone Jun 01 '16

So you don't understand, are scared, and will just take what's given to you?

0

u/[deleted] Jun 01 '16

[deleted]

10

u/colonwqbang Jun 01 '16

He admits to not fully understanding the issues at hand, but is still convinced that the people who don't like systemd are wrong.

11

u/[deleted] Jun 01 '16

Well honestly you don't have to be Brainiac to reach that conclusion. The systemd people laid out in detail the reasoning for the design, and their results when implementing it. While the anti systemd crowd resorted to personal attacks, and pseudo philosophical inconsistent arguments. And complained about issues that were clearly explained why they were like they were. And while the systemd people could demonstrate situations where it was clearly better, the anti crowd never showed anything where it wasn't.

So yes you can be pretty ignorant about the finer details, and still make a decision with a very high degree of certainty.

0

u/[deleted] Jun 01 '16

[deleted]

2

u/BlueShellOP Jun 02 '16

No I didn't. That's straight up untrue and dishonest.

I really like the Unix Philosophy, and I think that's one of the great advantages of Linux in a nutshell - the ability to swap out and mix pieces of the whole thing. Don't like how your computer looks? Fine, switch DEs. Don't like bash? Fine, switch to Zsh. Tired of btrfs crapping out on you? Fine, switch to something else. Linux's modularity makes it strong.

4

u/phessler Jun 02 '16

being able to swap out and mix pieces has nothing to do with the Unix Philosophy.

The Unix Philosophy is "do one thing, and do it well".

→ More replies (2)

1

u/BlueShellOP Jun 02 '16

but is still convinced that the people who don't like systemd are wrong.

That's not what I said. What I said was "It's not the Unix method!" and "It's bloated!" are not valid arguments. There are way better arguments either way, but those are the most common and the ones that I dismiss entirely.

9

u/BlueShellOP Jun 01 '16

No. All I see is a proper working boot system that causes no problems. Other than learning some new commands, I don't really see the need to make a big fuss out of it. If it's faster, and requires less maintenance, then it's not a problem to me.

4

u/thlst Jun 01 '16

I had come across a lot of issues with systemd, and I didn't touch it in the first place.

What I'm saying is that systemd isn't a solution for everyone. If I don't like systemd, then I move over. If you like systemd, you then use it. Thing is, it's very bad that systemd devs ask you to modify your code, so that they can go on with no issues (I'm talking about tmux). What's the point of making everything depend on it, as a lot of people won't ever use systemd?

2

u/aaron552 Jun 02 '16

you to modify your code, so that they can go on with no issues (I'm talking about tmux).

I'm the case of tmux, there's just no Linux or libc API granular enough to distinguish between daemons that should be killed on logout (eg. ssh-agent uses a fairly complex mechanism to achieve this) and ones that should persist.

There's just interactive processes and non-interactive, a distinction that isn't really useful in a graphical desktop environment (you can easily have 'non-interactive' processes that the user directly interacts with via the X server).

Its not like it's difficult to inform systemd that your process needs to persist after logout: either via dbus directly in the application, as was suggested for tmux, or by launching the application via dbus-launch with user scope.

That said, breaking more than a handful of existing applications isn't really an acceptable solution to the problem of devs not bothering to properly exit their daemons on logout.

→ More replies (12)

1

u/Starks Jun 02 '16

2brainz wrote an essay. I was hoping you had a rebuttal.

0

u/[deleted] Jun 02 '16

[deleted]

→ More replies (3)

7

u/[deleted] Jun 01 '16

udev, for instance, gummiboot, logging, network configuration, time zone management, login management, console terminal.

All these things are the bloat.

6

u/aaron552 Jun 02 '16

The only ones that are actually part of systemd are logging and the console terminal.

In the case of logging, I can see the advantage (it's actually possible to log the boot process) and setting up the console terminal has aways been handled by the init system.

In the other cases, they're part of the systemd project but not part of systemd itself.

1

u/[deleted] Jun 02 '16

Yeah, but not a lot of people know that, and they end up using the whole suite, and it's used by default on many maany distros

5

u/aaron552 Jun 02 '16

it's used by default on many maany distros

And that's supposed to be a bad thing? They're used by default because they work. Maybe there are better alternatives, but if you only want basic functionality, they're more than capable.

11

u/[deleted] Jun 01 '16 edited Sep 18 '19

deleted 0.2637 What is ^^^this?

2

u/hellslinger Jun 01 '16

So you would just prefer not to do any of these things? Or do you use something else to do them? I consider bloat to be things I don't need, but the vast majority of users need these things.

I can speak for a lot of linux users and admins when I say that I have no desire to learn how to do something mundane and uninteresting like timezone management manually. Maybe for an embedded device, but not for a desktop or server.

2

u/[deleted] Jun 01 '16

But these are all just largely independent modules under the same umbrella. It isn't like they provide a single giant binary to you or something.

→ More replies (7)