Andrew Tropin writes: […] > According to what I see in the shepherd tests: > https://git.savannah.gnu.org/cgit/shepherd.git/tree/tests/replacement.sh?h=4c5176f5a7a5a1e7d7f258f585e8ed127a21b99a#n61 > > and how it's implemented in home-shepherd: > https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/home/services/shepherd.scm?h=7c3f28fdc4edc00f66801cd51a5ba08eee44f77f#n59 > > It should work as you expect it. It doesn't. > Tried to do the following: I updated documentation field for a shepherd > service, reconfigured and it got loaded after I restarted a service. > > ~ $ herd doc state > Init, update and maybe destroy state. > ~ $ herd restart state > Service state has been stopped. > Service state has been started. > ~ $ herd doc state > Really init, update and maybe destroy state. > > Didn't check if start action gexp is updated too, but I expect it was. The start action is the interest, or configuration record, or service extension. (guix scripts system reconfigure) has a upgrade-shepherd-services procedure, which was created in 240b57f0ca576708ebf6cfa0dfe2803fa9ff2323 and discussed in https://issues.guix.gnu.org/22039 [ The following text only describes how to reproduce the issue. ] When I tried to write goimapnotify service no changes applied after modifications in home-goimapnotify-shepherd-service [1] and [2], which are typical service-type and record. I didn't have similar issues with self-written system services. [1]: https://gitlab.com/wigust/dotfiles/-/blob/ea2111906233099267f3b581b4aae39ad9645c2d/dotfiles/guixsd/modules/home/services/mail.scm#L28-45 [2]: https://gitlab.com/wigust/dotfiles/-/blob/ea2111906233099267f3b581b4aae39ad9645c2d/dotfiles/guixsd/home.scm#L40-65 Service extension also requires to unload service, e.g. mcron service extension in [1] and [2]. [1]: https://gitlab.com/wigust/dotfiles/-/blob/ea2111906233099267f3b581b4aae39ad9645c2d/dotfiles/guixsd/modules/home/services/package-management.scm#L16-50 [2]: https://gitlab.com/wigust/dotfiles/-/blob/ea2111906233099267f3b581b4aae39ad9645c2d/dotfiles/guixsd/home.scm#L154-161 If I remove the guix-delete-generations service from home configuration, mcron job still exists according to 'herd schedule mcron'. --8<---------------cut here---------------start------------->8--- (home-environment (services (list (service guix-delete-generations-service-type ;; ... )))) --8<---------------cut here---------------end--------------->8--- Oleg.