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 <maxim.cournoyer@gmail>
This commit is contained in:
宋文武 2025-02-02 12:34:50 +08:00 committed by Andreas Enge
parent be0a6ff750
commit 1e29b73a85
No known key found for this signature in database
GPG key ID: F7D5C9BF765C61E3
2 changed files with 9 additions and 19 deletions

View file

@ -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

View file

@ -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