I dislike journalctl more than systemd. And I don't get what's the advantage of systemctl vs previous solutions, why would that of all things make one reconsider.
I miss rc.local and crontabs. Now if you excuse me I have a cloud to yell at.
The only advantage I see is that it actually seems to keep a better handle on the status of the process/service. The old-style unit scripts would often get out of sync and not realize that a process had died, or if they did they would repeatedly respawn a service that would just die again. Maybe that was less of a problem in later years than I experienced earlier, but it was there.
The whole init.d system felt very ad-hoc with every script working a little bit differently, giving different output styles, etc.
I feel that. I've used Linux before systemd but when I went into the "nitty gritty" by using arch systemd had just been implemented and everything I learned about startup services init etc. was systemd based. When I started my career working in servers they were redhat/CentOS so still systemd and when I switched jobs Debian already had made the switch so (most of) the systems at my new job were also systemd based. Of course I learned the basics of init files and even some rc.d but systemd still makes the most sense to me and like you say it's "comfy".
SystemD works great, but the corporations and politics behind it will ruin Linux if they fully take over.
They are already optimizing heavily for IoT just because IBM is heavily focused on IoT
Just search IBM IoT and look at IBM acquisitions in the last decade.
Everyone "used to work for that company" on the internet. And even if you used to work there it doesn't mean you know anything about their business.
IBM is more of a Holding now. Like Volkswagen. Just because someone works at audi it doesn't mean they know anything about Lamborghini.
From experience when I look for something "easier to digest" I end up spending more time tinkering and fucking about than just reading the man pages because the latter usually had a lot more context about the software and any other weird quirks.
And if you're not a 50 year-old Linux admin, Arch wiki.
Edit: don't be put off by the Arch wiki if you don't use Arch. 99% of the time, Linux is Linux, and you can follow it for just about anything other than package management.
I don't hate systemd, but I prefer OpenRC and usually use it on my Debian systems. My preference is purely vibes based though, and I think most of the anti-systemd arguments in common usage are a bit silly.
My biggest problem with systemd is that Red Hat has basically used it to push their-way-or-the-highway on many Linux distros. That said, in many situations systemd is better than what came before. Except systemd-networkd. It's a PITA as far as I'm concerned.
I see why that may not be an ideal position in an ideological sense, where every distro uses the same thing, but i see it the other way around: it's a way to finally attempt to standardize Linux desktops. Having a standard desktop is crucial for mainstream adoption, because developers won't bother supporting 4837 different combinations of software. This is the reason I am really excited for the future with flatpak, xdg-portals, systemd, pipewire, Wayland etc etc. This way the distro is no longer the platform, it's the distro agnostic software stack that becomes the target platform. For example there's no longer a need to support KDE's file picker, and gnome's file picker and xfce's, you can just call the portal and it will (should) display a file picker. And if the user doesn't have a supported environment (which the vast majority don't) then the burden is on them for being different I guess :p
@pewgar_seemsimandroid systemd has a lot of really good things...
But it's too complex for init process and even too complex for service manager. Many solib dependencies causes long start, big memory footprint and possibe security issues. Many things might be implemented in some separate services, running with restricted permissions and optionally disabled.
initng was very similar to systemd, but was very simple and very much faster
Hell, pass init=/bin/yes and you'll see even more greatly reduced RAM usage!
❯ ps aux | grep /usr/lib/sys | awk '{print $6}' | sed 's/$/+/' | tr -d '\n' | sed 's/+$/\n/' | bc
266516
So that's 260 MiB of RSS (assuming no shared libs which is certainly false) for:
Daemon manager
Syslog daemon
DNS daemon (which I need and would have to replace with dnsmasq if it did not exist)
udev daemon
network daemon
login daemon
VM daemon (ever hear of the principle of least privilege?)
user daemon manager (I STG anyone who writes a user daemon by doing nohup & needs to be fired into the sun. pkill is not the tool I should have to use to manage my user's daemons)
For comparison the web page I'm writing this on uses 117 MiB, about half. I'll very gladly make the tradeoff of two sh.itjust.works tabs for one systemd suite. Or did you send that comment using curl because web browsers are bloated?
For another comparison 200 MiB of RAM is less than two dollars at current prices. I don't value my time so low that I'll avoid spending two bucks by spend hours debugging whatever bash scripting spaghetti hell other init systems cling onto to avoid "bloat". I've done it, don't miss it.
Well, I think that if declarative configuration is what you're looking for, the GNU Guix distro with its GNU Shepherd init system might be a more pertinent solution than SystemD