Hi all, Brian Cully <b...@spork.org> skribis:
> For the last few days, attempting to issue a home reconfigure fails: > > ---[snip]--- > $ guix home reconfigure ./guix-home/config-new.scm > substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0% > substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... > 100.0% > The following derivations will be built: > /gnu/store/rbnri9gpvh98qagyk7ws4y5xdvz4skg7-home.drv > /gnu/store/hg5whdfsq2ldibfsikhbwppr9pms5vc8-provenance.drv > /gnu/store/rsil5s5fs14y2jvysbiv7vi2f0i3gnw2-activate.drv > /gnu/store/j85krrfbnc7x6s5wdn0wnp8ikah9gl46-update-symlinks.drv > > building /gnu/store/hg5whdfsq2ldibfsikhbwppr9pms5vc8-provenance.drv... > building /gnu/store/j85krrfbnc7x6s5wdn0wnp8ikah9gl46-update-symlinks.drv... > building /gnu/store/rsil5s5fs14y2jvysbiv7vi2f0i3gnw2-activate.drv... > building /gnu/store/rbnri9gpvh98qagyk7ws4y5xdvz4skg7-home.drv... > Cleaning up symlinks from previous home at > /gnu/store/zmp2brsdr0nvrhpbk4kqqc6y8jx90kb1-home. > > guix home: error: rmdir: No such file or directory > ---[snip]--- Christopher Rodriguez <yewsc...@gmail.com> skribis: > Seems like the issue is during the deployment, as Madhavan > said. Specifically, the error message in that form only appears in > `gnu/home/services/symlink-manager.scm', in the function > `cleanup-symlinks'. > > It seems that, right now, the issue is that `ENOTEMPTY' and `ENOTDIR' > are tested for and handled, but `ENOENT' is not. Ideally, this should be > handled and tell the user /which/ file or directory is missing, not halt > the entire process. And, since we are testing for a missing file (and > thus have no chance of overwriting a user's data), it would probably > make the most sense to just create the file that is missing in the next > step, without stopping at all. > > I'll throw together a patch real quick to test with. I could be very off > base, but I think this should fix this issue. You were right. This is fixed by commit 435e1cef0025fbe6cbb71b472218e8d132d1681c, pushed yesterday. The patch had been submitted as part of <https://issues.guix.gnu.org/52808> but had not been applied. Apologies for the breakage. Thanks, Ludo’.