aboutsummaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorKatharina Fey <kookie@spacekookie.de>2019-10-18 16:14:02 +0000
committerKatharina Fey <kookie@spacekookie.de>2019-10-18 16:20:50 +0000
commit40a648ee549738a09efd416e0c27645b6d30af6a (patch)
tree01c4c1d71a909a7c7460b60c87348f5a027e5e5a /build
parentff94792e51f01b959c53422948a1b1864357f216 (diff)
<>: Adding build script to switch configs
Diffstat (limited to 'build')
-rwxr-xr-xbuild29
1 files changed, 29 insertions, 0 deletions
diff --git a/build b/build
new file mode 100755
index 00000000000..9432a802d13
--- /dev/null
+++ b/build
@@ -0,0 +1,29 @@
+#!/bin/sh
+
+set -eo pipefail
+
+DIR=$(dirname $0)
+D=$(mktemp -du)
+ROOT="$DIR/roots/$(hostname).nix"
+
+function build {
+ NIXPKGS_ALLOW_UNFREE=1 \
+ nix build -f '<nixpkgs/nixos>' config.system.build \
+ -I nixos-config="$ROOT" \
+ -I "nixpkgs=$DIR/nixpkgs" \
+ -I "nixpkgs-overlays=$DIR/overlays" \
+ -I "home-manager=$DIR/home-manager" \
+ --out-link "$D"
+}
+
+function switch {
+ build $ROOT
+ $D-18/activate
+}
+
+case "$1" in
+ -s* | --switch*) switch ;;
+ *) build ;;
+esac
+
+rm -rf $D*