mirror of
https://github.com/nix-community/home-manager
synced 2024-11-10 07:04:17 +00:00
files: show colliding files at bottom in checkLinkTargets
Prevents the actual file collision errors from being truncated in the systemd log
This commit is contained in:
parent
9b53a10f4c
commit
b335cecd3e
1 changed files with 7 additions and 6 deletions
|
@ -34,26 +34,27 @@ for sourcePath in "$@" ; do
|
|||
# Next, try to move the file to a backup location if configured and possible
|
||||
backup="$targetPath.$HOME_MANAGER_BACKUP_EXT"
|
||||
if [[ -e "$backup" ]]; then
|
||||
errorEcho "Existing file '$backup' would be clobbered by backing up '$targetPath'"
|
||||
collision=1
|
||||
collisionErrors+=("Existing file '$backup' would be clobbered by backing up '$targetPath'")
|
||||
else
|
||||
warnEcho "Existing file '$targetPath' is in the way of '$sourcePath', will be moved to '$backup'"
|
||||
fi
|
||||
else
|
||||
# Fail if nothing else works
|
||||
errorEcho "Existing file '$targetPath' is in the way of '$sourcePath'"
|
||||
collision=1
|
||||
collisionErrors+=("Existing file '$backup' would be clobbered by backing up '$targetPath'")
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -v collision ]] ; then
|
||||
if [[ ${#collisionErrors[@]} -gt 0 ]] ; then
|
||||
errorEcho "Please do one of the following:
|
||||
- Move or remove the above files and try again.
|
||||
- Move or remove the files below and try again.
|
||||
- In standalone mode, use 'home-manager switch -b backup' to back up
|
||||
files automatically.
|
||||
- When used as a NixOS or nix-darwin module, set
|
||||
'home-manager.backupFileExtension'
|
||||
to, for example, 'backup' and rebuild."
|
||||
for error in "${collisionErrors[@]}" ; do
|
||||
errorEcho "$error"
|
||||
done
|
||||
exit 1
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue