Hacker News new | ask | show | jobs
by embedding-shape 146 days ago
Many of us starting using Linux before systemd was a thing, and you get used to what you use, so when something new appears that are trying (well, in this case "tried and succeeded at") to replace a bunch of stuff, there is a natural push-back against it.

I think systemd also took a relatively non-unixy approach, where it's a big stack to adopt, rather than individual programs that work together well. Typically, we prefer the latter instead of the former, so some pushback is because of that too.

2 comments

Initially i hated systemd for the change it bought and lennarts behavior, but today I'm wiser.

Today i hate systemd for its bad debugability (edit unit & daemon-reload loops), the lockups that happen whenever there is a fifo in the wrong place, and the processes that systemd spawns with no apparent related unit and without means to mask them. And the difficult to disable suspends on machines that never had any business suspending.

Could you please expand bit more about those processes that systemd spawns without units?

Cgroups in Linux kernel, and systemd-cgls tool should let you trace every process to a source

ibus and goa both run under dbus.service.

I ran into this problem because ibus runs later than setxkbmap and undoes the keyboard settings.

OK so those processes are launched not by systemd, but by dbus itself.

There's probably a /usr/share/dbus-1/services/org.freedesktop.IBus.service file in your system and if dbus sees something that tries to talk to IBus, and IBus is not running yet, dbus will launch it for you as directed in that file. In it's own namespace unless directed otherwise.

There's an optional integration between dbus and systemd, look for SystemdService in man dbus-daemon. IBus does not set it. Perhaps it should. I don't know.

> I ran into this problem because ibus runs later than setxkbmap and undoes the keyboard settings.

that must've been pain to debug :). I can see on my system that there's a systemd user service that I could launch with `systemctl --user start org.freedesktop.IBus.session.generic.service`, maybe that would work better than on-demand via dbus in your case.

It's that lack of visibility that still makes me low-key hate it, though it's no longer the part of the modern Linux ecosystem that I hate most so I mostly just accept that it's part of watching a platform I used to really like enshittenate itself.
Same here.
I started using Unix before Linux was a thing, and BSD-style rc scripts were a pain in the arse.

Then along came Linux with its sysvinit-style init scripts, which were a pain in the arse.

Now here's systemd with yet another form of init scripts, which are a pain in the arse.

Each time there's been an evolutionary shift in how we do things, and systemd works pretty well for the way we use desktop systems now. They're also not terrible for servers once you get used to them. I still find them pretty annoying.

Anyway the TL;DR is that computers suck and operating systems suck and init scripts suck and the whole thing sucks, and everything else we've tried is somehow worse than what we have.

It makes me want to just go back to fixing tractors. People are really grateful when you show up in the middle of a muddy field at 10pm and fix their tractor.

We should try runit. Too bad Debian relies on systemd...