31 lines
797 B
Nix
31 lines
797 B
Nix
{
|
|
config,
|
|
lib,
|
|
vaculib,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib) mkOption types;
|
|
inherit (vaculib) mkOutOption;
|
|
inherit (config.vacu) systemKind;
|
|
in
|
|
{
|
|
options = {
|
|
vacu.systemKind = mkOption {
|
|
type = types.enum [
|
|
"minimal"
|
|
"desktop" # need a better name for this; should include laptops; everything I intend to get computery-stuff done on.
|
|
"laptop"
|
|
"container"
|
|
"server"
|
|
];
|
|
};
|
|
vacu.isContainer = mkOutOption (systemKind == "container");
|
|
vacu.isMinimal = mkOutOption (systemKind == "minimal" || systemKind == "container");
|
|
vacu.isGui = mkOutOption (systemKind == "desktop" || systemKind == "laptop");
|
|
vacu.isDev = mkOutOption (
|
|
systemKind == "desktop" || systemKind == "laptop" || systemKind == "server"
|
|
);
|
|
};
|
|
}
|