What do you mean by ./just/run/some.sh?
Doesn't the fact that I have to google an alternative workflow for something that behaves consistently across pretty much all other software make its UI worse, at least in that regard? I get that maybe it's a justified trade-off, but that doesn't make the UI any better.
> What do you mean by ./just/run/some.sh?
I suppose just dumping an exec command into an executable file and call it a service.
Why must I have it if I don't need or want it? What is this, Windows?
and the scary part: we are not even fully there yet and it already reeks.
Init scripts are static. They don't change, they aren't ad-hoc, they aren't fragile. All modern Sysv init script systems have static scripts which 'include' a basic key=value pairs of environment variables from a config file. Nobody modifies scripts, or at least, they should not be doing it, and don't need to.
Many init scripts on my system have timestamps from the year 2002, and this system was just installed. They don't change because they don't need to change.
OTOH, Declarative unit files are configuration management taken away from the configuration management system, adding complexity.
Then you have your init scripts for random other services added by $USER, consider yourself lucky you haven't come across these.
What systemd "solved" was already solved.
When you know this you understand that the motivation of the people behind systemd was not technical.
One of the top contributor of systemd is banned from the linux kernel because of bad coding. The other top contributor gave us the fiasco of pulseaudio. Both work at the same major company. Draw your own conclusions.