Shepherd/herd not responsive

After a fresh install, herd (sudo herd) always hang indefinitely. The result is the system cannot halt or reboot (reboot or halt only leads to log in page), and services cannot be inspected or restarted (and network manger went down a lot, so each time it says NetworkManager needs to be running xxx I reboot the system)

I read the guix manual and the shepherd manual, but it have no mention of such behaviour, neither does the internet.

I tried sudo shepherd, which gives me error “while loading configuration /gnu/store/xxxxxx-shepherd-1.0.2/etc/shepherd.scm: open-fdes: no such file or directory”, but kept running anyway. This let sudo halt work, so I can shut the computer down. The error is kind of confusing though, I have no idea why shepeherd would assume configuration (%sysconfdir in source code) to be that. in guix repl, (use-modules (guix config)) %sysconfdir give me "/etc, sudo or not. But I don’t think that’s very important, as my pid 1 uses --config:

/gnu/store/n87px1cazqkav83npg80ccp1n777j08s-guile-3.0.9/bin/guile --no-auto-compile /gnu/store/b4n5ax7l1ccia7sr123fqcjqi4vy03pv-shepherd-1.0.2/bin/shepherd --config /gnu/store/kk0xnlyzak8iyd1lm6qmncngnqxhvy6x-shepherd.conf

Previously I just sudo shepherd, and only root service is fired.

I replicated my pid 1 command last night, and I saw many service spawning and configuration loaded successfully. loopback service failed, and NetworkManager, and bunch others like filesystem mounting, probably because loopback is already there, and so are many filesystems. NetworkManager is not responsive, but in top it is indeed still running.

And just now I booted in as usual and sudo herd status and it was just normal, no hang, and show me this big list of services, nothing went wrong.

I don’t understand why. Is it that last run with /gnu/store/xxxxx-shepherd.conf have fixed something for me? Is this a common thing to happen?

edit: 5 minutes later and sudo herd status is hanging again.

This is output of the first (working) sudo herd status

Started:
 + NetworkManager
 + avahi-daemon
 + bluetooth
 + console-font-tty1
 + console-font-tty2
 + console-font-tty3
 + console-font-tty4
 + console-font-tty5
 + console-font-tty6
 + cups
 + dbus-system
 + elogind
 + file-system-/boot/efi
 + file-system-/dev/pts
 + file-system-/dev/shm
 + file-system-/gnu/store
 + file-system-/run/systemd
 + file-system-/run/user
 + file-system-/sys/firmware/efi/efivars
 + file-system-/sys/fs/cgroup
 + file-system-/sys/fs/cgroup/elogind
 + file-system-/sys/kernel/debug
 + file-system-/var/cache/fontconfig
 + file-system-/var/lib/gdm
 + file-systems
 + guix-daemon
 + loopback
 + nscd
 + ntpd
 + pam
 + root
 + root-file-system
 + ssh-daemon
 + swap-714a00ef-5fa4-4219-964b-58810d23a76e
 + syslogd
 + tailscaled
 + term-console
 + term-tty1
 + term-tty2
 + term-tty3
 + term-tty4
 + term-tty5
 + term-tty6
 + timer
 + tor
 + transient
 + udev
 + upower-daemon
 + urandom-seed
 + user-file-systems
 + user-processes
 + virtual-terminal
 + wpa-supplicant
 + xorg-server
Running timers:
 + log-cleanup
 + log-rotation
One-shot:
 * host-name
 * sysctl
 * user-homes
 * x11-socket-directory

It turns out the problem should be High CPU usage on system time change · Issue #89 · wingo/fibers · GitHub plus my system always boot with system time 1970-01-05.