I'd like to add my $0.02 as well.
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.