22 lines
No EOL
938 B
Nix
22 lines
No EOL
938 B
Nix
{ lib, ... }: {
|
|
options.roles = {
|
|
games = { enable = lib.mkEnableOption "Gaming packages and Steam"; };
|
|
kvm = { enable = lib.mkEnableOption "Virtualization support (libvirtd, waydroid)"; };
|
|
kmscon = { enable = lib.mkEnableOption "Console improvements"; };
|
|
auto-cpufreq = { enable = lib.mkEnableOption "CPU power management"; };
|
|
tlp = { enable = lib.mkEnableOption "TLP power management"; };
|
|
wine = { enable = lib.mkEnableOption "Wine for Windows compatibility"; };
|
|
|
|
# Window manager selection
|
|
wm = lib.mkOption {
|
|
type = lib.types.enum ["sway" "gnome" "none"];
|
|
default = "none";
|
|
description = "Window manager to enable";
|
|
};
|
|
|
|
# Special host-specific roles
|
|
primary = { enable = lib.mkEnableOption "Primary workstation designation"; };
|
|
lmstudio = { enable = lib.mkEnableOption "LM Studio AI tools"; };
|
|
ollama = { enable = lib.mkEnableOption "Ollama AI server"; };
|
|
};
|
|
} |