From 5b107bd118a0e97643658ba8ceb14f6152a0dc0f Mon Sep 17 00:00:00 2001 From: Celes Renata Date: Sat, 9 Aug 2025 23:20:10 -0700 Subject: [PATCH] Fix quickshell Qt5Compat dependency issue - Add qt6.qt5compat as build input to quickshell package - Use wrapQtAppsHook for proper Qt module wrapping - Set up QML import paths for Qt5Compat.GraphicalEffects - This resolves the 'module Qt5Compat.GraphicalEffects is not installed' error --- flake.nix | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/flake.nix b/flake.nix index 7835f1f..1b2e1f9 100644 --- a/flake.nix +++ b/flake.nix @@ -23,7 +23,23 @@ in { overlays.default = final: prev: { - quickshell = quickshell.packages.${system}.default; + # Enhanced quickshell with Qt5Compat support for dots-hyprland + quickshell = quickshell.packages.${system}.default.overrideAttrs (oldAttrs: { + # Add Qt5Compat as a runtime dependency + buildInputs = (oldAttrs.buildInputs or []) ++ [ final.qt6.qt5compat ]; + + # Use Qt's wrapper to ensure QML modules are found + nativeBuildInputs = (oldAttrs.nativeBuildInputs or []) ++ [ final.qt6.wrapQtAppsHook ]; + + # Set up QML import paths properly + preFixup = (oldAttrs.preFixup or "") + '' + qtWrapperArgs+=( + --prefix QML2_IMPORT_PATH : "${final.qt6.qt5compat}/${final.qt6.qtbase.qtQmlPrefix}" + --prefix QML2_IMPORT_PATH : "${final.qt6.qtpositioning}/${final.qt6.qtbase.qtQmlPrefix}" + --prefix QML2_IMPORT_PATH : "${final.qt6.qtmultimedia}/${final.qt6.qtbase.qtQmlPrefix}" + ) + ''; + }); }; packages.${system} = utilityPackages // {