Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion doc/preface.chapter.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ shows the status of tests for the `nixpkgs-unstable` channel.

The tests are conducted by a cluster called [Hydra](https://nixos.org/hydra/),
which also builds binary packages from the Nix expressions in Nixpkgs for
`x86_64-linux`, `aarch64-linux`, `x86_64-darwin` and `aarch64-darwin`.
`x86_64-linux`, `aarch64-linux`, and `aarch64-darwin`.
The binaries are made available via a [binary cache](https://cache.nixos.org).

The current Nix expressions of the channels are available in the
Expand Down
5 changes: 1 addition & 4 deletions doc/using/platform-support.chapter.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,7 @@ Platform Tiers [4 through 7](https://github.com/NixOS/rfcs/blob/master/rfcs/0046
| `x86_64-unknown-linux-musl` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | Limited | ❌ | ✔️ | ✔️ |
| `aarch64-unknown-linux-musl` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | Limited | ❌ | ✔️ | ✔️ |
| `x86_64-unknown-unknown-freebsd` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | ❌ | ❌ | ✔️ | ✔️ |
| `arm64-apple-darwin` | [Tier 2](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-2) | Some | ✔️ | ✔️ | ✔️ | ❌\* |
| `x86_64-apple-darwin` | [Tier 2](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-2) | Some | ✔️ | ✔️ | ✔️ | ❌\* |
| `arm64-apple-darwin` | [Tier 2](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-2) | Some | ✔️ | ✔️ | ✔️ | ❌ |
| `i686-unknown-linux-gnu` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | Limited | ❌ | ✔️ | ✔️ |
| `riscv32-unknown-linux-gnu` | [Tier 4](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-4) | None | ❌ | ❌ | ❌ | ✔️ |
| `riscv64-unknown-linux-gnu` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | ❌ | ❌ | ✔️ | ✔️ |
Expand All @@ -45,5 +44,3 @@ Platform Tiers [4 through 7](https://github.com/NixOS/rfcs/blob/master/rfcs/0046
| `powerpc64-unknown-linux-gnuabielfv2` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | ❌ | ❌ | ✔️ | ✔️ |
| `powerpc64le-unknown-linux-gnu` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | ❌ | ❌ | ✔️ | ✔️ |
| `s390x-unknown-linux-gnu` | [Tier 3](https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md#tier-3) | None | ❌ | ❌ | ✔️ | ✔️ |

\* - Cross compiling is only supported on Darwin hosts.
30 changes: 19 additions & 11 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -219,17 +219,25 @@
evaluation. Evaluating the attribute value tends to require a significant
amount of computation, even considering lazy evaluation.
*/
legacyPackages = forAllSystems (
system:
(import ./. {
inherit system;
overlays = import ./pkgs/top-level/impure-overlays.nix ++ [
(final: prev: {
lib = prev.lib.extend libVersionInfoOverlay;
})
];
})
);
legacyPackages =
let
# We include `x86_64-darwin` here to ensure that users get a
# good error message for the 26.11 deprecation of the platform,
# while excluding it from `lib.systems.flakeExposed` so that we
# don’t break `nix flake check` for downstream users.
forAllSystems' = lib.genAttrs (lib.systems.flakeExposed ++ [ "x86_64-darwin" ]);
in
forAllSystems' (
system:
(import ./. {
inherit system;
overlays = import ./pkgs/top-level/impure-overlays.nix ++ [
(final: prev: {
lib = prev.lib.extend libVersionInfoOverlay;
})
];
})
);

/**
Optional modules that can be imported into a NixOS configuration.
Expand Down
1 change: 0 additions & 1 deletion lib/systems/flake-systems.nix
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
"x86_64-linux"
# Tier 2
"aarch64-linux"
"x86_64-darwin"
# Tier 3
"armv6l-linux"
"armv7l-linux"
Expand Down
6 changes: 3 additions & 3 deletions pkgs/top-level/nixpkgs-basic-release-checks.nix
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ pkgs.runCommand "nixpkgs-release-checks"
set -x
nix-env -f $src \
--show-trace --argstr system "$platform" \
--arg config '{ allowAliases = false; allowDeprecatedx86_64Darwin = true; }' \
--arg config '{ allowAliases = false; }' \
--option experimental-features 'no-url-literals' \
-qa --drv-path --system-filter \* --system \
"''${opts[@]}" 2> eval-warnings.log > packages1
Expand All @@ -72,7 +72,7 @@ pkgs.runCommand "nixpkgs-release-checks"

nix-env -f $src2 \
--show-trace --argstr system "$platform" \
--arg config '{ allowAliases = false; allowDeprecatedx86_64Darwin = true; }' \
--arg config '{ allowAliases = false; }' \
--option experimental-features 'no-url-literals' \
-qa --drv-path --system-filter \* --system \
"''${opts[@]}" > packages2
Expand All @@ -95,7 +95,7 @@ pkgs.runCommand "nixpkgs-release-checks"

nix-env -f $src \
--show-trace --argstr system "$platform" \
--arg config '{ allowAliases = false; allowDeprecatedx86_64Darwin = true; }' \
--arg config '{ allowAliases = false; }' \
--option experimental-features 'no-url-literals' \
-qa --drv-path --system-filter \* --system --meta --xml \
"''${opts[@]}" > /dev/null
Expand Down
5 changes: 1 addition & 4 deletions pkgs/top-level/release-haskell.nix
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ let
# -> [a] -- list of elements from which to remove
# -> [a]
#
# > removeMany ["aarch64-linux" "x86_64-darwin"] ["aarch64-linux" "x86_64-darwin" "x86_64-linux"]
# > removeMany ["aarch64-linux" "aarch64-darwin"] ["aarch64-linux" "aarch64-darwin" "x86_64-linux"]
# ["x86_64-linux"]
removeMany = itemsToRemove: list: lib.foldr lib.remove list itemsToRemove;

Expand Down Expand Up @@ -374,7 +374,6 @@ let
"aarch64-linux"

# musl only supports linux, not darwin.
"x86_64-darwin"
"aarch64-darwin"
]
{
Expand All @@ -399,7 +398,6 @@ let
"aarch64-linux" # times out on Hydra

# Static doesn't work on darwin
"x86_64-darwin"
"aarch64-darwin"
]
{
Expand Down Expand Up @@ -498,7 +496,6 @@ let
# Testing cross from x86_64-linux
"aarch64-darwin"
"aarch64-linux"
"x86_64-darwin"
]
{
haskellPackages = {
Expand Down
3 changes: 1 addition & 2 deletions pkgs/top-level/release-supported-systems.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
[
"aarch64-linux",
"aarch64-darwin",
"x86_64-linux",
"x86_64-darwin"
"x86_64-linux"
]
89 changes: 11 additions & 78 deletions pkgs/top-level/release.nix
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
"aarch64-unknown-linux-gnu"
"aarch64-unknown-linux-musl"
"i686-unknown-linux-gnu"
"x86_64-apple-darwin"
"x86_64-unknown-linux-gnu"
"x86_64-unknown-linux-musl"
# we can uncomment that once our bootstrap tarballs are fixed
Expand Down Expand Up @@ -90,10 +89,7 @@ let

inherit (release-lib.lib.attrsets) unionOfDisjoint;

supportDarwin = genAttrs [
"x86_64"
"aarch64"
] (arch: elem "${arch}-darwin" supportedSystems);
supportDarwin = elem "aarch64-darwin" supportedSystems;

nonPackageJobs = {
tarball = import ./make-tarball.nix {
Expand All @@ -112,58 +108,15 @@ let
metrics = import ./metrics.nix { inherit pkgs nixpkgs; };

darwin-tested =
if supportDarwin.x86_64 || supportDarwin.aarch64 then
if supportDarwin then
pkgs.releaseTools.aggregate {
name = "nixpkgs-darwin-${jobs.tarball.version}";
meta.description = "Release-critical builds for the Nixpkgs darwin channel";
constituents = [
jobs.tarball
jobs.release-checks
]
++ optionals supportDarwin.x86_64 [
jobs.cabal2nix.x86_64-darwin
jobs.ghc.x86_64-darwin
jobs.git.x86_64-darwin
jobs.go.x86_64-darwin
jobs.mariadb.x86_64-darwin
jobs.nix.x86_64-darwin
jobs.nixpkgs-review.x86_64-darwin
jobs.nix-info.x86_64-darwin
jobs.nix-info-tested.x86_64-darwin
jobs.openssh.x86_64-darwin
jobs.openssl.x86_64-darwin
jobs.pandoc.x86_64-darwin
jobs.postgresql.x86_64-darwin
jobs.python3.x86_64-darwin
jobs.ruby.x86_64-darwin
jobs.rustc.x86_64-darwin
# blocking ofBorg CI 2020-02-28
# jobs.stack.x86_64-darwin
jobs.stdenv.x86_64-darwin
jobs.vim.x86_64-darwin
jobs.cachix.x86_64-darwin
jobs.darwin.linux-builder.x86_64-darwin

# UI apps
# jobs.firefox-unwrapped.x86_64-darwin
jobs.qt5.qtmultimedia.x86_64-darwin
jobs.inkscape.x86_64-darwin
jobs.gimp2.x86_64-darwin # FIXME replace with gimp once https://github.com/NixOS/nixpkgs/issues/411189 is resoved
jobs.emacs.x86_64-darwin
jobs.wireshark.x86_64-darwin
jobs.transmission_4-gtk.x86_64-darwin

# Tests
/*
jobs.tests.cc-wrapper.default.x86_64-darwin
jobs.tests.cc-wrapper.llvmPackages.clang.x86_64-darwin
jobs.tests.cc-wrapper.llvmPackages.libcxx.x86_64-darwin
jobs.tests.stdenv-inputs.x86_64-darwin
jobs.tests.macOSSierraShared.x86_64-darwin
jobs.tests.stdenv.hooks.patch-shebangs.x86_64-darwin
*/
]
++ optionals supportDarwin.aarch64 [
++ optionals supportDarwin [
jobs.cabal2nix.aarch64-darwin
jobs.ghc.aarch64-darwin
jobs.git.aarch64-darwin
Expand Down Expand Up @@ -253,33 +206,7 @@ let
*/
]
++ collect isDerivation jobs.stdenvBootstrapTools
++ optionals supportDarwin.x86_64 [
jobs.stdenv.x86_64-darwin
jobs.cargo.x86_64-darwin
jobs.cachix.x86_64-darwin
jobs.devenv.x86_64-darwin
jobs.go.x86_64-darwin
jobs.python3.x86_64-darwin
jobs.nixpkgs-review.x86_64-darwin
jobs.nix.x86_64-darwin
jobs.nix-info.x86_64-darwin
jobs.nix-info-tested.x86_64-darwin
jobs.git.x86_64-darwin
jobs.mariadb.x86_64-darwin
jobs.vim.x86_64-darwin
jobs.inkscape.x86_64-darwin
jobs.qt5.qtmultimedia.x86_64-darwin
jobs.darwin.linux-builder.x86_64-darwin
/*
jobs.tests.cc-wrapper.default.x86_64-darwin
jobs.tests.cc-wrapper.llvmPackages.clang.x86_64-darwin
jobs.tests.cc-wrapper.llvmPackages.libcxx.x86_64-darwin
jobs.tests.stdenv-inputs.x86_64-darwin
jobs.tests.macOSSierraShared.x86_64-darwin
jobs.tests.stdenv.hooks.patch-shebangs.x86_64-darwin
*/
]
++ optionals supportDarwin.aarch64 [
++ optionals supportDarwin [
jobs.stdenv.aarch64-darwin
jobs.cargo.aarch64-darwin
jobs.cachix.aarch64-darwin
Expand All @@ -296,7 +223,13 @@ let
jobs.inkscape.aarch64-darwin
jobs.qt5.qtmultimedia.aarch64-darwin
jobs.darwin.linux-builder.aarch64-darwin
# consider adding tests, as suggested above for x86_64-darwin
/*
jobs.tests.cc-wrapper.default.aarch64-darwin
jobs.tests.cc-wrapper.llvmPackages.clang.aarch64-darwin
jobs.tests.cc-wrapper.llvmPackages.libcxx.aarch64-darwin
jobs.tests.stdenv-inputs.aarch64-darwin
jobs.tests.stdenv.hooks.patch-shebangs.aarch64-darwin
*/
];
};

Expand Down
Loading