From dd19328008a9c77a2acecff8e7373fa9d7153ca0 Mon Sep 17 00:00:00 2001 From: Celes Renata Date: Sat, 9 Aug 2025 13:12:14 -0700 Subject: [PATCH] Fix quickshell Config.qml conflict in hybrid mode MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 🐛 BUG FIX: Resolve Config.qml conflict in hybrid mode 🎯 ISSUE: - Rich quickshell config was generating Config.qml - Configuration copying was also trying to copy Config.qml - Same conflict pattern as foot.ini 🔧 SOLUTION: - Applied same fix to quickshell-config.nix - Only generate Config.qml when configuration copying is disabled - Prevents file installation conflicts ✅ HYBRID MODE SHOULD NOW WORK: - Hyprland: declarative (overrides.hyprlandConf) - Quickshell: copied files (complex QML structure) - Terminal: copied files (foot.ini from source) - No more configuration conflicts! --- modules/components/quickshell-config.nix | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/components/quickshell-config.nix b/modules/components/quickshell-config.nix index ca1672e..8027025 100644 --- a/modules/components/quickshell-config.nix +++ b/modules/components/quickshell-config.nix @@ -208,8 +208,10 @@ in }; }; - config = mkIf (config.programs.dots-hyprland.enable && config.programs.dots-hyprland.overrides.quickshellConfig == null) { - # Only generate if no manual override is set + config = mkIf (config.programs.dots-hyprland.enable && + config.programs.dots-hyprland.overrides.quickshellConfig == null && + !(config.programs.dots-hyprland.configuration.enable or false)) { + # Only generate if no manual override is set AND configuration copying is disabled xdg.configFile."quickshell/ii/modules/common/Config.qml".text = '' pragma Singleton pragma ComponentBehavior: Bound