From 297ca9ed99236150570e0b98b00ed68ae864b09f Mon Sep 17 00:00:00 2001 From: Celes Renata Date: Mon, 11 Aug 2025 23:33:16 -0700 Subject: [PATCH] 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 --- modules/configuration.nix | 40 +++++++++++++++++++++++++++++++-------- 1 file changed, 32 insertions(+), 8 deletions(-) diff --git a/modules/configuration.nix b/modules/configuration.nix index bddbd0c..907cb0f 100644 --- a/modules/configuration.nix +++ b/modules/configuration.nix @@ -35,6 +35,33 @@ in default = true; 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 { @@ -45,14 +72,11 @@ in (mkIf cfg.copyMiscConfig ( let # Get all directories in .config except fish, hypr, and quickshell (quickshell handled specially) - configDirs = [ - "kitty" - "foot" - "fuzzel" - "wlogout" - "matugen" - # Add more as discovered in the source - ]; + # Now with individual enable options + configDirs = lib.optionals cfg.applications.kitty.enable [ "kitty" ] ++ + lib.optionals cfg.applications.foot.enable [ "foot" ] ++ + lib.optionals cfg.applications.fuzzel.enable [ "fuzzel" ] ++ + [ "wlogout" "matugen" ]; # Always enabled applications configFiles = listToAttrs (map (dir: { name = dir;