* gnu/packages/abiword.scm, * gnu/packages/ada.scm, * gnu/packages/agda.scm, * gnu/packages/backup.scm, * gnu/packages/barrier.scm, * gnu/packages/bioinformatics.scm, * gnu/packages/bootstrap.scm, * gnu/packages/bqn.scm, * gnu/packages/c.scm, * gnu/packages/chemistry.scm, * gnu/packages/coq.scm, * gnu/packages/cross-base.scm, * gnu/packages/databases.scm, * gnu/packages/emacs-xyz.scm, * gnu/packages/enlightenment.scm, * gnu/packages/games.scm, * gnu/packages/geo.scm, * gnu/packages/ghostscript.scm, * gnu/packages/gl.scm, * gnu/packages/golang.scm, * gnu/packages/jami.scm, * gnu/packages/java-maths.scm, * gnu/packages/kde-frameworks.scm, * gnu/packages/kde-plasma.scm, * gnu/packages/language.scm, * gnu/packages/libreoffice.scm, * gnu/packages/linphone.scm, * gnu/packages/lisp.scm, * gnu/packages/llvm.scm, * gnu/packages/machine-learning.scm, * gnu/packages/minetest.scm, * gnu/packages/monitoring.scm, * gnu/packages/nfs.scm, * gnu/packages/ocr.scm, * gnu/packages/opencl.scm, * gnu/packages/pdf.scm, * gnu/packages/python-xyz.scm, * gnu/packages/racket.scm, * gnu/packages/rust.scm, * gnu/packages/syncthing.scm, * gnu/packages/syndication.scm, * gnu/packages/telegram.scm, * gnu/packages/vulkan.scm, * gnu/packages/web-browsers.scm, * gnu/packages/web.scm, * gnu/packages/webkit.scm: Remove some unecessary module imports.
		
			
				
	
	
		
			3815 lines
		
	
	
	
		
			141 KiB
		
	
	
	
		
			Scheme
		
	
	
	
	
	
			
		
		
	
	
			3815 lines
		
	
	
	
		
			141 KiB
		
	
	
	
		
			Scheme
		
	
	
	
	
	
| ;;; GNU Guix --- Functional package management for GNU
 | |
| ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
 | |
| ;;; Copyright © 2016, 2019, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
 | |
| ;;; Copyright © 2016-2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
 | |
| ;;; Copyright © 2016 David Craven <david@craven.ch>
 | |
| ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 | |
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | |
| ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
 | |
| ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
 | |
| ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 | |
| ;;; Copyright © 2021 Alexandros Theodotou <alex@zrythm.org>
 | |
| ;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
 | |
| ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
 | |
| ;;;
 | |
| ;;; This file is part of GNU Guix.
 | |
| ;;;
 | |
| ;;; GNU Guix is free software; you can redistribute it and/or modify it
 | |
| ;;; under the terms of the GNU General Public License as published by
 | |
| ;;; the Free Software Foundation; either version 3 of the License, or (at
 | |
| ;;; your option) any later version.
 | |
| ;;;
 | |
| ;;; GNU Guix is distributed in the hope that it will be useful, but
 | |
| ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| ;;; GNU General Public License for more details.
 | |
| ;;;
 | |
| ;;; You should have received a copy of the GNU General Public License
 | |
| ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| (define-module (gnu packages kde-frameworks)
 | |
|   #:use-module (guix build-system cmake)
 | |
|   #:use-module (guix build-system python)
 | |
|   #:use-module (guix build-system qt)
 | |
|   #:use-module (guix download)
 | |
|   #:use-module ((guix licenses) #:prefix license:)
 | |
|   #:use-module (guix packages)
 | |
|   #:use-module (guix utils)
 | |
|   #:use-module (guix gexp)
 | |
|   #:use-module (gnu packages)
 | |
|   #:use-module (gnu packages acl)
 | |
|   #:use-module (gnu packages admin)
 | |
|   #:use-module (gnu packages aidc)
 | |
|   #:use-module (gnu packages attr)
 | |
|   #:use-module (gnu packages avahi)
 | |
|   #:use-module (gnu packages base)
 | |
|   #:use-module (gnu packages boost)
 | |
|   #:use-module (gnu packages bison)
 | |
|   #:use-module (gnu packages boost)
 | |
|   #:use-module (gnu packages calendar)
 | |
|   #:use-module (gnu packages compression)
 | |
|   #:use-module (gnu packages databases)
 | |
|   #:use-module (gnu packages docbook)
 | |
|   #:use-module (gnu packages ebook)
 | |
|   #:use-module (gnu packages flex)
 | |
|   #:use-module (gnu packages freedesktop)
 | |
|   #:use-module (gnu packages gettext)
 | |
|   #:use-module (gnu packages gl)
 | |
|   #:use-module (gnu packages glib)
 | |
|   #:use-module (gnu packages gnome)
 | |
|   #:use-module (gnu packages gnupg)
 | |
|   #:use-module (gnu packages gperf)
 | |
|   #:use-module (gnu packages graphics)
 | |
|   #:use-module (gnu packages graphviz)
 | |
|   #:use-module (gnu packages gstreamer)
 | |
|   #:use-module (gnu packages gtk)
 | |
|   #:use-module (gnu packages hunspell)
 | |
|   #:use-module (gnu packages image)
 | |
|   #:use-module (gnu packages iso-codes)
 | |
|   #:use-module (gnu packages kerberos)
 | |
|   #:use-module (gnu packages kde)
 | |
|   #:use-module (gnu packages kde-plasma)
 | |
|   #:use-module (gnu packages libcanberra)
 | |
|   #:use-module (gnu packages linux)
 | |
|   #:use-module (gnu packages mp3)
 | |
|   #:use-module (gnu packages openbox)
 | |
|   #:use-module (gnu packages pdf)
 | |
|   #:use-module (gnu packages pcre)
 | |
|   #:use-module (gnu packages perl)
 | |
|   #:use-module (gnu packages pkg-config)
 | |
|   #:use-module (gnu packages polkit)
 | |
|   #:use-module (gnu packages pulseaudio)
 | |
|   #:use-module (gnu packages python)
 | |
|   #:use-module (gnu packages python-xyz)
 | |
|   #:use-module (gnu packages qt)
 | |
|   #:use-module (gnu packages textutils)
 | |
|   #:use-module (gnu packages tls)
 | |
|   #:use-module (gnu packages text-editors)
 | |
|   #:use-module (gnu packages version-control)
 | |
|   #:use-module (gnu packages video)
 | |
|   #:use-module (gnu packages vulkan)
 | |
|   #:use-module (gnu packages web)
 | |
|   #:use-module (gnu packages xml)
 | |
|   #:use-module (gnu packages xdisorg)
 | |
|   #:use-module (gnu packages xorg)
 | |
|   #:use-module (srfi srfi-1))
 | |
| 
 | |
| (define-public extra-cmake-modules
 | |
|   (package
 | |
|     (name "extra-cmake-modules")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0669m98vqy4hpacfjs7xpgjj1bns24kjybrjipxzp82092g8y69w"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      ;; Add test dependency, except on armhf where building it is too
 | |
|      ;; expensive.
 | |
|      (if (and (not (%current-target-system))
 | |
|               (string=? (%current-system) "armhf-linux"))
 | |
|          '()
 | |
|          (list qtbase-5)))               ;for tests (needs qmake)
 | |
|     (arguments
 | |
|      (list
 | |
|       #:tests? (and (not (%current-target-system))
 | |
|                     (not (null? (package-native-inputs this-package))))
 | |
|       #:phases
 | |
|       #~(modify-phases %standard-phases
 | |
|           (add-after 'unpack 'fix-lib-path
 | |
|             (lambda _
 | |
|               ;; Always install into /lib and not into /lib64.
 | |
|               (substitute* "kde-modules/KDEInstallDirsCommon.cmake"
 | |
|                 (("\"lib64\"") "\"lib\""))
 | |
| 
 | |
|               ;; Determine the install path by the major version of Qt.
 | |
|               ;; TODO: Base the following on values taken from Qt
 | |
|               ;; Install plugins into lib/qt5/plugins
 | |
|               ;; TODO: Check if this is okay for Android, too
 | |
|               ;; (see comment in KDEInstallDirs.cmake)
 | |
|               (substitute* '("kde-modules/KDEInstallDirs5.cmake"
 | |
|                              "kde-modules/KDEInstallDirs6.cmake")
 | |
|                 ;; Fix the installation path of Qt plugins.
 | |
|                 (("_define_relative\\(QTPLUGINDIR \"\\$\\{_pluginsDirParent}\" \"plugins\"")
 | |
|                  "_define_relative(QTPLUGINDIR \"${_pluginsDirParent}\" \"qt${QT_MAJOR_VERSION}/plugins\"")
 | |
|                 ;; Fix the installation path of QML files.
 | |
|                 (("_define_relative\\(QMLDIR LIBDIR \"qml\"")
 | |
|                  "_define_relative(QMLDIR LIBDIR \"qt${QT_MAJOR_VERSION}/qml\""))
 | |
| 
 | |
|               ;; Qt Quick Control 1 is no longer available in Qt 6.
 | |
|               (substitute* '("kde-modules/KDEInstallDirs5.cmake")
 | |
|                 (("_define_relative\\(QTQUICKIMPORTSDIR QTPLUGINDIR \"imports\"")
 | |
|                  "_define_relative(QTQUICKIMPORTSDIR LIBDIR \"qt5/imports\""))
 | |
| 
 | |
|               (substitute* "modules/ECMGeneratePriFile.cmake"
 | |
|                 ;; Install pri-files into lib/qt${QT_MAJOR_VERSION}/mkspecs
 | |
|                 (("set\\(ECM_MKSPECS_INSTALL_DIR mkspecs/modules")
 | |
|                  "set(ECM_MKSPECS_INSTALL_DIR lib/qt${QT_MAJOR_VERSION}/mkspecs/modules"))))
 | |
|           ;; Work around for the failed test KDEFetchTranslations.
 | |
|           ;; It complains that the cmake project name is not
 | |
|           ;; "frameworks/extra-cmake-modules".
 | |
|           ;; TODO: Fix it upstream.
 | |
|           (add-after 'unpack 'fix-test
 | |
|             (lambda _
 | |
|               (substitute* "tests/KDEFetchTranslations/CMakeLists.txt"
 | |
|                 (("frameworks/extra-cmake-modules") "extra-cmake-modules"))))
 | |
|           ;; install and check phase are swapped to prevent install from failing
 | |
|           ;; after testsuire has run
 | |
|           (add-after 'install 'check-post-install
 | |
|             (assoc-ref %standard-phases 'check))
 | |
|           (delete 'check))))
 | |
|     ;; optional dependencies - to save space, we do not add these inputs.
 | |
|     ;; Sphinx > 1.2:
 | |
|     ;;   Required to build Extra CMake Modules documentation in Qt Help format.
 | |
|     ;; Qt5LinguistTools , Qt5 linguist tools. , <http://www.qt.io/>
 | |
|     ;;   Required to run tests for the ECMPoQmTools module.
 | |
|     ;; Qt5Core
 | |
|     ;;   Required to run tests for the ECMQtDeclareLoggingCategory module,
 | |
|     ;;   and for some tests of the KDEInstallDirs module.
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "CMake module files for common software used by KDE")
 | |
|     (description "The Extra CMake Modules package, or ECM, adds to the
 | |
| 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 kquickcharts
 | |
|   (package
 | |
|     (name "kquickcharts")
 | |
|     (version "5.96.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append "mirror://kde/stable/frameworks/"
 | |
|                                   (version-major+minor version)
 | |
|                                   "/" name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1sd9mfxk72xfa1kz77s7z312scfm0vwvvgmyi4pypb9cs7d9dq3j"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      (list #:phases #~(modify-phases %standard-phases
 | |
|                         (replace 'check
 | |
|                           (lambda* (#:key tests? #:allow-other-keys)
 | |
|                             (when tests?
 | |
|                               (system "Xvfb :1 -screen 0 640x480x24 &")
 | |
|                               (setenv "DISPLAY" ":1")
 | |
|                               (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                               (invoke "ctest")))))))
 | |
|     (inputs (list qtbase-5 qtdeclarative-5 qtquickcontrols2-5
 | |
|                   xorg-server-for-tests))
 | |
|     (native-inputs (list extra-cmake-modules glslang pkg-config))
 | |
|     (home-page "https://api.kde.org/frameworks/kquickcharts/html/index.html")
 | |
|     (synopsis "QtQuick plugin providing high-performance charts")
 | |
|     (description
 | |
|      "The Quick Charts module provides a set of charts that can be
 | |
| used from QtQuick applications for both simple display of data as well as
 | |
| continuous display of high-volume data.")
 | |
|     (license (list license:lgpl2.1 license:lgpl3))))
 | |
| 
 | |
| (define-public phonon
 | |
|   (package
 | |
|     (name "phonon")
 | |
|     (version "4.11.1")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/phonon"
 | |
|                     "/" version "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0bfy8iqmjhlg3ma3iqd3kxjc2zkzpjgashbpf5x17y0dc2i1whxl"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      ;; TODO: Think about adding pulseaudio. Is it required for sound?
 | |
|      ;; TODO: Add building the super experimental QML support
 | |
|      (list extra-cmake-modules pkg-config qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      (list #:configure-flags
 | |
|            #~'("-DCMAKE_CXX_FLAGS=-fPIC"
 | |
|                "-DPHONON_BUILD_PHONON4QT5=ON")
 | |
|            #:phases
 | |
|            #~(modify-phases %standard-phases
 | |
|                (add-before 'install 'patch-installdir
 | |
|                  (lambda* (#:key inputs outputs #:allow-other-keys)
 | |
|                    (let ((regex (string-append "(INSTALL DESTINATION \")"
 | |
|                                                #$(this-package-input "qtbase"))))
 | |
|                      (substitute* "cmake_install.cmake"
 | |
|                        ((regex all dest)
 | |
|                         (string-append dest #$output)))))))))
 | |
|     (home-page "https://community.kde.org/Phonon")
 | |
|     (synopsis "KDE's multimedia library")
 | |
|     (description "KDE's multimedia library.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public phonon-backend-gstreamer
 | |
|   (package
 | |
|     (name "phonon-backend-gstreamer")
 | |
|     (version "4.10.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/phonon/"
 | |
|                     name "/" version "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1wk1ip2w7fkh65zk6rilj314dna0hgsv2xhjmpr5w08xa8sii1y5"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config qttools-5))
 | |
|     (inputs
 | |
|      (list phonon
 | |
|            qtbase-5
 | |
|            qtx11extras
 | |
|            gstreamer
 | |
|            gst-plugins-base
 | |
|            libxml2))
 | |
|     (arguments
 | |
|      `(#:configure-flags
 | |
|        '( "-DPHONON_BUILD_PHONON4QT5=ON")))
 | |
|     (home-page "https://community.kde.org/Phonon")
 | |
|     (synopsis "Phonon backend which uses GStreamer")
 | |
|     (description "Phonon makes use of backend libraries to provide sound.
 | |
| Phonon-GStreamer is a backend based on the GStreamer multimedia library.")
 | |
|     ;; license: source files mention "either version 2.1 or 3"
 | |
|     (license (list license:lgpl2.1 license:lgpl3))))
 | |
| 
 | |
| 
 | |
| ;; Tier 1
 | |
| ;;
 | |
| ;; Tier 1 frameworks depend only on Qt (and possibly a small number of other
 | |
| ;; third-party libraries), so can easily be used by an Qt-based project.
 | |
| 
 | |
| (define-public attica
 | |
|   (package
 | |
|     (name "attica")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0w1w6w2jia1q32jnn2dhyxmkq64ha1dcbsqj233v4f224rp3aknp"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'disable-network-tests
 | |
|            (lambda _
 | |
|              ;; These tests require network access.
 | |
|              (substitute* "autotests/CMakeLists.txt"
 | |
|                ((".*providertest.cpp") "")))))))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Open Collaboration Service client library")
 | |
|     (description "Attica is a Qt library that implements the Open
 | |
| Collaboration Services API version 1.6.
 | |
| 
 | |
| It grants easy access to the services such as querying information about
 | |
| persons and contents.  The library is used in KNewStuff3 as content provider.
 | |
| In order to integrate with KDE's Plasma Desktop, a platform plugin exists in
 | |
| kdebase.
 | |
| 
 | |
| The REST API is defined here:
 | |
| http://freedesktop.org/wiki/Specifications/open-collaboration-services/")
 | |
|     (license (list license:lgpl2.1+ license:lgpl3+))))
 | |
| 
 | |
| (define-public bluez-qt
 | |
|   (package
 | |
|     (name "bluez-qt")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0h2k2qiskn921cpni5rs7x5ahric6dlllwsrk77akpi4xcsrip2g"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list dbus extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list qtdeclarative-5
 | |
|            qtbase-5))
 | |
|     (arguments
 | |
|      (list #:configure-flags
 | |
|            #~(list (string-append
 | |
|                     "-DUDEV_RULES_INSTALL_DIR=" #$output "/lib/udev/rules.d"))
 | |
| 	#:phases
 | |
|         #~(modify-phases %standard-phases
 | |
|             (replace 'check
 | |
|               (lambda* (#:key tests? #:allow-other-keys)
 | |
|                 (when tests?
 | |
|                   (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                   (invoke "dbus-launch" "ctest" "-E" "bluezqt-qmltests")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "QML wrapper for BlueZ")
 | |
|     (description "bluez-qt is a Qt-style library for accessing the bluez
 | |
| Bluetooth stack.  It is used by the KDE Bluetooth stack, BlueDevil.")
 | |
|     (license (list license:lgpl2.1+ license:lgpl3+))))
 | |
| 
 | |
| (define-public breeze-icons
 | |
|   (package
 | |
|     (name "breeze-icons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append "mirror://kde/stable/frameworks/"
 | |
|                                   (version-major+minor version)
 | |
|                                   "/" name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0a3zvmhcfsnxv0jpyjny3sl769p99psadl1872v0qlkax47pvsjp"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules
 | |
|            fdupes
 | |
|            `(,gtk+ "bin")
 | |
|            python
 | |
|            python-lxml))                ;for 24x24 icon generation
 | |
|     (inputs (list qtbase-5))
 | |
|     (arguments
 | |
|      (list #:phases #~(modify-phases %standard-phases
 | |
|                         (add-after 'install 'update-cache
 | |
|                           (lambda* _
 | |
|                             (invoke "gtk-update-icon-cache"
 | |
|                                     (string-append #$output
 | |
|                                                    "/share/icons/breeze"))
 | |
|                             (invoke "gtk-update-icon-cache"
 | |
|                                     (string-append #$output
 | |
|                                                    "/share/icons/breeze-dark")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Default KDE Plasma 5 icon theme")
 | |
|     (description "Breeze provides a freedesktop.org compatible icon theme.
 | |
| It is the default icon theme for the KDE Plasma 5 desktop.")
 | |
|     ;; The license file mentions lgpl3+. The license files in the source
 | |
|     ;; directories are lgpl3, while the top directory contains the lgpl2.1.
 | |
|     ;; text.
 | |
|     (license license:lgpl3+)))
 | |
| 
 | |
| (define-public kapidox
 | |
|   (package
 | |
|     (name "kapidox")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1k2qk8ibv5dqdhkn2992n8rlmslpmngz83hxb7zrh3pkphdg8v2n"))))
 | |
|     (build-system python-build-system)
 | |
|     (arguments
 | |
|      `(#:tests? #f  ; has no test target
 | |
|        #:phases (modify-phases %standard-phases
 | |
|                   (delete 'sanity-check)))) ;its insane.
 | |
|     (propagated-inputs
 | |
|      ;; kapidox is a python programm
 | |
|      ;; TODO: check if doxygen has to be installed, the readme does not
 | |
|      ;; mention it. The openSuse .rpm lists doxygen, graphviz, graphviz-gd,
 | |
|      ;; and python-xml.
 | |
|      (list python python-jinja2 python-pyyaml))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Doxygen Tools")
 | |
|     (description "This framework contains scripts and data for building API
 | |
| documentation (dox) in a standard format and style for KDE.
 | |
| 
 | |
| For the actual documentation extraction and formatting the Doxygen tool is
 | |
| used, but this framework provides a wrapper script to make generating the
 | |
| documentation more convenient (including reading settings from the target
 | |
| framework or other module) and a standard template for the generated
 | |
| documentation.")
 | |
|     ;; Most parts are bsd-2, but incuded jquery is expat
 | |
|     ;; This list is taken from http://packaging.neon.kde.org/cgit/
 | |
|     (license (list license:bsd-2 license:expat))))
 | |
| 
 | |
| (define-public karchive
 | |
|   (package
 | |
|     (name "karchive")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append "mirror://kde/stable/frameworks/"
 | |
|                                   (version-major+minor version)
 | |
|                                   "/" name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1ipj7j1iw6g56z0qppji38h6qwbs05piiqqbsw8hdbf96l6cdiq2"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      (list #:phases #~(modify-phases %standard-phases
 | |
|                         (replace 'check
 | |
|                           (lambda* (#:key tests? #:allow-other-keys)
 | |
|                             (when tests?
 | |
|                               (invoke "ctest" "-E" "karchivetest")))))))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list bzip2 qtbase-5 xz zlib `(,zstd "lib")))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Qt 5 addon providing access to numerous types of archives")
 | |
|     (description
 | |
|      "KArchive provides classes for easy reading, creation and
 | |
| manipulation of @code{archive} formats like ZIP and TAR.
 | |
| 
 | |
| It also provides transparent compression and decompression of data, like the
 | |
| GZip format, via a subclass of QIODevice.")
 | |
|     ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
 | |
|     ;; under a variety of licenses.
 | |
|     ;; This list is taken from http://packaging.neon.kde.org/cgit/
 | |
|     (license (list license:lgpl2.1 license:lgpl2.1+
 | |
|                    license:lgpl3+ license:bsd-2))))
 | |
| 
 | |
| (define-public kcalendarcore
 | |
|   (package
 | |
|     (name "kcalendarcore")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "16kclspsjzld9n07z1i8li2pc91ihpqhbk46a4s92nsihs2dkayk"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules perl tzdata-for-tests))
 | |
|     (inputs
 | |
|      (list libical qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda* (#:key inputs #:allow-other-keys) ;;; XXX: failing test
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|              (setenv "TZ" "Europe/Prague")
 | |
|              (setenv "TZDIR"
 | |
|                      (search-input-directory inputs
 | |
|                                              "share/zoneinfo")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Library for interfacing with calendars")
 | |
|     (description "This library provides access to and handling of calendar
 | |
| data.  It supports the standard formats iCalendar and vCalendar and the group
 | |
| scheduling standard iTIP.
 | |
| 
 | |
| A calendar contains information like incidences (events, to-dos, journals),
 | |
| alarms, time zones, and other useful information.  This API provides access to
 | |
| that calendar information via well known calendar formats iCalendar (or iCal)
 | |
| and the older vCalendar.")
 | |
|     (license (list license:lgpl3+ license:bsd-2))))
 | |
| 
 | |
| (define-public kcodecs
 | |
|   (package
 | |
|     (name "kcodecs")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0n10r7s9r25xp7vlym41qi421kld00niig73yark7yghj0r41jcz"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules gperf qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "String encoding and manipulating library")
 | |
|     (description "KCodecs provide a collection of methods to manipulate
 | |
| strings using various encodings.
 | |
| 
 | |
| It can automatically determine the charset of a string, translate XML
 | |
| entities, validate email addresses, and find encodings by name in a more
 | |
| tolerant way than QTextCodec (useful e.g. for data coming from the
 | |
| Internet).")
 | |
|     ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
 | |
|     ;; under a variety of licenses.
 | |
|     ;; This list is taken from http://packaging.neon.kde.org/cgit/
 | |
|     (license (list license:gpl2 license:gpl2+ license:bsd-2
 | |
|                    license:lgpl2.1 license:lgpl2.1+ license:expat
 | |
|                    license:lgpl3+ license:mpl1.1))))
 | |
| 
 | |
| (define-public kconfig
 | |
|   (package
 | |
|     (name "kconfig")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "15m2bggfr682q68dym7nzmvz7q7pwarzijad1wj0r5cs62l3bkjy"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list dbus extra-cmake-modules inetutils qttools-5
 | |
|            xorg-server-for-tests))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtdeclarative-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests? ;; kconfigcore-kconfigtest fails inconsistently!!
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                (invoke "ctest" "-E" "(kconfigcore-kconfigtest|\
 | |
| kconfiggui-kstandardshortcutwatchertest)")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Kconfiguration settings framework for Qt")
 | |
|     (description "KConfig provides an advanced configuration system.
 | |
| It is made of two parts: KConfigCore and KConfigGui.
 | |
| 
 | |
| KConfigCore provides access to the configuration files themselves.
 | |
| It features:
 | |
| 
 | |
| @enumerate
 | |
| @item Code generation: describe your configuration in an XML file, and use
 | |
| `kconfig_compiler to generate classes that read and write configuration
 | |
| entries.
 | |
| 
 | |
| @item Cascading configuration files (global settings overridden by local
 | |
| settings).
 | |
| 
 | |
| @item Optional shell expansion support (see docs/options.md).
 | |
| 
 | |
| @item The ability to lock down configuration options (see docs/options.md).
 | |
| @end enumerate
 | |
| 
 | |
| KConfigGui provides a way to hook widgets to the configuration so that they
 | |
| are automatically initialized from the configuration and automatically
 | |
| propagate their changes to their respective configuration files.")
 | |
|     ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
 | |
|     ;; under a variety of licenses.
 | |
|     ;; This list is taken from http://packaging.neon.kde.org/cgit/
 | |
|     (license (list license:lgpl2.1 license:lgpl2.1+ license:expat
 | |
|                    license:lgpl3+ license:gpl1 ; licende:mit-olif
 | |
|                    license:bsd-2 license:bsd-3))))
 | |
| 
 | |
| (define-public kcoreaddons
 | |
|   (package
 | |
|     (name "kcoreaddons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0lqmyxqsw7w1qgdgmax63v64cy7dwk7n4zi8k53xmrqjmd9jir52"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5 shared-mime-info))
 | |
|            ;; TODO: FAM: File alteration notification http://oss.sgi.com/projects/fam
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'blacklist-failing-test
 | |
|            (lambda _
 | |
|              ;; Blacklist failing tests.
 | |
|              (with-output-to-file "autotests/BLACKLIST"
 | |
|                (lambda _
 | |
|                  ;; FIXME: Make it pass.  Test failure caused by stout/stderr
 | |
|                  ;; being interleaved.
 | |
|                  (display "[test_channels]\n*\n")
 | |
|                  ;; FIXME
 | |
|                  (display "[test_inheritance]\n*\n")))))
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (setenv "HOME" (getcwd))
 | |
|              (setenv "TMPDIR" (getcwd)))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Qt addon library with a collection of non-GUI utilities")
 | |
|     (description "KCoreAddons provides classes built on top of QtCore to
 | |
| perform various tasks such as manipulating mime types, autosaving files,
 | |
| creating backup files, generating random sequences, performing text
 | |
| manipulations such as macro replacement, accessing user information and
 | |
| many more.")
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kdbusaddons
 | |
|   (package
 | |
|     (name "kdbusaddons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0fwdmlnci2xn5pi1ywgia3xka3zsh6gl6xpx1gvql7lczk1y490a"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules dbus qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtx11extras kinit-bootstrap))
 | |
|     ;; kinit-bootstrap: kinit package which does not depend on kdbusaddons.
 | |
|     (arguments
 | |
|      (list #:phases
 | |
|        #~(modify-phases %standard-phases
 | |
|          (add-before 'configure 'patch-source
 | |
|           (lambda* (#:key inputs #:allow-other-keys)
 | |
|             ;; look for the kdeinit5 executable in kinit's store directory,
 | |
|             ;; instead of the current application's directory:
 | |
|             (substitute* "src/kdeinitinterface.cpp"
 | |
|               (("<< QCoreApplication::applicationDirPath..")
 | |
|                (string-append
 | |
|                 "<< QString::fromUtf8(\"/" (dirname (search-input-file inputs
 | |
|                 "bin/kdeinit5")) "\")" )))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Convenience classes for DBus")
 | |
|     (description "KDBusAddons provides convenience classes on top of QtDBus,
 | |
| as well as an API to create KDED modules.")
 | |
|     ;; Some source files mention lgpl2.0+, but the included license is
 | |
|     ;; the lgpl2.1. Some source files are under non-copyleft licenses.
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kdnssd
 | |
|   (package
 | |
|     (name "kdnssd")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0wcjq0g1cdjz9npy31i4rqbx85a95f15w71aamhm8x82l8nysv4g"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list avahi ; alternativly dnssd could be used
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Network service discovery using Zeroconf")
 | |
|     (description "KDNSSD is a library for handling the DNS-based Service
 | |
| Discovery Protocol (DNS-SD), the layer of Zeroconf that allows network services,
 | |
| such as printers, to be discovered without any user intervention or centralized
 | |
| infrastructure.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kgraphviewer
 | |
|   (package
 | |
|     (name "kgraphviewer")
 | |
|     (version "2.4.3")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/kgraphviewer/"
 | |
|                     version "/" name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1h6pgg89gvxl8gw7wmkabyqqrzad5pxyv5lsmn1fl4ir8lcc5q2l"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (inputs
 | |
|      (list qtbase-5
 | |
|            boost
 | |
|            graphviz
 | |
|            kiconthemes
 | |
|            kparts
 | |
|            qtsvg-5))
 | |
|     (native-inputs
 | |
|      (list pkg-config extra-cmake-modules kdoctools))
 | |
|     (home-page "https://apps.kde.org/kgraphviewer/")
 | |
|     (synopsis "Graphviz dot graph viewer for KDE")
 | |
|     (description "KGraphViewer is a Graphviz DOT graph file viewer, aimed to
 | |
| replace the other outdated Graphviz tools.")
 | |
|     (license license:gpl2+)))
 | |
| 
 | |
| (define-public kguiaddons
 | |
|   (package
 | |
|     (name "kguiaddons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "022qf858khdqklq117i223ihpw8mvdcbcfn8cwqmn2cv9qnfxnqj"))))
 | |
|     (build-system qt-build-system)
 | |
|     ;; TODO: Build packages for the Python bindings.  Ideally this will be
 | |
|     ;; done for all versions of python guix supports.  Requires python,
 | |
|     ;; python-sip, clang-python, libclang.  Requires python-2 in all cases for
 | |
|     ;; clang-python.
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtwayland-5 qtx11extras plasma-wayland-protocols wayland))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Utilities for graphical user interfaces")
 | |
|     (description "The KDE GUI addons provide utilities for graphical user
 | |
| interfaces in the areas of colors, fonts, text, images, keyboard input.")
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kholidays
 | |
|   (package
 | |
|     (name "kholidays")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0ysw52wiyxrkprn0gis85nphpfl1wdb4439i66dfmg7s9nyqpzp0"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtdeclarative-5))
 | |
|     (home-page "https://invent.kde.org/frameworks/kholidays")
 | |
|     (synopsis "Library for regional holiday information")
 | |
|     (description "This library provides a C++ API that determines holiday and
 | |
| other special events for a geographical region.")
 | |
|     (license license:lgpl2.0+)))
 | |
| 
 | |
| (define-public ki18n
 | |
|   (package
 | |
|     (name "ki18n")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0b3r53v2ybhlyqpkjv98dv2w9q49yqqxk9qzbyc4mm7ypq4hvl47"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list gettext-minimal python))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtdeclarative-5 qtscript iso-codes))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (invoke "ctest" "-E" "(kcountrytest|kcountrysubdivisiontest)")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Gettext-based UI text internationalization")
 | |
|     (description "KI18n provides functionality for internationalizing user
 | |
| interface text in applications, based on the GNU Gettext translation system.  It
 | |
| wraps the standard Gettext functionality, so that the programmers and translators
 | |
| can use the familiar Gettext tools and workflows.
 | |
| 
 | |
| KI18n provides additional functionality as well, for both programmers and
 | |
| translators, which can help to achieve a higher overall quality of source and
 | |
| translated text.  This includes argument capturing, customizable markup, and
 | |
| translation scripting.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kidletime
 | |
|   (package
 | |
|     (name "kidletime")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1jdbjkishqnlzz1qrzyg92xnlsl7w89dmrh0zhzaj9bnr5a3icck"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list libxscrnsaver ; X-Screensaver based poller, fallback mode
 | |
|            qtbase-5 qtx11extras))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Reporting of idle time of user and system")
 | |
|     (description "KIdleTime is a singleton reporting information on idle time.
 | |
| It is useful not only for finding out about the current idle time of the PC,
 | |
| but also for getting notified upon idle time events, such as custom timeouts,
 | |
| or user activity.")
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kirigami
 | |
|   ;; Kirigami is listed as tier 1 framework, but optionally includes
 | |
|   ;; plasma-framework which is tier 3.
 | |
|   (package
 | |
|     (name "kirigami")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     "kirigami2-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1l0ggwrprmg5n5y3gxv7h4593fg87d7naxkf30603kkavq0hgks6"))))
 | |
|     (properties `((upstream-name . "kirigami2")))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kwindowsystem
 | |
|            ;; TODO: Find a way to activate this optional include without
 | |
|            ;; introducing a recursive dependency.
 | |
|            ;;("plasma-frameworks" ,plasma-framework) ;; Tier 3!
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            qtquickcontrols2-5
 | |
|            qtsvg-5
 | |
|            ;; Run-time dependency
 | |
|            qtgraphicaleffects))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "QtQuick components for mobile user interfaces")
 | |
|     (description "Kirigami is a set of high level QtQuick components looking
 | |
| and feeling well on both mobile and desktop devices.  They ease the creation
 | |
| of applications that follow the Kirigami Human Interface Guidelines.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kitemmodels
 | |
|   (package
 | |
|     (name "kitemmodels")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1z9swjmll833jxy2ym63zzgi9vl8ld79mgypndqszsrd4mfsbs16"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtdeclarative-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Set of item models extending the Qt model-view framework")
 | |
|     (description "KItemModels provides the following models:
 | |
| 
 | |
| @enumerate
 | |
| @item KBreadcrumbSelectionModel - Selects the parents of selected items to
 | |
| create breadcrumbs.
 | |
| 
 | |
| @item KCheckableProxyModel - Adds a checkable capability to a source model.
 | |
| 
 | |
| @item KConcatenateRowsProxyModel - Concatenates rows from multiple source models.
 | |
| 
 | |
| @item KDescendantsProxyModel - Proxy Model for restructuring a Tree into a list.
 | |
| 
 | |
| @item KExtraColumnsProxyModel - Adds columns after existing columns.
 | |
| 
 | |
| @item KLinkItemSelectionModel - Share a selection in multiple views which do
 | |
| not have the same source model.
 | |
| 
 | |
| @item KModelIndexProxyMapper - Mapping of indexes and selections through proxy
 | |
| models.
 | |
| 
 | |
| @item KRearrangeColumnsProxyModel - Can reorder and hide columns from the source
 | |
| model.
 | |
| 
 | |
| @item KRecursiveFilterProxyModel - Recursive filtering of models.
 | |
| 
 | |
| @item KSelectionProxyModel - A Proxy Model which presents a subset of its source
 | |
| model to observers
 | |
| @end enumerate")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kitemviews
 | |
|   (package
 | |
|     (name "kitemviews")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "176gqlinsvdgkbg7kr4qd97mnvcnbymrkcs9kg6hm75qzxcaj8dj"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Set of item views extending the Qt model-view framework")
 | |
|     (description "KItemViews includes a set of views, which can be used with
 | |
| item models.  It includes views for categorizing lists and to add search filters
 | |
| to flat and hierarchical lists.")
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kplotting
 | |
|   (package
 | |
|     (name "kplotting")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0hnzyl1x6acv1psdgsa9prpvnm12j71x6w6wbs1b0fl9bv5zw222"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Data plotting library")
 | |
|     (description "KPlotWidget is a QWidget-derived class that provides a virtual
 | |
| base class for easy data-plotting.  The idea behind KPlotWidget is that you only
 | |
| have to specify information in \"data units\", the natural units of the
 | |
| data being plotted.  KPlotWidget automatically converts everything to screen
 | |
| pixel units.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public ksyntaxhighlighting
 | |
|   (package
 | |
|     (name "ksyntaxhighlighting")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     "syntax-highlighting-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "092ilbhhs8xaqblc9w1xksapdzvqyazz8lj011wz4762p1nagiq2"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules perl qttools-5
 | |
|            ;; Optional, for compile-time validation of syntax definition files:
 | |
|            qtxmlpatterns))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'patch-source-shebangs 'unpatch-source-shebang
 | |
|            (lambda _
 | |
|              ;; revert the patch-shebang phase on scripts which are
 | |
|              ;; in fact test data
 | |
|              (substitute* '("autotests/input/highlight.sh"
 | |
|                             "autotests/folding/highlight.sh.fold")
 | |
|                (((which "sh")) " /bin/sh")) ;; space in front!
 | |
|              (substitute* '("autotests/input/highlight.pl"
 | |
|                             "autotests/folding/highlight.pl.fold")
 | |
|                (((which "perl")) "/usr/bin/perl")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Syntax highlighting engine for Kate syntax definitions")
 | |
|     (description "This is a stand-alone implementation of the Kate syntax
 | |
| highlighting engine.  It's meant as a building block for text editors as well
 | |
| as for simple highlighted text rendering (e.g. as HTML), supporting both
 | |
| integration with a custom editor as well as a ready-to-use
 | |
| @code{QSyntaxHighlighter} sub-class.")
 | |
|     (properties `((upstream-name . "syntax-highlighting")))
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public plasma-wayland-protocols
 | |
|   (package
 | |
|     (name "plasma-wayland-protocols")
 | |
|     (version "1.7.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append "mirror://kde/stable/" name "/"
 | |
|                                   name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1mps0pirffvnpnbcpi1l9fxxfx14n83f1p46zv3987d6ra2jckh8"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs (list extra-cmake-modules))
 | |
|     (arguments '(#:tests? #f))          ;no tests
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Plasma Wayland Protocols")
 | |
|     (description
 | |
|      "This package contains XML files describing non-standard Wayland
 | |
| protocols used in KDE Plasma.")
 | |
|     ;; The XML files have varying licenses, open them for details.
 | |
|     (license (list license:bsd-3
 | |
|                    license:lgpl2.1+
 | |
|                    license:expat))))
 | |
| 
 | |
| (define-public kwayland
 | |
|   (package
 | |
|     (name "kwayland")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (patches (search-patches "kwayland-skip-flaky-test.patch"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0c0953gm63xhrqb7aspvf28wi7x31mrgaid23dw5gqphkbgis5qw"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list libxkbcommon
 | |
|            plasma-wayland-protocols
 | |
|            qtbase-5
 | |
|            qtwayland-5
 | |
|            wayland
 | |
|            wayland-protocols))
 | |
|     (arguments
 | |
|      (list
 | |
|       ;; Tests spawn Wayland sessions that cannot run in parallel.
 | |
|       #:parallel-tests? #f
 | |
|       #:phases
 | |
|       #~(modify-phases %standard-phases
 | |
|           (add-before 'check 'set-XDG_RUNTIME_DIR
 | |
|             (lambda _
 | |
|               (setenv "XDG_RUNTIME_DIR" (getcwd)))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Qt-style API to interact with the wayland client and server")
 | |
|     (description "As the names suggest they implement a Client respectively a
 | |
| Server API for the Wayland protocol.  The API is Qt-styled removing the needs to
 | |
| interact with a for a Qt developer uncomfortable low-level C-API.  For example
 | |
| the callback mechanism from the Wayland API is replaced by signals, data types
 | |
| are adjusted to be what a Qt developer expects - two arguments of int are
 | |
| represented by a QPoint or a QSize.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kwidgetsaddons
 | |
|   (package
 | |
|     (name "kwidgetsaddons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "117wki4w2bs1d2pjhi5qpb2b3qhhva6fq9gikba5fb6980kmdayr"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5 xorg-server-for-tests))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")
 | |
|                (invoke "ctest" "-E" "(ksqueezedtextlabelautotest|\
 | |
| kwidgetsaddons-kcolumnresizertest)")))))))
 | |
|     (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
 | |
| menus, a wide range of widgets for selecting characters, fonts, colors, actions,
 | |
| dates and times, or MIME types, as well as platform-aware dialogs for
 | |
| configuration pages, message boxes, and password requests.")
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kwindowsystem
 | |
|   (package
 | |
|     (name "kwindowsystem")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "02l7xmxcilmrxpkkid4m9srl0d8ymqgwpw5j80w3g57p0rahwjl1"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules
 | |
|            pkg-config
 | |
|            dbus ; for the tests
 | |
|            openbox ; for the tests
 | |
|            qttools-5
 | |
|            xorg-server-for-tests)) ; for the tests
 | |
|     (inputs
 | |
|      (list libxrender
 | |
|            qtbase-5
 | |
|            qtx11extras
 | |
|            xcb-util-keysyms
 | |
|            xcb-util-wm))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              ;; The test suite requires a running window anager
 | |
|              (when tests?
 | |
|                (setenv "XDG_RUNTIME_DIR" "/tmp")
 | |
|                (system "Xvfb :1 -ac -screen 0 640x480x24 &")
 | |
|                (setenv "DISPLAY" ":1")
 | |
|                (sleep 5) ;; Give Xvfb a few moments to get on it's feet
 | |
|                (system "openbox &")
 | |
|                (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE access to the windowing system")
 | |
|     (description "KWindowSystem provides information about and allows
 | |
| interaction with the windowing system.  It provides a high level API, which
 | |
| is windowing system independent and has platform specific
 | |
| implementations.  This API is inspired by X11 and thus not all functionality
 | |
| is available on all windowing systems.
 | |
| 
 | |
| In addition to the high level API, this framework also provides several
 | |
| lower level classes for interaction with the X Windowing System.")
 | |
|     ;; Some source files mention lgpl2.0+, but the included license is
 | |
|     ;; the lgpl2.1. Some source files are under non-copyleft licenses.
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public modemmanager-qt
 | |
|   (package
 | |
|     (name "modemmanager-qt")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0gk4jy3r1451a2dajhnz6lin4lfawc4qdlxp7n7m43ca4d89h13k"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules dbus pkg-config))
 | |
|     (propagated-inputs
 | |
|      ;; Headers contain #include <ModemManager/ModemManager.h>
 | |
|      (list modem-manager))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Qt wrapper for ModemManager DBus API")
 | |
|     (description "ModemManagerQt provides access to all ModemManager features
 | |
| exposed on DBus.  It allows you to manage modem devices and access to
 | |
| information available for your modem devices, like signal, location and
 | |
| messages.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public networkmanager-qt
 | |
|   (package
 | |
|     (name "networkmanager-qt")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0s1h02v9k8nyl30mw7gayzvpb8bnzzp9crcfqpry7rf02rxv9idw"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules dbus pkg-config))
 | |
|     (propagated-inputs
 | |
|      ;; Headers contain #include <NetworkManager.h> and
 | |
|      ;;                 #include <libnm/NetworkManager.h>
 | |
|      (list network-manager))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Qt wrapper for NetworkManager DBus API")
 | |
|     (description "NetworkManagerQt provides access to all NetworkManager
 | |
| features exposed on DBus.  It allows you to manage your connections and control
 | |
| your network devices and also provides a library for parsing connection settings
 | |
| which are used in DBus communication.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public oxygen-icons
 | |
|   (package
 | |
|     (name "oxygen-icons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "5" "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "03wk52hqrgj0r73nb4yiq7rnmdn4rrqzrj3cdzbg3flkw5r7wbbq"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules fdupes))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Oxygen provides the standard icon theme for the KDE desktop")
 | |
|     (description "Oxygen icon theme for the KDE desktop")
 | |
|     (license license:lgpl3+)
 | |
|     (properties '((upstream-name . "oxygen-icons5")))))
 | |
| 
 | |
| (define-public prison
 | |
|   (package
 | |
|     (name "prison")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append "mirror://kde/stable/frameworks/"
 | |
|                            (version-major+minor version) "/"
 | |
|                            name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "1ppqm1f06q8fc1ncvzn9a133npmvlh1qxgvvbpwn6m0a8cr7ac6w"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list libdmtx qrencode qtbase-5)) ;; TODO: rethink: nix propagates this
 | |
|     (home-page "https://api.kde.org/frameworks/prison/html/index.html")
 | |
|     (synopsis "Barcode generation abstraction layer")
 | |
|     (description "Prison is a Qt-based barcode abstraction layer/library and
 | |
| provides uniform access to generation of barcodes with data.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public pulseaudio-qt
 | |
|   (package
 | |
|     (name "pulseaudio-qt")
 | |
|     (version "1.3")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append "mirror://kde/stable/pulseaudio-qt"
 | |
|                                   "/pulseaudio-qt-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1i4yb0v1mmhih8c2i61hybg6q60qys3pc5wbjb7a0vwl1mihgsxw"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list glib pulseaudio qtdeclarative-5 qtbase-5))
 | |
|     (home-page "https://invent.kde.org/libraries/pulseaudio-qt/")
 | |
|     (synopsis "Qt bindings for PulseAudio")
 | |
|     (description
 | |
|      "pulseaudio-qt is a Qt-style wrapper for libpulse.  It allows querying
 | |
| and manipulation of various PulseAudio objects such as @code{Sinks},
 | |
| @code{Sources} and @code{Streams}.  It does not wrap the full feature set of
 | |
| libpulse.")
 | |
|     ;; User can choose between LGPL version 2.1 or 3.0; or
 | |
|     ;; "any later version accepted by the membership of KDE e.V".
 | |
|     (license (list license:lgpl2.1 license:lgpl3))))
 | |
| 
 | |
| (define-public qqc2-desktop-style
 | |
|   (package
 | |
|     (name "qqc2-desktop-style")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1af7izd4k220dzngf1nwgcw0bi7vl772lpjrqd9fp9rijh74dx7d"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kconfigwidgets ; optional
 | |
|            kcoreaddons
 | |
|            kiconthemes ; optional
 | |
|            kirigami
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            qtquickcontrols2-5
 | |
|            qtx11extras ; optional
 | |
|            sonnet)) ; optional
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "QtQuickControls2 style that integrates with the desktop")
 | |
|     (description "This is a style for QtQuickControls2 which is using
 | |
| QWidget's QStyle to paint the controls in order to give it a native look and
 | |
| feel.")
 | |
|     ;; Mostly LGPL 2+, but many files are dual-licensed
 | |
|     (license (list license:lgpl2.1+ license:gpl3+))))
 | |
| 
 | |
| (define-public solid
 | |
|   (package
 | |
|     (name "solid")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "14bf2k40skhyhrmgyyscg7psm1a8klf4z696pimlwjjhnawjfr06"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (native-inputs
 | |
|      (list bison dbus extra-cmake-modules flex qttools-5))
 | |
|     (inputs
 | |
|      (list qtbase-5 qtdeclarative-5 eudev))
 | |
|     ;; TODO: Add runtime-only dependency MediaPlayerInfo
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Desktop hardware abstraction")
 | |
|     (description "Solid is a device integration framework.  It provides a way of
 | |
| querying and interacting with hardware independently of the underlying operating
 | |
| system.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public sonnet
 | |
|   (package
 | |
|     (name "sonnet")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0j4p91xx1scg3jmvq6km7bwfjz5ihafk76yf1byb6aqyw50h3bm3"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config qttools-5))
 | |
|     (inputs
 | |
|      (list hunspell
 | |
|            ;; TODO: hspell (for Hebrew), Voikko (for Finish)
 | |
|            qtdeclarative-5
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Multi-language spell checker")
 | |
|     (description "Sonnet is a plugin-based spell checking library for Qt-based
 | |
| applications.  It supports several different plugins, including HSpell, Enchant,
 | |
| ASpell and HUNSPELL.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public threadweaver
 | |
|   (package
 | |
|     (name "threadweaver")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1pwinpz5kscx64kc7dn4qf76m64kxzp92zjk8j2a2s1mx0s0vk2s"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Helper for multithreaded programming")
 | |
|     (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 kactivities
 | |
|   (package
 | |
|     (name "kactivities")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0n7r88y1b8mph5al2xh8fbw5ckdzdmdzjipf205y20ib35bskd9i"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list boost
 | |
|            kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kio
 | |
|            kitemviews
 | |
|            kjobwidgets
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            kxmlgui
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            solid))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Core components for the KDE Activity concept")
 | |
|     (description "KActivities provides the infrastructure needed to manage a
 | |
| user's activities, allowing them to switch between tasks, and for applications
 | |
| to update their state to match the user's current activity.  This includes a
 | |
| daemon, a library for interacting with that daemon, and plugins for integration
 | |
| with other frameworks.")
 | |
|     ;; triple licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kauth
 | |
|   (package
 | |
|     (name "kauth")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0nzdvx2mibpq1cgzpll9ffjr46vch1qvriaywyqih0iybx6mx5z6"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list dbus extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kcoreaddons polkit-qt qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'fix-cmake-install-directories
 | |
|            (lambda _
 | |
|              ;; Make packages using kauth put their policy files and helpers
 | |
|              ;; into their own prefix.
 | |
|              (substitute* "KF5AuthConfig.cmake.in"
 | |
|                (("@KAUTH_POLICY_FILES_INSTALL_DIR@")
 | |
|                 "${KDE_INSTALL_DATADIR}/polkit-1/actions")
 | |
|                (("@KAUTH_HELPER_INSTALL_DIR@")
 | |
|                 "${KDE_INSTALL_LIBEXECDIR}")
 | |
|                (("@KAUTH_HELPER_INSTALL_ABSOLUTE_DIR@")
 | |
|                 "${KDE_INSTALL_LIBEXECDIR}"))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "191vid00zskvhl6dgj6yz9iyvwdcmg35l5gq68ggjr17cj59acsf"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kconfig kwidgetsaddons qtbase-5))
 | |
|     (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 kcontacts
 | |
|   (package
 | |
|     (name "kcontacts")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (patches
 | |
|                (search-patches "kcontacts-incorrect-country-name.patch"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0g3lg1i9rg7hjw7xjx9228sy54dy35lgwghcjds5cawszl5yi106"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules xorg-server)) ; for the tests
 | |
|     (inputs
 | |
|      (list qtbase-5))
 | |
|     (propagated-inputs
 | |
|      (list ;; As required by KF5ContactsConfig.cmake.
 | |
|           iso-codes kcodecs kconfig kcoreaddons qtdeclarative-5 ki18n))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #: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"
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (system "Xvfb :1 -screen 0 640x480x24 &")
 | |
|                (setenv "DISPLAY" ":1")
 | |
|                (invoke "ctest" "-E"
 | |
|                 "(kcontacts-birthdaytest|kcontacts-testroundtrip|kcontacts-addresstest)")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "API for contacts/address book data following the vCard standard")
 | |
|     (description "This library provides a vCard data model, vCard
 | |
| input/output, contact group management, locale-aware address formatting, and
 | |
| localized country name to ISO 3166-1 alpha 2 code mapping and vice verca.
 | |
| ")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kcrash
 | |
|   (package
 | |
|     (name "kcrash")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "03ba3x9jgp15dxgwbjnv5s98f5di2z4ncp4hiv1qkyiibqqfx6kf"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kcoreaddons kwindowsystem qtbase-5 qtx11extras))
 | |
|     (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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0ygpjasdynsmb3c8rdwnc5jminl5f34cmqnihsig831xsq8z6chs"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list docbook-xml
 | |
|            docbook-xsl
 | |
|            karchive
 | |
|            ki18n
 | |
|            libxml2
 | |
|            libxslt
 | |
|            perl
 | |
|            perl-uri
 | |
|            qtbase-5))
 | |
|     (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")))))
 | |
|          (add-after 'install 'add-symlinks
 | |
|            ;; Some package(s) (e.g. kdelibs4support) refer to this locale by a
 | |
|            ;; different spelling.
 | |
|            (lambda* (#:key outputs #:allow-other-keys)
 | |
|              (let ((xsl (string-append (assoc-ref outputs "out")
 | |
|                                        "/share/kf5/kdoctools/customization/xsl/")))
 | |
|                (symlink (string-append xsl "pt_br.xml")
 | |
|                         (string-append xsl "pt-BR.xml"))))))))
 | |
|     (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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1nsvslhs2kiff3r5ji8z931lh6srvjzzvwnv9cs0j74sr46c6rkn"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                ;; FIXME: Test can't find audio/x-speex mimeinfo
 | |
|                ;; (but it can find audio/x-speex+ogg).
 | |
|                (invoke "ctest" "-E"
 | |
| 			   "(usermetadatawritertest|embeddedimagedatatest|taglibextractortest)")))))))
 | |
|     (native-inputs (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list attr
 | |
|            ebook-tools
 | |
|            karchive
 | |
|            kconfig
 | |
|            kcoreaddons
 | |
|            kdegraphics-mobipocket
 | |
|            ki18n
 | |
|            qtmultimedia-5
 | |
|            qtbase-5
 | |
|            ;; Required run-time packages
 | |
|            catdoc
 | |
|            ;; Optional run-time packages
 | |
|            exiv2
 | |
|            ffmpeg
 | |
|            poppler-qt5
 | |
|            taglib))
 | |
|     (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 retrieve 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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0v4jr1lh2qjk453q8mpz94cd98k4kmjrykn8kxrd7zvrkaa4snfy"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list karchive ; for Krita and OpenRaster images
 | |
|            openexr-2 ; for OpenEXR high dynamic-range images
 | |
|            qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          ;; This test fails regularly (also at KDE CI, see
 | |
|          ;; https://build.kde.org/job/Frameworks%20kimageformats%20kf5-qt5%20XenialQt5.7/6/testReport/)
 | |
|          ;; delete offending portion
 | |
|          (add-after 'unpack 'neuter-read-xcf-test
 | |
|            (lambda _
 | |
|              (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.png")
 | |
|              (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.xcf")))
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              ;; make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|              (setenv "QT_PLUGIN_PATH"
 | |
|                      (string-append (getcwd) "/bin:"
 | |
|                                     (getenv "QT_PLUGIN_PATH"))))))
 | |
|        ;; FIXME: The header files of ilmbase (propagated by openexr) are not
 | |
|        ;; found when included by the header files of openexr, and an explicit
 | |
|        ;; flag needs to be set.
 | |
|        #:configure-flags
 | |
|        (list (string-append "-DCMAKE_CXX_FLAGS=-I"
 | |
|                             (assoc-ref %build-inputs "ilmbase")
 | |
|                             "/include/OpenEXR"))))
 | |
|     (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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0f87n5d3h2f9y1z2imfd0jj9108wbcxg7dg4k1c53zar2lrfx4wc"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kcoreaddons kwidgetsaddons qtbase-5 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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "10whr3wjldaxdvbj6i250rqgsy2m1n606ja1yka571f1fz7laqcd"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules dbus pkg-config qttools-5))
 | |
|     (inputs
 | |
|      (list kcodecs
 | |
|            kconfig
 | |
|            kcoreaddons
 | |
|            kwindowsystem
 | |
|            libcanberra
 | |
|            libdbusmenu-qt
 | |
|            phonon
 | |
|            qtdeclarative-5
 | |
|            qtbase-5
 | |
|            qtspeech
 | |
|            qtx11extras))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1234jq9qqhq2z5afkkniz6w5s1ab9r4x9wamq3c9y08nzjq634py"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list karchive
 | |
|            kconfig
 | |
|            kcoreaddons
 | |
|            kdoctools
 | |
|            ki18n
 | |
|            qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'patch
 | |
|            (lambda _
 | |
|              (substitute* "src/kpackage/package.cpp"
 | |
|                (("externalPaths.false.") "externalPaths(true)"))
 | |
|              ;; Make QDirIterator follow symlinks
 | |
|              (substitute* '("src/kpackage/packageloader.cpp")
 | |
|                (("^\\s*(const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories)(;)" _ a b)
 | |
|                 (string-append a " | QDirIterator::FollowSymlinks" b))
 | |
|                (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b)
 | |
|                 (string-append a " | QDirIterator::FollowSymlinks" b)))))
 | |
|          (add-after 'unpack 'patch-tests
 | |
|            (lambda _
 | |
|              ;; /bin/ls doesn't exist in the build-container use /etc/passwd
 | |
|              (substitute* "autotests/packagestructuretest.cpp"
 | |
|                (("(addDirectoryDefinition\\(\")bin(\".*\")bin(\".*\")bin\""
 | |
|                  _ a b c)
 | |
|                 (string-append a "etc" b "etc" c "etc\""))
 | |
|                (("filePath\\(\"bin\", QStringLiteral\\(\"ls\"))")
 | |
|                 "filePath(\"etc\", QStringLiteral(\"passwd\"))")
 | |
|                (("\"/bin/ls\"") "\"/etc/passwd\""))))
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0arxbdxldwnrcg5x1vpvkwdd4hayrpqvn08jz6r7zb4s9h1582ww"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kcoreaddons ki18n
 | |
|            ;; TODO: utempter, for managing UTMP entries
 | |
|            qtbase-5))
 | |
|     (arguments
 | |
|      `(#:tests? #f ; FIXME: 1/1 tests fail.
 | |
|        #:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'patch-tests
 | |
|            (lambda _
 | |
|              (substitute* "autotests/kptyprocesstest.cpp"
 | |
|                (("/bin/bash") (which "bash"))))))))
 | |
|     (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.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0lhyg1d1k25kqk94lzy8mb06p4c17limmcrzirnsnxjvhjrc6r05"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments `(#:tests? #f)) ;; Requires network.
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list ki18n qtbase-5))
 | |
|     (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+)))
 | |
| 
 | |
| (define-public syndication
 | |
|   (package
 | |
|     (name "syndication")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "04py880hxkvidydsqcyjbkq0wv9cp42d7svkdgf74fmzfyfrmrax"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kcodecs qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "RSS/Atom parser library")
 | |
|     (description "@code{syndication} supports RSS (0.9/1.0, 0.91..2.0) and
 | |
| Atom (0.3 and 1.0) feeds.  The library offers a unified, format-agnostic view
 | |
| on the parsed feed, so that the using application does not need to distinguish
 | |
| between feed formats.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| 
 | |
| ;; Tier 3
 | |
| ;;
 | |
| ;; Tier 3 frameworks are generally more powerful, comprehensive packages, and
 | |
| ;; consequently have more complex dependencies.
 | |
| 
 | |
| (define-public baloo
 | |
|   (package
 | |
|     (name "baloo")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0x515lnvrzlnsv5i924q17mzi88k00krj90myad17s0g7p5pi1rw"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kcoreaddons kfilemetadata))
 | |
|     (native-inputs
 | |
|      (list dbus extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kbookmarks
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kcrash
 | |
|            kdbusaddons
 | |
|            kidletime
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            lmdb
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            solid))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'remove-failing-test
 | |
|            (lambda _
 | |
|              ;; FIXME: kinotifytest broke in 5.70.0 with commit 73183acf00 and
 | |
|              ;; seems like an oversight.  Reverting the commit makes it pass,
 | |
|              ;; but causes other problems.  Since just the test file names are
 | |
|              ;; broken, disabling it should be safe.  Try enabling for > 5.70.0.
 | |
|              (substitute* "autotests/unit/file/CMakeLists.txt"
 | |
|                ;; The test only runs on GNU/Linux, piggy-back on the check.
 | |
|                (("CMAKE_SYSTEM_NAME MATCHES \"Linux\"" all)
 | |
|                 (string-append all " AND NOT TRUE")))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "File searching and indexing")
 | |
|     (description "Baloo provides file searching and indexing.  It does so by
 | |
| maintaining an index of the contents of your files.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kactivities-stats
 | |
|   (package
 | |
|     (name "kactivities-stats")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0zvw3km1wf91wl9xbjvawjia0847kbs3js4nbf3d0z87l5h6rbx8"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list boost kactivities kconfig qtbase-5 qtdeclarative-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Access usage statistics collected by the activity manager")
 | |
|     (description "The KActivitiesStats library provides a querying mechanism for
 | |
| the data that the activity manager collects---which documents have been opened
 | |
| by which applications, and what documents have been linked to which activity.")
 | |
|     ;; triple licensed
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+ license:lgpl3+))))
 | |
| 
 | |
| (define-public kbookmarks
 | |
|   (package
 | |
|     (name "kbookmarks")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1rpjqz2xnpb2wp2k3pjdclbkb0p96y48x6h8l056nr93alxyrqvi"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kwidgetsaddons))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kcodecs
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kiconthemes
 | |
|            kxmlgui
 | |
|            qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (setenv "HOME" (getcwd))
 | |
|              ;; make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Bookmarks management library")
 | |
|     (description "KBookmarks lets you access and manipulate bookmarks stored
 | |
| using the XBEL format.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kcmutils
 | |
|   (package
 | |
|     (name "kcmutils")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0jqkg4i16jnxricrhi1cbvv7gjjj7ry3z36mzh11h48ml7rl05qx"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kconfigwidgets kservice))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'patch
 | |
|            (lambda _
 | |
|              (substitute* "src/kpluginselector.cpp"
 | |
|                ;; make QDirIterator follow symlinks
 | |
|                (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b)
 | |
|                 (string-append a " | QDirIterator::FollowSymlinks" b)))
 | |
|              (substitute* "src/kcmoduleloader.cpp"
 | |
|                ;; print plugin name when loading fails
 | |
|                (("^\\s*(qWarning\\(\\) << \"Error loading) (plugin:\")( << loader\\.errorString\\(\\);)" _ a b c)
 | |
|                 (string-append a " KCM plugin\" << mod.service()->library() << \":\"" c)))))
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kcodecs
 | |
|            kconfig
 | |
|            kcoreaddons
 | |
|            kdeclarative
 | |
|            kguiaddons
 | |
|            kiconthemes
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kpackage
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            qtbase-5
 | |
|            qtdeclarative-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Utilities for KDE System Settings modules")
 | |
|     (description "KCMUtils provides various classes to work with KCModules.
 | |
| KCModules can be created with the KConfigWidgets framework.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kconfigwidgets
 | |
|   (package
 | |
|     (name "kconfigwidgets")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "05bwldqc5k6dlzsxjby5565sch6i0mh7jg5cbyjz24xb1fpj0d7b"))))
 | |
|     (build-system qt-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kauth kcodecs kconfig kwidgetsaddons))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools qttools-5))
 | |
|     (inputs
 | |
|      (list kcoreaddons
 | |
|            kguiaddons
 | |
|            ki18n
 | |
|            ;; todo: PythonModuleGeneration
 | |
|            qtbase-5
 | |
|            qttools-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'patch
 | |
|            (lambda _
 | |
|              (substitute* "src/khelpclient.cpp"
 | |
|                ;; make QDirIterator follow symlinks
 | |
|                (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b)
 | |
|                 (string-append a " | QDirIterator::FollowSymlinks" b)))
 | |
|              (substitute* "CMakeLists.txt"
 | |
|                (("5\\.90\\.0") "5.98.0"))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (invoke "ctest" "-E" "kstandardactiontest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Widgets for configuration dialogs")
 | |
|     (description "KConfigWidgets provides easy-to-use classes to create
 | |
| configuration dialogs, as well as a set of widgets which uses KConfig to store
 | |
| their settings.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kdeclarative
 | |
|   (package
 | |
|     (name "kdeclarative")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0y5scmcnzhwvyb7x6fdb59xgdhghw8v9i3r05gx1x7g1gfsw0wh6"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kconfig kpackage qtdeclarative-5))
 | |
|     (native-inputs
 | |
|      (list dbus extra-cmake-modules pkg-config xorg-server-for-tests))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kcoreaddons
 | |
|            kglobalaccel
 | |
|            kguiaddons
 | |
|            kiconthemes
 | |
|            kio
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            knotifications
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            libepoxy
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            solid))
 | |
|     (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, setting
 | |
|              ;; QT_QPA_PLATFORM=offscreen does not suffice.
 | |
|              (system "Xvfb :1 -screen 0 640x480x24 &")
 | |
|              (setenv "DISPLAY" ":1")))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "XDG_RUNTIME_DIR" (getcwd))
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                (invoke "dbus-launch" "ctest"
 | |
|                        "-E" ; FIXME: test fails.
 | |
|                        "fullmodelaccesstest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Integration of QML and KDE work spaces")
 | |
|     (description "KDeclarative provides integration of QML and KDE work spaces.
 | |
| It's comprises two parts: a library used by the C++ part of your application to
 | |
| intergrate QML with KDE Frameworks specific features, and a series of QML imports
 | |
| that offer bindings to some of the Frameworks.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kded
 | |
|   (package
 | |
|     (name "kded")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1k8yxdnihfvvdjmw7lmd62vi5k1hpvjdcwd7njqxz6178iq7dd75"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools))
 | |
|     (inputs
 | |
|      (list kconfig
 | |
|            kcoreaddons
 | |
|            kcrash
 | |
|            kdbusaddons
 | |
|            kdoctools
 | |
|            kservice
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Central daemon of KDE work spaces")
 | |
|     (description "KDED stands for KDE Daemon.  KDED runs in the background and
 | |
| performs a number of small tasks.  Some of these tasks are built in, others are
 | |
| started on demand.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kdesignerplugin
 | |
|   (package
 | |
|     (name "kdesignerplugin")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/portingAids/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "17b0javl6k5zcmx04aqzmh3qdgwvzhf62x603m4pg6xbl3zns67g"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools qttools-5))
 | |
|     (inputs
 | |
|      (list kconfig
 | |
|            kcoreaddons
 | |
|            kdoctools
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Integrating KDE frameworks widgets with Qt Designer")
 | |
|     (description "This framework provides plugins for Qt Designer that allow it
 | |
| to display the widgets provided by various KDE frameworks, as well as a utility
 | |
| (kgendesignerplugin) that can be used to generate other such plugins from
 | |
| ini-style description files.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kdesu
 | |
|   (package
 | |
|     (name "kdesu")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "15fbb7zifk4lhnlwvqhs9svzb80qwms03zbrjfnsc1n1wyyfk7v2"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kpty))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kconfig kcoreaddons ki18n kservice qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "User interface for running shell commands with root privileges")
 | |
|     (description "KDESU provides functionality for building GUI front ends for
 | |
| (password asking) console mode programs.  kdesu and kdessh use it to interface
 | |
| with su and ssh respectively.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kemoticons
 | |
|   (package
 | |
|     (name "kemoticons")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0f3d0jmpnqkrjn95sbvjzda923rfdgrlxd4k58pmzd0bblxkcxh2"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kservice))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list karchive kconfig kcoreaddons qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (setenv "HOME" (getcwd))
 | |
|              ;; make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Convert text emoticons to graphical emoticons")
 | |
|     (description "KEmoticons converts emoticons from text to a graphical
 | |
| representation with images in HTML.  It supports setting different themes for
 | |
| emoticons coming from different providers.")
 | |
|     ;; dual licensed, image files are licensed under cc-by-sa4.0
 | |
|     (license (list license:gpl2+ license:lgpl2.1+ license:cc-by-sa4.0))))
 | |
| 
 | |
| (define-public kglobalaccel
 | |
|   (package
 | |
|     (name "kglobalaccel")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1vr6k7lpxsxa6in60ld2wcdqfpaan5xgbmwm3xyr584x6pv737cl"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config qttools-5))
 | |
|     (inputs
 | |
|      (list kconfig
 | |
|            kcrash
 | |
|            kcoreaddons
 | |
|            kdbusaddons
 | |
|            kwindowsystem
 | |
|            qtbase-5
 | |
|            qtx11extras
 | |
|            qtdeclarative-5
 | |
|            xcb-util-keysyms))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Global desktop keyboard shortcuts")
 | |
|     (description "KGlobalAccel allows you to have global accelerators that are
 | |
| independent of the focused window.  Unlike regular shortcuts, the application's
 | |
| window does not need focus for them to be activated.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kiconthemes
 | |
|   (package
 | |
|     (name "kiconthemes")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1qmld8xgabmwx2dh5395pll0a0jgirxhlbqv6aph76jg4lvynkqx"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5 shared-mime-info))
 | |
|     (inputs
 | |
|      (list karchive
 | |
|            kauth
 | |
|            kcodecs
 | |
|            kcoreaddons
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            ki18n
 | |
|            kitemviews
 | |
|            kwidgetsaddons
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            qtsvg-5))
 | |
|     (arguments
 | |
|      (list #:phases
 | |
|            #~(modify-phases %standard-phases
 | |
|                (add-before 'check 'check-setup
 | |
|                  (lambda* (#:key inputs #:allow-other-keys)
 | |
|                    (setenv "XDG_DATA_DIRS"
 | |
|                            (string-append #$(this-package-native-input
 | |
|                                              "shared-mime-info")
 | |
|                                           "/share"))
 | |
|                    (setenv "HOME" (getcwd))
 | |
|                    ;; make Qt render "offscreen", required for tests
 | |
|                    (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Icon GUI utilities")
 | |
|     (description "This library contains classes to improve the handling of icons
 | |
| in applications using the KDE Frameworks.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kinit
 | |
|   (package
 | |
|     (name "kinit")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "04654hz3yipnlhy5gz3bkh988fcfl1lv7608k4xa5qnbsxaqh141"))
 | |
|               ;; Use the store paths for other packages and dynamically loaded
 | |
|               ;; libs
 | |
|               (patches (search-patches "kinit-kdeinit-extra_libs.patch"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      (list
 | |
|       #:phases
 | |
|       #~(modify-phases %standard-phases
 | |
|           (add-after 'unpack 'patch-paths
 | |
|             (lambda* (#:key inputs outputs #:allow-other-keys)
 | |
|               ;; Set patched-in values:
 | |
|               (substitute* "src/kdeinit/kinit.cpp"
 | |
|                 (("GUIX_PKGS_KF5_KIO") #$(this-package-input "kio"))
 | |
|                 (("GUIX_PKGS_KF5_PARTS") #$(this-package-input "kparts"))
 | |
|                 (("GUIX_PKGS_KF5_PLASMA")
 | |
|                  #$(this-package-input "plasma-framework"))))))))
 | |
|     (native-search-paths
 | |
|      (list (search-path-specification
 | |
|             (variable "KDEINIT5_LIBRARY_PATH")
 | |
|             (files '("lib/")))))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kcrash
 | |
|            kdbusaddons
 | |
|            kdoctools
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kparts
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            kxmlgui
 | |
|            libcap ; to install start_kdeinit with CAP_SYS_RESOURCE
 | |
|            plasma-framework
 | |
|            qtbase-5
 | |
|            solid))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Library to speed up start of applications on KDE workspaces")
 | |
|     (description "Kdeinit is a process launcher similar to init used for booting
 | |
| UNIX.  It launches processes by forking and then loading a dynamic library which
 | |
| contains a @code{kdemain(@dots{})} function.  Using kdeinit to launch KDE
 | |
| applications makes starting KDE applications faster and reduces memory
 | |
| consumption.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kio
 | |
|   (package
 | |
|     (name "kio")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0z1ikpa3an3qmd26h2v48kxxw1jph21i12x4nawvc4x1dp4vkm1d"))
 | |
|               (patches (search-patches "kio-search-smbd-on-PATH.patch"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list acl
 | |
|            kbookmarks
 | |
|            kconfig
 | |
|            kcompletion
 | |
|            kcoreaddons
 | |
|            kitemviews
 | |
|            kjobwidgets
 | |
|            kservice
 | |
|            kwindowsystem
 | |
|            kxmlgui
 | |
|            solid))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules dbus kdoctools qttools-5))
 | |
|     (inputs (list mit-krb5
 | |
|                   karchive
 | |
|                   kauth
 | |
|                   kcodecs
 | |
|                   kconfigwidgets
 | |
|                   kcrash
 | |
|                   kdbusaddons
 | |
|                   kded
 | |
|                   kguiaddons
 | |
|                   kiconthemes
 | |
|                   ki18n
 | |
|                   knotifications
 | |
|                   ktextwidgets
 | |
|                   kwallet
 | |
|                   kwidgetsaddons
 | |
|                   libxml2
 | |
|                   libxslt
 | |
|                   qtbase-5
 | |
|                   qtdeclarative-5
 | |
|                   qtscript
 | |
|                   qtx11extras
 | |
|                   sonnet
 | |
|                   `(,util-linux "lib")  ; libmount
 | |
|                   zlib))
 | |
|     (arguments
 | |
|      (list
 | |
|       #:phases
 | |
|       #~(modify-phases %standard-phases
 | |
|           (add-after 'unpack 'patch
 | |
|             (lambda _
 | |
|               ;; Better error message (taken from NixOS)
 | |
|               (substitute* "src/kiod/kiod_main.cpp"
 | |
|                 (("(^\\s*qCWarning(KIOD_CATEGORY) << \
 | |
| \"Error loading plugin:\")( << loader.errorString();)" _ a b)
 | |
|                  (string-append a "<< name" b)))))
 | |
|           (replace 'check
 | |
|             (lambda* (#:key tests? #:allow-other-keys)
 | |
|               (when tests?
 | |
|                 (setenv "HOME" (getcwd))
 | |
|                 (setenv "XDG_RUNTIME_DIR" (getcwd))
 | |
|                 (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                 (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|                 (invoke "dbus-launch" "ctest"
 | |
|                         "-E"
 | |
|                         ;; The following tests fail or are flaky (see:
 | |
|                         ;; https://bugs.kde.org/show_bug.cgi?id=440721).
 | |
|                         (string-append "(kiocore-jobtest"
 | |
|                                        "|kiocore-kmountpointtest"
 | |
|                                        "|kiowidgets-kdirlistertest"
 | |
|                                        "|kiocore-kfileitemtest"
 | |
|                                        "|kiocore-ktcpsockettest"
 | |
|                                        "|kiocore-mimetypefinderjobtest"
 | |
|                                        "|kiocore-krecentdocumenttest"
 | |
|                                        "|kiocore-http_jobtest"
 | |
|                                        "|kiogui-openurljobtest"
 | |
|                                        "|applicationlauncherjob_forkingtest"
 | |
|                                        "|applicationlauncherjob_scopetest"
 | |
|                                        "|applicationlauncherjob_servicetest"
 | |
|                                        "|commandlauncherjob_forkingtest"
 | |
|                                        "|commandlauncherjob_scopetest"
 | |
|                                        "|commandlauncherjob_servicetest"
 | |
|                                        "|kiowidgets-kdirmodeltest"
 | |
|                                        "|kiowidgets-kurifiltertest-colon-separator"
 | |
|                                        "|kiowidgets-kurifiltertest-space-separator)")))))
 | |
|           (add-after 'install 'add-symlinks
 | |
|             ;; Some package(s) (e.g. bluedevil) refer to these service types by
 | |
|             ;; the wrong name.  I would prefer to patch those packages, but I
 | |
|             ;; cannot find the files!
 | |
|             (lambda* (#:key outputs #:allow-other-keys)
 | |
|               (let ((kst5 (string-append #$output "/share/kservicetypes5/")))
 | |
|                 (symlink (string-append kst5 "kfileitemactionplugin.desktop")
 | |
|                          (string-append kst5 "kfileitemaction-plugin.desktop"))))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Network transparent access to files and data")
 | |
|     (description "This framework implements a lot of file management functions.
 | |
| It supports accessing files locally as well as via HTTP and FTP out of the box
 | |
| and can be extended by plugins to support other protocols as well.  There is a
 | |
| variety of plugins available, e.g. to support access via SSH.  The framework can
 | |
| also be used to bridge a native protocol to a file-based interface.  This makes
 | |
| the data accessible in all applications using the KDE file dialog or any other
 | |
| KIO enabled infrastructure.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public knewstuff
 | |
|   (package
 | |
|     (name "knewstuff")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "09mxzpv0l1i5ml963gdnji8rskmi8b2f0hp4rn6ibkcj00z48fgy"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list attica kservice kxmlgui))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list karchive
 | |
|            kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kiconthemes
 | |
|            kjobwidgets
 | |
|            kpackage
 | |
|            ktextwidgets
 | |
|            kwidgetsaddons
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            solid
 | |
|            sonnet))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _ ; XDG_DATA_DIRS isn't set
 | |
|              (setenv "HOME" (getcwd))
 | |
|              ;; make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Framework for downloading and sharing additional application data")
 | |
|     (description "The KNewStuff library implements collaborative data sharing
 | |
| for applications.  It uses libattica to support the Open Collaboration Services
 | |
| specification.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public knotifyconfig
 | |
|   (package
 | |
|     (name "knotifyconfig")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1qlmgr5rifygp8zk8qfjwm6k72kfyj8x6hvqwy2a59lfi3wgbm07"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            knotifications
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            phonon
 | |
|            qtbase-5
 | |
|            solid))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Configuration dialog for desktop notifications")
 | |
|     (description "KNotifyConfig provides a configuration dialog for desktop
 | |
| notifications which can be embedded in your application.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kparts
 | |
|   (package
 | |
|     (name "kparts")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "01gcnywbzrgwlk4cws2rr139r95r201yfal1af3jkd7g2x499vgr"))))
 | |
|     (build-system qt-build-system)
 | |
|     (arguments
 | |
|      '(#:phases (modify-phases %standard-phases
 | |
|                   (add-after 'unpack 'disable-partloader-test
 | |
|                     (lambda _
 | |
|                       (substitute* "autotests/CMakeLists.txt"
 | |
|                         ;; XXX: PartLoaderTest wants to create a .desktop file
 | |
|                         ;; in the common locations and test that MIME types work.
 | |
|                         ;; The setup required for this is extensive, skip for now.
 | |
|                         (("partloadertest\\.cpp") "")))))))
 | |
|     (propagated-inputs
 | |
|      (list kio ktextwidgets kxmlgui))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules shared-mime-info))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kiconthemes
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            qtbase-5
 | |
|            solid
 | |
|            sonnet))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Plugin framework for user interface components")
 | |
|     (description "This library implements the framework for KDE parts, which are
 | |
| widgets with a user-interface defined in terms of actions.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kpeople
 | |
|   (package
 | |
|     (name "kpeople")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0wxy8pxkbfqbb4i9v3q912shzck56bk6xra3blhwva82qm9rps0f"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kconfig
 | |
|            kcoreaddons
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            qtbase-5
 | |
|            qtdeclarative-5))
 | |
|     (arguments
 | |
|      `(#:tests? #f)) ; FIXME: 1/3 tests fail.
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Provides access to all contacts and aggregates them by person")
 | |
|     (description "KPeople offers unified access to our contacts from different
 | |
| sources, grouping them by person while still exposing all the data.  KPeople
 | |
| also provides facilities to integrate the data provided in user interfaces by
 | |
| providing QML and Qt Widgets components.  The sources are plugin-based, allowing
 | |
| to easily extend the contacts collection.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public krunner
 | |
|   (package
 | |
|     (name "krunner")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0kch839xw09h1lddqgdcfwniq6rza5wdyyzcx99hcasn7l60nhsj"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list plasma-framework))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules
 | |
|            ;; For tests.
 | |
|            dbus))
 | |
|     (inputs
 | |
|      (list kactivities
 | |
|            kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kpackage
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            kxmlgui
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            solid
 | |
|            threadweaver))
 | |
|     (arguments
 | |
|      (list
 | |
|       #:phases
 | |
|       #~(modify-phases %standard-phases
 | |
|           (add-after 'unpack 'fix-paths-for-test
 | |
|             ;; This test tries to access paths like /home, /usr/bin and /bin/ls
 | |
|             ;; which don't exist in the build-container. Change to existing paths.
 | |
|             (lambda* (#:key inputs #:allow-other-keys)
 | |
|               (substitute* "autotests/runnercontexttest.cpp"
 | |
|                 (("/home\"") "/tmp\"") ;; single path-part
 | |
|                 (("//usr/bin\"") (string-append (getcwd) "\"")) ;; multiple path-parts
 | |
|                 (("/bin/ls")
 | |
|                  (search-input-file inputs "/bin/ls")))))
 | |
|           (replace 'check
 | |
|             (lambda* (#:key tests? #:allow-other-keys)
 | |
|               (when tests?
 | |
|                 (setenv "HOME" (getcwd))
 | |
|                 (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                 (invoke "dbus-launch" "ctest")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Framework for Plasma runners")
 | |
|     (description "The Plasma workspace provides an application called KRunner
 | |
| which, among other things, allows one to type into a text area which causes
 | |
| various actions and information that match the text appear as the text is being
 | |
| typed.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kservice
 | |
|   (package
 | |
|     (name "kservice")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0lgwpcdkkbxwq84zp5aymrdwy0iacqxz5ckc89pymcm0bacyhl31"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kconfig kcoreaddons kdoctools))
 | |
|     (native-inputs
 | |
|      (list bison extra-cmake-modules flex shared-mime-info))
 | |
|     (inputs
 | |
|      (list kcrash kdbusaddons kdoctools ki18n qtbase-5))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'patch
 | |
|            ;; Adopted from NixOS' patches "qdiriterator-follow-symlinks" and
 | |
|            ;; "no-canonicalize-path".
 | |
|            (lambda _
 | |
|              (substitute* "src/sycoca/kbuildsycoca.cpp"
 | |
|                ;; make QDirIterator follow symlinks
 | |
|                (("^\\s*(QDirIterator it\\(.*, QDirIterator::Subdirectories)(\\);)" _ a b)
 | |
|                 (string-append a " | QDirIterator::FollowSymlinks" b)))
 | |
|              (substitute* "src/sycoca/vfolder_menu.cpp"
 | |
|                ;; Normalize path, but don't resolve symlinks (taken from
 | |
|                ;; NixOS)
 | |
|                (("^\\s*QString resolved = QDir\\(dir\\)\\.canonicalPath\\(\\);")
 | |
|                 "QString resolved = QDir::cleanPath(dir);"))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                ;; Disable failing tests.
 | |
|                (invoke "ctest" "-E" "(kautostarttest|ksycocatest)")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Plugin framework for desktop services")
 | |
|     (description "KService provides a plugin framework for handling desktop
 | |
| services.  Services can be applications or libraries.  They can be bound to MIME
 | |
| types or handled by application specific code.")
 | |
|     ;; triple licensed
 | |
|     (license (list license:gpl2+ license:gpl3+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public ktexteditor
 | |
|   (package
 | |
|     (name "ktexteditor")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     "ktexteditor-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1pazi9rz4v95g31s7d26yla8rcb0cgd08mlmdcasywsaxc8nn7vw"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kparts
 | |
|            ksyntaxhighlighting))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     (inputs
 | |
|      (list editorconfig-core-c
 | |
|            karchive
 | |
|            kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kguiaddons
 | |
|            kiconthemes
 | |
|            kio
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kparts
 | |
|            kservice
 | |
|            ktextwidgets
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            libgit2
 | |
|            perl
 | |
|            qtbase-5
 | |
|            qtdeclarative-5
 | |
|            qtscript
 | |
|            qtxmlpatterns
 | |
|            solid
 | |
|            sonnet))
 | |
|     (arguments
 | |
|      (list #:phases
 | |
|        #~(modify-phases %standard-phases
 | |
|          (add-after 'unpack 'setup
 | |
|            (lambda* (#:key inputs #:allow-other-keys)
 | |
|              (setenv "XDG_DATA_DIRS" ; FIXME build phase doesn't find parts.desktop
 | |
|                      (string-append #$(this-package-input "kparts") "/share"))))
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests? ;; Maybe locale issues with tests?
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|                (invoke "ctest" "-E" "(kateview_test|movingrange_test)"))))
 | |
|          (add-after 'install 'add-symlinks
 | |
|            ;; Some package(s) (e.g. plasma-sdk) refer to these service types
 | |
|            ;; by the wrong name.  I would prefer to patch those packages, but
 | |
|            ;; I cannot find the files!
 | |
|            (lambda* (#:key outputs #:allow-other-keys)
 | |
|              (let ((kst5 (string-append #$output
 | |
|                                         "/share/kservicetypes5/")))
 | |
|                (symlink (string-append kst5 "ktexteditorplugin.desktop")
 | |
|                         (string-append kst5 "ktexteditor-plugin.desktop"))))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Full text editor component")
 | |
|     (description "KTextEditor provides a powerful text editor component that you
 | |
| can embed in your application, either as a KPart or using the KF5::TextEditor
 | |
| library.")
 | |
|     ;; triple licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public ktextwidgets
 | |
|   (package
 | |
|     (name "ktextwidgets")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "14ivmpng7x9rsk3x6kyd86jabzqxgjcdrma1im44wacnvisi4llk"))))
 | |
|     (build-system qt-build-system)
 | |
|     (propagated-inputs
 | |
|      (list ki18n sonnet))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kiconthemes
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            qtbase-5
 | |
|            qtspeech))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Text editing widgets")
 | |
|     (description "KTextWidgets provides widgets for displaying and editing text.
 | |
| It supports rich text as well as plain text.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kwallet
 | |
|   (package
 | |
|     (name "kwallet")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0kwxkxlk0xlxkjgpjpb40xfl2l9hnhpymb4lxw4zwlxjn81r6sab"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (arguments
 | |
|      (list #:phases
 | |
|        #~(modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests? ;; Seems to require network.
 | |
|                (invoke "ctest" "-E"
 | |
|                        "(fdo_secrets_test)")))))))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools))
 | |
|     (inputs
 | |
|      (list gpgme
 | |
|            kauth
 | |
|            kcodecs
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kdbusaddons
 | |
|            kdoctools
 | |
|            kiconthemes
 | |
|            ki18n
 | |
|            knotifications
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            libgcrypt
 | |
|            phonon
 | |
|            qgpgme
 | |
|            qca
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Safe desktop-wide storage for passwords")
 | |
|     (description "This framework contains an interface to KWallet, a safe
 | |
| desktop-wide storage for passwords and the kwalletd daemon used to safely store
 | |
| the passwords on KDE work spaces.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kxmlgui
 | |
|   (package
 | |
|     (name "kxmlgui")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "08n5l3zgkh0fxaqwrfx5mk4j5wq9ylkpxd37751qcivpag7l0x45"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kconfig kconfigwidgets))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules qttools-5 xorg-server-for-tests))
 | |
|     (inputs
 | |
|      (list attica
 | |
|            kauth
 | |
|            kcodecs
 | |
|            kcoreaddons
 | |
|            kglobalaccel
 | |
|            kguiaddons
 | |
|            kiconthemes
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            ktextwidgets
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            qtbase-5
 | |
|            sonnet))
 | |
|     (arguments
 | |
|      (list #:phases
 | |
|        #~(modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen") ;; These tests fail
 | |
|                (invoke "ctest" "-E"
 | |
| 			   "(ktoolbar_unittest|kxmlgui_unittest)")))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Framework for managing menu and toolbar actions")
 | |
|     (description "KXMLGUI provides a framework for managing menu and toolbar
 | |
| actions in an abstract way.  The actions are configured through a XML description
 | |
| and hooks in the application code.  The framework supports merging of multiple
 | |
| descriptions for integrating actions from plugins.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public kxmlrpcclient
 | |
|   (package
 | |
|     (name "kxmlrpcclient")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/portingAids/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "09apfrkgvvzv8zwxyjbi5qb145a9awirk02nx474bshgypfqslpb"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kio))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kauth
 | |
|            kbookmarks
 | |
|            kcodecs
 | |
|            kcompletion
 | |
|            kconfig
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kitemviews
 | |
|            ki18n
 | |
|            kjobwidgets
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            qtbase-5
 | |
|            solid))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "XML-RPC client")
 | |
|     (description "This library contains simple XML-RPC Client support.  It is a
 | |
| complete client and is easy to use.  Only one interface is exposed,
 | |
| kxmlrpcclient/client.h and from that interface, you only need to use 3 methods:
 | |
| setUrl, setUserAgent and call.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:bsd-2 license:lgpl2.1+))))
 | |
| 
 | |
| (define-public plasma-framework
 | |
|   (package
 | |
|     (name "plasma-framework")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1bmwvk0pj0bnb8qhcl0bz82r63nls6h7lzzmkfkdwcwmjifmiqg4"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (propagated-inputs
 | |
|      (list kpackage kservice))
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools pkg-config))
 | |
|     (inputs (list kactivities
 | |
|                   karchive
 | |
|                   kauth
 | |
|                   kbookmarks
 | |
|                   kcodecs
 | |
|                   kcompletion
 | |
|                   kconfig
 | |
|                   kconfigwidgets
 | |
|                   kcoreaddons
 | |
|                   kdbusaddons
 | |
|                   kdeclarative
 | |
|                   kglobalaccel
 | |
|                   kguiaddons
 | |
|                   kiconthemes
 | |
|                   kirigami
 | |
|                   kitemviews
 | |
|                   kio
 | |
|                   ki18n
 | |
|                   kjobwidgets
 | |
|                   knotifications
 | |
|                   kwayland
 | |
|                   kwidgetsaddons
 | |
|                   kwindowsystem
 | |
|                   kxmlgui
 | |
|                   ;; XXX: "undefined reference to `glGetString'" errors occur without libglvnd,
 | |
|                   libglvnd
 | |
|                   phonon
 | |
|                   qtbase-5
 | |
|                   qtdeclarative-5
 | |
|                   qtquickcontrols2-5
 | |
|                   qtsvg-5
 | |
|                   qtx11extras
 | |
|                   solid))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests?
 | |
|                (setenv "HOME" (getcwd))
 | |
|                (setenv "QT_QPA_PLATFORM" "offscreen") ;; These tests fail
 | |
|                (invoke "ctest" "-E" (string-append "(plasma-dialogstatetest"
 | |
|                                                    "|plasma-iconitemtest"
 | |
|                                                    "|plasma-themetest"
 | |
|                                                    "|dialognativetest)"))))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Libraries, components and tools of Plasma workspaces")
 | |
|     (description "The plasma framework provides QML components, libplasma and
 | |
| script engines.")
 | |
|     ;; dual licensed
 | |
|     (license (list license:gpl2+ license:lgpl2.1+))))
 | |
| 
 | |
| (define-public purpose
 | |
|   (package
 | |
|     (name "purpose")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     name "-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "0g9ykhsn9dl3y3qp4wm3r7bkdhpl9mcbg671wa26qx3ba8a2jynr"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list ;;TODO: ("kaccounts" ,kaccounts)
 | |
|            kconfig
 | |
|            kcoreaddons
 | |
|            knotifications
 | |
|            ki18n
 | |
|            kio
 | |
|            kirigami
 | |
|            qtbase-5
 | |
|            qtdeclarative-5))
 | |
|     (arguments
 | |
|      `(#:tests? #f  ;; seem to require network; don't find QTQuick components
 | |
|        #:configure-flags '("-DBUILD_TESTING=OFF"))) ; not run anyway
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "Offers available actions for a specific purpose")
 | |
|     (description "This framework offers the possibility to create integrate
 | |
| services and actions on any application without having to implement them
 | |
| specifically.  Purpose will offer them mechanisms to list the different
 | |
| alternatives to execute given the requested action type and will facilitate
 | |
| components so that all the plugins can receive all the information they
 | |
| need.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| ;; This version of kdbusaddons does not use kinit as an input, and is used to
 | |
| ;; build kinit-bootstrap, as well as bootstrap versions of all kinit
 | |
| ;; dependencies which also rely on kdbusaddons.
 | |
| (define kdbusaddons-bootstrap
 | |
|   (package
 | |
|     (inherit kdbusaddons)
 | |
|     (source (origin
 | |
|               (inherit (package-source kdbusaddons))
 | |
|               (patches '())))
 | |
|     (inputs (modify-inputs (package-inputs kdbusaddons) (delete "kinit")))
 | |
|     (arguments
 | |
|      (substitute-keyword-arguments (package-arguments kdbusaddons)
 | |
|        ((#:phases phases)
 | |
|         #~(modify-phases #$phases
 | |
|            (delete 'patch-source)))))))
 | |
| 
 | |
| (define kinit-bootstrap
 | |
|   ((package-input-rewriting `((,kdbusaddons . ,kdbusaddons-bootstrap))) kinit))
 | |
| 
 | |
| 
 | |
| ;; Tier 4
 | |
| ;;
 | |
| ;; Tier 4 frameworks can be mostly ignored by application programmers; this
 | |
| ;; tier consists of plugins acting behind the scenes to provide additional
 | |
| ;; functionality or platform integration to existing frameworks (including
 | |
| ;; Qt).
 | |
| 
 | |
| (define-public kde-frameworkintegration
 | |
|   (package
 | |
|     (name "kde-frameworkintegration")
 | |
|     (version "5.98.0")
 | |
|     (source (origin
 | |
|               (method url-fetch)
 | |
|               (uri (string-append
 | |
|                     "mirror://kde/stable/frameworks/"
 | |
|                     (version-major+minor version) "/"
 | |
|                     "frameworkintegration-" version ".tar.xz"))
 | |
|               (sha256
 | |
|                (base32
 | |
|                 "1mrangjj8lhm4njpkhqna2zwnidkd9crs23gj6kdlwzmiknypi6q"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules pkg-config))
 | |
|     ;; TODO: Optional packages not yet in Guix: packagekitqt5, AppStreamQt
 | |
|     (inputs (list kconfig
 | |
|                   kconfigwidgets
 | |
|                   kcoreaddons
 | |
|                   ki18n
 | |
|                   kiconthemes
 | |
|                   kitemviews
 | |
|                   knewstuff
 | |
|                   knotifications
 | |
|                   kpackage
 | |
|                   kwidgetsaddons
 | |
|                   qtbase-5
 | |
|                   qtx11extras))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-before 'check 'check-setup
 | |
|            (lambda _
 | |
|              (setenv "HOME" (getcwd))
 | |
|              ;; Make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 workspace and cross-framework integration plugins")
 | |
|     (description "Framework Integration is a set of plugins responsible for
 | |
| better integration of Qt applications when running on a KDE Plasma
 | |
| workspace.")
 | |
|     ;; This package is distributed under either LGPL2 or LGPL3, but some
 | |
|     ;; files are explicitly LGPL2+.
 | |
|     (license (list license:lgpl2.0 license:lgpl3 license:lgpl2.0+))
 | |
|     (properties `((upstream-name . "frameworkintegration")))))
 | |
| 
 | |
| 
 | |
| ;; Porting Aids
 | |
| ;;
 | |
| ;; Porting Aids frameworks provide code and utilities to ease the transition
 | |
| ;; from kdelibs 4 to KDE Frameworks 5. Code should aim to port away from this
 | |
| ;; framework, new projects should avoid using these libraries.
 | |
| 
 | |
| (define-public kdelibs4support
 | |
|   (package
 | |
|     (name "kdelibs4support")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0hyyrxic1rkw2jrr92rnmbk6bqkfrcnpc917vs7xyansk9799b8f"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list dbus
 | |
|            docbook-xml-4.4 ; optional
 | |
|            extra-cmake-modules
 | |
|            kdoctools
 | |
|            perl
 | |
|            perl-uri
 | |
|            pkg-config
 | |
|            qttools
 | |
|            shared-mime-info
 | |
|            kjobwidgets ;; required for running the tests
 | |
|            strace
 | |
|            tzdata-for-tests))
 | |
|     (propagated-inputs
 | |
|      ;; These are required to be installed along with this package, see
 | |
|      ;; lib64/cmake/KF5KDELibs4Support/KF5KDELibs4SupportConfig.cmake
 | |
|      (list karchive
 | |
|            kauth
 | |
|            kconfigwidgets
 | |
|            kcoreaddons
 | |
|            kcrash
 | |
|            kdbusaddons
 | |
|            kdesignerplugin
 | |
|            kdoctools
 | |
|            kemoticons
 | |
|            kguiaddons
 | |
|            kiconthemes
 | |
|            kinit
 | |
|            kitemmodels
 | |
|            knotifications
 | |
|            kparts
 | |
|            ktextwidgets
 | |
|            kunitconversion
 | |
|            kwindowsystem
 | |
|            qtbase-5))
 | |
|     (inputs
 | |
|      (list kcompletion
 | |
|            kconfig
 | |
|            kded
 | |
|            kglobalaccel
 | |
|            ki18n
 | |
|            kio
 | |
|            kservice
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            libsm
 | |
|            networkmanager-qt
 | |
|            openssl
 | |
|            qtsvg-5
 | |
|            qttools-5
 | |
|            qtx11extras))
 | |
|     ;; FIXME: Use Guix ca-bundle.crt in etc/xdg/ksslcalist and
 | |
|     ;; share/kf5/kssl/ca-bundle.crt
 | |
|     ;; TODO: NixOS has nix-kde-include-dir.patch to change std-dir "include"
 | |
|     ;; into "@dev@/include/". Think about whether this is needed for us, too.
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (add-after 'unpack 'make-cmake-to-find-docbook
 | |
|            (lambda _
 | |
|              (substitute* "cmake/FindDocBookXML4.cmake"
 | |
|                (("^.*xml/docbook/schema/dtd.*$")
 | |
|                 "xml/dtd/docbook\n"))))
 | |
|          (delete 'check)
 | |
|          (add-after 'install 'check-post-install
 | |
|            (lambda* (#:key inputs tests? #:allow-other-keys)
 | |
|              (setenv "HOME" (getcwd))
 | |
|              (setenv "TZDIR"    ; KDateTimeTestsome needs TZDIR
 | |
|                      (search-input-directory inputs
 | |
|                                              "share/zoneinfo"))
 | |
|              ;; Make Qt render "offscreen", required for tests
 | |
|              (setenv "QT_QPA_PLATFORM" "offscreen")
 | |
|              ;; enable debug output
 | |
|              (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
 | |
|              (setenv "DBUS_FATAL_WARNINGS" "0")
 | |
|              ;; Make kstandarddirstest pass (see https://bugs.kde.org/381098)
 | |
|              (mkdir-p ".kde-unit-test/xdg/config")
 | |
|              (with-output-to-file ".kde-unit-test/xdg/config/foorc"
 | |
|                (lambda () #t))  ;; simply touch the file
 | |
|              ;; Blacklist a test-function (failing at build.kde.org, too).
 | |
|              (with-output-to-file "autotests/BLACKLIST"
 | |
|                (lambda _
 | |
|                  (display "[testSmb]\n*\n")))
 | |
|              (invoke "dbus-launch" "ctest"
 | |
|                      "-E" "kstandarddirstest"))))))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 porting aid from KDELibs4")
 | |
|     (description "This framework provides code and utilities to ease the
 | |
| transition from kdelibs 4 to KDE Frameworks 5.  This includes CMake macros and
 | |
| C++ classes whose functionality has been replaced by code in CMake, Qt and
 | |
| other frameworks.
 | |
| 
 | |
| Code should aim to port away from this framework eventually.  The API
 | |
| documentation of the classes in this framework and the notes at
 | |
| http://community.kde.org/Frameworks/Porting_Notes should help with this.")
 | |
|     ;; Most files are distributed under LGPL2+, but the package includes code
 | |
|     ;; under a variety of licenses.
 | |
|     (license (list license:lgpl2.1+ license:lgpl2.0 license:lgpl2.0+
 | |
|                    license:gpl2 license:gpl2+
 | |
|                    license:expat license:bsd-2 license:bsd-3
 | |
|                    license:public-domain))))
 | |
| 
 | |
| (define-public khtml
 | |
|   (package
 | |
|     (name "khtml")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0bflwrp6i2w6a3fq2m2df655495rpnsmqcm7w1f1dzfndc6yd9i5"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules perl))
 | |
|     (inputs
 | |
|      (list giflib
 | |
|            gperf
 | |
|            karchive
 | |
|            kcodecs
 | |
|            kglobalaccel
 | |
|            ki18n
 | |
|            kiconthemes
 | |
|            kio
 | |
|            kjs
 | |
|            knotifications
 | |
|            kparts
 | |
|            ktextwidgets
 | |
|            kwallet
 | |
|            kwidgetsaddons
 | |
|            kwindowsystem
 | |
|            kxmlgui
 | |
|            libjpeg-turbo
 | |
|            libpng
 | |
|            openssl
 | |
|            phonon
 | |
|            qtbase-5
 | |
|            qtx11extras
 | |
|            sonnet))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 HTML widget and component")
 | |
|     (description "KHTML is a web rendering engine, based on the KParts
 | |
| technology and using KJS for JavaScript support.")
 | |
|     ;; Most files are distributed under LGPL2+, but the package includes code
 | |
|     ;; under a variety of licenses.
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+
 | |
|                    license:gpl2  license:gpl3+
 | |
|                    license:expat license:bsd-2 license:bsd-3))))
 | |
| 
 | |
| (define-public kjs
 | |
|   (package
 | |
|     (name "kjs")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "03is1a5b1sfh1nd011lchgir9nrywvax06ilg9y7z0vsn0ick7ik"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools perl pkg-config))
 | |
|     (inputs
 | |
|      (list pcre qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 support for Javascript scripting in Qt
 | |
| applications")
 | |
|     (description "Add-on library to Qt which adds JavaScript scripting
 | |
| support.")
 | |
|     ;; Most files are distributed under LGPL2+, but the package also includes
 | |
|     ;; code under a variety of licenses.
 | |
|     (license (list license:lgpl2.1+
 | |
|                    license:bsd-2 license:bsd-3
 | |
|                    (license:non-copyleft "file://src/kjs/dtoa.cpp")))))
 | |
| 
 | |
| (define-public kjsembed
 | |
|   (package
 | |
|     (name "kjsembed")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0zb4vr0hp73lzc1gfnpq1grwmlpdvnp8awf3ydx4vqjh9n6jbaf2"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools qttools-5))
 | |
|     (inputs
 | |
|      (list ki18n kjs qtbase-5 qtsvg-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 embedded Javascript engine for Qt")
 | |
|     (description "KJSEmbed provides a method of binding Javascript objects to
 | |
| QObjects, so you can script your applications.")
 | |
|     (license license:lgpl2.1+)))
 | |
| 
 | |
| (define-public kmediaplayer
 | |
|   (package
 | |
|     (name "kmediaplayer")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0wcv99xgg9pxijbjl4cmsgmpwb893ira6wd3ys5ihk2nakbvd09x"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools qttools-5))
 | |
|     (inputs
 | |
|      (list kcompletion
 | |
|            kcoreaddons
 | |
|            ki18n
 | |
|            kiconthemes
 | |
|            kio
 | |
|            kparts
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            qtbase-5))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 plugin interface for media player features")
 | |
|     (description "KMediaPlayer builds on the KParts framework to provide a
 | |
| common interface for KParts that can play media files.
 | |
| 
 | |
| This framework is a porting aid.  It is not recommended for new projects, and
 | |
| existing projects that use it are advised to port away from it, and use plain
 | |
| KParts instead.")
 | |
|     (license license:expat)))
 | |
| 
 | |
| (define-public kross
 | |
|   (package
 | |
|     (name "kross")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append
 | |
|              "mirror://kde/stable/frameworks/"
 | |
|              (version-major+minor version) "/portingAids/"
 | |
|              name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "0yjn66r44jxlrm4vz1nf8s64kcw7lmarjpqz1mcgb1n4jc28hs60"))))
 | |
|     (build-system cmake-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules kdoctools qttools-5))
 | |
|     (inputs
 | |
|      (list kcompletion
 | |
|            kcoreaddons
 | |
|            ki18n
 | |
|            kiconthemes
 | |
|            kparts
 | |
|            kwidgetsaddons
 | |
|            kxmlgui
 | |
|            qtbase-5
 | |
|            qtscript))
 | |
|     (home-page "https://community.kde.org/Frameworks")
 | |
|     (synopsis "KDE Frameworks 5 solution for application scripting")
 | |
|     (description "Kross is a scripting bridge for the KDE Development Platform
 | |
| used to embed scripting functionality into an application.  It supports
 | |
| QtScript as a scripting interpreter backend.
 | |
| 
 | |
| Kross provides an abstract API to provide scripting functionality in a
 | |
| interpreter-independent way.  The application that uses Kross should not need
 | |
| to know anything about the scripting language being used.  The core of Kross
 | |
| provides the framework to deal transparently with interpreter-backends and
 | |
| offers abstract functionality to deal with scripts.")
 | |
|     ;; Most files are distributed under LGPL2+, but the package includes code
 | |
|     ;; under a variety of licenses.
 | |
|     (license (list license:lgpl2.0+ license:lgpl2.1+
 | |
|                    license:lgpl2.0 license:gpl3+))))
 | |
| 
 | |
| (define-public kdav
 | |
|   (package
 | |
|     (name "kdav")
 | |
|     (version "5.98.0")
 | |
|     (source
 | |
|      (origin
 | |
|        (method url-fetch)
 | |
|        (uri (string-append "mirror://kde/stable/frameworks/"
 | |
|                            (version-major+minor version) "/"
 | |
|                            name "-" version ".tar.xz"))
 | |
|        (sha256
 | |
|         (base32 "02474a3k7yqgnb1sbxbnm6l4cahn88y2631jvkq9xlmcx7xs2dzi"))))
 | |
|     (build-system qt-build-system)
 | |
|     (native-inputs
 | |
|      (list extra-cmake-modules))
 | |
|     (inputs
 | |
|      (list kcoreaddons ki18n kio qtbase-5 qtxmlpatterns))
 | |
|     (arguments
 | |
|      `(#:phases
 | |
|        (modify-phases %standard-phases
 | |
|          (replace 'check
 | |
|            (lambda* (#:key tests? #:allow-other-keys)
 | |
|              (when tests? ;; Seems to require network.
 | |
|                (invoke "ctest" "-E"
 | |
|                        "(kdav-davcollectionsmultifetchjobtest|kdav-davitemfetchjob)")))))))
 | |
|     (home-page "https://invent.kde.org/frameworks/kdav")
 | |
|     (synopsis "DAV protocol implementation with KJobs")
 | |
|     (description "This is a DAV protocol implementation with KJobs.  Calendars
 | |
| and todos are supported, using either GroupDAV or CalDAV, and contacts are
 | |
| supported using GroupDAV or CardDAV.")
 | |
|     (license ;; GPL for programs, LGPL for libraries
 | |
|      (list license:gpl2+ license:lgpl2.0+))))
 |