summaryrefslogtreecommitdiffstats
path: root/lass/5pkgs/install-system/default.nix
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2023-01-30 23:43:04 +0100
committermakefu <github@syntax-fehler.de>2023-01-30 23:43:04 +0100
commit369fa6b7eb3f0fa3e1034bcad438eeda017949f8 (patch)
tree22f7891595fba32a7e66b755617e0d49b91993f3 /lass/5pkgs/install-system/default.nix
parentdbc3870841223051e4f617b4c06065c168c69c10 (diff)
parentc7417c8bc1b50d466dae493ac3619d9f324f34f8 (diff)
Merge remote-tracking branch 'lass/master'
Diffstat (limited to 'lass/5pkgs/install-system/default.nix')
-rw-r--r--lass/5pkgs/install-system/default.nix19
1 files changed, 14 insertions, 5 deletions
diff --git a/lass/5pkgs/install-system/default.nix b/lass/5pkgs/install-system/default.nix
index 9a392e669..0e13265f6 100644
--- a/lass/5pkgs/install-system/default.nix
+++ b/lass/5pkgs/install-system/default.nix
@@ -5,13 +5,21 @@ pkgs.writers.writeDashBin "install-system" ''
TARGET=$2
# format
if ! (sshn "$TARGET" -- mountpoint /mnt); then
- nix run github:numtide/nixos-remote -- --stop-after-disko --store-paths "$(nix-build --no-out-link -I stockholm="$HOME"/sync/stockholm -I nixos-config="$HOME"/sync/stockholm/lass/1systems/"$SYSTEM"/physical.nix '<nixpkgs/nixos>' -A config.system.build.diskoNoDeps)" /dev/null "$TARGET"
+ if ! (sshn "$TARGET" -- type -p nix); then
+ nix run github:numtide/nixos-remote -- --stop-after-disko --store-paths "$(nix-build --no-out-link -I stockholm="$HOME"/sync/stockholm -I nixos-config="$HOME"/sync/stockholm/lass/1systems/"$SYSTEM"/physical.nix '<nixpkgs/nixos>' -A config.system.build.diskoNoDeps)" /dev/null "$TARGET"
+ else
+ disko=$(nix-build -I stockholm=$HOME/sync/stockholm -I secrets=$HOME/sync/stockholm/lass/2configs/tests/dummy-secrets -I nixos-config=$HOME/sync/stockholm/lass/1systems/$SYSTEM/physical.nix '<nixpkgs/nixos>' -A config.system.build.disko)
+ NIX_SSHOPTS='-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no' nix-copy-closure --to "$TARGET" "$disko"
+ sshn -t "$TARGET" -- "$disko"
+ fi
fi
# install dependencies
sshn "$TARGET" << SSH
- nix-channel --update
- nix-env -iA nixos.git
+ if ! type -p git; then
+ nix-channel --update
+ nix-env -iA nixos.git
+ fi
SSH
# populate
@@ -19,8 +27,9 @@ pkgs.writers.writeDashBin "install-system" ''
# install
sshn "$TARGET" << SSH
- ln -s /mnt/var/src /var/src
- NIXOS_CONFIG=/var/src/nixos-config nixos-install --no-root-password -I /var/src
+ NIXOS_CONFIG=/var/src/nixos-config nixos-install --no-root-password -I /mnt/var/src
+ nixos-enter -- nixos-rebuild -I /var/src switch --install-bootloader
+ umount -R /mnt
zpool export -fa
SSH
''