From patchwork Fri Jan 31 10:34:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: "King, Spencer via Guix-patches\" via" X-Patchwork-Id: 37993 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id 5672627BBEA; Fri, 31 Jan 2025 10:32:34 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-5.9 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_BLOCKED, RCVD_IN_VALIDITY_CERTIFIED,RCVD_IN_VALIDITY_RPBL,RCVD_IN_VALIDITY_SAFE, SPF_HELO_PASS,URIBL_BLOCKED,URI_NOVOWEL autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 0AF4027BBE2 for ; Fri, 31 Jan 2025 10:32:33 +0000 (GMT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tdoJg-00004t-EJ; Fri, 31 Jan 2025 05:32:04 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdoJe-0008WN-It for guix-patches@gnu.org; Fri, 31 Jan 2025 05:32:02 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tdoJe-0006SQ-9z for guix-patches@gnu.org; Fri, 31 Jan 2025 05:32:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:Subject; bh=YUa15BIpcNlbaBMSMls5hq7BD+80JknRIwADIX2kqzI=; b=QOKto4a6y4LwzO3urE3h8Bk4K0aV0YcpcRvg/hT987sy+uwVWIo0XqkX7jiHGbaBqGHxv6SEDVGIiTMERuue0skvkE4Knewc/HmOmMWKrjMQa0cXv9IPZ1vNYpzitwc4UXH/GyFY1SEDIDczh2nqc0QaDDa+baXbed8xS5Y/+9TVg7eY38wYsbWpghEmGGnYupcqnYIdhn8ykAr2QKn/VLxiVkLS0VINDITG5IpysLv+iH9p+CS+KPAPQ0BBjY39oYWGQv4Khno+93ZezzE2iTiqdYq18WhioVm36QD6EBQS60hywmD6jPv5a/sNXoNxhFRD2kXP2CeRICAN3+bHmw==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tdoJd-0001jW-Ug; Fri, 31 Jan 2025 05:32:01 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75966] [PATCH] gnu: qtwebengine: Set default path for QtWebEngineProcess. Resent-From: iyzsong@envs.net Original-Sender: "Debbugs-submit" Resent-CC: maxim.cournoyer@gmail.com, iyzsong@envs.net, guix-patches@gnu.org Resent-Date: Fri, 31 Jan 2025 10:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 75966 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75966@debbugs.gnu.org Cc: =?utf-8?b?5a6L5paH5q2m?= , Maxim Cournoyer , =?utf-8?b?5a6L5paH5q2m?= X-Debbugs-Original-To: guix-patches@gnu.org X-Debbugs-Original-Xcc: Maxim Cournoyer , =?utf-8?b?5a6L5paH5q2m?= Received: via spool by submit@debbugs.gnu.org id=B.17383195056629 (code B ref -1); Fri, 31 Jan 2025 10:32:01 +0000 Received: (at submit) by debbugs.gnu.org; 31 Jan 2025 10:31:45 +0000 Received: from localhost ([127.0.0.1]:50121 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tdoJG-0001ie-VH for submit@debbugs.gnu.org; Fri, 31 Jan 2025 05:31:44 -0500 Received: from lists.gnu.org ([2001:470:142::17]:53412) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tdoJB-0001iG-U5 for submit@debbugs.gnu.org; Fri, 31 Jan 2025 05:31:37 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdoJ6-0008ME-9m for guix-patches@gnu.org; Fri, 31 Jan 2025 05:31:28 -0500 Received: from mail.envs.net ([5.199.136.28]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tdoJ3-0006P1-FS for guix-patches@gnu.org; Fri, 31 Jan 2025 05:31:27 -0500 Received: from localhost (mail.envs.net [127.0.0.1]) by mail.envs.net (Postfix) with ESMTP id 89C6338A3E59; Fri, 31 Jan 2025 10:31:22 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at mail.envs.net Received: from mail.envs.net ([127.0.0.1]) by localhost (mail.envs.net [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 1OSb__qVpCtB; Fri, 31 Jan 2025 10:31:16 +0000 (UTC) Received: from localhost (unknown [112.44.100.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mail.envs.net (Postfix) with ESMTPSA; Fri, 31 Jan 2025 10:31:16 +0000 (UTC) Received: from localhost.localdomain (localhost.lan [127.0.0.1]) by localhost (OpenSMTPD) with ESMTP id 51220bde; Fri, 31 Jan 2025 10:34:54 +0000 (UTC) Date: Fri, 31 Jan 2025 18:34:50 +0800 Message-ID: X-Mailer: git-send-email 2.47.1 MIME-Version: 1.0 Received-SPF: pass client-ip=5.199.136.28; envelope-from=iyzsong@envs.net; helo=mail.envs.net X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URI_NOVOWEL=0.5 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: iyzsong@envs.net X-ACL-Warn: , iyzsong--- via Guix-patches X-Patchwork-Original-From: iyzsong--- via Guix-patches via From: "King, Spencer via Guix-patches\" via" Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches From: 宋文武 * gnu/packages/qt.scm (qtwebengine-5, qtwebengine)[arguments]: Substitute 'QLibraryInfo::LibraryExecutablesPath' in 'substitute-source phase. [native-search-paths]: Remove QTWEBENGINEPROCESS_PATH. * gnu/packages/ebook.scm (calibre) * gnu/packages/education.scm (anki) * gnu/packages/kde-internet.scm (falkon) * gnu/packages/kde-systemtools.scm (khelpcenter) * gnu/packages/kde.scm (akregator) * gnu/packages/video.scm (openshot) * gnu/packages/vpn.scm (openconnect-sso) * gnu/packages/web-browsers.scm (qutebrowser) * gnu/packages/web.scm (kiwix-desktop): Remove wrapper for QTWEBENGINEPROCESS_PATH. Change-Id: I43745969ce80daa0f077da37671d1b44a468c953 --- gnu/packages/ebook.scm | 21 +-------------------- gnu/packages/education.scm | 13 +++---------- gnu/packages/kde-internet.scm | 13 ------------- gnu/packages/kde-systemtools.scm | 10 +--------- gnu/packages/kde.scm | 13 +------------ gnu/packages/qt.scm | 22 ++++++++-------------- gnu/packages/video.scm | 14 +------------- gnu/packages/vpn.scm | 12 +----------- gnu/packages/web-browsers.scm | 10 ++-------- gnu/packages/web.scm | 10 +--------- 10 files changed, 19 insertions(+), 119 deletions(-) base-commit: bdd6760b8c46e59f86415d67981acb6f77e9ed22 diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index 0cd2b31724..73fea2f66a 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -320,26 +320,7 @@ (define-public calibre (string-append #$(this-package-input "font-liberation") "/share/fonts/truetype"))) (delete-file-recursively font-dest) - (symlink font-src font-dest)))) - ;; Make run-time dependencies available to the binaries. - (add-after 'wrap 'wrap-program - (lambda* (#:key inputs #:allow-other-keys) - (with-directory-excursion (string-append #$output "/bin") - (for-each - (lambda (binary) - (wrap-program binary - ;; Make QtWebEngineProcess available. - `("QTWEBENGINEPROCESS_PATH" = - ,(list - (search-input-file - inputs "/lib/qt5/libexec/QtWebEngineProcess"))))) - ;; Wrap all the binaries shipping with the package, except - ;; for the wrappings created during the 'wrap standard - ;; phase. This extends existing .calibre-real wrappers - ;; rather than create ..calibre-real-real-s. For more - ;; information see: https://issues.guix.gnu.org/43249. - (find-files "." (lambda (file stat) - (not (wrapped-program? file))))))))))) + (symlink font-src font-dest))))))) (home-page "https://calibre-ebook.com/") (synopsis "E-book library management software") (description "Calibre is an e-book library manager. It can view, convert diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index f42a216972..f0c0e931bf 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -836,18 +836,11 @@ (define-public anki (filter (match-lambda ((label . _) (string-prefix? "python-" label))) - inputs))) - (qtwebengineprocess - (search-input-file inputs - "lib/qt5/libexec/QtWebEngineProcess"))) - ;; The program fails to find the QtWebEngineProcess program, so - ;; we set QTWEBENGINEPROCESS_PATH to help it. PYTHONPATH is - ;; wrapped to avoid declaring Python libraries as propagated - ;; inputs. + inputs)))) + ;; PYTHONPATH is wrapped to avoid declaring Python libraries as + ;; propagated inputs. (for-each (lambda (program) (wrap-program program - `("QTWEBENGINEPROCESS_PATH" = - (,qtwebengineprocess)) `("PATH" prefix (,(string-append (assoc-ref inputs "mpv") "/bin"))) diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index 4bf40afe88..d54126ed12 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -130,19 +130,6 @@ (define-public falkon (base32 "0j930i2nvg71p05z881inbk59c54gx8dzhyjb8iaqkw8i5s5r983")))) (build-system qt-build-system) - (arguments - (list #:phases - #~(modify-phases %standard-phases - (add-after 'install 'wrap - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((qtwebengineprocess - (search-input-file inputs - "lib/qt6/libexec/QtWebEngineProcess"))) - ;; The program fails to find the QtWebEngineProcess program, so - ;; we set QTWEBENGINEPROCESS_PATH to help it. - (wrap-program (string-append #$output "/bin/falkon") - `("QTWEBENGINEPROCESS_PATH" = - (,qtwebengineprocess))))))))) (native-inputs (list extra-cmake-modules pkg-config qttools)) (inputs diff --git a/gnu/packages/kde-systemtools.scm b/gnu/packages/kde-systemtools.scm index 4923854a7c..a86b550a7f 100644 --- a/gnu/packages/kde-systemtools.scm +++ b/gnu/packages/kde-systemtools.scm @@ -178,15 +178,7 @@ (define-public khelpcenter PrintSupport") (("Qt6::WebEngineWidgets") "Qt6::PrintSupport - Qt6::WebEngineWidgets")))) - (add-after 'install 'wrap-executable - (lambda* (#:key inputs #:allow-other-keys) - (wrap-program (string-append #$output - "/bin/khelpcenter") - `("QTWEBENGINEPROCESS_PATH" = - (,(search-input-file - inputs - "lib/qt6/libexec/QtWebEngineProcess"))))))))) + Qt6::WebEngineWidgets"))))))) (home-page "https://apps.kde.org/khelpcenter/") (synopsis "KDE documentation viewer") (description "KHelpCenter uses meta data files which describe the diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 765176f42b..9a4115eda6 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -205,18 +205,7 @@ (define-public akregator (base32 "07flc3617px9w1c729p0lsixf1g0h297hkbip259ykkbwxizn71q")))) (build-system qt-build-system) (arguments - (list #:qtbase qtbase - #:phases - #~(modify-phases %standard-phases - (add-after 'install 'wrap-qt-process-path - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin/akregator")) - (qt-process-path - (search-input-file - inputs "/lib/qt6/libexec/QtWebEngineProcess"))) - (wrap-program bin - `("QTWEBENGINEPROCESS_PATH" = (,qt-process-path))))))))) + (list #:qtbase qtbase)) (native-inputs (list extra-cmake-modules kdoctools)) (inputs diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 76c11af543..c29f8e14e7 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -3415,7 +3415,10 @@ (define-public qtwebengine-5 "/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") @@ -3453,12 +3456,6 @@ (define-public qtwebengine-5 ;; 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 @@ -3824,7 +3821,10 @@ (define-public qtwebengine "/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") @@ -3884,12 +3884,6 @@ (define-public qtwebengine (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/gnu/packages/video.scm b/gnu/packages/video.scm index d0b5907bdd..4881f6ba64 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -6049,19 +6049,7 @@ (define-public openshot (lambda _ ;; src/classes/info.py "needs" to create several ;; directories in $HOME when loaded during build - (setenv "HOME" "/tmp"))) - (add-after 'install 'wrap-program - (lambda* (#:key outputs inputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (qtwebengine-process-path - (search-input-file - inputs "/lib/qt5/libexec/QtWebEngineProcess"))) - (wrap-qt-program "openshot-qt" - #:output out #:inputs inputs) - ;; Help the program discover QtWebEngine at runtime. - (wrap-program (string-append out "/bin/openshot-qt") - `("QTWEBENGINEPROCESS_PATH" = - (,qtwebengine-process-path))))))))) + (setenv "HOME" "/tmp")))))) (home-page "https://www.openshot.org/") (synopsis "Video editor") (description "OpenShot takes your videos, photos, and music files and diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 0b62e8c7cf..b64617c5df 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -800,17 +800,7 @@ (define-public openconnect-sso (("\"openconnect\"") (string-append "\"" (search-input-file inputs "/sbin/openconnect") - "\""))))) - (add-after 'check 'wrap-qt-process-path - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin/openconnect-sso")) - (qt-process-path - (search-input-file inputs - "/lib/qt5/libexec/QtWebEngineProcess"))) - (wrap-program bin - #:sh (search-input-file inputs "bin/bash") - `("QTWEBENGINEPROCESS_PATH" = (,qt-process-path))))))))) + "\"")))))))) (inputs (list openconnect poetry diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index c0138eea17..5159a3b76d 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -490,10 +490,7 @@ (define-public qutebrowser python-pyyaml python-pyqt-6 python-pyqtwebengine-6 - python-tldextract - ;; While qtwebengine is provided by python-pyqtwebengine-6, it's - ;; included here so we can wrap QTWEBENGINEPROCESS_PATH. - qtwebengine)) + python-tldextract)) (arguments `(;; FIXME: With the existence of qtwebengine, tests can now run. But ;; they are still disabled because test phase hangs. It's not readily @@ -547,10 +544,7 @@ (define-public qutebrowser (wrap-program (search-input-file outputs "bin/qutebrowser") `("QTWEBENGINE_RESOURCES_PATH" = (,(search-input-directory - inputs "/share/qt6/resources"))) - `("QTWEBENGINEPROCESS_PATH" = - (,(search-input-file - inputs "/lib/qt6/libexec/QtWebEngineProcess"))))))))) + inputs "/share/qt6/resources"))))))))) (home-page "https://qutebrowser.org/") (synopsis "Minimal, keyboard-focused, vim-like web browser") (description "qutebrowser is a keyboard-focused browser with a minimal diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index a23a0f3dcd..0cf1c18a56 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -9404,15 +9404,7 @@ (define-public kiwix-desktop (lambda* (#:key outputs #:allow-other-keys) (invoke "qmake" (string-append "PREFIX=" - (assoc-ref outputs "out"))))) - (add-after 'install 'wrap-qt-process-path - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin/kiwix-desktop")) - (qt-process-path (search-input-file - inputs "/lib/qt5/libexec/QtWebEngineProcess"))) - (wrap-program bin - `("QTWEBENGINEPROCESS_PATH" = (,qt-process-path))))))))) + (assoc-ref outputs "out")))))))) (inputs (list bash-minimal curl