pub-solar-os/nix/ci.nix

32 lines
664 B
Nix
Raw Normal View History

let
inherit (default.inputs.nixos) lib;
default = (import "${../.}/compat").defaultNix;
2021-02-15 05:33:37 +00:00
ciSystems = [
"aarch64-linux"
"i686-linux"
"x86_64-linux"
];
filterSystems = lib.filterAttrs
(system: _: lib.elem system ciSystems);
2021-02-15 02:03:51 +00:00
recurseIntoAttrsRecursive = lib.mapAttrs (_: v:
if lib.isAttrs v
then recurseIntoAttrsRecursive (lib.recurseIntoAttrs v)
else v
);
2021-02-15 02:03:51 +00:00
systemOutputs = lib.filterAttrs
(_: set: lib.isAttrs set
&& lib.any
(system: set ? ${system})
ciSystems
)
default.outputs;
ciDrvs = lib.mapAttrs (_: system: filterSystems system) systemOutputs;
in
recurseIntoAttrsRecursive ciDrvs