From 6eb27c06e2480535103acde1df6be4566a37747e Mon Sep 17 00:00:00 2001 From: Kiara Grouwstra Date: Thu, 18 Sep 2025 19:11:58 +0200 Subject: [PATCH] fix proxmox-provision.sh Signed-off-by: Kiara Grouwstra --- infra/makeInstallerIso.nix | 14 ++++++++++---- infra/proxmox-provision.sh | 6 +++--- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/infra/makeInstallerIso.nix b/infra/makeInstallerIso.nix index 60563473..88b25a8b 100644 --- a/infra/makeInstallerIso.nix +++ b/infra/makeInstallerIso.nix @@ -5,9 +5,9 @@ */ { - nixpkgs, - hostKeys ? { }, nixosConfiguration, + hostKeys ? { }, + nixpkgs ? (import ../npins).nixpkgs, }: let @@ -44,7 +44,7 @@ let imports = [ "${nixpkgs}/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix" ]; nixpkgs.hostPlatform = "x86_64-linux"; services.getty.autologinUser = lib.mkForce "root"; - programs.bash.loginShellInit = nixpkgs.lib.getExe bootstrap; + programs.bash.loginShellInit = lib.getExe bootstrap; isoImage = { compressImage = false; @@ -55,4 +55,10 @@ let }; }; in -(nixpkgs.lib.nixosSystem { modules = [ installer ]; }).config.system.build.isoImage +(import "${nixpkgs}/nixos/lib/eval-config.nix" { + modules = [ installer ]; + # Allow system to be set modularly in nixpkgs.system. + # We set it to null, to remove the "legacy" entrypoint's + # non-hermetic default. + system = null; +}).config.system.build.isoImage diff --git a/infra/proxmox-provision.sh b/infra/proxmox-provision.sh index 35ceb863..e9a9f86a 100755 --- a/infra/proxmox-provision.sh +++ b/infra/proxmox-provision.sh @@ -223,9 +223,9 @@ build_iso () { nix build \ --impure --expr " let flake = builtins.getFlake (builtins.toString ./.); in - import ./makeInstallerIso.nix { + import ./infra/makeInstallerIso.nix { nixosConfiguration = flake.nixosConfigurations.$vm_name; - nixpkgs = flake.inputs.nixpkgs; + # FIXME pass nixpkgs from npins $nix_host_keys } " \ @@ -239,7 +239,7 @@ Check the Nix logs and fix things. Possibly there just is no NixOS configuration "$vm_name" fi - ln -sf "$tmpdir/installer-$vm_name/iso/installer.iso" "$tmpdir/installer-$vm_name.iso" + ln -sf "$(ls "$tmpdir/installer-$vm_name"/iso/nixos-*.iso)" "$tmpdir/installer-$vm_name.iso" printf 'done building ISO for VM %s.\n' "$vm_name" release_lock build