- Add matugen to writable-mode backup script directory list
- Add matugen conflict handling to Home Manager activation script
- Handle both symlinked and regular matugen directories
- Prevents activation failures due to existing matugen configs
This resolves the 'mkdir: cannot create directory' and 'ln: failed to create symbolic link'
errors that occur when ~/.config/matugen already exists during Home Manager activation.
- Add gsettings-desktop-schemas for GNOME schema support on non-GNOME systems
- Add libstdc++.so.6 support via stdenv.cc.cc.lib for Python packages
- Include all required system libraries for Python virtual environment
- Set XDG_DATA_DIRS to include GNOME schemas path
- Reorganize Python environment configuration for better clarity
This resolves the issue where Light mode couldn't be selected in the
quickshell settings menu due to missing dependencies and library linking issues.
- Handle conflicting symlinks for icons, konsole, and fish directories
- Backup existing directories before home-manager creates new ones
- Run conflict handling before linkGeneration phase
🐛 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!