git.delta.rocks / jrsonnet / refs/commits / d58560c49134

difftreelog

refactor! disable sd-image module from sd-image target

Yaroslav Bolyukin2023-05-01parent: #15ef984.patch.diff
in: trunk

3 files changed

modifiedcmds/fleet/src/cmds/build_systems.rsdiffbeforeafterboth
--- a/cmds/fleet/src/cmds/build_systems.rs
+++ b/cmds/fleet/src/cmds/build_systems.rs
@@ -133,7 +133,14 @@
 			)
 			.args(&config.nix_args);
 
-		nix_build.run_nix().await?;
+		nix_build.run_nix().await.map_err(|e| {
+			if action.build_attr() == "sdImage" {
+				info!("sd-image build failed");
+				info!("Make sure you have imported modulesPath/installer/sd-card/sd-image-<arch>[-installer].nix (For installer, you may want to check config)");
+				info!("This module was automatically imported before, but was removed for better customization")
+			}
+			e
+		})?;
 		let built = std::fs::canonicalize(built)?;
 
 		match action {
modifiedlib/default.nixdiffbeforeafterboth
54 configUnchecked = root.config;54 configUnchecked = root.config;
55 buildSystems = {55 buildSystems = {
56 toplevel = builtins.mapAttrs (_name: value: value.config.system.build.toplevel) (configuredSystemsWithExtraModules [ ]);56 toplevel = builtins.mapAttrs (_name: value: value.config.system.build.toplevel) (configuredSystemsWithExtraModules [
57 ({...}: {
58 buildTarget = "toplevel";
59 })
60 ]);
57 sdImage = builtins.mapAttrs (_name: value: value.config.system.build.sdImage) (configuredSystemsWithExtraModules [61 sdImage = builtins.mapAttrs (_name: value: value.config.system.build.sdImage) (configuredSystemsWithExtraModules [
62 #(nixpkgs + "/nixos/modules/installer/sd-card/sd-image-aarch64-installer.nix")
58 (nixpkgs + "/nixos/modules/installer/sd-card/sd-image-aarch64-installer.nix")63 ({...}: {
64 buildTarget = "sd-image";
65 })
59 ]);66 ]);
60 installationCd = builtins.mapAttrs (_name: value: value.config.system.build.isoImage) (configuredSystemsWithExtraModules [67 installationCd = builtins.mapAttrs (_name: value: value.config.system.build.isoImage) (configuredSystemsWithExtraModules [
61 (nixpkgs + "/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix")68 (nixpkgs + "/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix")
62 ({ lib, ... }: {69 ({ lib, ... }: {
70 buildTarget = "installation-cd";
63 # Needed for https://github.com/NixOS/nixpkgs/issues/5895971 # Needed for https://github.com/NixOS/nixpkgs/issues/58959
64 boot.supportedFilesystems = lib.mkForce [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ];72 boot.supportedFilesystems = lib.mkForce [ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ];
65 })73 })
modifiednixos/meta.nixdiffbeforeafterboth
--- a/nixos/meta.nix
+++ b/nixos/meta.nix
@@ -24,6 +24,9 @@
       };
       description = "Network definition of host";
     };
+    buildTarget = mkOption {
+      type = enum ["toplevel" "sd-image" "installation-cd"];
+    };
   };
   config = {
     tags = [ "all" ];