Subject: Re: bug#74534: [shepherd] guix-home managed shepherd shares process group with shell

From: Ludovic Courtès <[email-masked]>
Date: Thu, 28 Nov 2024 08:48:34 +0100

Hello!

Tomas Volf <[email-masked]> skribis:

> Jelle Licht <[email-masked]> writes:
>
>> Addendum:
>> running `herd eval root "(setsid)"` solves my particular issue, making
>> ^C on my shell no longer kill my user shepherd.

Fixed in Shepherd commit 2b41e5bad65e783c7a9cc4d7a3f460cab6b64285.

> Oh, that is neat.  I did not realize this can be fixed like that without
> modifying shepherd's source code.  I turned it into a service that I
> added into my home-environment:
>
>      ;; Bug 74534: Home shepherd can be killed by ^C
>      (simple-service 'call-setsid-in-home-shepherd home-shepherd-service-type
>                      (list
>                       (shepherd-service
>                        (documentation "Give shepherd its own process group.")
>                        (provision '(setsid))
>                        (start #~(lambda _ (setsid) #t))
>                        (one-shot? #t))))

Nice workaound.

Thank you, comrades!

Ludo’.