diff options
Diffstat (limited to 'gnu/packages/qt.scm')
-rw-r--r-- | gnu/packages/qt.scm | 154 |
1 files changed, 149 insertions, 5 deletions
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 11e69ff5db..d718b520bd 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -105,6 +105,39 @@ #:use-module (gnu packages xml) #:use-module (srfi srfi-1)) +(define-public qite + (let ((commit "75fb3b6bbd5c6a5a8fc35e08a6efbfb588ed546a") + (revision "74")) + (package + (name "qite") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/Ri0n/qite") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0jmmgy9pvk9hwwph1nwy7hxhczy8drhl4ymhnjjn6yx7bckssvsq")))) + (build-system qt-build-system) + (arguments + `(#:tests? #f ; no target + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir + (lambda _ + (chdir "libqite") + #t))))) + (inputs + `(("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia))) + (home-page "https://github.com/Ri0n/qite/") + (synopsis "Qt Interactive Text Elements") + (description "Qite allows to manage interactive elements on QTextEdit.") + (license license:asl2.0)))) + (define-public qt5ct (package (name "qt5ct") @@ -2030,7 +2063,7 @@ module provides support functions to the automatically generated code.") (license license:gpl3))) (define-public python2-sip - (package (inherit python-sip) + (package/inherit python-sip (name "python2-sip") (native-inputs `(("python" ,python-2))))) @@ -2215,13 +2248,13 @@ itself.") ;; Ultimately, it would be nicer to have a more modular set of python-pyqt-* ;; packages that could be used together. (define-public python-pyqt-without-qtwebkit - (package (inherit python-pyqt) + (package/inherit python-pyqt (name "python-pyqt-without-qtwebkit") (inputs (alist-delete "qtwebkit" (package-inputs python-pyqt))))) (define-public python2-pyqt - (package (inherit python-pyqt) + (package/inherit python-pyqt (name "python2-pyqt") (propagated-inputs `(("python-enum34" ,python2-enum34) @@ -2367,7 +2400,7 @@ indicators, code completion and call tips.") (license license:gpl3+))) (define-public python-qscintilla - (package (inherit qscintilla) + (package/inherit qscintilla (name "python-qscintilla") (arguments `(#:configure-flags @@ -2415,7 +2448,7 @@ This package provides the Python bindings."))) ;; variables such as PYTHONPATH, so we need to build a union package to make ;; it work. (define-public python-pyqt+qscintilla - (package (inherit python-pyqt) + (package/inherit python-pyqt (name "python-pyqt+qscintilla") (source #f) (build-system trivial-build-system) @@ -2473,6 +2506,117 @@ This package provides the Python bindings."))) securely. It will not store any data unencrypted unless explicitly requested.") (license license:bsd-3))) +(define-public qtsolutions + (let ((commit "9568abd142d581b67b86a5f63d823a34b0612702") + (revision "53")) + (package + (name "qtsolutions") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/qtproject/qt-solutions") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "17fnmassflm3vxi0krpr6fff368jy38cby31a48rban4nqqmgx7n")) + (modules '((guix build utils) + (ice-9 ftw) + (srfi srfi-1))) + (snippet + ;; Unvendor QtLockFile from QtSingleApplication. + '(begin + (with-directory-excursion "qtsingleapplication/src" + (for-each delete-file + (find-files "." "qtlockedfile.*\\.(h|cpp)")) + (substitute* "qtsingleapplication.pri" + ;; Add include path of LockedFile. + (("INCLUDEPATH \\+=") + "INCLUDEPATH += ../../qtlockedfile/src") + ;; Link library of LockedFile. + (("LIBS \\+=") + "LIBS += -lQtSolutions_LockedFile")) + (substitute* '("qtlocalpeer.h" "qtlocalpeer.cpp") + (("#include \"qtlockedfile.*\\.cpp\"") "") + ;; Unwrap namespace added in the vendoring process. + (("QtLP_Private::QtLockedFile") + "QtLockedFile"))) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No target + #:imported-modules + ((guix build copy-build-system) + ,@%gnu-build-system-modules) + #:modules + (((guix build copy-build-system) #:prefix copy:) + (guix build gnu-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda* (#:key outputs #:allow-other-keys) + (substitute* (find-files "." "common.pri") + ;; Remove unnecessary prefixes/suffixes in library names. + (("qt5") "qt") + (("-head") "")) + ;; Disable building of examples. + (substitute* (find-files "." "\\.pro$") + (("SUBDIRS\\+=examples") "")) + ;; Fix deprecated functions. + (substitute* "qtsoap/src/qtsoap.cpp" + (("toAscii") "toUtf8")) + #t)) + (replace 'configure + (lambda _ + (for-each (lambda (solution) + (with-directory-excursion solution + (invoke "./configure" "-library") + (invoke "qmake"))) + '("qtlockedfile" "qtpropertybrowser" "qtservice" + "qtsingleapplication" "qtsoap")) + #t)) + (replace 'build + (lambda _ + (for-each (lambda (solution) + (with-directory-excursion solution + (invoke "make"))) + '("qtlockedfile" "qtpropertybrowser" "qtservice" + "qtsingleapplication" "qtsoap")) + #t)) + (replace 'install + (lambda args + (for-each (lambda (solution) + (with-directory-excursion solution + (apply + (assoc-ref copy:%standard-phases 'install) + #:install-plan + '(("src" "include" #:include-regexp ("\\.h$")) + ("lib" "lib")) + args))) + '("qtlockedfile" "qtpropertybrowser" "qtservice" + "qtsingleapplication" "qtsoap"))))))) + (inputs + `(("qtbase" ,qtbase))) + (synopsis "Collection of Qt extensions") + (description "QtSolutions is a set of components extending Qt. +@itemize +@item QtLockedFile: A class that extends QFile with advisory locking functions. +@item QtPropertyBrowser: A framework that enables the user to edit a set of +properties. +@item QtService: A helper for writing services such as Unix daemons. +@item QtSingleApplication: A component that provides support for applications +that can be only started once per user. +@item QtSoap: A component that provides basic web service support with version +1.1 of the SOAP protocol. +@end itemize\n") + (home-page "https://doc.qt.io/archives/qq/qq09-qt-solutions.html") + (license (list license:bsd-3 + ;; QScriptParser and QScriptGrammar specifically allow + ;; redistribution under GPL3 or LGPL2.1 + license:gpl3 license:lgpl2.1))))) + (define-public qwt (package (name "qwt") |