Problem was different. On first reconfigure, on-first-login script is not evaluated -> shepherd isn't started, the error above appears. Fixed by starting shepherd on reconfigure if it's not started yet.
As discussed in the thread:
Shepherd doesn't want to start if there is no elogind session. According to source code [fn:1], it ensures that /run/user/$UID/shepherd exists, but for some reason it still fails with:
error: connect: /run/user/1000/shepherd/socket: No such file or directory
- Reproduce, investigate and fix this behavior.
- Check if
guix homeworks on non-elogind/non-systemd systems.
-- Best regards, Andrew Tropin
Hm, forgot something.