From 1e29b73a85a77e1a05b8d254f2b65bfffb7c5ba7 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sun, 2 Feb 2025 12:34:50 +0800 Subject: gnu: qtwebengine: Fix default path for QtWebEngineProcess. Since qtwebengine and qtbase are not installed into the same prefix, the default path for QtWebEngineProcess won't work. Fix it so that we no longer need to set QTWEBENGINEPROCESS_PATH anymore. * gnu/packages/qt.scm (qtwebengine-5, qtwebengine) [arguments]: Substitute 'QLibraryInfo::LibraryExecutablesPath' in substitute-source phase. [native-search-paths]: Remove QTWEBENGINEPROCESS_PATH. * guix/build/qt-utils.scm (variables-for-wrapping): Remove QTWEBENGINEPROCESS_PATH. Change-Id: Ie0dfaf8c2355a679e2a3ddeacf09654830f9ab2f Reviewed-by: Maxim Cournoyer --- gnu/packages/qt.scm | 22 ++++++++-------------- guix/build/qt-utils.scm | 6 +----- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 5e63305c9a..ba894fb1c7 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -3477,7 +3477,10 @@ linux/libcurl_wrapper.h") "/share/qt5/translations\")")) (("QLibraryInfo::location\\(QLibraryInfo::DataPath\\)") (string-append "QLatin1String(\"" #$output - "/share/qt5\")"))) + "/share/qt5\")")) + (("QLibraryInfo::location\\(QLibraryInfo::LibraryExecutablesPath)") + (string-append "QLatin1String(\"" #$output + "/lib/qt5/libexec\")"))) ;; Substitute full dynamic library path for nss. (substitute* "src/3rdparty/chromium/crypto/nss_util.cc" (("libnssckbi.so") @@ -3515,12 +3518,6 @@ linux/libcurl_wrapper.h") ;; It's possible this can be fixed by setting QTWEBENGINEPROCESS_PATH ;; before running tests. ((#:tests? _ #f) #f))) - (native-search-paths - (list (search-path-specification - (file-type 'regular) - (separator #f) - (variable "QTWEBENGINEPROCESS_PATH") - (files '("lib/qt5/libexec/QtWebEngineProcess"))))) (home-page "https://wiki.qt.io/QtWebEngine") (synopsis "Qt WebEngine module") (description "The Qt5WebEngine module provides support for web applications @@ -3886,7 +3883,10 @@ linux/libcurl_wrapper.h" "/share/qt6/translations\")")) (("QLibraryInfo::path\\(QLibraryInfo::DataPath)") (string-append "QLatin1String(\"" #$output - "/share/qt6\")"))) + "/share/qt6\")")) + (("QLibraryInfo::path\\(QLibraryInfo::LibraryExecutablesPath)") + (string-append "QLatin1String(\"" #$output + "/lib/qt6/libexec\")"))) ;; Substitute full dynamic library path for nss. (substitute* "src/3rdparty/chromium/crypto/nss_util.cc" (("libnssckbi.so") @@ -3946,12 +3946,6 @@ linux/libcurl_wrapper.h" (replace "qtbase" qtbase) (replace "qtdeclarative" qtdeclarative) (replace "qtwebchannel" qtwebchannel))) - (native-search-paths - (list (search-path-specification - (file-type 'regular) - (separator #f) - (variable "QTWEBENGINEPROCESS_PATH") - (files '("lib/qt6/libexec/QtWebEngineProcess"))))) (home-page "https://wiki.qt.io/QtWebEngine") (synopsis "Qt WebEngine module") (description "The Qt WebEngine module provides support for web diff --git a/guix/build/qt-utils.scm b/guix/build/qt-utils.scm index d7609b9f21..65592757e6 100644 --- a/guix/build/qt-utils.scm +++ b/guix/build/qt-utils.scm @@ -93,11 +93,7 @@ `(,(if (>= (string->number qt-major-version) 6) "QML_IMPORT_PATH" "QML2_IMPORT_PATH") - prefix directory ,(format #f "/lib/qt~a/qml" qt-major-version)) - ;; QTWEBENGINEPROCESS_PATH accepts a single value, which makes 'exact the - ;; most suitable environment variable type for it. - `("QTWEBENGINEPROCESS_PATH" = regular - ,(format #f "/lib/qt~a/libexec/QtWebEngineProcess" qt-major-version))))) + prefix directory ,(format #f "/lib/qt~a/qml" qt-major-version))))) (define* (wrap-qt-program* program #:key sh inputs output-dir qt-wrap-excluded-inputs -- cgit v1.2.3