Subject: bug#51141: guix home reconfigure does not apply changes to shepherd services

From: Oleg Pykhalov <[email-masked]>
Date: Sat, 16 Oct 2021 18:06:14 +0300

Hi Andrew,

Andrew Tropin <[email-masked]> writes:

> On 2021-10-12 01:53, Oleg Pykhalov wrote:
>
>> After changing a home shepherd service I tried to reconfigure with 'guix
>> home reconfigure'.
>>
>> Process started by a service did not restart.  Assuming home shepherd is
>> like Guix System shepherd I tried to 'herd restart SERVICE_NAME', the
>> process restarted but without changes in a service definition.
>
> It's intentional, only `herd load root new-config.conf` called on
> activation, so existing services are not affected to prevent situations,
> where emacs daemon or other important process killed in the middle of
> unsaved work.

If I change something inside a system service definition
SERVICE-shepherd-service and then invoke 'guix system reconfigure', the
service will not restart and not produce any effect until I inoke 'sudo
herd restart SERVICE'.

After herd restart the service will be running with applied changes and
does not require 'herd unload root SERVICE_NAME'.
E.g. nginx-service-type.

I think this behaviour should be the same for home services.  WDYT?