diff options
| author | Daiderd Jordan <daiderd@gmail.com> | 2017-09-06 23:55:14 +0200 |
|---|---|---|
| committer | Daiderd Jordan <daiderd@gmail.com> | 2017-09-06 23:56:45 +0200 |
| commit | 9f0507cf7d62472650bb3f2d936d0d43ef6009b4 (patch) | |
| tree | 88d619f37c6a824ea5c5fcda877b4ef9fb2facf5 | |
| parent | 184e9f34be51e05cc1b8390aa190d9ef6dfae855 (diff) | |
activation-checks: add check for user channels
| -rw-r--r-- | modules/system/activation-checks.nix | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/modules/system/activation-checks.nix b/modules/system/activation-checks.nix index 7c885d8..9dac004 100644 --- a/modules/system/activation-checks.nix +++ b/modules/system/activation-checks.nix @@ -34,6 +34,25 @@ let fi ''; + nixChannels = '' + channelsLink=$(readlink "$HOME/.nix-defexpr/channels") || true + case "$channelsLink" in + *"$USER"*) + ;; + "") + ;; + *) + echo "[1;31merror: The ~/.nix-defexpr/channels symlink does not point your users channels[0m" >&2 + echo "Running nix-channel will regenerate it" >&2 + echo >&2 + echo " rm ~/.nix-defexpr/channels" >&2 + echo " nix-channel --update" >&2 + echo >&2 + exit 2 + ;; + esac + ''; + nixPath = '' darwinConfig=$(NIX_PATH=${concatStringsSep ":" config.nix.nixPath} nix-instantiate --eval -E '<darwin-config>') || true if ! test -e "$darwinConfig"; then @@ -84,6 +103,7 @@ in system.activationScripts.checks.text = '' ${darwinChanges} ${buildUsers} + ${nixChannels} ${nixPath} if test ''${checkActivation:-0} -eq 1; then |
