systemd. I don't care that much about the arguments against it
(anymore). It solves a couple of issues and usually doesn't get in my
way.
But there is one thing, that really grinds my gears.
systemd (and udev) introduced the concept of "daemon activation" to
Linux. When some path, socket, or udev service is accessed, a daemon
gets started automatically.
This greatly undermines my control over my machine. While Arch Linux has
the philosophy of not activating daemons on installation (something that
other distributions do), this "daemon activation" means that a systemd
unit file can just linger in the filesystem and systemd uses it
automatically. It doesn't have to be enabled first by doing "systemctl
enable $foo". No, it can just sit there.
In other words, I have to constantly monitor which processes are running
in order to find out if there is any junk that I don't need.
Here's an example. I noticed that logging into my system got slower
recently. Also, opening the "Open file" dialog in GIMP got slower. I
didn't really think about it at first, but today I noticed that udisks2
and several gvfs daemons were running. I never enabled them. I don't use
or need them in the slightest. It's just that their systemd unit files
got installed as dependencies (!) of something else and, boom, those
daemons might get activated automatically without my consent.
I thus maintain this list of stuff that I have to disable:
gopher://uninformativ.de/0/txt/gnu-linux-notes/arch-disable-annoying-daemons.md
Every time I open a terminal (which is using GTK3), I now get a message
like this in my logs:
Apr 03 07:46:05 pinguin xiate[3364]: Error creating proxy: Error calling StartServiceByName for org.gtk.vfs.Daemon: Unit gvfs-daemon.service is masked. (g-io-error-quark, 36)
How great. But at least it isn't running anymore.
Now, the question is: Would it help to switch to a non-systemd OS? How
does this kind of automatic activation work on those other systems? In
the best case scenario, it would simply not exist and you'd have to
manually start these daemons. In the worst case scenario, however, maybe
the *requesting* programs simply launch these daemons themselves and I
have zero control anymore. That could mean, sadly, that systemd is doing
me "a favor" in allowing me to disable that stuff. Sigh.
So, I guess it's time to install Void Linux somewhere and find out.