sneeuwvlok/modules/nixos/desktop/default.nix
2026-03-24 14:09:46 +00:00

32 lines
612 B
Nix

{
lib,
config,
namespace,
...
}: let
inherit (lib) mkIf mkOption mkEnableOption mkMerge;
inherit (lib.types) nullOr enum;
cfg = config.${namespace}.desktop;
in {
options.${namespace}.desktop = {
use = mkOption {
type = nullOr (enum ["plasma" "gamescope" "gnome" "cosmic"]);
default = null;
example = "plasma";
description = "Which desktop to enable";
};
};
config = mkMerge [
{
services.displayManager = {
enable = true;
};
}
# (mkIf (cfg.use != null) {
# ${namespace}.desktop.${cfg.use}.enable = true;
# })
];
}