--- Begin Message ---
Subject: |
‘guix system reconfigure’ does not always load new services |
Date: |
Sat, 13 Jan 2018 22:05:07 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/25.3 (gnu/linux) |
Hello,
ng0 <address@hidden> skribis:
> I noticed a `herd restart guix-daemon` after reconfigure wasn't
> enough, I had to reboot to make use of the new guix. Could this
> be improved?
Yes, that’s a problem (Andreas also reported it to me a couple of days
ago.)
The problem is that ‘guix system reconfigure’ reloads and restarts
services that were not currently running. For other services, such as
guix-daemon, it does nothing—it does not even load the new version.
This is because the Shepherd currently doesn’t offer a way to “hot-swap”
services without stopping them. Instead it first unloads the service,
loads the new one, and (optionally) starts it. See (gnu services herd).
So what we would need is to somehow overwrite the current service. The
problem is that it may be incorrect, for instance because we’d like to
use the ‘stop’ action of the previous service when we eventually stop
it, rather than the new ‘stop’ action. So perhaps we should register
the new service so that it replaces the old one only when the old one is
stopped.
Thoughts?
Ludo’.
--- End Message ---