diff options
author | Samuel Dionne-Riel <samuel@dionne-riel.com> | 2022-12-22 23:07:19 -0500 |
---|---|---|
committer | Samuel Dionne-Riel <samuel@dionne-riel.com> | 2022-12-22 23:07:19 -0500 |
commit | d91e1f98fa83fecf614111b3bfde9bf2b3c3aa3d (patch) | |
tree | 3e87c166eff0de26ba82df9315ee00517d59b338 /nixos/modules/installer | |
parent | 35bb28b367312d94815f03d07d5600ecd362fb26 (diff) |
nixos: Add sd_image_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 image 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 image, nothing else.
Diffstat (limited to 'nixos/modules/installer')
-rw-r--r-- | nixos/modules/installer/sd-card/sd-image-aarch64-new-kernel-no-zfs-installer.nix | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/nixos/modules/installer/sd-card/sd-image-aarch64-new-kernel-no-zfs-installer.nix b/nixos/modules/installer/sd-card/sd-image-aarch64-new-kernel-no-zfs-installer.nix new file mode 100644 index 0000000000000..0e50559602945 --- /dev/null +++ b/nixos/modules/installer/sd-card/sd-image-aarch64-new-kernel-no-zfs-installer.nix @@ -0,0 +1,15 @@ +{ pkgs, ... }: + +{ + imports = [ ./sd-image-aarch64-new-kernel-installer.nix ]; + + # Makes `availableOn` fail for zfs, see <nixos/modules/profiles/base.nix>. + # This is a workaround since we cannot remove the `"zfs"` string from `supportedFilesystems`. + # The proper fix would be to make `supportedFilesystems` an attrset with true/false which we + # could then `lib.mkForce false` + nixpkgs.overlays = [(final: super: { + zfs = super.zfs.overrideAttrs(_: { + meta.platforms = []; + }); + })]; +} |