diff options
| author | sternenseemann <sternenseemann@systemli.org> | 2022-01-11 11:31:58 +0100 |
|---|---|---|
| committer | sterni <sternenseemann@systemli.org> | 2022-01-17 16:15:35 +0100 |
| commit | 6afc3b137a34a56ce2e3e19d0cc1d45ddc77dacc (patch) | |
| tree | e065fc1e0fa074de78404d6346f10c0159da156a | |
| parent | Merge pull request #153858 from NixOS/backport-153273-to-release-21.11 (diff) | |
| download | nixpkgs-6afc3b137a34a56ce2e3e19d0cc1d45ddc77dacc.tar.gz | |
release.nix: fix eval with aarch64-, but not x86_64-darwin supported
We emit a few jobs conditionally on supportDarwin which only checked for
x86_64-darwin in the past. This change makes it more modular by
transforming it into an attribute set which holds the two darwin
arches. Jobs needing aarch64-darwin or x86_64-darwin are now only
emitted if their respective platform is actually in supportedSystems.
This issue was discovered because the staging-next-21.11 jobset had
commented out x86_64-darwin (presumably due to a build load issue).
(cherry picked from commit 533eb9866c6dfe56637f2f8c76fcca3c7b47f72f)
| -rw-r--r-- | pkgs/top-level/release.nix | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix index fca5d3760942..1cf3b60a0f21 100644 --- a/pkgs/top-level/release.nix +++ b/pkgs/top-level/release.nix @@ -25,7 +25,10 @@ let systemsWithAnySupport = supportedSystems ++ limitedSupportedSystems; - supportDarwin = builtins.elem "x86_64-darwin" systemsWithAnySupport; + supportDarwin = lib.genAttrs [ + "x86_64" + "aarch64" + ] (arch: builtins.elem "${arch}-darwin" systemsWithAnySupport); jobs = { tarball = import ./make-tarball.nix { inherit pkgs nixpkgs officialRelease supportedSystems; }; @@ -36,7 +39,7 @@ let lib-tests = import ../../lib/tests/release.nix { inherit pkgs; }; pkgs-lib-tests = import ../pkgs-lib/tests { inherit pkgs; }; - darwin-tested = if supportDarwin then pkgs.releaseTools.aggregate + darwin-tested = if supportDarwin.x86_64 then pkgs.releaseTools.aggregate { name = "nixpkgs-darwin-${jobs.tarball.version}"; meta.description = "Release-critical builds for the Nixpkgs darwin channel"; constituents = @@ -128,7 +131,7 @@ let */ ] ++ lib.collect lib.isDerivation jobs.stdenvBootstrapTools - ++ lib.optionals supportDarwin [ + ++ lib.optionals supportDarwin.x86_64 [ jobs.stdenv.x86_64-darwin jobs.python.x86_64-darwin jobs.python3.x86_64-darwin @@ -167,7 +170,7 @@ let dist test; }) # darwin is special in this - // optionalAttrs supportDarwin { + // optionalAttrs supportDarwin.x86_64 { x86_64-darwin = let bootstrap = import ../stdenv/darwin/make-bootstrap-tools.nix { system = "x86_64-darwin"; }; @@ -178,7 +181,7 @@ let # TODO re-enable with https://github.com/NixOS/nixpkgs/pull/126411 # inherit (bootstrap.test-pkgs) stdenv; }; - + } // optionalAttrs supportDarwin.aarch64 { # Cross compiled bootstrap tools aarch64-darwin = let |
