Add individual enable options for foot, kitty, and fuzzel

- Added configuration.applications.foot.enable option
- Added configuration.applications.kitty.enable option
- Added configuration.applications.fuzzel.enable option
- Modified configDirs to respect individual application enable flags
- Allows selective disabling of conflicting terminal/launcher configs
This commit is contained in:
Celes Renata
2025-08-11 23:33:16 -07:00
parent 98e2ffe352
commit 297ca9ed99
+32 -8
View File
@@ -35,6 +35,33 @@ in
default = true; default = true;
description = "Copy Hyprland configuration"; description = "Copy Hyprland configuration";
}; };
# Individual application enable options
applications = {
foot = {
enable = mkOption {
type = types.bool;
default = true;
description = "Enable foot terminal configuration";
};
};
kitty = {
enable = mkOption {
type = types.bool;
default = true;
description = "Enable kitty terminal configuration";
};
};
fuzzel = {
enable = mkOption {
type = types.bool;
default = true;
description = "Enable fuzzel launcher configuration";
};
};
};
}; };
config = mkIf cfg.enable { config = mkIf cfg.enable {
@@ -45,14 +72,11 @@ in
(mkIf cfg.copyMiscConfig ( (mkIf cfg.copyMiscConfig (
let let
# Get all directories in .config except fish, hypr, and quickshell (quickshell handled specially) # Get all directories in .config except fish, hypr, and quickshell (quickshell handled specially)
configDirs = [ # Now with individual enable options
"kitty" configDirs = lib.optionals cfg.applications.kitty.enable [ "kitty" ] ++
"foot" lib.optionals cfg.applications.foot.enable [ "foot" ] ++
"fuzzel" lib.optionals cfg.applications.fuzzel.enable [ "fuzzel" ] ++
"wlogout" [ "wlogout" "matugen" ]; # Always enabled applications
"matugen"
# Add more as discovered in the source
];
configFiles = listToAttrs (map (dir: { configFiles = listToAttrs (map (dir: {
name = dir; name = dir;