Hello, Simen Endsjø <cont...@simendsjo.me> skribis:
>> Then please check precisely what hangs and what doesn’t. You say “herd >> status” hangs; what about “herd status X”, where X is a service defined >> for your user shepherd? > > Not sure how I can find out precicely what hangs. Operations on > individual services seems to work fine: > > $ herd status emacs-daemon > ● Status of emacs-daemon: > It is running since Sat 11 Jan 2025 07:35:36 PM CET (13 hours ago). > # (... snip ...) Can you try something like: --8<---------------cut here---------------start------------->8--- for s in xss-lock volctl unclutter redshift picom \ network-manager-applet dunst cbatticon blueman-applet \ emacs-daemon ssh-agent dbus x11-display do echo "trying $s"; herd status "$s" done --8<---------------cut here---------------end--------------->8--- to try and determine whether one of these is hanging? If you don’t mind, could you share ~/.local/state/shepherd/shepherd.log, privately if you prefer? (Preferably remove everything that comes before its last boot.) >> Last, could you share the config file of your user shepherd, or maybe >> the Guix Home config if that’s what you’re using? > > https://git.sr.ht/~simendsjo/dotfiles/tree/main/item/sijo/home/simendsjo/home-environment.scm [...] > (xss-lock volctl unclutter redshift picom network-manager-applet > dunst cbatticon blueman-applet emacs-daemon ssh-agent dbus x11-display)))) I checked these and the only one that looks fishy is ‘unclutter’, which I would change like this:
diff --git a/gnu/home/services/desktop.scm b/gnu/home/services/desktop.scm index fc96ce9295..859dba776a 100644 --- a/gnu/home/services/desktop.scm +++ b/gnu/home/services/desktop.scm @@ -353,7 +353,6 @@ (define (home-unclutter-shepherd-service config) (modules '((shepherd support) ;for %user-log-dir (srfi srfi-1) (srfi srfi-26))) - (one-shot? #t) (start #~(lambda _ (fork+exec-command (list @@ -369,7 +368,8 @@ (define (home-unclutter-shepherd-service config) (remove (cut string-prefix? "DISPLAY=" <>) (default-environment-variables))) #:log-file - (string-append %user-log-dir "/unclutter.log"))))))) + (string-append %user-log-dir "/unclutter.log")))) + (stop #~(make-kill-destructor))))) (define home-unclutter-service-type (service-type
That said, it cannot explain a hang. Ludo’.