diff --git a/lib/internal.md b/lib/internal.md index aef8c05..8d95311 100644 --- a/lib/internal.md +++ b/lib/internal.md @@ -55,8 +55,12 @@ ssh "root@$host" nixos-rebuild --rollback switch ## Provisioning New NixOS Hosts -Note that for best results the target flake attribute should first be built and -cached to the binary cache at `nix.h.lyte.dev`. +```shell +nix run --extra-experimental-features 'nix-command flakes' \ + --accept-flake-config git+https://git.lyte.dev/lytedev/nix#installer +``` + +Or you can install manually with the process below: ```bash # establish network access @@ -79,7 +83,7 @@ nix-shell --packages git --run "sudo nix run \ github:nix-community/disko -- \ --flake 'git+https://git.lyte.dev/lytedev/nix#${PARTITION_SCHEME}' \ --mode disko \ - --arg disks '[ \"/dev/${DISK}\" ]'" + --arg disk '\"/dev/${DISK}\"'" # install nix-shell --packages git \ diff --git a/packages/installer.nix b/packages/installer.nix index 3ffb1e8..93454a5 100644 --- a/packages/installer.nix +++ b/packages/installer.nix @@ -3,7 +3,7 @@ ... }: pkgs.writeShellApplication { - name = "suspend-flink-job"; + name = "installer"; runtimeInputs = with pkgs; [ fzf jq @@ -21,7 +21,8 @@ pkgs.writeShellApplication { nixos_host="$(nix eval --json git+https://git.lyte.dev/lytedev/nix#nixosConfigurations --apply 'builtins.attrNames' | jq -r .[] | fzf --prompt 'Select NixOS configuration')" partition_scheme="$(nix eval --json git+https://git.lyte.dev/lytedev/nix#diskoConfigurations --apply 'builtins.attrNames' | jq -r .[] | fzf --prompt 'Select disk partition scheme (must match NixOS configuration!)')" disk_path="/dev/$(lsblk -d --raw | tail -n +2 | fzf --prompt 'Select local disk device' | awk '{print $1}')" - disk_pass="$(echo "$pass1" | tr -d "\n")" + + echo "$pass1" | tr -d "\n" > /tmp/secret.key nix-shell --packages git --run "sudo nix run \ --extra-experimental-features nix-command \ @@ -29,7 +30,7 @@ pkgs.writeShellApplication { github:nix-community/disko -- \ --flake 'git+https://git.lyte.dev/lytedev/nix#$partition_scheme' \ --mode disko \ - --arg disk '$disk_path'" + --arg disk '\"$disk_path\"'" nix-shell --packages git \ --run "sudo nixos-install \