diff --git a/pkgs/os-specific/linux/zfs/2_2.nix b/pkgs/os-specific/linux/zfs/2_2.nix index 587c7bc8d96a7..f32312ae3d80e 100644 --- a/pkgs/os-specific/linux/zfs/2_2.nix +++ b/pkgs/os-specific/linux/zfs/2_2.nix @@ -1,33 +1,33 @@ { callPackage, - kernel ? null, - stdenv, lib, nixosTests, + stdenv, ... }@args: -let - stdenv' = if kernel == null then stdenv else kernel.stdenv; -in callPackage ./generic.nix args { # You have to ensure that in `pkgs/top-level/linux-kernels.nix` # this attribute is the correct one for this package. kernelModuleAttribute = "zfs_2_2"; # check the release notes for compatible kernels - kernelCompatible = kernel: kernel.kernelOlder "6.13"; + kernelCompatible = kernel: kernel.kernelOlder "6.16"; # this package should point to the latest release. - version = "2.2.7"; + version = "2.2.8"; - tests = { - inherit (nixosTests.zfs) installer series_2_2; - }; + tests = + { + inherit (nixosTests.zfs) series_2_2; + } + // lib.optionalAttrs stdenv.isx86_64 { + inherit (nixosTests.zfs) installer; + }; maintainers = with lib.maintainers; [ adamcstephens amarshall ]; - hash = "sha256-nFOB0/7YK4e8ODoW9A+RQDkZHG/isp2EBOE48zTaMP4="; + hash = "sha256-ZYgC8L4iI9ewaC7rkMFSRAKeTWr72N5aRP98VLL4oqo="; } diff --git a/pkgs/os-specific/linux/zfs/2_3.nix b/pkgs/os-specific/linux/zfs/2_3.nix index 992cba2a68b02..e88b4c5915941 100644 --- a/pkgs/os-specific/linux/zfs/2_3.nix +++ b/pkgs/os-specific/linux/zfs/2_3.nix @@ -1,15 +1,11 @@ { callPackage, - kernel ? null, - stdenv, lib, nixosTests, + stdenv, ... }@args: -let - stdenv' = if kernel == null then stdenv else kernel.stdenv; -in callPackage ./generic.nix args { # You have to ensure that in `pkgs/top-level/linux-kernels.nix` # this attribute is the correct one for this package. @@ -20,9 +16,13 @@ callPackage ./generic.nix args { # this package should point to the latest release. version = "2.3.2"; - tests = { - inherit (nixosTests.zfs) installer series_2_3; - }; + tests = + { + inherit (nixosTests.zfs) series_2_3; + } + // lib.optionalAttrs stdenv.isx86_64 { + inherit (nixosTests.zfs) installer; + }; maintainers = with lib.maintainers; [ adamcstephens diff --git a/pkgs/os-specific/linux/zfs/generic.nix b/pkgs/os-specific/linux/zfs/generic.nix index 3360b2cc73196..570b41eacd51f 100644 --- a/pkgs/os-specific/linux/zfs/generic.nix +++ b/pkgs/os-specific/linux/zfs/generic.nix @@ -30,6 +30,7 @@ let pkg-config, curl, pam, + nix-update-script, # Kernel dependencies kernel ? null, @@ -263,22 +264,31 @@ let outputs = [ "out" ] ++ optionals buildUser [ "dev" ]; - passthru = { - inherit kernel; - inherit enableMail kernelModuleAttribute; - latestCompatibleLinuxPackages = lib.warn "zfs.latestCompatibleLinuxPackages is deprecated and is now pointing at the default kernel. If using the stable LTS kernel (default `linuxPackages` is not possible then you must explicitly pin a specific kernel release. For example, `boot.kernelPackages = pkgs.linuxPackages_6_6`. Please be aware that non-LTS kernels are likely to go EOL before ZFS supports the latest supported non-LTS release, requiring manual intervention." linuxPackages; - - # The corresponding userspace tools to this instantiation - # of the ZFS package set. - userspaceTools = genericBuild ( - outerArgs - // { - configFile = "user"; - } - ) innerArgs; - - inherit tests; - }; + passthru = + { + inherit kernel; + inherit enableMail kernelModuleAttribute; + latestCompatibleLinuxPackages = lib.warn "zfs.latestCompatibleLinuxPackages is deprecated and is now pointing at the default kernel. If using the stable LTS kernel (default `linuxPackages` is not possible then you must explicitly pin a specific kernel release. For example, `boot.kernelPackages = pkgs.linuxPackages_6_6`. Please be aware that non-LTS kernels are likely to go EOL before ZFS supports the latest supported non-LTS release, requiring manual intervention." linuxPackages; + + # The corresponding userspace tools to this instantiation + # of the ZFS package set. + userspaceTools = genericBuild ( + outerArgs + // { + configFile = "user"; + } + ) innerArgs; + + inherit tests; + } + // lib.optionalAttrs (kernelModuleAttribute != "zfs_unstable") { + updateScript = nix-update-script { + extraArgs = [ + "--version-regex=^zfs-(${lib.versions.major version}\\.${lib.versions.minor version}\\.[0-9]+)" + "--override-filename=pkgs/os-specific/linux/zfs/${lib.versions.major version}_${lib.versions.minor version}.nix" + ]; + }; + }; meta = { description = "ZFS Filesystem Linux" + (if buildUser then " Userspace Tools" else " Kernel Module"); diff --git a/pkgs/os-specific/linux/zfs/unstable.nix b/pkgs/os-specific/linux/zfs/unstable.nix index b2ebfccc14105..be9ad8b682e71 100644 --- a/pkgs/os-specific/linux/zfs/unstable.nix +++ b/pkgs/os-specific/linux/zfs/unstable.nix @@ -1,14 +1,9 @@ { callPackage, - kernel ? null, - stdenv, nixosTests, ... }@args: -let - stdenv' = if kernel == null then stdenv else kernel.stdenv; -in callPackage ./generic.nix args { # You have to ensure that in `pkgs/top-level/linux-kernels.nix` # this attribute is the correct one for this package.