summaryrefslogtreecommitdiff
path: root/gnu/packages/kde-frameworks.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/kde-frameworks.scm')
-rw-r--r--gnu/packages/kde-frameworks.scm513
1 files changed, 491 insertions, 22 deletions
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index a679c64314..6ba454d0ed 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -26,16 +26,24 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages admin)
+ #:use-module (gnu packages attr)
+ #:use-module (gnu packages boost)
#:use-module (gnu packages bison)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages docbook)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
+ #:use-module (gnu packages gnupg)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+ #:use-module (gnu packages polkit)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
+ #:use-module (gnu packages web)
+ #:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public extra-cmake-modules
@@ -77,6 +85,60 @@ modules provided by CMake to find common software. In addition, it provides
common build settings used in software produced by the KDE community.")
(license license:bsd-3)))
+(define-public phonon
+ (package
+ (name "phonon")
+ (version "4.9.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/phonon"
+ "/" version "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1q5hvsk4sfcb91625wcmldy7kgjmfpmpmkgzi6mxkqdd307v8x5v"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("qtbase" ,qtbase)))
+ (arguments
+ `(#:configure-flags
+ '("-DCMAKE_CXX_FLAGS=-fPIC"
+ "-DPHONON_BUILD_PHONON4QT5=ON")))
+ (home-page "https://phonon.kde.org")
+ (synopsis "KDE's multimedia library")
+ (description "KDE's multimedia library.")
+ (license license:lgpl2.1+)))
+
+(define-public gpgmepp
+ (package
+ (name "gpgmepp")
+ (version "16.04.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/applications"
+ "/" version "/src/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1850pdysi7c1w0nxnhcbrhnkrfqyrcl0laxyjcw1g1ln764pwcmj"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (propagated-inputs
+ `(("boost" ,boost)
+ ("gpgme" ,gpgme)))
+ (inputs
+ `(("qtbase" ,qtbase)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "C++ bindings/wrapper for gpgme")
+ (description "C++ bindings/wrapper for gpgme.")
+ (license license:lgpl2.1+)))
+
+
;; Tier 1
;;
;; Tier 1 frameworks depend only on Qt (and possibly a small number of other
@@ -331,7 +393,7 @@ It is made of two parts: KConfigCore and KConfigGui.
KConfigCore provides access to the configuration files themselves.
It features:
-@itemize
+@enumerate
@item Code generation: describe your configuration in an XML file, and use
`kconfig_compiler to generate classes that read and write configuration
entries.
@@ -342,7 +404,7 @@ settings).
@item Optional shell expansion support (see docs/options.md).
@item The ability to lock down configuration options (see docs/options.md).
-@end itemize
+@end enumerate
KConfigGui provides a way to hook widgets to the configuration so that they
are automatically initialized from the configuration and automatically
@@ -477,13 +539,10 @@ infrastructure.")
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-before 'check 'start-xorg-server
- (lambda* (#:key inputs #:allow-other-keys)
- ;; The test suite requires a running X server.
- (system (string-append (assoc-ref inputs "xorg-server")
- "/bin/Xvfb :1 &"))
- (setenv "DISPLAY" ":1")
- #t)))))
+ (add-before 'check 'check-setup
+ (lambda* _
+ (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
@@ -592,7 +651,7 @@ or user activity.")
(synopsis "Set of item models extending the Qt model-view framework")
(description "KItemModels provides the following models:
-@itemize
+@enumerate
@item KBreadcrumbSelectionModel - Selects the parents of selected items to
create breadcrumbs.
@@ -617,7 +676,7 @@ model.
@item KSelectionProxyModel - A Proxy Model which presents a subset of its source
model to observers
-@end itemize")
+@end enumerate")
(license license:lgpl2.1+)))
(define-public kitemviews
@@ -757,21 +816,25 @@ represented by a QPoint or a QSize.")
(inputs
`(("qtbase" ,qtbase)))
(arguments
- `(#:tests? #f ; FIXME: libGL error: failed to load driver: swrast.
+ `(#:tests? #f ; FIXME: Regression after update to qt 5.7
#:phases
(modify-phases %standard-phases
(add-before 'check 'check-setup
- (lambda* _
- (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
- (setenv "LIBGL_DEBUG" "verbose") ; enable debug output
- (setenv "DBUS_FATAL_WARNINGS" "0")))
+ (lambda _
+ (setenv "QT_QPA_PLATFORM" "offscreen") ; a better solution to Xvfb
+ (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug info
+ (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.
+ ;; Xvfb doesn't have proper glx support and needs a pixeldepth
+ ;; of 24 bit to avoid "libGL error: failed to load driver: swrast"
+ ;; "Could not initialize GLX"
(system (string-append (assoc-ref inputs "xorg-server")
- "/bin/Xvfb :1 &"))
+ "/bin/Xvfb :1 -screen 0 640x480x24 &"))
(setenv "DISPLAY" ":1")
- #t)))))
+ #t)))))
(home-page "https://community.kde.org/Frameworks")
(synopsis "Large set of desktop widgets")
(description "Provided are action classes that can be added to toolbars or
@@ -838,9 +901,11 @@ lower level classes for interaction with the X Windowing System.")
`(("extra-cmake-modules" ,extra-cmake-modules)
("dbus" ,dbus)
("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ ; Headers contain #include <ModemManager/ModemManager.h>
+ `(("modem-manager", modem-manager)))
(inputs
- `(("modem-manager", modem-manager)
- ("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase)))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -874,9 +939,12 @@ messages.")
`(("extra-cmake-modules" ,extra-cmake-modules)
("dbus" ,dbus)
("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ ; Headers contain #include <NetworkManager.h> and
+ ; #include <libnm/NetworkManager.h>
+ `(("network-manager" ,network-manager)))
(inputs
- `(("network-manager", network-manager)
- ("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase)))
(arguments
`(#:phases
(modify-phases %standard-phases
@@ -992,3 +1060,404 @@ ASpell and HUNSPELL.")
(description "ThreadWeaver is a helper for multithreaded programming. It
uses a job-based interface to queue tasks and execute them in an efficient way.")
(license license:lgpl2.1+)))
+
+
+;; Tier 2
+;;
+;; Tier 2 frameworks additionally depend on tier 1 frameworks, but still have
+;; easily manageable dependencies.
+
+(define-public kauth
+ (package
+ (name "kauth")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "14sjjfgl3arqyqcr77w9qhpnd8mrnh53r5rfss6bvlk26bmihs49"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("dbus" ,dbus)
+ ("extra-cmake-modules" ,extra-cmake-modules)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("kcoreaddons" ,kcoreaddons)
+ ("polkit-qt" ,polkit-qt)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda* _
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ (zero? (system* "dbus-launch" "ctest" ".")))))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Execute actions as privileged user")
+ (description "KAuth provides a convenient, system-integrated way to offload
+actions that need to be performed as a privileged user to small set of helper
+utilities.")
+ (license license:lgpl2.1+)))
+
+(define-public kcompletion
+ (package
+ (name "kcompletion")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1qln0v31gn86kzwhnkijr1ydf129n32jmiybbckrp4w6hyx6xfxv"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("qttools" ,qttools)
+ ("xorg-server" ,xorg-server)))
+ (inputs
+ `(("kconfig" ,kconfig)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda _
+ (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
+applications. It provides a set of completion-ready widgets, or can be
+integrated it into your application's other widgets.")
+ (license license:lgpl2.1+)))
+
+(define-public kcrash
+ (package
+ (name "kcrash")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1lahgfwlp9b5rsl244kzp7rsl4ybv1q4qlvpv0xxz5ygssk48l0w"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("xorg-server" ,xorg-server)))
+ (inputs
+ `(("kcoreaddons" ,kcoreaddons)
+ ("kwindowsystem" ,kwindowsystem)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xorg-server
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The test suite requires a running X server.
+ (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Graceful handling of application crashes")
+ (description "KCrash provides support for intercepting and handling
+application crashes.")
+ (license license:lgpl2.1+)))
+
+(define-public kdoctools
+ (package
+ (name "kdoctools")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1r129kpq0d11b9l87cqbal6fm5ycwhsps1g3r1a7jsxz70scz4ri"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("docbook-xml" ,docbook-xml)
+ ("docbook-xsl" ,docbook-xsl)
+ ("karchive" ,karchive)
+ ("ki18n" ,ki18n)
+ ("libxml2" ,libxml2)
+ ("libxslt" ,libxslt)
+ ("perl" ,perl)
+ ("perl-uri" ,perl-uri)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'cmake-find-docbook
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* (find-files "cmake" "\\.cmake$")
+ (("CMAKE_SYSTEM_PREFIX_PATH")
+ "CMAKE_PREFIX_PATH"))
+ (substitute* "cmake/FindDocBookXML4.cmake"
+ (("^.*xml/docbook/schema/dtd.*$")
+ "xml/dtd/docbook\n"))
+ (substitute* "cmake/FindDocBookXSL.cmake"
+ (("^.*xml/docbook/stylesheet.*$")
+ (string-append "xml/xsl/docbook-xsl-"
+ ,(package-version docbook-xsl) "\n"))))))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Create documentation from DocBook")
+ (description "Provides tools to generate documentation in various format
+from DocBook files.")
+ (license license:lgpl2.1+)))
+
+(define-public kfilemetadata
+ (package
+ (name "kfilemetadata")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "02n9qhpr0jlwdgdbid0k34abhs3bzhlsa56ybl5dq1aib6izk1sy"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("python-2" ,python-2)))
+ (inputs
+ `(("attr" ,attr)
+ ("karchive" ,karchive)
+ ("ki18n" ,ki18n)
+ ("qtbase" ,qtbase)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Extract metadata from different fileformats")
+ (description "KFileMetaData provides a simple library for extracting the
+text and metadata from a number of different files. This library is typically
+used by file indexers to retreive the metadata. This library can also be used
+by applications to write metadata.")
+ (license (list license:lgpl2.0 license:lgpl2.1 license:lgpl3))))
+
+(define-public kimageformats
+ (package
+ (name "kimageformats")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "12mhgckmhnvcnm8k7mk15mipxrnm7i9ip7ykbjh8nxjiwyk1pmwc"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("xorg-server" ,xorg-server)))
+ (inputs
+ `(("qtbase" ,qtbase)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xorg-server
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The test suite requires a running X server.
+ (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Plugins to allow QImage to support extra file formats")
+ (description "This framework provides additional image format plugins for
+QtGui. As such it is not required for the compilation of any other software,
+but may be a runtime requirement for Qt-based software to support certain image
+formats.")
+ (license license:lgpl2.1+)))
+
+(define-public kjobwidgets
+ (package
+ (name "kjobwidgets")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1mcvrz66xcqjgbp08zpqsf943cm462wbqm5gh719p9s25hx8hwrc"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("kcoreaddons" ,kcoreaddons)
+ ("kwidgetsaddons" ,kwidgetsaddons)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Widgets for showing progress of asynchronous jobs")
+ (description "KJobWIdgets provides widgets for showing progress of
+asynchronous jobs.")
+ (license license:lgpl2.1+)))
+
+(define-public knotifications
+ (package
+ (name "knotifications")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0qryp41phnpx4r9wa6rfhmnzy7nxl0ijnyrafadf2n2xb53ipkpa"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+ ("dbus" ,dbus)
+ ("qttools" ,qttools)))
+ (inputs
+ `(("kcodecs" ,kcodecs)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("kwindowsystem" ,kwindowsystem)
+ ("phonon" ,phonon)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda* _
+ (setenv "HOME" (getcwd))))
+ (replace 'check
+ (lambda* _
+ (setenv "DBUS_FATAL_WARNINGS" "0")
+ (zero? (system* "dbus-launch" "ctest" ".")))))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Desktop notifications")
+ (description "KNotification is used to notify the user of an event. It
+covers feedback and persistent events.")
+ (license license:lgpl2.1+)))
+
+(define-public kpackage
+ (package
+ (name "kpackage")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "03aqzkpqz3c1v4qgwfbs3ncdbapiyg7psrkhxqv3z48rklavk1ri"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("karchive" ,karchive)
+ ("kconfig" ,kconfig)
+ ("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:tests? #f ; FIXME: 1/4 tests fail.
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'check-setup
+ (lambda* _
+ (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
+ (setenv "HOME" (getcwd)))))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Installation and loading of additional content as packages")
+ (description "The Package framework lets the user install and load packages
+of non binary content such as scripted extensions or graphic assets, as if they
+were traditional plugins.")
+ (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kpty
+ (package
+ (name "kpty")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1ybvdzqpa53kkki9p5da0ff9x3c63rmksk7865wqwlgy8apzi2fs"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("kcoreaddons" ,kcoreaddons)
+ ("ki18n" ,ki18n)
+ ("qtbase" ,qtbase)))
+ (arguments
+ `(#:tests? #f ; FIXME: 1/1 tests fail.
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'patch-tests
+ (lambda _
+ (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+ (substitute* "autotests/kptyprocesstest.cpp"
+ (("/bin/bash") (which "bash")))
+ #t)))))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Interfacing with pseudo terminal devices")
+ (description "This library provides primitives to interface with pseudo
+terminal devices as well as a KProcess derived class for running child processes
+and communicating with them using a pty.")
+ (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kunitconversion
+ (package
+ (name "kunitconversion")
+ (version "5.24.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://kde/stable/frameworks/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "03dfjn4lm6sl2zcdrvw0b9irzvkyc2w2j5xixag5j8nw373742h8"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+ (inputs
+ `(("ki18n" ,ki18n)
+ ("qtbase" ,qtbase)))
+ (home-page "https://community.kde.org/Frameworks")
+ (synopsis "Converting physical units")
+ (description "KUnitConversion provides functions to convert values in
+different physical units. It supports converting different prefixes (e.g. kilo,
+mega, giga) as well as converting between different unit systems (e.g. liters,
+gallons).")
+ (license license:lgpl2.1+)))