aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/qt.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r--gnu/packages/qt.scm45
1 files changed, 45 insertions, 0 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index b76831874e..010812bdfb 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -28,6 +28,7 @@
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Yash Tiwari <yasht@mailbox.org>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
+;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2355,6 +2356,50 @@ the end-user is driving and cannot attend the incoming messages on the phone.
In such a scenario, the messaging application can read out the incoming
message.")))
+(define-public qtvirtualkeyboard-5
+ (package
+ (inherit qtsvg-5)
+ (name "qtvirtualkeyboard")
+ (version %qt-version)
+ (source (origin
+ (method url-fetch)
+ (uri (qt-urls name version))
+ (sha256
+ (base32
+ "1skdjh9q4m438wwl8hwx3jc5hg22dmi5pwm3vd2yksxw6ny67rd7"))))
+ (arguments
+ (substitute-keyword-arguments (package-arguments qtsvg-5)
+ ((#:tests? _ #f) #f) ; TODO: pass 2 fail test
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-before 'check 'set-display
+ (lambda _
+ ;; Make Qt render "offscreen", required for tests.
+ (setenv "QT_QPA_PLATFORM" "offscreen")
+ (setenv "DISPLAY" ":1")
+ (system "Xvfb +extension GLX :1 &")))
+ (delete 'check) ;move after the install phase
+ (add-after 'install 'check
+ (assoc-ref %standard-phases 'check))
+ (add-before 'check 'prepare-for-tests
+ (lambda* (#:key outputs #:allow-other-keys)
+ (setenv "QML2_IMPORT_PATH"
+ (string-append (assoc-ref outputs "out")
+ "/lib/qt5/qml:"
+ (getenv "QML2_IMPORT_PATH")))
+ (setenv "QT_PLUGIN_PATH"
+ (string-append (assoc-ref outputs "out")
+ "/lib/qt6/plugins:"
+ (getenv "QT_PLUGIN_PATH")))))))))
+ (native-inputs (list perl xorg-server-for-tests))
+ (inputs (list qtbase-5 qtdeclarative-5))
+ (propagated-inputs
+ (list qtquickcontrols-5 qtsvg-5))
+ (synopsis "QtQuick virtual keyboard")
+ (description "The Qt Speech module provides a virtual keyboard framework
+that consists of a C++ backend supporting custom input methods as well as a UI
+frontend implemented in QML.")))
+
(define-public qtspell
(package
(name "qtspell")