"pelzflorian (Florian Pelz)" skribis: > It appears your patch fixes the issue. I admire the speed at which > you write patches. :) Thank you! Awesome! I must say that I’m really glad you’re putting this much energy into reproducing issues and investigating—it’s rare for people who report bug to dig this deep, but it’s super helpful and motivating! I’ve pushed the whole series: d088d5c484 accounts: Call 'fdatasync' when writing databases. ed8570dce3 accounts: Close database before renaming it. 70a7a1b5dc nar: Really lock store files. d497b6ab39 activation: Lock /etc/.pwd.lock before accessing databases. 5f0cf1df71 syscalls: 'with-lock-file' catches ENOSYS. 89ceb86ad4 syscalls: 'with-file-lock' expands to a call to 'call-with-file-lock'. b7178c22bf syscalls: Add 'with-file-lock' macro. The actual fix is ed8570dce3, AIUI. > I created a new working generation and then a new unbootable > generation with broken udevd args, both with all your patches. I > rebooted the broken and then the working generation repeatedly twelve > times. I waited varying amounts of time before doing Ctrl+Alt+Del in > the broken generation. /etc/shadow is still in good health. Good. > On Tue, Jun 04, 2019 at 11:21:05PM +0200, Ludovic Courtès wrote: >> Indeed, ‘shepherd’ calls ‘disable-reboot-on-ctrl-alt-del’ (which >> disables “hard” reboots upon ctrl-alt-del and instead notifies it) after >> it has loaded its config file. > > Is there a good reason shepherd calls disable-reboot-on-ctrl-alt-del > at the end? I get recovering journal messages unless on the previous > boot I waited for the whole GDM to start (I can login on the TTY > before GDM has fully started), which takes a long time during which > users could change their mind and decide they do not want to boot. > (The Macbook is not fast anyway and Guix is even slower when booting > compared to Debian.) I agree. The attached patch for Shepherd moves everything before loading the config file. I think it will have the desired effect, though I’m not entirely sure the signal handler would run at the right time etc. You can test it on the metal if you want (you need to add the patch to the ‘shepherd’ package), but I’ll see if I can test in a VM. Thank you! Ludo’.