summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--flake.nix10
-rw-r--r--lib/systems/default.nix1
-rw-r--r--lib/systems/supported.nix24
3 files changed, 26 insertions, 9 deletions
diff --git a/flake.nix b/flake.nix
index ececd26c153c..1e20fcd40ebe 100644
--- a/flake.nix
+++ b/flake.nix
@@ -11,15 +11,7 @@
lib = import ./lib;
- systems = [
- "x86_64-linux"
- "i686-linux"
- "x86_64-darwin"
- "aarch64-linux"
- "armv6l-linux"
- "armv7l-linux"
- "aarch64-darwin"
- ];
+ systems = lib.systems.supported.hydra;
forAllSystems = f: lib.genAttrs systems (system: f system);
diff --git a/lib/systems/default.nix b/lib/systems/default.nix
index ef609859abbf..529eeb6514b9 100644
--- a/lib/systems/default.nix
+++ b/lib/systems/default.nix
@@ -8,6 +8,7 @@ rec {
platforms = import ./platforms.nix { inherit lib; };
examples = import ./examples.nix { inherit lib; };
architectures = import ./architectures.nix { inherit lib; };
+ supported = import ./supported.nix { inherit lib; };
# Elaborate a `localSystem` or `crossSystem` so that it contains everything
# necessary.
diff --git a/lib/systems/supported.nix b/lib/systems/supported.nix
new file mode 100644
index 000000000000..60bf30741344
--- /dev/null
+++ b/lib/systems/supported.nix
@@ -0,0 +1,24 @@
+# Supported systems according to RFC0046's definition.
+#
+# https://github.com/NixOS/rfcs/blob/master/rfcs/0046-platform-support-tiers.md
+{ lib }:
+rec {
+ # List of systems that are built by Hydra.
+ hydra = tier1 ++ tier2 ++ tier3;
+
+ tier1 = [
+ "x86_64-linux"
+ ];
+
+ tier2 = [
+ "aarch64-linux"
+ "x86_64-darwin"
+ ];
+
+ tier3 = [
+ "armv6l-linux"
+ "armv7l-linux"
+ "i686-linux"
+ "mipsel-linux"
+ ];
+}