diff --git a/pkgs/desktops/lomiri/default.nix b/pkgs/desktops/lomiri/default.nix index 032c15476d72..2b2d4cd6a6ea 100644 --- a/pkgs/desktops/lomiri/default.nix +++ b/pkgs/desktops/lomiri/default.nix @@ -44,6 +44,7 @@ let lomiri-ui-toolkit = callPackage ./qml/lomiri-ui-toolkit { }; #### Services + biometryd = callPackage ./services/biometryd { }; lomiri-content-hub = callPackage ./services/lomiri-content-hub { # Check for working qdoc: not found withDocumentation = !useQt6; @@ -88,7 +89,6 @@ let qqc2-suru-style = callPackage ./qml/qqc2-suru-style { }; #### Services - biometryd = callPackage ./services/biometryd { }; hfd-service = callPackage ./services/hfd-service { }; lomiri-history-service = callPackage ./services/lomiri-history-service { }; lomiri-indicator-datetime = ayatana-indicator-datetime.override { enableLomiriFeatures = true; }; diff --git a/pkgs/desktops/lomiri/services/biometryd/default.nix b/pkgs/desktops/lomiri/services/biometryd/default.nix index 40fcd228444e..cff11cdafc6d 100644 --- a/pkgs/desktops/lomiri/services/biometryd/default.nix +++ b/pkgs/desktops/lomiri/services/biometryd/default.nix @@ -23,6 +23,11 @@ validatePkgConfig, }: +let + withQt6 = lib.strings.versionAtLeast qtbase.version "6"; + listToQtVar = suffix: lib.makeSearchPathOutput "bin" suffix; + qtQmlPaths = listToQtVar qtbase.qtQmlPrefix [ qtdeclarative ]; +in stdenv.mkDerivation (finalAttrs: { pname = "biometryd"; version = "0.4.0"; @@ -60,6 +65,12 @@ stdenv.mkDerivation (finalAttrs: { substituteInPlace data/biometryd.pc.in \ --replace-fail 'libdir=''${exec_prefix}' 'libdir=''${prefix}' \ --replace-fail 'includedir=''${exec_prefix}' 'includedir=''${prefix}' \ + + # Suffix our QML2_IMPORT_PATH + substituteInPlace tests/CMakeLists.txt \ + --replace-fail \ + 'QML2_IMPORT_PATH=''${CMAKE_BINARY_DIR}/src/biometry/qml;' \ + 'QML2_IMPORT_PATH=''${CMAKE_BINARY_DIR}/src/biometry/qml:${qtQmlPaths};' '' + lib.optionalString (!finalAttrs.finalPackage.doCheck) '' sed -i -e '/add_subdirectory(tests)/d' CMakeLists.txt @@ -96,14 +107,14 @@ stdenv.mkDerivation (finalAttrs: { dontWrapQtApps = true; cmakeFlags = [ - (lib.cmakeBool "ENABLE_QT6" (lib.strings.versionAtLeast qtbase.version "6")) + (lib.cmakeBool "ENABLE_QT6" withQt6) (lib.cmakeBool "ENABLE_WERROR" true) (lib.cmakeBool "WITH_HYBRIS" false) ]; preBuild = '' # Generating plugins.qmltypes (also used in checkPhase?) - export QT_PLUGIN_PATH=${lib.getBin qtbase}/${qtbase.qtPluginPrefix} + export QT_PLUGIN_PATH=${listToQtVar qtbase.qtPluginPrefix [ qtbase ]} ''; doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform;