shepherd restarts service during shutdown and then waits forever

  • Open
  • quality assurance status badge
Details
6 participants
  • Ashvith Shetty
  • Dariqq
  • Felix Lechner
  • Ludovic Courtès
  • Richard Sent
  • Tomas Volf
Owner
unassigned
Submitted by
Dariqq
Severity
grave
Merged with

Debbugs page

Dariqq wrote 5 days ago
(address . bug-guix@gnu.org)
bbcb0560-64a8-4fb0-a9c2-e05f2d5b042b@posteo.net
Hi,

After I updated today I noticed that the system was not shutting down
properly. The reason was that stopping of user-processes causes shepherd
to respawn thermald.

The following is happening on tty12 (and is annoyingly not logged to
/var/log/messages):

[...]
Stopping user processes
Sending all processes the TERM Signal
thermald : Terminating on user request
Respawning thermald
Service service thermald
Service thermald running with value ...
Service thermald has been started
[...]

Waiting for process termination (processes left (1 THERMALD-PID)
Waiting for process termination (processes left (1 THERMALD-PID)
Waiting for process termination (processes left (1 THERMALD-PID)
[...]

The issue is that thermald (and possibly other services) don't depend on
user-processes service. Don't know why I had no problems until now.

Have a nice day,
Dariqq
Ludovic Courtès wrote 5 days ago
(name . Dariqq)(address . dariqq@posteo.net)(address . 76338@debbugs.gnu.org)
87frkdpzvq.fsf@gnu.org
Hi,

Dariqq <dariqq@posteo.net> skribis:

Toggle quote (3 lines)
> The issue is that thermald (and possibly other services) don't depend
> on user-processes service. Don't know why I had no problems until now.

This should be fixed: they should all depend on ‘user-processes’.

Probably the bug you’re seeing here was revealed by

But perhaps shepherd should also just disable all services when shutting
down so that respawning doesn’t happen.

Ludo’.
Ludovic Courtès wrote 5 days ago
control message for bug #76338
(address . control@debbugs.gnu.org)
871pvxpyu6.fsf@gnu.org
severity 76338 important
quit
Dariqq wrote 4 days ago
Re: bug#76338: shepherd restarts service during shutdown and then waits forever
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 76338@debbugs.gnu.org)
0e689f92-c5e9-4c3b-8ccf-846471919839@posteo.net
Hi Ludo,

On 16.02.25 18:23, Ludovic Courtès wrote:
Toggle quote (9 lines)
> Hi,
>
> Dariqq <dariqq@posteo.net> skribis:
>
>> The issue is that thermald (and possibly other services) don't depend
>> on user-processes service. Don't know why I had no problems until now.
>
> This should be fixed: they should all depend on ‘user-processes’.
>
For the record I will not be verifying every daemon service manually in
the guix codebase whether it correctly depends on user-processes. Many
do directly however also a lot only do transitively. The problematic
cases most likely are where a service sets no requirement field at all

The two services that I know of are thermald and virtlogd.

Also the purpose of the user-processes service (and maybe also the
filesystems) service as synchronization targets are documented only in
their definition and implicitly with the shepherd graph image.
System-shepherd services that dont depend on anything are probably a bad
idea and seems like a very common mistake for (new) users implementing
their own services.
Maybe this should be a a more explicit note in the documentation for
shepherd-service-requirement and/or a small paragraph in the shepherd
services intro?


Toggle quote (4 lines)
> Probably the bug you’re seeing here was revealed by
> <https://issues.guix.gnu.org/75829>.
>

Is there a reason for user-processes to block on waiting for every
process execpt PID1 to exit or why during the (sleep 1) calls other
services (that falsely dont depend on user-processes) are not being
stopped in the meantime which would help resolve the deadlock?

This causes every daemon indirectly to depend on user-processes but
shepherd may not know about it.

Toggle quote (3 lines)
> But perhaps shepherd should also just disable all services when shutting
> down so that respawning doesn’t happen.

I guess shepherd is just doing its duty as a service manager. Something
else send SIGTERM/SIGKILL and shepherd kindly respawns it as instructed.
But insisting on restarting a service seems a bit pointless to me during
shutdown/reboot where everything will be terminated anyway.

Toggle quote (2 lines)
>
> Ludo’.
Tomas Volf wrote 4 days ago
control message for bug #76368
(address . control@debbugs.gnu.org)
3c5c6a6450e2ba1385106276ec20add3@wolfsden.cz
merge 76368 76338
quit
Felix Lechner wrote 2 days ago
Rspamd too
(address . 76338@debbugs.gnu.org)
87bjuxx0xn.fsf@lease-up.com
Hi,

I believe Rspamd should likewise depend on 'user-processes'. Thanks!

Kind regards
Felix
Ashvith Shetty wrote 45 hours ago
bug#76338: shepherd restarts service during shutdown and then waits forever
(address . 76338@debbugs.gnu.org)
0bf18ad5d457fd5ca011e0d7b233d31208ac61b3.camel@zohomail.in
Hello,
I also have the same exact issue. Here's the shutdown log:

Toggle snippet (171 lines)
Feb 20 00:37:30 localhost elogind[426]: System is powering down.
Feb 20 00:37:30 localhost elogind[426]: Removed session c2.
Feb 20 00:37:30 localhost NetworkManager[503]: <info>
[1739992050.8059] device (wlp3s0): state change: activated ->
deactivating (reason 'connection-removed', sys-iface-state: 'managed')
Feb 20 00:37:30 localhost NetworkManager[503]: <info>
[1739992050.8069] manager: NetworkManager state is now CONNECTED_LOCAL
Feb 20 00:37:30 localhost dbus-daemon[415]: [system] Activating service
name='org.freedesktop.nm_dispatcher' requested by ':1.10' (uid=0
pid=503 comm="/gnu/store/zav4w5jrcn4yhcawg9l0smv7g2hmyais-networ")
(using servicehelper)
Feb 20 00:37:30 localhost dbus-daemon[415]: [system] Successfully
activated service 'org.freedesktop.nm_dispatcher'
Feb 20 00:37:30 localhost vmunix: [40112.799390] wlp3s0:
deauthenticating from 54:37:bb:d2:dd:3d by local choice (Reason:
3=DEAUTH_LEAVING)
Feb 20 00:37:30 localhost shepherd[1]: Stopping service root...
Feb 20 00:37:30 localhost shepherd[1]: Exiting shepherd...
Feb 20 00:37:30 localhost shepherd[1]: Stopping service swap-swap...
Feb 20 00:37:30 localhost shepherd[1]: Service swap-swap stopped.
Feb 20 00:37:30 localhost shepherd[1]: Service swap-swap is now
stopped.
Feb 20 00:37:30 localhost shepherd[1]: Stopping service lightdm...
Feb 20 00:37:31 localhost wpa_supplicant[437]: wlp3s0: CTRL-EVENT-
DISCONNECTED bssid=54:37:bb:d2:dd:3d reason=3 locally_generated=1
Feb 20 00:37:31 localhost wpa_supplicant[437]: wlp3s0: CTRL-EVENT-DSCP-
POLICY clear_all
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2420] device (wlp3s0): state change: deactivating ->
disconnected (reason 'connection-removed', sys-iface-state: 'managed')
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2428] dhcp4 (wlp3s0): canceled DHCP transaction
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2428] dhcp4 (wlp3s0): activation: beginning transaction
(timeout in 45 seconds)
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2429] dhcp4 (wlp3s0): state changed no lease
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2435] dhcp6 (wlp3s0): canceled DHCP transaction
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2435] dhcp6 (wlp3s0): activation: beginning transaction
(timeout in 45 seconds)
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2436] dhcp6 (wlp3s0): state changed no lease
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2809] device (wlp3s0): set-hw-addr: set MAC address to
5E:3F:03:00:57:16 (scanning)
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.2908] dns-mgr: Removing DNS information from
/gnu/store/139drha7awx79jb2js4m88p2jsl7zasc-openresolv-
3.13.2/sbin/resolvconf
Feb 20 00:37:31 localhost nscd: 1232 monitored file `/etc/resolv.conf`
was written to
Feb 20 00:37:31 localhost shepherd[1]: Service lightdm stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service lightdm is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service ssh-daemon...
Feb 20 00:37:31 localhost shepherd[1]: Service ssh-daemon stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service ssh-daemon is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service avahi-daemon...
Feb 20 00:37:31 localhost shepherd[1]: Service avahi-daemon stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service avahi-daemon is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service ntpd...
Feb 20 00:37:31 localhost ntpd[619]: ntpd exiting on signal 15
(Terminated)
Feb 20 00:37:31 localhost shepherd[1]: Service ntpd stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service ntpd is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service dockerd...
Feb 20 00:37:31 localhost shepherd[1]: Service dockerd stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service dockerd is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service
NetworkManager...
Feb 20 00:37:31 localhost shepherd[1]: [NetworkManager] Terminated
Feb 20 00:37:31 localhost NetworkManager[503]: <warn>
[1739992051.4008] dns-mgr: could not commit DNS changes:
/gnu/store/139drha7awx79jb2js4m88p2jsl7zasc-openresolv-
3.13.2/sbin/resolvconf returned error code
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5026] caught SIGTERM, shutting down normally.
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5029] device (wlp3s0): supplicant interface state:
completed -> disconnected
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5029] device (p2p-dev-wlp3s0): supplicant management
interface state: completed -> disconnected
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5032] device (wlp3s0): supplicant interface state:
disconnected -> interface_disabled
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5033] device (p2p-dev-wlp3s0): supplicant management
interface state: disconnected -> interface_disabled
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5034] device (wlp3s0): supplicant interface state:
interface_disabled -> disconnected
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5035] device (p2p-dev-wlp3s0): supplicant management
interface state: interface_disabled -> disconnected
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5179] device (wlp3s0): state change: disconnected ->
unmanaged (reason 'unmanaged', sys-iface-state: 'managed')
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5719] device (wlp3s0): set-hw-addr: reset MAC address to
98:3B:8F:30:37:7A (unmanage)
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.5879] device (p2p-dev-wlp3s0): state change: disconnected -
> unmanaged (reason 'removed', sys-iface-state: 'removed')
Feb 20 00:37:31 localhost wpa_supplicant[437]: p2p-dev-wlp3s0: CTRL-
EVENT-DSCP-POLICY clear_all
Feb 20 00:37:31 localhost wpa_supplicant[437]: p2p-dev-wlp3s0: CTRL-
EVENT-DSCP-POLICY clear_all
Feb 20 00:37:31 localhost wpa_supplicant[437]: nl80211: deinit
ifname=p2p-dev-wlp3s0 disabled_11b_rates=0
Feb 20 00:37:31 localhost NetworkManager[503]: <info>
[1739992051.6236] exiting (success)
Feb 20 00:37:31 localhost shepherd[1]: Service NetworkManager stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service NetworkManager is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service wpa-
supplicant...
Feb 20 00:37:31 localhost wpa_supplicant[437]: wlp3s0: CTRL-EVENT-DSCP-
POLICY clear_all
Feb 20 00:37:31 localhost wpa_supplicant[437]: wlp3s0: CTRL-EVENT-DSCP-
POLICY clear_all
Feb 20 00:37:31 localhost wpa_supplicant[437]: nl80211: deinit
ifname=wlp3s0 disabled_11b_rates=0
Feb 20 00:37:31 localhost shepherd[1]: Service wpa-supplicant stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service wpa-supplicant is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service bluetooth...
Feb 20 00:37:31 localhost bluetoothd[428]: Terminating
Feb 20 00:37:31 localhost bluetoothd[428]: Stopping SDP server
Feb 20 00:37:31 localhost bluetoothd[428]: Exit
Feb 20 00:37:31 localhost shepherd[1]: Service bluetooth stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service bluetooth is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service upower-
daemon...
Feb 20 00:37:31 localhost shepherd[1]: Service upower-daemon stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service upower-daemon is now
stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service pam...
Feb 20 00:37:31 localhost shepherd[1]: Service pam stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service pam is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service elogind...
Feb 20 00:37:31 localhost elogind[426]: Received signal 15 [TERM]
Feb 20 00:37:31 localhost shepherd[1]: Service elogind stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service elogind is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service libvirtd...
Feb 20 00:37:31 localhost shepherd[1]: Service libvirtd stopped.
Feb 20 00:37:31 localhost shepherd[1]: Service libvirtd is now stopped.
Feb 20 00:37:31 localhost shepherd[1]: Stopping service dbus-system...
Feb 20 00:37:31 localhost ModemManager[531]: <msg> caught signal,
shutting down...
Feb 20 00:37:31 localhost nm-dispatcher: Caught signal 15, shutting
down...
Feb 20 00:37:32 localhost shepherd[1]: Service dbus-system stopped.
Feb 20 00:37:32 localhost shepherd[1]: Service dbus-system is now
stopped.
Feb 20 00:37:32 localhost ModemManager[531]: <msg> ModemManager is shut
down
Feb 20 00:37:32 localhost shepherd[1]: Stopping service term-console...
Feb 20 00:37:32 localhost shepherd[1]: Service term-console stopped.
Feb 20 00:37:32 localhost shepherd[1]: Service term-console is now
stopped.
Feb 20 00:37:32 localhost shepherd[1]: Stopping service nscd...
Feb 20 00:37:32 localhost shepherd[1]: Service nscd stopped.
Feb 20 00:37:32 localhost shepherd[1]: Service nscd is now stopped.
Feb 20 00:37:32 localhost syslogd: exiting on signal 15

Regards,
Ashvith
Felix Lechner wrote 23 hours ago
[PATCH v1] Add user-processes to services that prevent clean shutdowns. (Closes: #76338)
(address . 76338@debbugs.gnu.org)
0a0bd097f7120df4360959e0f89f4e07e586e5ec.1740081044.git.felix.lechner@lease-up.com
It's at least a partial fix.

Change-Id: Ifca81e4311f5145a3bb36f1ea338554079e121e2
---
gnu/services/mail.scm | 2 +-
gnu/services/pm.scm | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)

Toggle diff (29 lines)
diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm
index 18b482272c..210a226ccf 100644
--- a/gnu/services/mail.scm
+++ b/gnu/services/mail.scm
@@ -2317,7 +2317,7 @@ (define-configuration/no-serialization rspamd-configuration
(boolean #f)
"Do not apply Jinja templates.")
(shepherd-requirements
- (list-of-symbols '(loopback))
+ (list-of-symbols '(loopback user-processes))
"This is a list of symbols naming Shepherd services that this service
will depend on."))
diff --git a/gnu/services/pm.scm b/gnu/services/pm.scm
index 1978de55d4..fa18af254b 100644
--- a/gnu/services/pm.scm
+++ b/gnu/services/pm.scm
@@ -512,6 +512,7 @@ (define (thermald-shepherd-service config)
(shepherd-service
(provision '(thermald))
(documentation "Run thermald cpu frequency scaling.")
+ (requirement '(user-processes))
(start #~(make-forkexec-constructor
'(#$(file-append (thermald-thermald config) "/sbin/thermald")
"--no-daemon"

base-commit: 40e83f8f72fc831c94dc6d42664be50db755344b
--
2.48.1
Felix Lechner wrote 23 hours ago
Updated to grave due to potential data loss
(address . control@debbugs.gnu.org)
874j0ov1bf.fsf@lease-up.com
severity 76338 grave
tags 76338 + patch
thanks
Richard Sent wrote 14 hours ago
Re: bug#76338: [PATCH v1] Add user-processes to services that prevent clean shutdowns. (Closes: #76338)
(name . Felix Lechner via Bug reports for GNU Guix)(address . bug-guix@gnu.org)
87r03rdiof.fsf@freakingpenguin.com
I believe this fix is also required for the Shepherd services in
virtlogd-service-type, containerd-service-type, and rngd-service-type
[1].

(I've not observed rngd outright halt shutdown, but Shepherd does seem
to still periodically respawn it while shutdown is ongoing.)

--
Take it easy,
Richard Sent
Making my computer weirder one commit at a time.
Ludovic Courtès wrote 8 hours ago
Re: bug#76338: shepherd restarts service during shutdown and then waits forever
(name . Dariqq)(address . dariqq@posteo.net)(address . 76338@debbugs.gnu.org)
87zfifa7u6.fsf@gnu.org
Hello,

Dariqq <dariqq@posteo.net> skribis:

Toggle quote (2 lines)
> The two services that I know of are thermald and virtlogd.

I found these:

Toggle snippet (97 lines)
scheme@(guix scripts system search)> ,pp (map shepherd-service-provision
(append-map (lambda (services)
(remove (lambda (service)
(memq 'user-processes
(shepherd-service-requirement service)))
services))
(map service-type-default-shepherd-services (fold-service-types cons '()))))
$7 = ((user-homes)
(tailon)
(agate)
(varnish-default)
(httpd)
(fcgiwrap)
(mumi)
(mumi-worker)
(mumi-mailer)
(php-fpm)
(whoogle-search)
(hpcguix-web)
(gmnisrv)
(vpn-client)
(ipsec)
(vpn-server)
(xvnc vncserver)
(git-daemon)
(mumble-server)
(jami-dbus-session)
(jami)
(sysctl)
(autossh)
(ssh-daemon ssh sshd)
(webssh)
(ssh-daemon ssh sshd)
(ssh-daemon ssh sshd)
(spice-vdagentd)
(speakersafetyd)
(system-log syslogd)
(pcscd)
(samba-nmbd)
(samba-smbd)
(samba-winbindd)
(wsdd)
(rsync)
(thermald)
(rpcbind-daemon)
(idmap-daemon)
(gss-daemon)
(rpc-pipefs)
(pagekite)
(ipfs)
(vswitchd)
(unblocked-wifi)
(iptables)
(nftables)
(opendht dhtnode dhtproxy)
(prometheus-node-exporter)
(vnstatd)
(radicale)
(dovecot)
(rspamd)
(imap4d)
(kernel-module-loader)
(rasdaemon)
(cachefilesd)
(directory-server-localhost)
(guix-data-service)
(guix-data-service-setup-database)
(guix-data-service-process-jobs)
(guix-build-coordinator)
(wesnoth-daemon)
(joycond)
(transmission-daemon transmission bittorrent)
(dockerd)
(containerd)
(kresd)
(dnsmasq)
(inputattach)
(elogind)
(bluetooth)
(x11-socket-directory)
(seatd elogind)
(upower-daemon)
(postgres-roles)
(mysql-upgrade)
(cups)
(cgroups2-limits)
(cgroups2-fs-owner)
(laminar)
(gpm)
(udev)
(urandom-seed)
(virtual-terminal)
(trng)
(user-processes)
(auditd))

Some of them are legitimate, many are not. (Not sure why ‘virtlogd’
doesn’t show up here.)

Toggle quote (10 lines)
> Also the purpose of the user-processes service (and maybe also the
> filesystems) service as synchronization targets are documented only in
> their definition and implicitly with the shepherd graph
> image. System-shepherd services that dont depend on anything are
> probably a bad idea and seems like a very common mistake for (new)
> users implementing their own services.
> Maybe this should be a a more explicit note in the documentation for
> shepherd-service-requirement and/or a small paragraph in the shepherd
> services intro?

Yes, agreed. I’m not entirely sure where to document it; do you have
ideas?

(The doc in this area probably needs a Spring cleanup…)

Toggle quote (5 lines)
> Is there a reason for user-processes to block on waiting for every
> process execpt PID1 to exit or why during the (sleep 1) calls other
> services (that falsely dont depend on user-processes) are not being
> stopped in the meantime which would help resolve the deadlock?

The assumption is that services have been stopped by the time
‘user-processes’ is stopped (because they’re supposed to depend on it).
Thus, when ‘user-processes’ is stopped, normally only user processes are
left.

Toggle quote (3 lines)
> But insisting on restarting a service seems a bit pointless to me
> during shutdown/reboot where everything will be terminated anyway.

Agreed, I’ll see how to do that on the shepherd side.

Thanks,
Ludo’.
Dariqq wrote 4 hours ago
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 76338@debbugs.gnu.org)
a1b0fbd0-36eb-4c1a-abb7-d14203261a34@posteo.net
Hello,

On 21.02.25 11:52, Ludovic Courtès wrote:
Toggle quote (20 lines)
> Hello,
>
> Dariqq <dariqq@posteo.net> skribis:
>
>> The two services that I know of are thermald and virtlogd.
>
> I found these:
>
> --8<---------------cut here---------------start------------->8---
> scheme@(guix scripts system search)> ,pp (map shepherd-service-
> provision (append-map (lambda (services) (remove (lambda (service)
> (memq 'user-processes (shepherd-service-requirement service)))
> services)) (map service-type-default-shepherd-services (fold-
> service- types cons '()))))

>
> Some of them are legitimate, many are not. (Not sure why ‘virtlogd’
> doesn’t show up here.)
>

Neat trick. A lot more than I thought.

Toggle quote (14 lines)
>> Also the purpose of the user-processes service (and maybe also the
>> filesystems) service as synchronization targets are documented
>> only in their definition and implicitly with the shepherd graph
>> image. System-shepherd services that dont depend on anything are
>> probably a bad idea and seems like a very common mistake for (new)
>> users implementing their own services. Maybe this should be a a
>> more explicit note in the documentation for shepherd-service-
>> requirement and/or a small paragraph in the shepherd services
>> intro?
>
> Yes, agreed. I’m not entirely sure where to document it; do you
> have ideas?
>

Maybe near the shepherd-graph image in "Shepherd Services" where the
special "targets" can be seen as well (the image looks a bit outdated as
e.g.the filesystem "target" is missing)? Not sure if there is another
"target" worth documenting.

Also maybe a comment or warning in the documentation for shepherd-
service-requirement field that root-shepherd services that don't depend
on anything/ don't depend on user-processes is most likely not what a
user wants for a usual daemon service?

Consistency in all guix services helps as well,s.t. one can look at an
example and then wonder what this user-processes service is about.

Toggle quote (4 lines)
> (The doc in this area probably needs a Spring cleanup…)
>
>
> Thanks, Ludo’.
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 76338@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 76338
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch