summary refs log tree commit diff
path: root/nixos/release.nix
diff options
context:
space:
mode:
authorSamuel Dionne-Riel <samuel@dionne-riel.com>2022-12-22 23:00:14 -0500
committerSamuel Dionne-Riel <samuel@dionne-riel.com>2022-12-22 23:00:14 -0500
commit35bb28b367312d94815f03d07d5600ecd362fb26 (patch)
tree36727d75e84124d781084baa1a2258893f68a50e /nixos/release.nix
parent04f574a1c0fde90b51bf68198e2297ca4e7cccf4 (diff)
downloadnixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar.gz
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar.bz2
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar.lz
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar.xz
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.tar.zst
nixpkgs-35bb28b367312d94815f03d07d5600ecd362fb26.zip
nixos: Add iso_minimal_new_kernel_no_zfs
Support for ZFS, while desirable, is problematic with newer kernel
releases. The stable ZFS release seldom supports the current newest
kernel version, and this makes the new_kernel iso basically useless as
it cannot be published, and is not often built with new kernel releases.

This uses a dirty workaround to work around the fact it is impossible to
remove a list item from a modules system list type. Since ZFS support is
conditional to being supported on the current platform, we can fake ZFS
not being supported *for the no-zfs build only*. This overlay is only
added when evaluating the iso, nothing else.
Diffstat (limited to 'nixos/release.nix')
-rw-r--r--nixos/release.nix12
1 files changed, 10 insertions, 2 deletions
diff --git a/nixos/release.nix b/nixos/release.nix
index 919aa86a2d6..7907be3c02f 100644
--- a/nixos/release.nix
+++ b/nixos/release.nix
@@ -181,14 +181,22 @@ in rec {
     inherit system;
   });
 
-  # A variant with a more recent (but possibly less stable) kernel
-  # that might support more hardware.
+  # A variant with a more recent (but possibly less stable) kernel that might support more hardware.
+  # This variant keeps zfs support enabled, hoping it will build and work.
   iso_minimal_new_kernel = forMatchingSystems [ "x86_64-linux" "aarch64-linux" ] (system: makeIso {
     module = ./modules/installer/cd-dvd/installation-cd-minimal-new-kernel.nix;
     type = "minimal-new-kernel";
     inherit system;
   });
 
+  # A variant with a more recent (but possibly less stable) kernel that might support more hardware.
+  # ZFS support disabled since it is unlikely to support the latest kernel.
+  iso_minimal_new_kernel_no_zfs = forMatchingSystems [ "x86_64-linux" "aarch64-linux" ] (system: makeIso {
+    module = ./modules/installer/cd-dvd/installation-cd-minimal-new-kernel-no-zfs.nix;
+    type = "minimal-new-kernel-no-zfs";
+    inherit system;
+  });
+
   sd_image = forMatchingSystems [ "armv6l-linux" "armv7l-linux" "aarch64-linux" ] (system: makeSdImage {
     module = {
         armv6l-linux = ./modules/installer/sd-card/sd-image-raspberrypi-installer.nix;