summaryrefslogtreecommitdiff
path: root/gnu/packages/qt.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r--gnu/packages/qt.scm231
1 files changed, 98 insertions, 133 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 8cda634cef..c3722549cc 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1,11 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2014, 2015, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
-;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2017, 2018, 2019, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Quiliro <quiliro@fsfla.org>
;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@@ -54,6 +54,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system trivial)
#:use-module (guix build-system python)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix gexp)
#:use-module (guix packages)
@@ -125,6 +126,8 @@
#:use-module (gnu packages xml)
#:use-module (srfi srfi-1))
+(define %qt-version "5.15.8")
+
(define-public qite
(let ((commit "75fb3b6bbd5c6a5a8fc35e08a6efbfb588ed546a")
(revision "74"))
@@ -337,7 +340,7 @@ system, and the core design of Django is reused in Grantlee.")
(define-public qtbase-5
(package
(name "qtbase")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -756,6 +759,9 @@ developers using C++ or QML, a CSS & JavaScript like language.")
;; The 'tst_qfilesystemwatcher' installs a watcher on
;; '/home', which doesn't exist in the build container.
"tst_qfilesystemwatcher"
+ ;; Not all of the tested formats are supported by our
+ ;; build of openssl; 871 passed, 122 failed.
+ "tst_qsslkey"
;; The 'mockplugins' test fail following error: "Unknown
;; platform linux-g++", and the other plugin tests
;; depend on it.
@@ -875,7 +881,7 @@ developers using C++ or QML, a CSS & JavaScript like language.")
(package
(inherit qtbase-5)
(name "qt3d")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -967,7 +973,7 @@ came with the @{qtgraphicaleffects} Qt 5 package.")
(package
(inherit qtbase-5)
(name "qtsvg")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1066,7 +1072,7 @@ HostData=lib/qt5
(define-public qtimageformats
(package (inherit qtsvg-5)
(name "qtimageformats")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1093,7 +1099,7 @@ support for MNG, TGA, TIFF and WBMP image formats.")))
(define-public qtx11extras
(package (inherit qtsvg-5)
(name "qtx11extras")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1158,7 +1164,7 @@ XLSX document format.")
(define-public qtxmlpatterns
(package (inherit qtsvg-5)
(name "qtxmlpatterns")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1187,7 +1193,7 @@ xmlpatternsvalidator.")))
(package
(inherit qtsvg-5)
(name "qtdeclarative")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1365,7 +1371,7 @@ integrate QML code with JavaScript and C++.")
(package
(inherit qtsvg-5)
(name "qtconnectivity")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1383,7 +1389,7 @@ with Bluetooth and NFC.")))
(define-public qtwebsockets-5
(package (inherit qtsvg-5)
(name "qtwebsockets")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1446,7 +1452,7 @@ consume data received from the server, or both.")
(package
(inherit qtsvg-5)
(name "qtsensors")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1475,7 +1481,7 @@ recognition API for devices.")))
(package
(inherit qtsvg-5)
(name "qtmultimedia")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1614,7 +1620,7 @@ set of plugins for interacting with pulseaudio and GStreamer.")
(package
(inherit qtsvg-5)
(name "qtwayland")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1714,7 +1720,7 @@ compositor libraries.")
(package
(inherit qtsvg-5)
(name "qtserialport")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1745,7 +1751,7 @@ interacting with serial ports from within Qt.")))
(package
(inherit qtsvg-5)
(name "qtserialbus")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1772,7 +1778,7 @@ and others.")))
(define-public qtwebchannel-5
(package (inherit qtsvg-5)
(name "qtwebchannel")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1828,7 +1834,7 @@ application).")
(package
(inherit qtsvg-5)
(name "qtwebglplugin")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1857,7 +1863,7 @@ OpenGL ES 2.0 and can be used in HTML5 canvas elements")))
(package
(inherit qtsvg-5)
(name "qtwebview")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -1875,13 +1881,13 @@ native APIs where it makes sense.")))
(package
(inherit qtsvg-5)
(name "qtlocation")
- (version "5.15.5")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32
- "0mlhhhcxx3gpr9kh04c6fljxcj50c2j21r0wb9f7d7nk4flip7b2"))))
+ "0r16qxy0pfpwvna4gpz67jk3qv3qizfd659kc9iwdh8bhz7lpjrw"))))
(arguments
(substitute-keyword-arguments (package-arguments qtsvg-5)
((#:tests? _ #f) #f) ; TODO: Enable the tests
@@ -1932,7 +1938,7 @@ plugin for Adobe After Effects.")
(package
(inherit qtsvg-5)
(name "qttools")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2014,7 +2020,7 @@ the Qt community.")
(package
(inherit qtsvg-5)
(name "qtscript")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2033,7 +2039,7 @@ ECMAScript and Qt.")))
(package
(inherit qtsvg-5)
(name "qtquickcontrols")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2053,7 +2059,7 @@ can be used to build complete interfaces in Qt Quick.")))
(package
(inherit qtsvg-5)
(name "qtquickcontrols2")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2080,7 +2086,7 @@ not available.")))
(package
(inherit qtsvg-5)
(name "qtgraphicaleffects")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2103,14 +2109,15 @@ coloring, and many more.")))
(package
(inherit qtsvg-5)
(name "qtgamepad")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32
"0vgxprgk7lak209wsg2ljzfkpwgjzscpbxmj5fyvvwm2pbnpspvk"))))
- (native-inputs (list perl pkg-config))
+ (native-inputs
+ (list perl pkg-config))
(inputs
(list fontconfig
freetype
@@ -2129,7 +2136,7 @@ and mobile applications targeting TV-like form factors.")))
(package
(inherit qtsvg-5)
(name "qtscxml")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2187,14 +2194,15 @@ information and perform area based monitoring.")
(package
(inherit qtsvg-5)
(name "qtpurchasing")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32
"0bjky5ncg9yhz4a63g3jl1r5pa6i09f6g8wgzs591mhybrbmhcw8"))))
- (inputs (list qtbase-5 qtdeclarative-5))
+ (inputs
+ (list qtbase-5 qtdeclarative-5))
(synopsis "Qt Purchasing module")
(description "The Qt Purchasing module provides and in-app API for
purchasing goods and services.")))
@@ -2203,7 +2211,7 @@ purchasing goods and services.")))
(package
(inherit qtsvg-5)
(name "qtcharts")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2232,16 +2240,18 @@ selecting one of the charts themes.")
(package
(inherit qtsvg-5)
(name "qtdatavis3d")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32
"1mr2kdshahxrkjs9wlgpr59jbqvyvlax16rlnca4iq00w3v5hrdh"))))
- (arguments (substitute-keyword-arguments (package-arguments qtsvg-5)
- ((#:tests? _ #f) #f))) ; TODO: Enable the tests
- (inputs (list qtbase-5 qtdeclarative-5))
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtsvg-5)
+ ((#:tests? _ #f) #f))) ; TODO: Enable the tests
+ (inputs
+ (list qtbase-5 qtdeclarative-5))
(synopsis "Qt Data Visualization module")
(description "The Qt Data Visualization module provides a way to visualize
data in 3D as bar, scatter, and surface graphs. It is especially useful for
@@ -2253,7 +2263,7 @@ customized by using themes or by adding custom items and labels to them.")
(define-public qtnetworkauth-5
(package (inherit qtsvg-5)
(name "qtnetworkauth")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
@@ -2326,15 +2336,16 @@ processes or computers.")
(package
(inherit qtsvg-5)
(name "qtspeech")
- (version "5.15.8")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32
"1q56lyj7s05sx52j5z6gcs000mni4c7mb7qyq4lfval7c06hw5p6"))))
- (arguments (substitute-keyword-arguments (package-arguments qtsvg-5)
- ((#:tests? _ #f) #f))) ; TODO: Enable the tests
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtsvg-5)
+ ((#:tests? _ #f) #f))) ; TODO: Enable the tests
(inputs (list qtbase-5))
(native-inputs (list perl qtdeclarative-5 qtmultimedia-5 qtxmlpatterns))
(synopsis "Qt Speech module")
@@ -2433,7 +2444,7 @@ using the Enchant spell-checking library.")
(package
(inherit qtsvg-5)
(name "qtwebengine")
- (version "5.15.8")
+ (version %qt-version)
(source
(origin
(method url-fetch)
@@ -2637,7 +2648,7 @@ linux/libcurl_wrapper.h")
ruby))
(inputs
(list alsa-lib
- atk
+ at-spi2-core
cups-minimal
curl
dbus
@@ -3195,7 +3206,7 @@ instances.")
(define-public python-sip
(package
(name "python-sip")
- (version "5.5.0")
+ (version "6.7.7")
(source
(origin
(method url-fetch)
@@ -3205,12 +3216,13 @@ instances.")
"/sip-" version ".tar.gz")))
(sha256
(base32
- "1idaivamp1jvbbai9yzv471c62xbqxhaawccvskaizihkd0lq0jx"))))
+ "1qm9q9lhfky5zvxxkssf4zdfv5k1zikji4hz80d48vdfm1pw1sfy"))
+ (patches (search-patches "python-sip-include-dirs.patch"))))
(build-system python-build-system)
(native-inputs
(list python-wrapper))
(propagated-inputs
- (list python-toml python-packaging))
+ (list python-toml python-packaging python-ply))
(home-page "https://www.riverbankcomputing.com/software/sip/intro")
(synopsis "Python binding creator for C and C++ libraries")
(description
@@ -3272,7 +3284,7 @@ module provides support functions to the automatically generated code.")
(define-public python-pyqt
(package
(name "python-pyqt")
- (version "5.15.5")
+ (version "5.15.9")
(source
(origin
(method url-fetch)
@@ -3285,11 +3297,12 @@ module provides support functions to the automatically generated code.")
(file-name (string-append "PyQt5-" version ".tar.gz"))
(sha256
(base32
- "0aya963kkmbwfwmpd0p6k85y4g7wl5zarjqxxfgir403zalbf4dl"))
+ "1h649rb1afdxskp28x524yp5kd9a97ainh9bd4mkxp4h390fhhfw"))
(patches (search-patches "pyqt-configure.patch"))))
- (build-system gnu-build-system)
+ (build-system pyproject-build-system)
(native-inputs
- (list qtbase-5)) ; for qmake
+ (list qtbase-5 ; for qmake
+ python-pyqt-builder))
(propagated-inputs
(list python-sip python-pyqt5-sip))
(inputs
@@ -3308,47 +3321,24 @@ module provides support functions to the automatically generated code.")
("qtx11extras" ,qtx11extras)
("qtxmlpatterns" ,qtxmlpatterns)))
(arguments
- `(#:modules ((srfi srfi-1)
- ((guix build python-build-system) #:select (python-version))
- ,@%gnu-build-system-modules)
- #:imported-modules ((guix build python-build-system)
- ,@%gnu-build-system-modules)
+ (list
+ #:tests? #f ; No tests.
+ #:configure-flags
+ #~`(@ ("--verbose" . "") ; Print commands run.
+ ("--confirm-license" . "")
+ ("--jobs" . ,(number->string (parallel-job-count))))
#:phases
- (modify-phases %standard-phases
+ #~(modify-phases %standard-phases
;; When building python-pyqtwebengine, <qprinter.h> can not be
;; included. Here we substitute the full path to the header in the
;; store.
- (add-before 'configure 'substitute-source
+ (add-after 'unpack 'substitute-source
(lambda* (#:key inputs #:allow-other-keys)
(let* ((qtbase (assoc-ref inputs "qtbase"))
(qtprinter.h (string-append "\"" qtbase "/include/qt5/QtPrintSupport/qprinter.h\"")))
- (substitute* "sip/QtPrintSupport/qprinter.sip"
- (("<qprinter.h>") qtprinter.h)))))
- (replace 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin"))
- (sip (string-append out "/share/sip"))
- (plugins (string-append out "/lib/qt5/plugins"))
- (designer (string-append plugins "/designer"))
- (qml (string-append plugins "/PyQt5"))
- (python (assoc-ref inputs "python"))
- (lib (string-append out "/lib/python"
- (python-version python)
- "/site-packages"))
- (stubs (string-append lib "/PyQt5")))
- (invoke "python" "configure.py"
- "--confirm-license"
- "--bindir" bin
- "--destdir" lib
- "--designer-plugindir" designer
- "--qml-plugindir" qml
- ; Where to install the PEP 484 Type Hints stub
- ; files. Without this the stubs are tried to be
- ; installed into the python package's
- ; site-package directory, which is read-only.
- "--stubsdir" stubs
- "--sipdir" sip)))))))
+ (substitute* (list "sip/QtPrintSupport/qprinter.sip"
+ "sip/QtPrintSupport/qpyprintsupport_qlist.sip")
+ (("<qprinter.h>") qtprinter.h))))))))
(home-page "https://www.riverbankcomputing.com/software/pyqt/intro")
(synopsis "Python bindings for Qt")
(description
@@ -3360,14 +3350,14 @@ contain over 620 classes.")
(define-public python-pyqt5-sip
(package
(name "python-pyqt5-sip")
- (version "12.10.1")
+ (version "12.11.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyQt5_sip" version))
(sha256
(base32
- "09771b6fdn0rx34l5a0wzcd899yd57zxp5sw3bsqhd25biwhiq4p"))))
+ "0sa3vad8r7qm98k4ngimwjp87bh2f9f2vv19cnzb3vb11zdgplwp"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ;; No test code.
@@ -3379,7 +3369,7 @@ contain over 620 classes.")
(define-public python-pyqtwebengine
(package
(name "python-pyqtwebengine")
- (version "5.15.5")
+ (version "5.15.9")
(source
(origin
(method url-fetch)
@@ -3392,9 +3382,10 @@ contain over 620 classes.")
(sha256
(base32
"0hdr0g0rzlhsnylhfk826pq1lw8p9dqcr8yma2wy9dgjrj6n0ixb"))))
- (build-system gnu-build-system)
+ (build-system pyproject-build-system)
(native-inputs
(list python python-sip
+ python-pyqt-builder
;; qtbase is required for qmake
qtbase-5))
(inputs
@@ -3406,49 +3397,23 @@ contain over 620 classes.")
("qtdeclarative-5" ,qtdeclarative-5)
("qtwebchannel-5" ,qtwebchannel-5)
("qtwebengine-5" ,qtwebengine-5)))
- (arguments
- `(#:modules ((srfi srfi-1)
- ((guix build python-build-system) #:select (python-version))
- ,@%gnu-build-system-modules)
- #:imported-modules ((guix build python-build-system)
- ,@%gnu-build-system-modules)
+ (arguments
+ (list
+ #:tests? #f ; No tests.
+ #:configure-flags
+ #~`(@ ("--verbose" . "") ; Print commands run.
+ ("--jobs" . ,(number->string (parallel-job-count))))
#:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (sipdir (string-append out "/share/sip"))
- (pyqt-sipdir (string-append
- (assoc-ref inputs "python-pyqt") "/share/sip"))
- (python (assoc-ref inputs "python"))
- (lib (string-append out "/lib/python"
- (python-version python)
- "/site-packages/PyQt5"))
- (stubs (string-append lib "/PyQt5")))
-
- (mkdir-p sipdir)
- (invoke "python" "configure.py"
- "-w"
- "--no-dist-info"
- "--destdir" lib
- "--no-qsci-api"
- "--stubsdir" stubs
- "--sipdir" sipdir
- "--pyqt-sipdir" pyqt-sipdir))))
- ;; Because this has a different prefix than python-pyqt then we need
- ;; to make this a namespace of its own.
- (add-after 'install 'make-namespace
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (let* ((__init__.py (string-append
- (assoc-ref outputs "out")
- "/lib/python"
- (python-version (assoc-ref inputs "python"))
- "/site-packages/PyQt5/__init__.py")))
- (with-output-to-file __init__.py
- (lambda _ (display "
-from pkgutil import extend_path
-__path__ = extend_path(__path__, __name__)
-")))))))))
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'set-include-dirs
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((python (assoc-ref inputs "python"))
+ (python-pyqt (assoc-ref inputs "python-pyqt"))
+ (sip-include-dirs (string-append
+ python-pyqt "/lib/python"
+ (python-version python)
+ "/site-packages/PyQt5/bindings")))
+ (setenv "SIP_INCLUDE_DIRS" sip-include-dirs)))))))
(home-page "https://www.riverbankcomputing.com/software/pyqtwebengine/intro")
(synopsis "Python bindings for QtWebEngine")
(description
@@ -3461,14 +3426,14 @@ itself.")
(define-public python-pyqt-builder
(package
(name "python-pyqt-builder")
- (version "1.9.0")
+ (version "1.14.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyQt-builder" version))
(sha256
(base32
- "0nh0054c54ji3sm6d268fccf0y5f613spswwgwqd3rnn816hnljl"))))
+ "00m5piryz9l4hp5z1ncaqicsp29kj71akdh4b10432zz18q3xg43"))))
(build-system python-build-system)
(inputs
(list python-sip))
@@ -3955,7 +3920,7 @@ color-related widgets.")
(define-public python-shiboken-2
(package
(name "python-shiboken-2")
- (version "5.15.5")
+ (version %qt-version)
(source (origin
(method url-fetch)
(uri (string-append "https://download.qt.io/official_releases"
@@ -3964,7 +3929,7 @@ color-related widgets.")
version ".tar.xz"))
(sha256
(base32
- "0cwvw6695215498rsbm2xzkwaxdr3w7zfvy4kc62c01k6pxs881r"))))
+ "0pbbdypwkn3vrgy8ww207fl8pqq4jv80bck9qz5v9dfyr0166hr3"))))
(build-system cmake-build-system)
(inputs
(list clang-toolchain