dots/home/modules/default.nix
2026-03-14 22:16:46 +01:00

53 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.optional cfg.dailyApps.enable ./daily_apps.nix)
++ (lib.optional cfg.niri.enable ./niri.nix)
++ (lib.optional cfg.nvf.enable ./nvf.nix)
++ (lib.optional cfg.shell.enable ./shell)
++ (lib.optional cfg.games.enable ./games/minecraft.nix)
++ (lib.optional cfg.createProject.enable ./create-project/create-project.nix);
}