News for hackers. Stuff that matters.
Re:What 'dependency' means in Unix init systems is underspec... by akira2501 on Saturday October 27, 2018 @11:32PM (#18319046)
> and everything else that needs to be run at startup in /etc/profile.

Those are unmanaged services, if they crash for any reason, they won't be restarted? For embedded use cases this is probably fine, but for desktop it is a problem.

> In that world, the dependencies are easily expressable in the shell script itself [...] It feels very much in line with the Unix philosophy.

This is why I use runit and let the program determine it's own dependencies. If it fails to start, runit will try again in 1 second... forever. This actually works great in practice, but it does present a problem for "on-demand" services.

They can still be built, but I've always avoided them for the problems they present. For typical 'inetd' applications, I find ucspi-tcp to be an ideal solution for everything else I try to find some reasonable compromise which for most of the cases where I need a true managed set of services is very rare.

> and retaining all of the baggage from that when it became a personal OS?

It's worse in my mind, they're pantomiming the competition which seems to be a complete misunderstanding of the platform they're using.

Re:What 'dependency' means in Unix init systems is underspec... by toast0 on Sunday October 28, 2018 @12:24AM (#18319173)
If you want the service supervised, there's supervisord or daemontools or while true ; do flakeyserver; done.

On the other hand, some servers are expected to work, and if they crash, it should be investigated, because it's probably a big deal. In my experience auto-restart goes hand in hand with never investigate why it restarts. Sometimes that's appropriate (for software you basically have to run, but don't control), but more often it's terrible.

Re:What 'dependency' means in Unix init systems is underspec... by newacctjhro on Sunday October 28, 2018 @03:19AM (#18319503)
> If you want the service supervised, there's supervisord or daemontools or while true ; do flakeyserver; done.

Or systemd, which is fine for many use cases.

Re:What 'dependency' means in Unix init systems is underspec... by toast0 on Sunday October 28, 2018 @11:31AM (#18321056)
1) can you use systemd to supervise a single process without adopting most of systemd?

2) based on the train of horrors for every single network daemon they write, do you trust that their systems level code is somehow good?

3) well their record on systems level code isn't that great either, username parsing really didn't go well

4) is systemd demonstrating engineering excellence of as simple as possible, but no simpler?

5) out of the box, my experience with Debian + systemd + a crashy service (from packages) was that the specific crashes I was getting didn't result in a restart, because it got a segfault instead of simply exiting. --- also, it changed the boot process so I couldn't ctrl-c out of slow things, so that was net negative.

Re:What 'dependency' means in Unix init systems is underspec... by jakeogh on Sunday October 28, 2018 @04:22PM (#18322920)
Personally, if a service crashes, I want it to stay dead. Otherwise it's less likely to get fixed.