Subject: Re: [bug#30532] [PATCH] Shepherd: Terminate all services upon SIGTERM or SIGHUP

From: Leo Famulari <[email-masked]>
Date: Tue, 27 Feb 2018 12:22:43 -0500

On Tue, Feb 27, 2018 at 10:45:58AM +0100, Ludovic Courtès wrote:
> Carlo Zancanaro <[email-masked]> skribis:
> 
> > I use Shepherd to manage my user session, and if I log out then
> > Shepherd leaves all my services running. This patch handles SIGTERM
> > and SIGHUP to prevent that.
> 
> Good catch!

"This update broke my workflow" <https://xkcd.com/1172/>

Joking aside, I think this change is correct, but it would be great to
be able to have long-running unprivileged processes, as on systemd.
There, the administrator can use `loginctl enable-linger $USER`. We'd
want to do it in the system configuration. From loginctl(1):

------
Enable/disable user lingering for one or more users. If enabled for a
specific user, a user manager is spawned for the user at boot and kept
around after logouts. This allows users who are not logged in to run
long-running services. Takes one or more user names or numeric UIDs as
argument. If no argument is specified, enables/disables lingering for
the user of the session of the caller.
------