summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorDaiderd Jordan <daiderd@gmail.com>2017-07-23 17:49:38 +0200
committerDaiderd Jordan <daiderd@gmail.com>2017-07-23 17:51:17 +0200
commite4a11b20736efdd6b46c8476bc666ee33b517a6e (patch)
treedb394470c3a1b5c7b5bc9e39fbd036931d40e9dc /modules
parent345d9ffa0ed93d4c7e9cd8ab01bb5094ef630baa (diff)
activation-checks: add NIX_PATH check for nixpkgs
Diffstat (limited to 'modules')
-rw-r--r--modules/system/activation-checks.nix21
1 files changed, 18 insertions, 3 deletions
diff --git a/modules/system/activation-checks.nix b/modules/system/activation-checks.nix
index ccff46c..d8af055 100644
--- a/modules/system/activation-checks.nix
+++ b/modules/system/activation-checks.nix
@@ -20,20 +20,21 @@ let
nixPath = optionalString true ''
darwinConfig=$(NIX_PATH=${concatStringsSep ":" config.nix.nixPath} nix-instantiate --eval -E '<darwin-config>')
- if [ -z $darwinPath ]; then
+ if ! test -e "$darwinConfig"; then
echo "error: Changed <darwin-config> but target does not exist, aborting activation" >&2
echo "Move you configuration.nix or set NIX_PATH:" >&2
echo >&2
- echo " nix.nixPath = [ \"darwi-config=${builtins.toString <darwin-config>}\" ];" >&2
+ echo " nix.nixPath = [ \"darwin-config=${builtins.toString <darwin-config>}\" ];" >&2
echo >&2
exit 2
fi
darwinPath=$(NIX_PATH=${concatStringsSep ":" config.nix.nixPath} nix-instantiate --eval -E '<darwin>')
- if [ -z $darwinPath ]; then
+ if ! test -e "$darwinPath"; then
echo "error: Changed <darwin> but target does not exist, aborting activation" >&2
echo "Add the darwin repo as a channel or set NIX_PATH:" >&2
echo "$ sudo nix-channel --add https://github.com/LnL7/nix-darwin/archive/master.tar.gz darwin" >&2
+ echo "$ sudo nix-channel --update" >&2
echo >&2
echo "or set" >&2
echo >&2
@@ -41,6 +42,20 @@ let
echo >&2
exit 2
fi
+
+ nixpkgsPath=$(NIX_PATH=${concatStringsSep ":" config.nix.nixPath} nix-instantiate --eval -E '<nixpkgs>')
+ if ! test -e "$nixpkgsPath"; then
+ echo "error: Changed <nixpkgs> but target does not exist, aborting activation" >&2
+ echo "Add a nixpkgs channel or set NIX_PATH:" >&2
+ echo "$ sudo nix-channel --add http://nixos.org/channels/nixpkgs-unstable nixpkgs" >&2
+ echo "$ sudo nix-channel --update" >&2
+ echo >&2
+ echo "or set" >&2
+ echo >&2
+ echo " nix.nixPath = [ \"nixpkgs=${builtins.toString <nixpkgs>}\" ];" >&2
+ echo >&2
+ exit 2
+ fi
'';
in