(address . bug-guix@gnu.org)
With OpenSSH turned into inetd style in commit
808b9e850491c7b1d867a5f1f4d5ee6f61f345d4, the service upgrade code used
by ‘guix system reconfigure’ and ‘guix deploy’ wrongfully decides that
the ‘sshd-*’ transient services corresponding to individual SSH
connections should be closed:
Toggle snippet (32 lines)
$ sudo guix system reconfigure …
[…]
guix system: chargeur d'amorçage correctement installé sur « (/dev/sda) »
0,0 Mo seront téléchargés
module-import-compiled 20KiB 1.2MiB/s 00:00 [##################] 100.0%
The following derivation will be built:
/gnu/store/n99ahnnw94cay1drg499kxsg5ma6598p-upgrade-shepherd-services.scm.drv
0,0 Mo seront téléchargés
module-import-compiled 20KiB 1.8MiB/s 00:00 [##################] 100.0%
construction de /gnu/store/n99ahnnw94cay1drg499kxsg5ma6598p-upgrade-shepherd-services.scm.drv...
shepherd: Removing service 'sshd-1'...
shepherd: Service sshd-1 has been stopped.
shepherd: Transient service sshd-1 unregistered.
shepherd: Done.
shepherd: Removing service 'sshd-3'...
shepherd: Service sshd-3 has been stopped.
shepherd: Transient service sshd-3 unregistered.
shepherd: Done.
shepherd: Service swap-swap could not be started.
shepherd: Service host-name has been started.
shepherd: Service user-homes has been started.
shepherd: Service sysctl has been started.
shepherd: Service host-name has been started.
shepherd: Service term-console could not be started.
shepherd: Service bluetooth has been started.
Pour compléter la mise à jour, lancez « herd restart SERVICE » pour arrêter,
mettre à jour et redémarrer tous les services qui n'ont pas été redémarrés
automatiquement.
Lancez « herd status » pour visualiser la liste des services de votre système.
I think the solution is to leave transient services untouched.
Unfortunately, the status sexp returned by ‘services->sexp’ currently
lacks information about whether a service is transient.
Ludo’.