dots/home/modules/default.nix
2026-03-14 21:45:57 +01:00

54 lines
1.3 KiB
Nix

{
config,
lib,
...
}: let
cfg = config.myModules;
in {
options.myModules = {
games.enable = lib.mkOption {
type = lib.types.bool;
default = false;
description = "Enable games module.";
};
dailyApps.enable = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable daily applications.";
};
niri.enable = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable niri wayland compositor config.";
};
nvf.enable = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable nvf (neovim) configuration.";
};
shell.enable = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable shell configuration.";
};
createProject.enable = lib.mkOption {
type = lib.types.bool;
default = true;
description = "Enable create-project tooling.";
};
};
imports = [
(lib.mkIf cfg.dailyApps.enable ./daily_apps.nix)
(lib.mkIf cfg.niri.enable ./niri.nix)
(lib.mkIf cfg.nvf.enable ./nvf.nix)
(lib.mkIf cfg.shell.enable ./shell.nix)
(lib.mkIf cfg.games.enable ./games/minecraft.nix)
(lib.mkIf cfg.createProject.enable ./create-project)
];
}