On Wed, Feb 14, 2018 at 06:18:07AM +1100, Carlo Zancanaro wrote:
> 
> On Tue, Feb 13 2018, Leo Famulari wrote:
> > > That’s a misunderstanding.  All of the things in the “services”
> > > field of
> > > your operating-system configuration are “system services”, so all of
> > > them get updated.
> > 
> > But, it doesn't try to stop and restart those services in case of any
> > relevant changes, right? Doesn't that require a reboot?
> 
> The "system services" aren't services in the sense of being started/stopped.
> They are an extensible way to modify the system, such that one "service" can
> depend on another for its behaviour. For example, the `etc-service-type` is
> responsible for putting files in /etc, and so other services can "extend" it
> with files that they want placed in /etc. The concept of "starting" and
> "stopping" these services isn't really meaningful, because they just specify
> the state of the system. These services have an effect when you reconfigure.
> 
> One of the things that a "system service" can do is to register a Shepherd
> service. This is a process which will be invoked by Shepherd (pid 1), and
> can be started/stopped with the `herd` command. Reconfigure will not
> register any new Shepherd services, if doing so would involve starting an
> already-running service. So, for instance, you probably have a `guix-daemon`
> process running on your system. Reconfiguring your system will not upgrade
> (and thus restart) your `guix-daemon`. You need to reboot to have the new,
> updated, `guix-daemon` process. (Ideally you would only have to stop/start
> the Shepherd service manually to have the updated version, but at the moment
> doing so will just restart the old version.)
> 
> Hopefully that explanation is helpful. I also hope it's correct.

Thanks, that's a very helpful explanation!

Attachment: signature.asc
Description: PGP signature

Reply via email to