←back to thread

466 points CoolCold | 6 comments | | HN request time: 0.202s | source | bottom
Show context
kbar13 ◴[] No.40208219[source]
systemd has been a net positive for the linux ecosystem. remember when you had to write bash scripts to start, stop, restart services and handle any other signals you want to send it? nowadays it's a unit file (basically just an ini file) away with relatively straightforward API. and you can actually declare startup dependencies and other useful relationships past just "prepend a number signifying when it should run globally to the front of the filename". it's provided an extensible platform with which higher level orchestration frameworks like ansible / ignition can easily templatize services or other system configuration.

since the beginning of systemd people have moaned about how complex it is and how we're reinventing the wheel. yet time and time again the people actually working on the project show that the solution they've come up with is the result of the problem they're facing on a daily basis. it's quite annoying that the armchair linux experts complain about how "lol systemd is so stupid for reinventing the wheel, give me my shell scripts back", maybe think about whether or not you have a legitimate issue not being addressed by the solution proposed or if you are just getting rage baited by a headline.

replies(17): >>40208249 #>>40208286 #>>40208374 #>>40208481 #>>40209110 #>>40209185 #>>40212620 #>>40212965 #>>40214704 #>>40214800 #>>40214923 #>>40215163 #>>40215552 #>>40215793 #>>40216445 #>>40217144 #>>40217617 #
mid-kid ◴[] No.40208481[source]
I'd agree with your message if systemd was just an init system.
replies(1): >>40210220 #
bryanlarsen ◴[] No.40210220[source]
It's not difficult to use some parts of systemd without using others. Is it any different than something like coreutils, another package of linux utilities that are synergistic but usable seperately? Nobody complains about coreutils being bundled. Even the rewrite in rust crowd bundle them.
replies(2): >>40212661 #>>40220315 #
jacoblambda ◴[] No.40212661[source]
It really is not. This "sudo replacement" (which under the hood is systemd-run) will apparently require quite a bit of the systemd stack to operate. That is not something you have access to in many lightweight container distros or on other non-systemd distros.

And coreutils is expected because most people use GNU/Linux. Coreutils is that GNU userland part. And either way, the majority of coreutils are GNU implementations of standard unix components. You can use most software that depends on coreutils on other *nix platforms like BSD for this reason.

replies(1): >>40213200 #
1. bryanlarsen ◴[] No.40213200[source]
I doubt you'll need to run systemd as pid 1 to use this.
replies(2): >>40214620 #>>40215182 #
2. navaati ◴[] No.40214620[source]
Oh you do: this work completely differently from sudo, there is no suid binary involved, instead it does IPC to the systemd pid 1 and asks it to spawn you process, attached to your current terminal. So if you don't have systeme as pid 1, it'll have noone to talk to.

Whether you like that or not is for you to decide.

replies(1): >>40215434 #
3. ◴[] No.40215182[source]
4. bryanlarsen ◴[] No.40215434[source]
IPC will likely be over d-bus. The new process will fork off a systemd which is almost always pid 1, but it might not have to be.
replies(1): >>40217986 #
5. dijit ◴[] No.40217986{3}[source]
are there any non-systemd DBus options anymore? I had a hard time a year ago setting up Gentoo because there were no maintained options at that time.
replies(1): >>40218270 #
6. jacoblambda ◴[] No.40218270{4}[source]
There are. Gentoo has actually always used the FreeDesktop reference implementation instead of sd-bus (the systemd implementation).

FreeDesktop also maintains a list of implementations (also including bindings so you have to read to find which ones are full impls vs libdbus bindings).

https://www.freedesktop.org/wiki/Software/DBusBindings/