diff options
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r-- | gnu/packages/qt.scm | 149 |
1 files changed, 119 insertions, 30 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 2b89e7e738..5866d33394 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015, 2023 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015, 2018, 2019, 2020, 2021, 2023 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015-2019, 2024 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> ;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017, 2018, 2019, 2023 Ricardo Wurmus <rekado@elephly.net> @@ -19,7 +19,7 @@ ;;; Copyright © 2020 TomZ <tomz@freedommail.ch> ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> -;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot> ;;; Copyright © 2021, 2022, 2023 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> @@ -71,9 +71,11 @@ #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) + #:use-module (gnu packages crates-io) #:use-module (gnu packages cups) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages dlang) #:use-module (gnu packages documentation) #:use-module (gnu packages elf) #:use-module (gnu packages enchant) @@ -113,6 +115,7 @@ #:use-module (gnu packages python-build) #:use-module (gnu packages python-xyz) #:use-module (gnu packages python-web) + #:use-module (gnu packages kde) #:use-module (gnu packages regex) #:use-module (gnu packages ruby) #:use-module (gnu packages sdl) @@ -155,6 +158,32 @@ of C++20 coroutines in connection with certain asynchronous Qt actions.") (license license:expat))) +(define-public qmdnsengine + ;; Used as submodule in https://github.com/moonlight-stream/moonlight-qt + (let ((commit "b7a5a9f225d5e14b39f9fd1f905c4f505cf2ee99") + (revision "1")) + (package + (name "qmdnsengine") + (version (git-version "0.0.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cgutman/qmdnsengine") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1f5v5n9w4aszcdjxmw81cwmd26ssywvfiyr8x0vbyamp4kqd8mww")))) + (build-system cmake-build-system) + (arguments + '(#:configure-flags (list "-DBUILD_TESTS=ON"))) + (inputs (list qtbase-5)) + (synopsis "Multicast DNS library for Qt application") + (description "This package provides multicast DNS library for Qt + applications.") + (home-page "https://github.com/moonlight-stream/moonlight-common-c") + (license license:expat)))) + (define-public qite (let ((commit "75fb3b6bbd5c6a5a8fc35e08a6efbfb588ed546a") (revision "74")) @@ -189,14 +218,14 @@ of C++20 coroutines in connection with certain asynchronous Qt actions.") (define-public qt5ct (package (name "qt5ct") - (version "1.5") + (version "1.8") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/qt5ct/qt5ct-" version ".tar.bz2")) (sha256 - (base32 "14742vs32m98nbfb5mad0i8ciff5f45gfcb5v03p4hh2dvhhqgfn")))) + (base32 "1s88v3x5vxrz981jiqb9cnwak0shz6kgjbkp511i592y85a41dr3")))) (build-system qt-build-system) (arguments (list @@ -1877,6 +1906,10 @@ compositor libraries."))) qtbase vulkan-headers wayland)) + (native-search-paths + (list (search-path-specification + (variable "QT_PLUGIN_PATH") + (files '("lib/qt6/plugins"))))) (synopsis "Qt Wayland module") (description "The Qt Wayland module provides the QtWayland client and compositor libraries.") @@ -2138,7 +2171,18 @@ plugin for Adobe After Effects.") "1bkx2sc5hyldarc7w76ymv7dlcna3ib9r2kp67jdqcf856bnrx36")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg-5) - ((#:tests? _ #f) #f))) ; TODO: Enable the tests + ((#:tests? _ #f) #f) ; TODO: Enable the tests + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + (add-after 'unpack 'patch-qmake + (lambda* (#:key inputs #:allow-other-keys) + ;; Adjust the default location of the 'qmake' command known to + ;; the 'lprodump' command, which would otherwise look for it + ;; in its own bindir. + (substitute* "src/linguist/lprodump/main.cpp" + (("app.applicationDirPath\\() \\+ QLatin1String\\(\"/qmake\")") + (format #f "QLatin1String(~s)" + (search-input-file inputs "bin/qmake")))))))))) (native-inputs (list perl qtdeclarative-5 vulkan-headers)) (inputs (list mesa qtbase-5)) (synopsis "Qt Tools and Designer modules") @@ -2316,7 +2360,7 @@ control equipment. The module provides both QML and C++ interfaces. The primary target audience are embedded devices with fullscreen user interfaces, and mobile applications targeting TV-like form factors."))) -(define-public qtscxml +(define-public qtscxml-5 (package (inherit qtsvg-5) (name "qtscxml") @@ -2344,6 +2388,45 @@ machines (loading the SCXML file and instantiating states and transitions) and generating a C++ file that has a class implementing the state machine. It also contains functionality to support data models and executable content."))) +(define-public qtscxml + (package + (name "qtscxml") + (version "6.5.2") + (source (origin + (method url-fetch) + (uri (qt-url name version)) + (sha256 + (base32 + "1jxx9p7zi40r990ky991xd43mv6i8hdpnj2fhl7sf4q9fpng4c58")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "tests/3rdparty"))))) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (delete 'check) ;move after the install phase + (add-after 'install 'check + (assoc-ref %standard-phases 'check)) + (add-before 'check 'check-setup + (lambda _ + (setenv "ARGS" "-E tst_scion") + (setenv "QT_QPA_PLATFORM" "offscreen") + (setenv "QML2_IMPORT_PATH" + (string-append #$output "/lib/qt6/qml:" + (getenv "QML2_IMPORT_PATH")))))))) + (build-system cmake-build-system) + (inputs (list qtbase qtdeclarative libxkbcommon)) + (synopsis "Qt SCXML module") + (description "The Qt SCXML module provides functionality to create state +machines from SCXML files. This includes both dynamically creating state +machines (loading the SCXML file and instantiating states and transitions) and +generating a C++ file that has a class implementing the state machine. It +also contains functionality to support data models and executable content.") + (home-page (package-home-page qtbase)) + (license (package-license qtbase)))) + (define-public qtpositioning (package (name "qtpositioning") @@ -2998,14 +3081,14 @@ and binaries removed, and adds modular support for using system libraries.") (define-public qtwebengine (package (name "qtwebengine") - (version "6.5.2") + (version "6.5.3") (source (origin (method url-fetch) (uri (qt-url name version)) (sha256 (base32 - "17qxf3asyxq6kcqqvml170n7rnzih3nr4srp9r5v80pmas5l7jg7")) + "1ra5hyyg4vymp8pgzv08smjc3fl1axdavnkpj1i5zxym1ndww513")) (modules '((ice-9 ftw) (ice-9 match) (srfi srfi-1) @@ -3377,8 +3460,8 @@ linux/libcurl_wrapper.h" (modify-inputs (package-native-inputs qtwebengine-5) (delete "python2" "python2-six") (replace "node" node-lts) - (append clang-14 - lld-as-ld-wrapper + (append clang-15 + lld-as-ld-wrapper-15 python-wrapper python-beautifulsoup4 python-html5lib))) @@ -4453,7 +4536,7 @@ color-related widgets.") qtquickcontrols-5 qtquickcontrols2-5 qtscript - qtscxml + qtscxml-5 qtsensors qtspeech qtsvg-5 @@ -5042,7 +5125,7 @@ including @i{fix-its} for automatic refactoring.") (define-public qt-creator (package (name "qt-creator") - (version "11.0.1") + (version "12.0.1") (source (origin (method url-fetch) (uri (string-append @@ -5056,7 +5139,6 @@ including @i{fix-its} for automatic refactoring.") ;; Remove bundled libraries, where supported. ;; TODO: package and unbundle litehtml '("src/libs/3rdparty/yaml-cpp" - "tests/unit/unittest/3rdparty" ;; Marketplace recommends nonfree extensions; ;; remove it. "src/plugins/marketplace")) @@ -5066,7 +5148,7 @@ including @i{fix-its} for automatic refactoring.") ((".*marketplace/marketplace.qbs.*") "")))) (sha256 (base32 - "0j90dv9micqsvj4r7iqd11szixr0mlpna4w5s2lnyqckjs6a0mm6")))) + "04h35za3gliai5djxwmzqrbih2g26lcv68pp4wvljkdwkcjsscvb")))) (build-system qt-build-system) (arguments (list @@ -5135,6 +5217,7 @@ including @i{fix-its} for automatic refactoring.") '("bin/clang-tidy" "bin/clazy-standalone" "bin/gdb" + "bin/kcachegrind" "bin/valgrind"))))))))) (native-inputs (list googletest @@ -5145,22 +5228,28 @@ including @i{fix-its} for automatic refactoring.") vulkan-headers xvfb-run)) (inputs - (list bash-minimal - coreutils-minimal - clang - clazy - elfutils - gdb - libxkbcommon - llvm - qt5compat - qtdeclarative - qtshadertools - qtsvg - yaml-cpp - valgrind - vulkan-loader - `(,zstd "lib"))) + (append + (list bash-minimal + coreutils-minimal + clang + clazy + d-demangler + elfutils + gdb + kcachegrind + libxkbcommon + llvm + qt5compat + qtdeclarative + qtshadertools + qtsvg + yaml-cpp + valgrind + vulkan-loader + `(,zstd "lib")) + (if (supported-package? rust-rustc-demangle-capi-0.1) + (list rust-rustc-demangle-capi-0.1) + '()))) (home-page "https://www.qt.io/") (synopsis "Integrated development environment (IDE) for Qt") (description "Qt Creator is an IDE tailored to the needs of Qt developers. |