Imho its not necessary for the average user, adding too much complexity.
For example, I tried to config gpsd to use another port, nothing would work; systemd quietly overrides gpsd's configfile and required additional systemd incantations to change what should have been easy. And the man pages are a mess
And journalctl makes me want to pull my hair out; just let me grep a regular file - discovering namespaces is a nightmare
Personally I think moving away from the hodgepodge of scripts, giving a consistent interface for people to use, extend, etc, is kinda necessary for the average user to have a decent system. It can often be complex to make things simple.
I'm also not sure how systemd could override a config file, because systemd does not write the unit files on a system. Wouldn't that be on the maintainer, distro, or other methods of getting the unit file?
It sets up the network for services, but it's been a minute since so I don't remember the specifics, just that I needed to make a new file in some deep folder to tell it to use a non-standard port.
To me its just more complexity, and not super consistent, which is fine for enterprise, or automation. I'm used to openbsd, regular shell init scripts go in /etc/rc.d, and my logs are in /var/log. Can't get much simpler than that, but i understand its limitations, and Linux is certainly more of a hodgepodge
Edit: found my notes, first was discovering the "gpsd" & "gpsd.socket" namespaces existence, then needing to do "systemd edit --full gpsd.socket" because without "--full" it makes an override file that didn't actually override anything...my note quality declined rapidly after that due to anger
It’s at odds with the philosophy of do one thing and do it well. Its monolithic feature set pushes out smaller contributors and leads to increased reliance on a singular package. This tends to self reinforce. I also use systemd in my current distro so not sure where I stand on this but it’s a fair concern.
Before systemd I had Redhat machines with 3 to 4 years of uptime, and now you need to restart Linux after updates....while Windows people rarely and they laugh at you...
If you use the command line to do the update there is no need to reboot, however, the issues that the offline update is trying to solve still stands.
Some programs can crash when all their files are suddenly swapped for new ones. I've seen multiple linux systems bork themselves during an update because the update itself caused the desktop session to crash, which caused the update process to be interrupted just as it was modifying some crucial files, thus rendering the system unbootable.
For example, I tried to config gpsd to use another port, nothing would work; systemd quietly overrides gpsd's configfile and required additional systemd incantations to change what should have been easy. And the man pages are a mess
And journalctl makes me want to pull my hair out; just let me grep a regular file - discovering namespaces is a nightmare