{ci/eval,release}: migrate supported systems to top-level (#492103)

This commit is contained in:
Michael Daniels 2026-02-28 00:21:52 +00:00 committed by GitHub
commit f89b3b4ffb
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 17 additions and 13 deletions

View file

@ -10,14 +10,14 @@ nix-build ci -A eval.baseline
The two most important arguments are:
- `--arg evalSystems`: The set of systems for which `nixpkgs` should be evaluated.
Defaults to the four official platforms (`x86_64-linux`, `aarch64-linux`, `x86_64-darwin` and `aarch64-darwin`).
Defaults to the [supported systems](../../pkgs/top-level/release-supported-systems.json) for the branch.
Example: `--arg evalSystems '["x86_64-linux" "aarch64-darwin"]'`
- `--arg quickTest`: Enables testing a single chunk of the current system only for quick iteration.
Example: `--arg quickTest true`
The following arguments can be used to fine-tune performance:
- `--max-jobs`: The maximum number of derivations to run at the same time.
Only each [supported system](../supportedSystems.json) gets a separate derivation, so it doesn't make sense to set this higher than that number.
Only each supported system gets a separate derivation, so it doesn't make sense to set this higher than that number.
- `--cores`: The number of cores to use for each job.
Recommended to set this to the number of cores on your system divided by `--max-jobs`.
- `--arg chunkSize`: The number of attributes that are evaluated simultaneously on a single core.

View file

@ -38,7 +38,6 @@ let
fileset = unions (
map (lib.path.append ../..) [
".version"
"ci/supportedSystems.json"
"ci/eval/attrpaths.nix"
"ci/eval/chunk.nix"
"ci/eval/outpaths.nix"
@ -53,7 +52,9 @@ let
);
};
supportedSystems = builtins.fromJSON (builtins.readFile ../supportedSystems.json);
supportedSystems = builtins.fromJSON (
builtins.readFile ../../pkgs/top-level/release-supported-systems.json
);
attrpathsSuperset =
{

View file

@ -10,7 +10,9 @@
attrNamesOnly ? false,
# Set this to `null` to build for builtins.currentSystem only
systems ? builtins.fromJSON (builtins.readFile ../supportedSystems.json),
systems ? builtins.fromJSON (
builtins.readFile (path + "/pkgs/top-level/release-supported-systems.json")
),
# Customize the config used to evaluate nixpkgs
extraNixpkgsConfig ? { },

View file

@ -10,7 +10,7 @@
$ hydra-eval-jobs -I . pkgs/top-level/release-haskell.nix
*/
{
supportedSystems ? builtins.fromJSON (builtins.readFile ../../ci/supportedSystems.json),
supportedSystems ? builtins.fromJSON (builtins.readFile ./release-supported-systems.json),
}:
let

View file

@ -12,12 +12,7 @@
revision = "0000000000000000000000000000000000000000";
},
# The platform doubles for which we build Nixpkgs.
supportedSystems ? [
"x86_64-linux"
"x86_64-darwin"
"aarch64-linux"
"aarch64-darwin"
],
supportedSystems ? builtins.fromJSON (builtins.readFile ./release-supported-systems.json),
# Attributes passed to nixpkgs. Don't build packages marked as unfree.
nixpkgsArgs ? {
config = {

View file

@ -0,0 +1,6 @@
[
"aarch64-linux",
"aarch64-darwin",
"x86_64-linux",
"x86_64-darwin"
]

View file

@ -19,7 +19,7 @@
system ? builtins.currentSystem,
officialRelease ? false,
# The platform doubles for which we build Nixpkgs.
supportedSystems ? builtins.fromJSON (builtins.readFile ../../ci/supportedSystems.json),
supportedSystems ? builtins.fromJSON (builtins.readFile ./release-supported-systems.json),
# The platform triples for which we build bootstrap tools.
bootstrapConfigs ? [
"arm64-apple-darwin"