summaryrefslogtreecommitdiff
path: root/modules/system
diff options
context:
space:
mode:
Diffstat (limited to 'modules/system')
-rw-r--r--modules/system/etc.nix6
1 files changed, 6 insertions, 0 deletions
diff --git a/modules/system/etc.nix b/modules/system/etc.nix
index b6c5827..d26c45e 100644
--- a/modules/system/etc.nix
+++ b/modules/system/etc.nix
@@ -51,6 +51,7 @@ in
ln -sfn "$(readlink -f $systemConfig/etc)" /etc/static
+ errorOccurred=false
for f in $(find /etc/static/* -type l); do
l=/etc/''${f#/etc/static/}
d=''${l%/*}
@@ -79,6 +80,7 @@ in
if [ -z "$h" ]; then
echo "error: not linking environment.etc.\"''${l#/etc/}\" because $l already exists, skipping..." >&2
echo "existing file has unknown content $o, move and activate again to apply" >&2
+ errorOccurred=true
fi
fi
fi
@@ -87,6 +89,10 @@ in
fi
done
+ if [ "$errorOccurred" != "false" ]; then
+ exit 1
+ fi
+
for l in $(find /etc/* -type l 2> /dev/null); do
f="$(echo $l | sed 's,/etc/,/etc/static/,')"
f=/etc/static/''${l#/etc/}