From patchwork Fri Jan 24 16:22:52 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 19971 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 A977817B42; Fri, 24 Jan 2020 16:24:11 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id 4A41F17A7B for ; Fri, 24 Jan 2020 16:24:11 +0000 (GMT) Received: from localhost ([::1]:44238 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1kg-0001pY-QP for patchwork@mira.cbaines.net; Fri, 24 Jan 2020 11:24:10 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37245) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1ka-0001oq-FS for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:05 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iv1kZ-0000d9-34 for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:04 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:48709) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iv1kZ-0000cy-09 for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iv1kY-00013O-TI for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#39269] [PATCH 1/2] guix: qt-build-system: Add phase `check-setup`. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 24 Jan 2020 16:24:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 39269 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 39269@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.15798829863960 (code B ref -1); Fri, 24 Jan 2020 16:24:02 +0000 Received: (at submit) by debbugs.gnu.org; 24 Jan 2020 16:23:06 +0000 Received: from localhost ([127.0.0.1]:54677 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1je-00011o-8K for submit@debbugs.gnu.org; Fri, 24 Jan 2020 11:23:06 -0500 Received: from lists.gnu.org ([209.51.188.17]:44678) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1jc-00011h-VR for submit@debbugs.gnu.org; Fri, 24 Jan 2020 11:23:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37072) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1jb-0001ht-Ez for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iv1ja-0000C9-3C for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:03 -0500 Received: from mail-out.m-online.net ([212.18.0.9]:49596) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iv1jZ-0000Au-Q1 for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:02 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4844F06lL1z1qqkj for ; Fri, 24 Jan 2020 17:23:00 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4844F06gChz1qrYp for ; Fri, 24 Jan 2020 17:23:00 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id ACrWFcit2i7D for ; Fri, 24 Jan 2020 17:22:59 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-59-130.dynamic.mnet-online.de [188.174.59.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for ; Fri, 24 Jan 2020 17:22:59 +0100 (CET) Received: from localhost.fritz.box (lenashee.fritz.box [192.168.110.31]) by hermia.goebel-consult.de (Postfix) with ESMTP id 61C5D6031C for ; Fri, 24 Jan 2020 17:22:57 +0100 (CET) From: Hartmut Goebel Date: Fri, 24 Jan 2020 17:22:52 +0100 Message-Id: <1430436b83e4aaea89de3d1cdd4613b935e39cb5.1579880425.git.h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.21.1 In-Reply-To: References: MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * guix/build/qt-build-system.scm (check-setup): New function. (%standard-phases): Add as new phase `check-setup before `check. * doc/guix.texi (Build System)[qt-build-system]: Describe the new phase. --- doc/guix.texi | 25 +++++++++++++++++++++---- guix/build/qt-build-system.scm | 14 +++++++++++++- 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index d674b9484f..71365c5269 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -47,7 +47,7 @@ Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018, 2019 Marius Bakke@* -Copyright @copyright{} 2017, 2019 Hartmut Goebel@* +Copyright @copyright{} 2017, 2019, 2020 Hartmut Goebel@* Copyright @copyright{} 2017, 2019 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* @@ -6447,10 +6447,24 @@ Which Perl package is used can be specified with @code{#:perl}. This variable is exported by @code{(guix build-system qt)}. It is intended for use with applications using Qt or KDE. -This build system adds the phase @code{qt-wrap} to the ones defined by -@code{cmake-build-system}, after the @code{install} phase. +This build system adds the following two phases to the ones defined by +@code{cmake-build-system}: -This phase searches for Qt5 plugin paths, QML paths and some XDG in the inputs +@table @code +@item check-setup +The phase @code{check-setup} prepares the environment for running +the checks as commonly used by Qt test programs. +For now this only sets some environment variables: +@code{QT_QPA_PLATFORM=offscreen}, +@code{DBUS_FATAL_WARNINGS=0} and +@code{CTEST_OUTPUT_ON_FAILURE=1}. + +This phase is added before the @code{check} phase. +It's a separate phase to ease adjusting if necessary. + +@item qt-wrap +The phase @code{qt-wrap} +searches for Qt5 plugin paths, QML paths and some XDG in the inputs and output. In case some path is found, all programs in the output's @file{bin/}, @file{sbin/}, @file{libexec/} and @file{lib/libexec/} directories are wrapped in scripts defining the necessary environment variables. @@ -6460,6 +6474,9 @@ by listing their names in the @code{#:qt-wrap-excluded-outputs} parameter. This is useful when an output is known not to contain any Qt binaries, and where wrapping would gratuitously add a dependency of that output on Qt, KDE, or such. + +This phase is added after the @code{install} phase. +@end table @end defvr @defvr {Scheme Variable} r-build-system diff --git a/guix/build/qt-build-system.scm b/guix/build/qt-build-system.scm index be2b808901..005157b0a4 100644 --- a/guix/build/qt-build-system.scm +++ b/guix/build/qt-build-system.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2014 Federico Beffa ;;; Copyright © 2014, 2015 Ludovic Courtès ;;; Copyright © 2018 Mark H Weaver -;;; Copyright © 2019 Hartmut Goebel +;;; Copyright © 2019, 2020 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,6 +36,17 @@ ;; ;; Code: +(define* (check-setup #:rest args) + ;; Make Qt render "offscreen". In many cases this allows to run tests + ;; without starting a X11 server. + (setenv "QT_QPA_PLATFORM" "offscreen") + ;; Qt/KDE tests often need dbus (`dbus-launch …`) which is not fully + ;; set-up the the build container. + (setenv "DBUS_FATAL_WARNINGS" "0") + ;; Set here to ease overwriting 'check (even if set there, too) + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") + #t) + (define (variables-for-wrapping base-directories) (define (collect-sub-dirs base-directories subdirectory) @@ -101,6 +112,7 @@ add a dependency of that output on Qt." (define %standard-phases (modify-phases cmake:%standard-phases + (add-before 'check 'check-setup check-setup) (add-after 'install 'qt-wrap wrap-all-programs))) (define* (qt-build #:key inputs (phases %standard-phases) From patchwork Fri Jan 24 16:22:53 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 19972 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 B4EE217B3E; Fri, 24 Jan 2020 16:24:17 +0000 (GMT) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTP id E3A1E17A7B for ; Fri, 24 Jan 2020 16:24:16 +0000 (GMT) Received: from localhost ([::1]:44242 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1km-0001wZ-Ft for patchwork@mira.cbaines.net; Fri, 24 Jan 2020 11:24:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37270) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1kc-0001pN-HI for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iv1kZ-0000eC-Oa for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:06 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:48711) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iv1kZ-0000dy-Kx for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iv1kZ-00013f-Ha for guix-patches@gnu.org; Fri, 24 Jan 2020 11:24:03 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#39270] [PATCH 2/2] gnu: Cleanup KDE packages to use the update qt-build-system. Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 24 Jan 2020 16:24:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 39270 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 39270@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.15798829973984 (code B ref -1); Fri, 24 Jan 2020 16:24:03 +0000 Received: (at submit) by debbugs.gnu.org; 24 Jan 2020 16:23:17 +0000 Received: from localhost ([127.0.0.1]:54680 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1jo-00012C-KJ for submit@debbugs.gnu.org; Fri, 24 Jan 2020 11:23:17 -0500 Received: from lists.gnu.org ([209.51.188.17]:46324) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1iv1jl-000123-QD for submit@debbugs.gnu.org; Fri, 24 Jan 2020 11:23:14 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:37105) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iv1ji-0001iz-Rc for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:13 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iv1jg-0000Fd-0Z for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:10 -0500 Received: from mail-out.m-online.net ([2001:a60:0:28:0:1:25:1]:44475) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iv1jf-0000Ez-N9 for guix-patches@gnu.org; Fri, 24 Jan 2020 11:23:07 -0500 Received: from frontend01.mail.m-online.net (unknown [192.168.8.182]) by mail-out.m-online.net (Postfix) with ESMTP id 4844F61Ly6z1rbLm for ; Fri, 24 Jan 2020 17:23:06 +0100 (CET) Received: from localhost (dynscan1.mnet-online.de [192.168.6.70]) by mail.m-online.net (Postfix) with ESMTP id 4844F61Dzwz1qrYp for ; Fri, 24 Jan 2020 17:23:06 +0100 (CET) X-Virus-Scanned: amavisd-new at mnet-online.de Received: from mail.mnet-online.de ([192.168.8.182]) by localhost (dynscan1.mail.m-online.net [192.168.6.70]) (amavisd-new, port 10024) with ESMTP id ax3I4p9Er_Yu for ; Fri, 24 Jan 2020 17:23:03 +0100 (CET) Received: from hermia.goebel-consult.de (ppp-188-174-59-130.dynamic.mnet-online.de [188.174.59.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.mnet-online.de (Postfix) with ESMTPS for ; Fri, 24 Jan 2020 17:23:03 +0100 (CET) Received: from localhost.fritz.box (lenashee.fritz.box [192.168.110.31]) by hermia.goebel-consult.de (Postfix) with ESMTP id 755CA60440 for ; Fri, 24 Jan 2020 17:22:57 +0100 (CET) From: Hartmut Goebel Date: Fri, 24 Jan 2020 17:22:53 +0100 Message-Id: X-Mailer: git-send-email 2.21.1 In-Reply-To: References: MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.51.188.43 X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches * gnu/packages/kde.scm (grantleetheme): [arguments] Remove. (kdeconnect)[arguments]{check-setup}: Remove. libkdegames: Use qt-build-system. [arguments]: Remove. * gnu/packages/kde-frameworks.scm (kguiaddons, kitemmodels, kitemviews, kplotting, sonnet, kcompletion, kcrash, kdesignerplugin, kglobalaccel, kparts, ktextwidgets, khtml, kmediaplayer): Use qt-build-system. [arguments]: Remove. (kpeople): Use qt-build-system. [arguments]: Remove. (kconfigwidgets, kwidgetsaddons) Use qt-build-system. [arguments]{check-setup}: Remove. * gnu/packages/kde-plasma.scm (kdecoration) Use qt-build-system. [arguments]: Remove. (libkscreen): Use qt-build-system. [arguments]: Remove. (libksysguard): Use qt-build-system. [arguments]{check-setup}: Remove. * gnu/packages/kde-utils.scm (kronometer, rsibreak): [arguments] Remove. --- gnu/packages/kde-frameworks.scm | 158 ++++---------------------------- gnu/packages/kde-plasma.scm | 27 +----- gnu/packages/kde-utils.scm | 16 ---- gnu/packages/kde.scm | 25 +---- 4 files changed, 25 insertions(+), 201 deletions(-) diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index 9230bb71c0..aab54ec4fb 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -24,6 +24,7 @@ (define-module (gnu packages kde-frameworks) #:use-module (guix build-system cmake) + #:use-module (guix build-system qt) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) @@ -702,7 +703,7 @@ infrastructure.") (sha256 (base32 "0k22kargqxf0j09wzk1x90b526npj8a0210ilk0n1k6spc8xa6mr")))) - (build-system cmake-build-system) + (build-system qt-build-system) ;; TODO: Build packages for the Python bindings. Ideally this will be ;; done for all versions of python guix supports. Requires python, ;; python-sip, clang-python, libclang. Requires python-2 in all cases for @@ -713,14 +714,6 @@ infrastructure.") (inputs `(("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Utilities for graphical user interfaces") (description "The KDE GUI addons provide utilities for graphical user @@ -885,20 +878,12 @@ of applications that follow the Kirigami Human Interface Guidelines.") (sha256 (base32 "10bhg0db9gdg2hlc02ngg1i2q7a99862d5973hxqzf620d28p5rd")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Set of item models extending the Qt model-view framework") (description "KItemModels provides the following models: @@ -944,21 +929,12 @@ model to observers (sha256 (base32 "15h0w16wgj94kxz4vgjb34i3pyx5w1f2npj86j4d2sa0mxxpmqyz")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("qttools" ,qttools))) (inputs `(("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - (setenv "DBUS_FATAL_WARNINGS" "0") - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Set of item views extending the Qt model-view framework") (description "KItemViews includes a set of views, which can be used with @@ -979,20 +955,12 @@ to flat and hierarchical lists.") (sha256 (base32 "11kpq34j37c1gsvj5nxhkc31bw8gw2n7nkqsfx87jw9f4v2vhmr9")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("qtbase" ,qtbase) ("qttools" ,qttools))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ ; kplotting - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Data plotting library") (description "KPlotWidget is a QWidget-derived class that provides a virtual @@ -1104,7 +1072,7 @@ represented by a QPoint or a QSize.") (sha256 (base32 "1nzgv3v3kyq5jm2b9xri6qjawspr9ycxhskfvj8kkgr46dr35qyc")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("qttools" ,qttools) @@ -1114,12 +1082,6 @@ represented by a QPoint or a QSize.") (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - (setenv "DBUS_FATAL_WARNINGS" "0") - #t)) (add-before 'check 'start-xorg-server (lambda* (#:key inputs #:allow-other-keys) ;; The test suite requires a running X server. @@ -1414,15 +1376,7 @@ system.") (sha256 (base32 "0gqxmyxmwn2rs9f8x2z8pfmbx0mvkyh7nalnsmfqkph8f0fja9ig")))) - (build-system cmake-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config) @@ -1573,7 +1527,7 @@ utilities.") (sha256 (base32 "10ggypg09acc19gkvxsigfsaq8s5vqv64ada307blpzy8j74bisb")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("qttools" ,qttools))) @@ -1581,14 +1535,6 @@ utilities.") `(("kconfig" ,kconfig) ("kwidgetsaddons" ,kwidgetsaddons) ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Powerful autocompletion framework and widgets") (description "This framework helps implement autocompletion in Qt-based @@ -1653,7 +1599,7 @@ localized country name to ISO 3166-1 alpha 2 code mapping and vice verca. (sha256 (base32 "1xl3bzxfchfafcplil3g07gq1a3fnwx1i40bxp4jfsgb8d8slfwc")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs @@ -1661,14 +1607,6 @@ localized country name to ISO 3166-1 alpha 2 code mapping and vice verca. ("kwindowsystem" ,kwindowsystem) ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Graceful handling of application crashes") (description "KCrash provides support for intercepting and handling @@ -2291,7 +2229,7 @@ KCModules can be created with the KConfigWidgets framework.") (sha256 (base32 "098xdfvnyz9bdkc6iyq5r2s4vkfdhbrri4015yzbs73j4f2wcxz5")))) - (build-system cmake-build-system) + (build-system qt-build-system) (propagated-inputs `(("kauth" ,kauth) ("kcodecs" ,kcodecs) @@ -2316,11 +2254,6 @@ KCModules can be created with the KConfigWidgets framework.") ;; make QDirIterator follow symlinks (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b) (string-append a " | QDirIterator::FollowSymlinks" b))) - #t)) - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Widgets for configuration dialogs") @@ -2439,7 +2372,7 @@ started on demand.") (sha256 (base32 "1w7glszd82iyw6kxzmp0568rm3qfadi7vw7gfxg4c15w5ikkvxn9")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("qttools" ,qttools))) @@ -2461,14 +2394,6 @@ started on demand.") ("kxmlgui" ,kxmlgui) ("qtwebkit" ,qtwebkit) ("sonnet" ,sonnet))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Integrating KDE frameworks widgets with Qt Designer") (description "This framework provides plugins for Qt Designer that allow it @@ -2594,7 +2519,7 @@ emoticons coming from different providers.") (sha256 (base32 "1xpfvwnrj81mk3di02n37b469gxzmnk89icmcz6wwyk54m86fw76")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config) @@ -2610,14 +2535,6 @@ emoticons coming from different providers.") ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras) ("xcb-util-keysyms" ,xcb-util-keysyms))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Global desktop keyboard shortcuts") (description "KGlobalAccel allows you to have global accelerators that are @@ -2947,7 +2864,7 @@ notifications which can be embedded in your application.") (sha256 (base32 "0md0349r4mdm2r04p5s3pgm17v4w40r3kz58lzp6qfcw25b969nw")))) - (build-system cmake-build-system) + (build-system qt-build-system) (propagated-inputs `(("kio" ,kio) ("ktextwidgets" ,ktextwidgets) @@ -2972,14 +2889,6 @@ notifications which can be embedded in your application.") ("qtbase" ,qtbase) ("solid" ,solid) ("sonnet" ,sonnet))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Plugin framework for user interface components") (description "This library implements the framework for KDE parts, which are @@ -2999,7 +2908,7 @@ widgets with a user-interface defined in terms of actions.") (sha256 (base32 "1q2hh2i8hd638p907g0srdxmxm9h2ay91dmhslqzcgwnlhln4gfl")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs @@ -3012,14 +2921,7 @@ widgets with a user-interface defined in terms of actions.") ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) (arguments - `(#:tests? #f ; FIXME: 1/3 tests fail. - #:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) + `(#:tests? #f)) ; FIXME: 1/3 tests fail. (home-page "https://community.kde.org/Frameworks") (synopsis "Provides access to all contacts and aggregates them by person") (description "KPeople offers unified access to our contacts from different @@ -3252,7 +3154,7 @@ library.") (sha256 (base32 "1qb1mad5bg19xwykzpwk2b3s505ka4jkg0fsi56ri57wq8gv4qha")))) - (build-system cmake-build-system) + (build-system qt-build-system) (propagated-inputs `(("ki18n" ,ki18n) ("sonnet" ,sonnet))) @@ -3272,14 +3174,6 @@ library.") ("kwindowsystem" ,kwindowsystem) ("qtbase" ,qtbase) ("qtspeech" ,qtspeech))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "Text editing widgets") (description "KTextWidgets provides widgets for displaying and editing text. @@ -3747,7 +3641,7 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") name "-" version ".tar.xz")) (sha256 (base32 "15f77r6dxkkvi2vxvxlwa7qz3whmz229g79bgadiwffmzxja0ywd")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("perl" ,perl))) @@ -3775,14 +3669,6 @@ http://community.kde.org/Frameworks/Porting_Notes should help with this.") ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras) ("sonnet" ,sonnet))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; Make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "KDE Frameworks 5 HTML widget and component") (description "KHTML is a web rendering engine, based on the KParts @@ -3868,7 +3754,7 @@ QObjects, so you can script your applications.") name "-" version ".tar.xz")) (sha256 (base32 "19v53h3lkys3ryrjacrdng9ak91g03b9s986xhnw1r84zy242kdm")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("kdoctools" ,kdoctools) @@ -3883,14 +3769,6 @@ QObjects, so you can script your applications.") ("kwidgetsaddons" ,kwidgetsaddons) ("kxmlgui" ,kxmlgui) ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; Make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://community.kde.org/Frameworks") (synopsis "KDE Frameworks 5 plugin interface for media player features") (description "KMediaPlayer builds on the KParts framework to provide a diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index e4360362db..e2d448c6d5 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -25,6 +25,7 @@ #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) + #:use-module (guix build-system qt) #:use-module (gnu packages compression) #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) @@ -45,17 +46,12 @@ (sha256 (base32 "0rljpywpaqmar13jijphkpc9k1crma476j9my0d00hfrjil5xlnn")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs `(("ki18n" ,ki18n) ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ (setenv "QT_QPA_PLATFORM" "offscreen") #t))))) (home-page "https://cgit.kde.org/kdecoration.git") (synopsis "Plugin based library to create window decorations") (description "KDecoration is a library to create window decorations. @@ -137,7 +133,7 @@ manager which re-parents a Client window to a window decoration frame.") name "-" version ".tar.xz")) (sha256 (base32 "0znxfqqyyij6i4dp95gf5g4vrhg4jsshgh2k13ldy294kby2mxw0")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ;; For testing. @@ -148,16 +144,7 @@ manager which re-parents a Client window to a window decoration frame.") ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras))) (arguments - '(#:tests? #f ; FIXME: 55% tests passed, 5 tests failed out of 11 - #:phases - (modify-phases %standard-phases - (add-before 'check 'pre-check - (lambda _ - ;; For the missing '/etc/machine-id'. - (setenv "DBUS_FATAL_WARNINGS" "0") - ;; Run the tests offscreen. - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) + '(#:tests? #f)) ;; FIXME: 55% tests passed, 5 tests failed out of 11 (home-page "https://community.kde.org/Solid/Projects/ScreenManagement") (synopsis "KDE's screen management software") (description "KScreen is the new screen management software for KDE Plasma @@ -199,7 +186,7 @@ basic needs and easy to configure for those who want special setups.") ("qtx11extras" ,qtx11extras) ("plasma" ,plasma-framework) ("zlib" ,zlib))) - (build-system cmake-build-system) + (build-system qt-build-system) (arguments `(#:configure-flags `(,(string-append "-DKDE_INSTALL_DATADIR=" @@ -212,10 +199,6 @@ basic needs and easy to configure for those who want special setups.") ;; KF5AuthConfig.cmake.in contains this already. (substitute* "processcore/CMakeLists.txt" (("KAUTH_HELPER_INSTALL_DIR") "KDE_INSTALL_LIBEXECDIR")))) - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen"))) (replace 'check (lambda _ ;; TODO: Fix this failing test-case diff --git a/gnu/packages/kde-utils.scm b/gnu/packages/kde-utils.scm index 9005b5014a..38bdfbfaba 100644 --- a/gnu/packages/kde-utils.scm +++ b/gnu/packages/kde-utils.scm @@ -233,14 +233,6 @@ sentences to be re-spoken.") ("kxmlgui" ,kxmlgui) ("oxygen-icons" ,oxygen-icons) ;; default icon set ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://kde.org/applications/utilities/org.kde.kronometer") (synopsis "Simple stopwatch application") (description "Kronometer is a stopwatch application. It features the @@ -399,14 +391,6 @@ redone.") ("kxmlgui" ,kxmlgui) ("oxygen-icons" ,oxygen-icons) ;; default icon set ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://kde.org/applications/utilities/org.kde.rsibreak") (synopsis "Assists in the Recovery and Prevention of Repetitive Strain Injury") diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index bb5c25014e..0c62fd9dba 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -89,13 +89,6 @@ ("kiconthemes" ,kiconthemes) ("knewstuff" ,knewstuff) ("qtbase" ,qtbase))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://cgit.kde.org/grantleetheme.git") (synopsis "Library providing Grantlee theme support") (description "This library provides Grantlee theme support.") @@ -521,13 +514,7 @@ different notification systems.") (build-system qt-build-system) (arguments `(#:configure-flags '("-DBUILD_TESTING=ON") - #:tests? #f ; tests fail hard in our build environment - #:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) + #:tests? #f)) ; tests fail hard in our build environment (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("kdoctools" ,kdoctools) @@ -644,7 +631,7 @@ Python, PHP, and Perl.") "/src/libkdegames-" version ".tar.xz")) (sha256 (base32 "12dvkmjgbi8dp9y55zmx1pw3zr2i374c4vn3mfn9r31bf06dr701")))) - (build-system cmake-build-system) + (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) (inputs @@ -674,14 +661,6 @@ Python, PHP, and Perl.") ("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative) ("qtsvg" ,qtsvg))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'check 'check-setup - (lambda _ - ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) (home-page "https://games.kde.org/") (synopsis "Runtime library for kdegames") (description "Runtime library for kdegames")