pub-solar-os/lib/devos/mkSuites.nix

25 lines
547 B
Nix
Raw Normal View History

2021-04-18 01:35:05 +00:00
{ lib, ... }:
{ users, profiles, userProfiles, suites } @ args:
let
2021-04-18 01:35:05 +00:00
inherit (lib) os;
definedSuites = suites {
inherit (args) users profiles userProfiles;
};
allProfiles =
let defaults = lib.collect (x: x ? default) profiles;
in map (x: x.default) defaults;
allUsers =
let defaults = lib.collect (x: x ? default) users;
in map (x: x.default) defaults;
createSuites = _: suites: lib.mapAttrs (_: v: os.profileMap v) suites // {
inherit allProfiles allUsers;
};
in
lib.mapAttrs createSuites definedSuites