2021-02-02 06:26:47 +03:00
|
|
|
{ lib, profiles }:
|
|
|
|
let
|
|
|
|
inherit (builtins) mapAttrs isFunction;
|
2021-02-02 06:57:14 +03:00
|
|
|
|
|
|
|
allProfiles =
|
2021-02-02 06:26:47 +03:00
|
|
|
let
|
|
|
|
filtered = lib.filterAttrs (n: _: n != "core") profiles;
|
|
|
|
in
|
|
|
|
lib.collect isFunction filtered;
|
2021-02-02 06:57:14 +03:00
|
|
|
|
|
|
|
allUsers = lib.collect isFunction users;
|
|
|
|
|
|
|
|
users = lib.flk.defaultImports (toString ../users);
|
2021-02-02 06:26:47 +03:00
|
|
|
in
|
|
|
|
with profiles;
|
|
|
|
mapAttrs (_: v: lib.flk.profileMap v)
|
2021-02-02 06:57:14 +03:00
|
|
|
# define your own suites below
|
2021-02-02 06:26:47 +03:00
|
|
|
rec {
|
2021-02-02 06:57:14 +03:00
|
|
|
work = [ develop virt users.nixos users.root ];
|
2021-02-02 06:26:47 +03:00
|
|
|
|
|
|
|
graphics = work ++ [ graphical ];
|
|
|
|
|
|
|
|
mobile = graphics ++ [ laptop ];
|
|
|
|
|
|
|
|
play = graphics ++ [
|
|
|
|
graphical.games
|
|
|
|
torrent
|
|
|
|
misc.disable-mitigations
|
|
|
|
];
|
|
|
|
|
|
|
|
goPlay = play ++ [ laptop ];
|
|
|
|
} // {
|
2021-02-02 06:57:14 +03:00
|
|
|
inherit allProfiles allUsers;
|
2021-02-02 06:26:47 +03:00
|
|
|
}
|