From 080c3b9ab6eca9d60a4546095eb1b37d263a2df4 Mon Sep 17 00:00:00 2001 From: rogueking Date: Sat, 20 Jun 2026 17:10:21 -0400 Subject: [PATCH] build iso's of all hosts --- .gitea/workflows/iso-builder.yml | 7 +++++-- flake.nix | 2 +- hosts/ender-ml/iso.nix | 9 +++++---- hosts/iso/default.nix | 6 +++++- 4 files changed, 16 insertions(+), 8 deletions(-) diff --git a/.gitea/workflows/iso-builder.yml b/.gitea/workflows/iso-builder.yml index 79ad1e7..8d9656e 100644 --- a/.gitea/workflows/iso-builder.yml +++ b/.gitea/workflows/iso-builder.yml @@ -6,6 +6,7 @@ on: - hosts/acheron/** - hosts/armaros/** - hosts/buildbox/** + - hosts/ender-ml/** - hosts/eva-01/** - hosts/eva-03/** - hosts/iso/** @@ -25,10 +26,12 @@ jobs: fail-fast: false matrix: host: - - eva-01 + - acheron - armaros - - ender-ml - buildbox + - ender-ml + - eva-01 + - eva-03 runs-on: ubuntu-latest steps: - name: Checkout repository diff --git a/flake.nix b/flake.nix index 8621dbe..1e6c9b6 100644 --- a/flake.nix +++ b/flake.nix @@ -78,7 +78,7 @@ }; # Hosts that have rescue/installer ISOs - isoHosts = ["acheron" "armaros" "buildbox" "eva-01" "eva-03"]; + isoHosts = ["acheron" "armaros" "buildbox" "ender-ml" "eva-01" "eva-03"]; # Build a rescue/installer ISO configuration for a host mkIso = hostname: { diff --git a/hosts/ender-ml/iso.nix b/hosts/ender-ml/iso.nix index 047cd1b..d04c0e2 100644 --- a/hosts/ender-ml/iso.nix +++ b/hosts/ender-ml/iso.nix @@ -1,4 +1,4 @@ -# ── buildbox rescue / installer ISO ──────────────────────────── +# ── ender-ml rescue / installer ISO ──────────────────────────── { config, pkgs, @@ -10,10 +10,11 @@ ../iso/default.nix ]; - boot.loader.grub.enable = lib.mkDefault true; - boot.loader.grub.devices = ["nodev"]; + # Support both BIOS and UEFI boot + isoImage.makeBiosBootable = true; + isoImage.makeEfiBootable = true; iso.extraPackages = with pkgs; [btrfs-progs]; iso.diskoConfig = ./disko-config.nix; - iso.description = "buildbox Rescue ISO"; + iso.description = "ender-ml Rescue ISO"; } diff --git a/hosts/iso/default.nix b/hosts/iso/default.nix index 450ec4d..2fed526 100644 --- a/hosts/iso/default.nix +++ b/hosts/iso/default.nix @@ -14,6 +14,7 @@ config, lib, pkgs, + inputs, ... }: let cfg = config.iso; @@ -42,7 +43,9 @@ in { # Without this, disko would try to apply filesystems/boot config at build time, # which conflicts with ISO-specific overrides and can cause boot failures. disko.enableConfig = false; - # Standard installer tools + # Standard installer tools. The disko *module* (inputs.disko.nixosModules.disko) + # only wires up system.build.diskoScript + fileSystems config — it does NOT put + # the `disko` CLI on PATH. We need the separate disko package for rescue use. environment.systemPackages = with pkgs; [ git @@ -52,6 +55,7 @@ in { parted gptfdisk efibootmgr + inputs.disko.packages.${pkgs.system}.disko ] ++ cfg.extraPackages;