From 29124b85cf8cc60c25b6618e0f9f25ea46cb03d9 Mon Sep 17 00:00:00 2001 From: Silvan Mosberger Date: Fri, 26 May 2023 18:25:16 +0200 Subject: [PATCH] nixVersions.minver: init Co-Authored-By: Robert Hensing --- pkgs/tools/package-management/nix/default.nix | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 5929868ab72c..48970c6141cc 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -182,6 +182,23 @@ in lib.makeExtensible (self: { sha256 = "sha256-hNHfvmb1bIWwqFT5nesQgwh4V0OlyZHxj5ZVSQbZ+p4="; }; + # The minimum Nix version supported by Nixpkgs + # Note that some functionality *might* have been backported into this Nix version, + # making this package an inaccurate representation of what features are available + # in the actual lowest minver.nix *patch* version. + minimum = + let + minver = import ../../../../lib/minver.nix; + major = lib.versions.major minver; + minor = lib.versions.minor minver; + attribute = "nix_${major}_${minor}"; + nix = self.${attribute}; + in + if ! self ? ${attribute} then + throw "The minimum supported Nix version is ${minver} (declared in lib/minver.nix), but pkgs.nixVersions.${attribute} does not exist." + else + nix; + stable = self.nix_2_13; unstable = self.nix_2_15;