gnu: Fix common unquote typos.
[jackhill/guix/guix.git] / gnu / packages / kde-frameworks.scm
CommitLineData
f272987a
AE
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
c73210d7 3;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
4467c2d1 4;;; Copyright © 2016,2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
bbf311e0 5;;; Copyright © 2016 David Craven <david@craven.ch>
5578c298 6;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
c26d74dd 7;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
f272987a
AE
8;;;
9;;; This file is part of GNU Guix.
10;;;
11;;; GNU Guix is free software; you can redistribute it and/or modify it
12;;; under the terms of the GNU General Public License as published by
13;;; the Free Software Foundation; either version 3 of the License, or (at
14;;; your option) any later version.
15;;;
16;;; GNU Guix is distributed in the hope that it will be useful, but
17;;; WITHOUT ANY WARRANTY; without even the implied warranty of
18;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19;;; GNU General Public License for more details.
20;;;
21;;; You should have received a copy of the GNU General Public License
22;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
23
24(define-module (gnu packages kde-frameworks)
25 #:use-module (guix build-system cmake)
26 #:use-module (guix download)
27 #:use-module ((guix licenses) #:prefix license:)
28 #:use-module (guix packages)
4a827670 29 #:use-module (guix utils)
834d1222 30 #:use-module (gnu packages)
17252110 31 #:use-module (gnu packages acl)
594c7f35 32 #:use-module (gnu packages admin)
7ae9542b 33 #:use-module (gnu packages aidc)
b05eb5dd 34 #:use-module (gnu packages attr)
66e7e434 35 #:use-module (gnu packages avahi)
10afdf78 36 #:use-module (gnu packages base)
a3485855 37 #:use-module (gnu packages boost)
9fd502ce 38 #:use-module (gnu packages bison)
88549d2e 39 #:use-module (gnu packages boost)
f90b81a5 40 #:use-module (gnu packages compression)
092ab1c0 41 #:use-module (gnu packages databases)
72783891 42 #:use-module (gnu packages disk)
110db07d 43 #:use-module (gnu packages docbook)
6ad3befe 44 #:use-module (gnu packages flex)
208094b4 45 #:use-module (gnu packages freedesktop)
4f4afb63 46 #:use-module (gnu packages gettext)
d3726f05 47 #:use-module (gnu packages gl)
fc3d355d 48 #:use-module (gnu packages glib)
864c25f4 49 #:use-module (gnu packages gnome)
a3485855 50 #:use-module (gnu packages gnupg)
de5a235c 51 #:use-module (gnu packages gperf)
92605669 52 #:use-module (gnu packages graphics)
4bff300b 53 #:use-module (gnu packages gstreamer)
9eb0f430 54 #:use-module (gnu packages image)
786cb783 55 #:use-module (gnu packages kerberos)
ab313cd0 56 #:use-module (gnu packages libreoffice)
9fd502ce 57 #:use-module (gnu packages linux)
9eb0f430
HG
58 #:use-module (gnu packages mp3)
59 #:use-module (gnu packages pdf)
7090518f 60 #:use-module (gnu packages pcre)
110db07d 61 #:use-module (gnu packages perl)
4a827670 62 #:use-module (gnu packages pkg-config)
46c27be1 63 #:use-module (gnu packages polkit)
06a79865 64 #:use-module (gnu packages python)
4a827670 65 #:use-module (gnu packages qt)
9eb0f430 66 #:use-module (gnu packages textutils)
10afdf78 67 #:use-module (gnu packages tls)
def00811 68 #:use-module (gnu packages version-control)
9eb0f430 69 #:use-module (gnu packages video)
110db07d
DC
70 #:use-module (gnu packages web)
71 #:use-module (gnu packages xml)
834d1222
TD
72 #:use-module (gnu packages xorg)
73 #:use-module (srfi srfi-1))
f272987a 74
f272987a
AE
75(define-public extra-cmake-modules
76 (package
77 (name "extra-cmake-modules")
431ff8be 78 (version "5.42.0")
1c484e98
DC
79 (source (origin
80 (method url-fetch)
81 (uri (string-append
82 "mirror://kde/stable/frameworks/"
83 (version-major+minor version) "/"
84 name "-" version ".tar.xz"))
85 (sha256
86 (base32
431ff8be 87 "1ml6s3ssr5izm3vnzlg5gn2nkcbz5l5nmapvyr4ml7n0089b43a3"))))
f272987a 88 (build-system cmake-build-system)
5c913ba1
DC
89 (native-inputs
90 `(("qtbase" ,qtbase))) ; For tests (needs qmake)
91 (arguments
92 `(#:phases
93 (modify-phases %standard-phases
431ff8be
HG
94 (add-after 'unpack 'post-5.42.0-release-fix
95 ;; FIXME: Remove for > 5.42.0
96 ;; ECMToolchainAndroidTest doesn't exist anymore
97 ;; https://cgit.kde.org/extra-cmake-modules.git/commit?id=30f31c46d8caf4
98 (lambda _
99 (substitute* "tests/CMakeLists.txt"
100 (("^add_test_macro\\(ECMToolchainAndroidTest dummy\\)") ""))
101 #t))
7b722e3c
HG
102 (add-after 'unpack 'fix-lib-path
103 (lambda _
104 ;; Always install into /lib and not into /lib64.
105 (substitute* "kde-modules/KDEInstallDirs.cmake"
61cc757d
HG
106 (("\"lib64\"") "\"lib\"")
107 ;; TODO: Base the following on values taken from Qt
108 ;; Install plugins into lib/qt5/plugins
109 (("_define_relative\\(QTPLUGINDIR LIBDIR \"plugins\"")
110 "_define_relative(QTPLUGINDIR LIBDIR \"qt5/plugins\"")
111 ;; Install imports into lib/qt5/imports
112 (("_define_relative\\(QTQUICKIMPORTSDIR QTPLUGINDIR \"imports\"")
113 "_define_relative(QTQUICKIMPORTSDIR LIBDIR \"qt5/imports\"")
114 ;; Install qml-files into lib/qt5/qml
115 (("_define_relative\\(QMLDIR LIBDIR \"qml\"")
9f5bd38f
HG
116 "_define_relative(QMLDIR LIBDIR \"qt5/qml\""))
117 (substitute* "modules/ECMGeneratePriFile.cmake"
118 ;; Install pri-files into lib/qt5/mkspecs
119 (("set\\(ECM_MKSPECS_INSTALL_DIR mkspecs/modules")
120 "set(ECM_MKSPECS_INSTALL_DIR lib/qt5/mkspecs/modules"))))
5c913ba1
DC
121 ;; install and check phase are swapped to prevent install from failing
122 ;; after testsuire has run
123 (add-after 'install 'check-post-install
124 (assoc-ref %standard-phases 'check))
125 (delete 'check))))
126 ;; optional dependencies - to save space, we do not add these inputs.
127 ;; Sphinx > 1.2:
128 ;; Required to build Extra CMake Modules documentation in Qt Help format.
129 ;; Qt5LinguistTools , Qt5 linguist tools. , <http://www.qt.io/>
130 ;; Required to run tests for the ECMPoQmTools module.
131 ;; Qt5Core
132 ;; Required to run tests for the ECMQtDeclareLoggingCategory module,
133 ;; and for some tests of the KDEInstallDirs module.
f272987a
AE
134 (home-page "https://community.kde.org/Frameworks")
135 (synopsis "CMake module files for common software used by KDE")
136 (description "The Extra CMake Modules package, or ECM, adds to the
137modules provided by CMake to find common software. In addition, it provides
138common build settings used in software produced by the KDE community.")
139 (license license:bsd-3)))
4a827670 140
689bb11a
DC
141(define-public phonon
142 (package
143 (name "phonon")
c26d74dd 144 (version "4.10.0")
84dee852
DC
145 (source (origin
146 (method url-fetch)
147 (uri (string-append
148 "mirror://kde/stable/phonon"
149 "/" version "/"
150 name "-" version ".tar.xz"))
151 (sha256
152 (base32
c26d74dd 153 "0gyhlnwamzfw31kw4qh0v6rj0m47k9wfygd6h07klg9ggp60xhg2"))))
689bb11a
DC
154 (build-system cmake-build-system)
155 (native-inputs
1e0ae3b3 156 ;; TODO: Think about adding pulseaudio. Is it required for sound?
ba81085b
HG
157 ;; TODO: Add building the super experimental QML support
158 `(("extra-cmake-modules" ,extra-cmake-modules)
159 ("pkg-config" ,pkg-config)
c695fb76 160 ("qttools" ,qttools)))
689bb11a
DC
161 (inputs
162 `(("qtbase" ,qtbase)))
163 (arguments
164 `(#:configure-flags
165 '("-DCMAKE_CXX_FLAGS=-fPIC"
ba81085b 166 "-DPHONON_BUILD_PHONON4QT5=ON")
5578c298
TD
167 #:phases
168 (modify-phases %standard-phases
169 (add-before 'install 'patch-installdir
170 (lambda* (#:key inputs outputs #:allow-other-keys)
171 (let ((regex (string-append "(INSTALL DESTINATION \")"
172 (assoc-ref inputs "qtbase"))))
173 (substitute* "cmake_install.cmake"
174 ((regex all dest)
175 (string-append dest (assoc-ref outputs "out")))))
176 #t)))))
689bb11a
DC
177 (home-page "https://phonon.kde.org")
178 (synopsis "KDE's multimedia library")
179 (description "KDE's multimedia library.")
180 (license license:lgpl2.1+)))
181
4bff300b
TD
182(define-public phonon-backend-gstreamer
183 (package
184 (name "phonon-backend-gstreamer")
185 (version "4.9.0")
186 (source (origin
187 (method url-fetch)
188 (uri (string-append
189 "mirror://kde/stable/phonon/"
190 name "/" version "/"
191 name "-" version ".tar.xz"))
192 (sha256
193 (base32
194 "1wc5p1rqglf0n1avp55s50k7fjdzdrhg0gind15k8796w7nfbhyf"))))
195 (build-system cmake-build-system)
196 (native-inputs
197 `(("extra-cmake-modules" ,extra-cmake-modules)
198 ("pkg-config" ,pkg-config)))
199 (inputs
200 `(("qtbase" ,qtbase)
201 ("phonon" ,phonon)
202 ("qtbase" ,qtbase)
203 ("qtx11extras" ,qtx11extras)
204 ("gstreamer" ,gstreamer)
205 ("gst-plugins-base" ,gst-plugins-base)
206 ("libxml2" ,libxml2)))
207 (arguments
208 `(#:configure-flags
209 '( "-DPHONON_BUILD_PHONON4QT5=ON")))
210 (home-page "https://phonon.kde.org")
211 (synopsis "Phonon backend which uses GStreamer")
212 (description "Phonon makes use of backend libraries to provide sound.
213Phonon-GStreamer is a backend based on the GStreamer multimedia library.")
214 ;; license: source files mention "either version 2.1 or 3"
215 (license (list license:lgpl2.1 license:lgpl3))))
216
30ffab50
DC
217(define-public gpgmepp
218 (package
219 (name "gpgmepp")
443a60aa
DC
220 (version "16.08.2")
221 (source (origin
222 (method url-fetch)
223 (uri (string-append
224 "mirror://kde/stable/applications"
225 "/" version "/src/"
226 name "-" version ".tar.xz"))
227 (sha256
228 (base32
229 "0828qlhdi1i26n2xgyb01c0q77m6jlppbxv6mprryxq0ma88940a"))))
30ffab50
DC
230 (build-system cmake-build-system)
231 (native-inputs
232 `(("extra-cmake-modules" ,extra-cmake-modules)))
233 (propagated-inputs
234 `(("boost" ,boost)
235 ("gpgme" ,gpgme)))
236 (inputs
237 `(("qtbase" ,qtbase)))
238 (home-page "https://community.kde.org/Frameworks")
239 (synopsis "C++ bindings/wrapper for gpgme")
240 (description "C++ bindings/wrapper for gpgme.")
73577a66
HG
241 (license license:lgpl2.1+)
242 (properties `((superseded . ,gpgme)))))
30ffab50 243
72783891
DC
244(define-public kpmcore
245 (package
246 (name "kpmcore")
bd533cbb 247 (version "3.3.0")
bd0fc238
DC
248 (source (origin
249 (method url-fetch)
250 (uri (string-append
251 "mirror://kde/stable/kpmcore"
252 "/" version "/src/"
253 name "-" version ".tar.xz"))
254 (sha256
255 (base32
bd533cbb 256 "0s6v0jfrhjg31ri5p6h9n4w29jvasf5dj954j3vfpzl91lygmmmq"))))
72783891
DC
257 (build-system cmake-build-system)
258 (native-inputs
259 `(("extra-cmake-modules" ,extra-cmake-modules)
260 ("pkg-config" ,pkg-config)))
261 (inputs
262 `(("kconfigwidgets" ,kconfigwidgets)
263 ("kiconthemes" ,kiconthemes)
264 ("kio" ,kio)
265 ("ki18n" ,ki18n)
266 ("kservice" ,kservice)
267 ("libatasmart" ,libatasmart)
268 ("parted" ,parted)
269 ("qtbase" ,qtbase)
270 ("util-linux" ,util-linux)))
271 (home-page "https://community.kde.org/Frameworks")
272 (synopsis "Library for managing partitions")
273 (description "Library for managing partitions.")
274 (license license:gpl3+)))
275
689bb11a 276
bbf311e0
DC
277;; Tier 1
278;;
279;; Tier 1 frameworks depend only on Qt (and possibly a small number of other
280;; third-party libraries), so can easily be used by an Qt-based project.
281
282(define-public attica
283 (package
284 (name "attica")
431ff8be 285 (version "5.42.0")
5eb1b33b
DC
286 (source (origin
287 (method url-fetch)
288 (uri (string-append
289 "mirror://kde/stable/frameworks/"
290 (version-major+minor version) "/"
291 name "-" version ".tar.xz"))
292 (sha256
293 (base32
431ff8be 294 "0icjsk5sbri6nwybb2301wc6ysc1h4p35rxqp0adifyksq8akyxd"))))
bbf311e0
DC
295 (build-system cmake-build-system)
296 (native-inputs
297 `(("extra-cmake-modules" ,extra-cmake-modules)))
298 (inputs
299 `(("qtbase" ,qtbase)))
300 (home-page "https://community.kde.org/Frameworks")
301 (synopsis "Open Collaboration Service client library")
302 (description "Attica is a Qt library that implements the Open
303Collaboration Services API version 1.6.
304
305It grants easy access to the services such as querying information about
306persons and contents. The library is used in KNewStuff3 as content provider.
307In order to integrate with KDE's Plasma Desktop, a platform plugin exists in
308kdebase.
309
310The REST API is defined here:
311http://freedesktop.org/wiki/Specifications/open-collaboration-services/")
312 (license (list license:lgpl2.1+ license:lgpl3+))))
313
fc3d355d
DC
314(define-public bluez-qt
315 (package
316 (name "bluez-qt")
431ff8be 317 (version "5.42.0")
bfa96eba
DC
318 (source (origin
319 (method url-fetch)
320 (uri (string-append
321 "mirror://kde/stable/frameworks/"
322 (version-major+minor version) "/"
323 name "-" version ".tar.xz"))
324 (sha256
325 (base32
431ff8be 326 "0pbb0nn70hbsnp9q8jvqr3s85gh4bnnh1mp8xfkia2hp4c63ws9f"))))
fc3d355d
DC
327 (build-system cmake-build-system)
328 (native-inputs
329 `(("dbus" ,dbus)
330 ("extra-cmake-modules" ,extra-cmake-modules)))
331 (inputs
1e0ae3b3 332 ;; TODO: qtdeclarative (yields one failing test)
fc3d355d
DC
333 `(("qtbase" ,qtbase)))
334 (arguments
335 `(#:configure-flags
b67f7f66
HG
336 (list (string-append
337 "-DUDEV_RULES_INSTALL_DIR=" %output "/lib/udev/rules.d"))
a9314dc3
HG
338 ;; TODO: Make tests pass: DBUS_FATAL_WARNINGS=0 still yields 7/8 tests
339 ;; failing. When running after install, tests hang.
340 #:tests? #f))
fc3d355d
DC
341 (home-page "https://community.kde.org/Frameworks")
342 (synopsis "QML wrapper for BlueZ")
343 (description "bluez-qt is a Qt-style library for accessing the bluez
344Bluetooth stack. It is used by the KDE Bluetooth stack, BlueDevil.")
345 (license (list license:lgpl2.1+ license:lgpl3+))))
346
e510a263
DC
347(define-public breeze-icons
348 (package
349 (name "breeze-icons")
431ff8be 350 (version "5.42.0")
02dc8847
DC
351 (source (origin
352 (method url-fetch)
353 (uri (string-append
354 "mirror://kde/stable/frameworks/"
355 (version-major+minor version) "/"
356 name "-" version ".tar.xz"))
357 (sha256
358 (base32
431ff8be 359 "0mrj0b022yfy669qqby09k4ij6aqyky23gpnjcp85df9saq0x44r"))))
e510a263 360 (build-system cmake-build-system)
431ff8be
HG
361 (arguments
362 `(#:phases
363 (modify-phases %standard-phases
364 (add-before 'check 'disable-failing-test
365 (lambda _
366 ;; Blacklist a test-function (failing at build.kde.org, too).
367 ;; FIXME: recheck
368 (with-output-to-file "autotests/BLACKLIST"
369 (lambda _
370 (display "[test_duplicates]\n*\n")))
371 #t)))))
e510a263 372 (native-inputs
02dc8847
DC
373 `(("extra-cmake-modules" ,extra-cmake-modules)
374 ("fdupes" ,fdupes)
375 ("libxml2" ,libxml2)))
e510a263
DC
376 (inputs
377 `(("qtbase" ,qtbase)))
378 (home-page "https://community.kde.org/Frameworks")
379 (synopsis "Default KDE Plasma 5 icon theme")
380 (description "Breeze provides a freedesktop.org compatible icon theme.
381It is the default icon theme for the KDE Plasma 5 desktop.")
382 ;; The license file mentions lgpl3+. The license files in the source
383 ;; directories are lgpl3, while the top directory contains the lgpl2.1.
384 ;; text.
385 (license license:lgpl3+)))
386
06a79865
DC
387(define-public kapidox
388 (package
389 (name "kapidox")
431ff8be 390 (version "5.42.0")
8fea1a23
DC
391 (source (origin
392 (method url-fetch)
393 (uri (string-append
394 "mirror://kde/stable/frameworks/"
395 (version-major+minor version) "/"
396 name "-" version ".tar.xz"))
397 (sha256
398 (base32
431ff8be 399 "0izyd66p5403gl09l7irzy97mb9b14n4zyjrwap800zjlpwh41pz"))))
06a79865
DC
400 (build-system cmake-build-system)
401 (arguments
402 `(#:tests? #f)) ; has no test target
403 (native-inputs
404 `(("extra-cmake-modules" ,extra-cmake-modules)))
405 (propagated-inputs
406 ;; kapidox is a python programm
407 ;; TODO: check if doxygen has to be installed, the readme does not
408 ;; mention it. The openSuse .rpm lists doxygen, graphviz, graphviz-gd,
409 ;; and python-xml.
410 `(("python" ,python)
411 ("python-jinja2" ,python-jinja2)
412 ("python-pyyaml" ,python-pyyaml)))
413 (inputs
414 `(("qtbase" ,qtbase)))
415 (home-page "https://community.kde.org/Frameworks")
416 (synopsis "KDE Doxygen Tools")
06a79865
DC
417 (description "This framework contains scripts and data for building API
418documentation (dox) in a standard format and style for KDE.
419
420For the actual documentation extraction and formatting the Doxygen tool is
421used, but this framework provides a wrapper script to make generating the
422documentation more convenient (including reading settings from the target
423framework or other module) and a standard template for the generated
424documentation.")
425 ;; Most parts are bsd-2, but incuded jquery is expat
426 ;; This list is taken from http://packaging.neon.kde.org/cgit/
427 (license (list license:bsd-2 license:expat))))
428
f90b81a5
DC
429(define-public karchive
430 (package
431 (name "karchive")
431ff8be 432 (version "5.42.0")
ea95b701
DC
433 (source (origin
434 (method url-fetch)
435 (uri (string-append
436 "mirror://kde/stable/frameworks/"
437 (version-major+minor version) "/"
438 name "-" version ".tar.xz"))
439 (sha256
440 (base32
431ff8be 441 "1vq2ngdxmdl6hzjwdcrv66ban8v9s5jiqwy1mgdqv4ak14l31qbi"))))
f90b81a5
DC
442 (build-system cmake-build-system)
443 (native-inputs
444 `(("extra-cmake-modules" ,extra-cmake-modules)))
445 (inputs
446 `(("bzip2" ,bzip2)
447 ("qtbase" ,qtbase)
448 ("xz" ,xz)
449 ("zlib" ,zlib)))
450 (home-page "https://community.kde.org/Frameworks")
451 (synopsis "Qt 5 addon providing access to numerous types of archives")
452 (description "KArchive provides classes for easy reading, creation and
453manipulation of 'archive' formats like ZIP and TAR.
454
455It also provides transparent compression and decompression of data, like the
456GZip format, via a subclass of QIODevice.")
457 ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
458 ;; under a variety of licenses.
459 ;; This list is taken from http://packaging.neon.kde.org/cgit/
460 (license (list license:lgpl2.1 license:lgpl2.1+
461 license:lgpl3+ license:bsd-2))))
462
5c86352a
DC
463(define-public kcodecs
464 (package
465 (name "kcodecs")
431ff8be 466 (version "5.42.0")
78fc358f
DC
467 (source (origin
468 (method url-fetch)
469 (uri (string-append
470 "mirror://kde/stable/frameworks/"
471 (version-major+minor version) "/"
472 name "-" version ".tar.xz"))
473 (sha256
474 (base32
431ff8be 475 "0b19z432r9dnyjknvwffhcmrg969yhydjvy4qrkrf22026f4smwc"))))
5c86352a
DC
476 (build-system cmake-build-system)
477 (native-inputs
478 `(("extra-cmake-modules" ,extra-cmake-modules)
de5a235c 479 ("gperf" ,gperf)
5c86352a
DC
480 ("qttools" ,qttools)))
481 (inputs
482 `(("qtbase" ,qtbase)))
483 (home-page "https://community.kde.org/Frameworks")
484 (synopsis "String encoding and manipulating library")
485 (description "KCodecs provide a collection of methods to manipulate
486strings using various encodings.
487
488It can automatically determine the charset of a string, translate XML
489entities, validate email addresses, and find encodings by name in a more
490tolerant way than QTextCodec (useful e.g. for data coming from the
491Internet).")
492 ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
493 ;; under a variety of licenses.
494 ;; This list is taken from http://packaging.neon.kde.org/cgit/
495 (license (list license:gpl2 license:gpl2+ license:bsd-2
496 license:lgpl2.1 license:lgpl2.1+ license:expat
497 license:lgpl3+ license:mpl1.1))))
498
594c7f35
DC
499(define-public kconfig
500 (package
501 (name "kconfig")
431ff8be 502 (version "5.42.0")
a6fec165
DC
503 (source (origin
504 (method url-fetch)
505 (uri (string-append
506 "mirror://kde/stable/frameworks/"
507 (version-major+minor version) "/"
508 name "-" version ".tar.xz"))
509 (sha256
510 (base32
431ff8be 511 "08gg0d20c09j7hyxm8ydpzk2yf30c87g9ag7a9nfykrmi6cqirdq"))))
594c7f35
DC
512 (build-system cmake-build-system)
513 (native-inputs
514 `(("extra-cmake-modules" ,extra-cmake-modules)
515 ("inetutils" ,inetutils)
516 ("qttools" ,qttools)
517 ("xorg-server" ,xorg-server)))
518 (inputs
519 `(("qtbase" ,qtbase)))
520 (arguments
521 `(#:phases
a6fec165
DC
522 (modify-phases %standard-phases
523 (add-before 'check 'check-setup
524 (lambda _
525 (setenv "HOME" (getcwd))
526 (setenv "TMPDIR" (getcwd))
594c7f35 527 #t))
a6fec165
DC
528 (add-before 'check 'start-xorg-server
529 (lambda* (#:key inputs #:allow-other-keys)
530 ;; The test suite requires a running X server.
531 (system (string-append (assoc-ref inputs "xorg-server")
532 "/bin/Xvfb :1 &"))
533 (setenv "DISPLAY" ":1")
594c7f35
DC
534 #t)))))
535 (home-page "https://community.kde.org/Frameworks")
536 (synopsis "Kconfiguration settings framework for Qt")
537 (description "KConfig provides an advanced configuration system.
538It is made of two parts: KConfigCore and KConfigGui.
539
540KConfigCore provides access to the configuration files themselves.
541It features:
542
a0cbf1b9 543@enumerate
594c7f35
DC
544@item Code generation: describe your configuration in an XML file, and use
545`kconfig_compiler to generate classes that read and write configuration
546entries.
547
548@item Cascading configuration files (global settings overridden by local
549settings).
550
551@item Optional shell expansion support (see docs/options.md).
552
553@item The ability to lock down configuration options (see docs/options.md).
a0cbf1b9 554@end enumerate
594c7f35
DC
555
556KConfigGui provides a way to hook widgets to the configuration so that they
557are automatically initialized from the configuration and automatically
558propagate their changes to their respective configuration files.")
559 ;; The included licenses is are gpl2 and lgpl2.1, but the sources are
560 ;; under a variety of licenses.
561 ;; This list is taken from http://packaging.neon.kde.org/cgit/
562 (license (list license:lgpl2.1 license:lgpl2.1+ license:expat
563 license:lgpl3+ license:gpl1 ; licende:mit-olif
564 license:bsd-2 license:bsd-3))))
565
f3f250ad
DC
566(define-public kcoreaddons
567 (package
568 (name "kcoreaddons")
431ff8be 569 (version "5.42.0")
b69b81ca
DC
570 (source (origin
571 (method url-fetch)
572 (uri (string-append
573 "mirror://kde/stable/frameworks/"
574 (version-major+minor version) "/"
575 name "-" version ".tar.xz"))
576 (sha256
577 (base32
431ff8be 578 "17qv7r6z72mm9a0hyx5dgk90ikhhgm41bkvnq2hjal0py2lsnrs9"))))
f3f250ad
DC
579 (build-system cmake-build-system)
580 (native-inputs
581 `(("extra-cmake-modules" ,extra-cmake-modules)
582 ("qttools" ,qttools)
3263e94c
HG
583 ("shared-mime-info" ,shared-mime-info)
584 ;; TODO: FAM: File alteration notification http://oss.sgi.com/projects/fam
f3f250ad
DC
585 ("xorg-server" ,xorg-server))) ; for the tests
586 (inputs
587 `(("qtbase" ,qtbase)))
588 (arguments
589 `(#:tests? #f ; FIXME: Test failure caused by stout/stderr being interleaved.
590 #:phases
b69b81ca
DC
591 (modify-phases %standard-phases
592 (add-before 'check 'check-setup
593 (lambda _
b69b81ca
DC
594 (setenv "HOME" (getcwd))
595 (setenv "TMPDIR" (getcwd))
596 #t)))))
f3f250ad
DC
597 (home-page "https://community.kde.org/Frameworks")
598 (synopsis "Qt addon library with a collection of non-GUI utilities")
599 (description "KCoreAddons provides classes built on top of QtCore to
600perform various tasks such as manipulating mime types, autosaving files,
601creating backup files, generating random sequences, performing text
602manipulations such as macro replacement, accessing user information and
603many more.")
604 (license (list license:lgpl2.0+ license:lgpl2.1+))))
605
02613cf5
DC
606(define-public kdbusaddons
607 (package
608 (name "kdbusaddons")
431ff8be 609 (version "5.42.0")
e361ff6a
DC
610 (source (origin
611 (method url-fetch)
612 (uri (string-append
613 "mirror://kde/stable/frameworks/"
614 (version-major+minor version) "/"
615 name "-" version ".tar.xz"))
616 (sha256
617 (base32
431ff8be 618 "1613pc3r70jnzvpwm1xjdbdsmcpx28jwvcs2qq9swlywr5qr9hbd"))
834d1222 619 (patches (search-patches "kdbusaddons-kinit-file-name.patch"))))
02613cf5
DC
620 (build-system cmake-build-system)
621 (native-inputs
622 `(("extra-cmake-modules" ,extra-cmake-modules)
623 ("dbus" ,dbus)
624 ("qttools" ,qttools)))
625 (inputs
626 `(("qtbase" ,qtbase)
834d1222
TD
627 ("qtx11extras" ,qtx11extras)
628 ("kinit" ,kinit-bootstrap))) ;; kinit-bootstrap: kinit package which does not depend on kdbusaddons.
02613cf5
DC
629 (arguments
630 `(#:phases
e361ff6a 631 (modify-phases %standard-phases
834d1222
TD
632 (add-before
633 'configure 'patch-source
634 (lambda* (#:key inputs #:allow-other-keys)
635 ;; look for the kdeinit5 executable in kinit's store directory,
636 ;; instead of the current application's directory:
637 (substitute* "src/kdeinitinterface.cpp"
638 (("@SUBSTITUTEME@") (assoc-ref inputs "kinit")))))
e361ff6a
DC
639 (replace 'check
640 (lambda _
641 (setenv "DBUS_FATAL_WARNINGS" "0")
642 (zero? (system* "dbus-launch" "ctest" ".")))))))
02613cf5
DC
643 (home-page "https://community.kde.org/Frameworks")
644 (synopsis "Convenience classes for DBus")
645 (description "KDBusAddons provides convenience classes on top of QtDBus,
646as well as an API to create KDED modules.")
647 ;; Some source files mention lgpl2.0+, but the included license is
648 ;; the lgpl2.1. Some source files are under non-copyleft licenses.
649 (license license:lgpl2.1+)))
650
3dbb816a
DC
651(define-public kdnssd
652 (package
653 (name "kdnssd")
431ff8be 654 (version "5.42.0")
ce45f9ef
DC
655 (source (origin
656 (method url-fetch)
657 (uri (string-append
658 "mirror://kde/stable/frameworks/"
659 (version-major+minor version) "/"
660 name "-" version ".tar.xz"))
661 (sha256
662 (base32
431ff8be 663 "1k1rz62h3mafliik5n0k98dc56b5v2v6qyqj40696mcyc2d1yvll"))))
3dbb816a
DC
664 (build-system cmake-build-system)
665 (native-inputs
666 `(("extra-cmake-modules" ,extra-cmake-modules)
667 ("qttools" ,qttools)))
668 (inputs
66e7e434
HG
669 `(("avahi" ,avahi) ; alternativly dnssd could be used
670 ("qtbase" ,qtbase)))
3dbb816a
DC
671 (home-page "https://community.kde.org/Frameworks")
672 (synopsis "Network service discovery using Zeroconf")
673 (description "KDNSSD is a library for handling the DNS-based Service
674Discovery Protocol (DNS-SD), the layer of Zeroconf that allows network services,
675such as printers, to be discovered without any user intervention or centralized
676infrastructure.")
677 (license license:lgpl2.1+)))
678
7a150b4d
DC
679(define-public kguiaddons
680 (package
681 (name "kguiaddons")
431ff8be 682 (version "5.42.0")
ee6cebf6
DC
683 (source (origin
684 (method url-fetch)
685 (uri (string-append
686 "mirror://kde/stable/frameworks/"
687 (version-major+minor version) "/"
688 name "-" version ".tar.xz"))
689 (sha256
690 (base32
431ff8be 691 "193i8b4f13dkgp88m3pk9wzi0dhx7qmsnmpizxia3457gg016wn7"))))
7a150b4d 692 (build-system cmake-build-system)
1e0ae3b3
HG
693 ;; TODO: Build packages for the Python bindings. Ideally this will be
694 ;; done for all versions of python guix supports. Requires python,
695 ;; python-sip, clang-python, libclang. Requires python-2 in all cases for
696 ;; clang-python.
7a150b4d
DC
697 (native-inputs
698 `(("extra-cmake-modules" ,extra-cmake-modules)
986447c8 699 ("pkg-config" ,pkg-config)))
7a150b4d 700 (inputs
e7aab773
HG
701 `(("qtbase" ,qtbase)
702 ("qtx11extras" ,qtx11extras)))
7a150b4d
DC
703 (arguments
704 `(#:phases
ee6cebf6
DC
705 (modify-phases %standard-phases
706 (add-before 'check 'check-setup
707 (lambda _
94e24d81 708 ;; make Qt render "offscreen", required for tests
ee6cebf6
DC
709 (setenv "QT_QPA_PLATFORM" "offscreen")
710 #t)))))
7a150b4d
DC
711 (home-page "https://community.kde.org/Frameworks")
712 (synopsis "Utilities for graphical user interfaces")
713 (description "The KDE GUI addons provide utilities for graphical user
714interfaces in the areas of colors, fonts, text, images, keyboard input.")
715 (license (list license:gpl2+ license:lgpl2.1+))))
716
4f4afb63
DC
717(define-public ki18n
718 (package
719 (name "ki18n")
431ff8be 720 (version "5.42.0")
e751556a
DC
721 (source (origin
722 (method url-fetch)
723 (uri (string-append
724 "mirror://kde/stable/frameworks/"
725 (version-major+minor version) "/"
726 name "-" version ".tar.xz"))
727 (sha256
728 (base32
431ff8be 729 "1rpriflb2a48j94zxgh63l6rzq4nlnlkvy89ns1vkdw42bnqrjx9"))))
4f4afb63
DC
730 (build-system cmake-build-system)
731 (propagated-inputs
b94a6ca0 732 `(("gettext" ,gettext-minimal)
4f4afb63
DC
733 ("python" ,python)))
734 (native-inputs
735 `(("extra-cmake-modules" ,extra-cmake-modules)))
736 (inputs
737 `(("qtbase" ,qtbase)
738 ("qtdeclarative" ,qtdeclarative)
739 ("qtscript" ,qtscript)))
740 (arguments
741 `(#:phases
e751556a
DC
742 (modify-phases %standard-phases
743 (add-before 'check 'check-setup
744 (lambda _
745 (setenv "HOME" (getcwd))
746 #t)))))
4f4afb63
DC
747 (home-page "https://community.kde.org/Frameworks")
748 (synopsis "KDE Gettext-based UI text internationalization")
749 (description "KI18n provides functionality for internationalizing user
750interface text in applications, based on the GNU Gettext translation system. It
751wraps the standard Gettext functionality, so that the programmers and translators
752can use the familiar Gettext tools and workflows.
753
754KI18n provides additional functionality as well, for both programmers and
755translators, which can help to achieve a higher overall quality of source and
756translated text. This includes argument capturing, customizable markup, and
757translation scripting.")
758 (license license:lgpl2.1+)))
759
8cb7bab9
DC
760(define-public kidletime
761 (package
762 (name "kidletime")
431ff8be 763 (version "5.42.0")
bdf84c9e
DC
764 (source (origin
765 (method url-fetch)
766 (uri (string-append
767 "mirror://kde/stable/frameworks/"
768 (version-major+minor version) "/"
769 name "-" version ".tar.xz"))
770 (sha256
771 (base32
431ff8be 772 "019r41r28pcrcn1kwxsll53za705jkc9n23b6sr2lplgjk05bcxh"))))
8cb7bab9
DC
773 (build-system cmake-build-system)
774 (native-inputs
455a0bf5
HG
775 `(("extra-cmake-modules" ,extra-cmake-modules)
776 ("pkg-config" ,pkg-config)))
8cb7bab9 777 (inputs
455a0bf5
HG
778 `(("libxscrnsaver" ,libxscrnsaver) ; X-Screensaver based poller, fallback mode
779 ("qtbase" ,qtbase)
8cb7bab9
DC
780 ("qtx11extras" ,qtx11extras)))
781 (home-page "https://community.kde.org/Frameworks")
782 (synopsis "Reporting of idle time of user and system")
783 (description "KIdleTime is a singleton reporting information on idle time.
784It is useful not only for finding out about the current idle time of the PC,
785but also for getting notified upon idle time events, such as custom timeouts,
786or user activity.")
787 (license (list license:gpl2+ license:lgpl2.1+))))
788
0093e26f
HG
789(define-public kirigami
790 ;; Kirigami is listed as tier 1 framework, but optionally includes
791 ;; plasma-framework which is tier 3.
792 (package
793 (name "kirigami")
431ff8be 794 (version "5.42.0")
0093e26f
HG
795 (source (origin
796 (method url-fetch)
797 (uri (string-append
798 "mirror://kde/stable/frameworks/"
799 (version-major+minor version) "/"
800 "kirigami2-" version ".tar.xz"))
801 (sha256
802 (base32
431ff8be 803 "11gqn7amp0r9bgh8ldgisfc2lrkzkn5mq2a1madf24nvjbkvqnqv"))))
0093e26f
HG
804 (properties `((upstream-name . "kirigami2")))
805 (build-system cmake-build-system)
806 (native-inputs
807 `(("extra-cmake-modules" ,extra-cmake-modules)
808 ("qttools" ,qttools)))
809 (inputs
810 `(("kwindowsystem" ,kwindowsystem)
811 ;; TODO: Find a way to activate this optional include without
812 ;; introducing a recursive dependency.
813 ;;("plasma-frameworks" ,plasma-framework) ;; Tier 3!
814 ("qtbase" ,qtbase)
815 ("qtdeclarative" ,qtdeclarative)
816 ("qtquickcontrols2" ,qtquickcontrols2)
817 ("qtsvg" ,qtsvg)
818 ;; Run-time dependency
819 ("qtgraphicaleffects" ,qtgraphicaleffects)))
820 (arguments
821 `(#:tests? #f ;; FIXME: Test suite is broken,
822 ;; see https://bugs.kde.org/show_bug.cgi?id=386456
823 ;; Note for when enabling the tests: The test-suite is meant to be run
824 ;; without prior installation, see
825 ;; https://cgit.kde.org/kirigami.git/commit/?id=24ad2c9
826 #:phases
827 (modify-phases %standard-phases
828 (add-before 'check 'check-setup
829 (lambda* (#:key outputs #:allow-other-keys)
830 ;; make Qt render "offscreen", required for tests
831 (setenv "QT_QPA_PLATFORM" "offscreen")
832 #t)))))
833 (home-page "https://community.kde.org/Frameworks")
834 (synopsis "QtQuick components for mobile user interfaces")
835 (description "Kirigami is a set of high level QtQuick components looking
836and feeling well on both mobile and desktop devices. They ease the creation
837of applications that follow the Kirigami Human Interface Guidelines.")
838 (license license:lgpl2.1+)))
839
803f30d7
DC
840(define-public kitemmodels
841 (package
842 (name "kitemmodels")
431ff8be 843 (version "5.42.0")
110e4bea
DC
844 (source (origin
845 (method url-fetch)
846 (uri (string-append
847 "mirror://kde/stable/frameworks/"
848 (version-major+minor version) "/"
849 name "-" version ".tar.xz"))
850 (sha256
851 (base32
431ff8be 852 "0mcdzdqwmvf9pwirsrnjbhrgqphnfmanbl9zij4qsmin8n866mhc"))))
803f30d7
DC
853 (build-system cmake-build-system)
854 (native-inputs
03ac4824 855 `(("extra-cmake-modules" ,extra-cmake-modules)))
803f30d7 856 (inputs
0cd3e818
HG
857 `(("qtbase" ,qtbase)
858 ("qtdeclarative" ,qtdeclarative)))
803f30d7
DC
859 (arguments
860 `(#:phases
110e4bea 861 (modify-phases %standard-phases
03ac4824
HG
862 (add-before 'check 'check-setup
863 (lambda _
864 ;; make Qt render "offscreen", required for tests
865 (setenv "QT_QPA_PLATFORM" "offscreen")
803f30d7
DC
866 #t)))))
867 (home-page "https://community.kde.org/Frameworks")
868 (synopsis "Set of item models extending the Qt model-view framework")
869 (description "KItemModels provides the following models:
870
a0cbf1b9 871@enumerate
803f30d7
DC
872@item KBreadcrumbSelectionModel - Selects the parents of selected items to
873create breadcrumbs.
874
875@item KCheckableProxyModel - Adds a checkable capability to a source model.
876
877@item KConcatenateRowsProxyModel - Concatenates rows from multiple source models.
878
879@item KDescendantsProxyModel - Proxy Model for restructuring a Tree into a list.
880
881@item KExtraColumnsProxyModel - Adds columns after existing columns.
882
883@item KLinkItemSelectionModel - Share a selection in multiple views which do
884not have the same source model.
885
886@item KModelIndexProxyMapper - Mapping of indexes and selections through proxy
887models.
888
889@item KRearrangeColumnsProxyModel - Can reorder and hide columns from the source
890model.
891
892@item KRecursiveFilterProxyModel - Recursive filtering of models.
893
894@item KSelectionProxyModel - A Proxy Model which presents a subset of its source
895model to observers
a0cbf1b9 896@end enumerate")
803f30d7
DC
897 (license license:lgpl2.1+)))
898
d2e4c02d
DC
899(define-public kitemviews
900 (package
901 (name "kitemviews")
431ff8be 902 (version "5.42.0")
701d7a9b
DC
903 (source (origin
904 (method url-fetch)
905 (uri (string-append
906 "mirror://kde/stable/frameworks/"
907 (version-major+minor version) "/"
908 name "-" version ".tar.xz"))
909 (sha256
910 (base32
431ff8be 911 "1j1q0b08f8mnfc3r2a7rplyb2nv9f0aq5a3fxskinvg70c6y248w"))))
d2e4c02d
DC
912 (build-system cmake-build-system)
913 (native-inputs
914 `(("extra-cmake-modules" ,extra-cmake-modules)
03ac4824 915 ("qttools" ,qttools)))
d2e4c02d
DC
916 (inputs
917 `(("qtbase" ,qtbase)))
918 (arguments
919 `(#:phases
701d7a9b
DC
920 (modify-phases %standard-phases
921 (add-before 'check 'check-setup
922 (lambda _
923 (setenv "DBUS_FATAL_WARNINGS" "0")
03ac4824
HG
924 ;; make Qt render "offscreen", required for tests
925 (setenv "QT_QPA_PLATFORM" "offscreen")
d2e4c02d
DC
926 #t)))))
927 (home-page "https://community.kde.org/Frameworks")
928 (synopsis "Set of item views extending the Qt model-view framework")
929 (description "KItemViews includes a set of views, which can be used with
930item models. It includes views for categorizing lists and to add search filters
931to flat and hierarchical lists.")
932 (license (list license:gpl2+ license:lgpl2.1+))))
933
a51cdaef
DC
934(define-public kplotting
935 (package
936 (name "kplotting")
431ff8be 937 (version "5.42.0")
a7ec016c
DC
938 (source (origin
939 (method url-fetch)
940 (uri (string-append
941 "mirror://kde/stable/frameworks/"
942 (version-major+minor version) "/"
943 name "-" version ".tar.xz"))
944 (sha256
945 (base32
431ff8be 946 "109b9grshrwralyp8ilkbf1k0akaggygqh6wafqdf0ris0ps13l9"))))
a51cdaef
DC
947 (build-system cmake-build-system)
948 (native-inputs
03ac4824 949 `(("extra-cmake-modules" ,extra-cmake-modules)))
a51cdaef
DC
950 (inputs
951 `(("qtbase" ,qtbase)))
952 (arguments
953 `(#:phases
a7ec016c 954 (modify-phases %standard-phases
03ac4824
HG
955 (add-before 'check 'check-setup
956 (lambda _ ; kplotting
957 ;; make Qt render "offscreen", required for tests
958 (setenv "QT_QPA_PLATFORM" "offscreen")
a51cdaef
DC
959 #t)))))
960 (home-page "https://community.kde.org/Frameworks")
961 (synopsis "Data plotting library")
962 (description "KPlotWidget is a QWidget-derived class that provides a virtual
963base class for easy data-plotting. The idea behind KPlotWidget is that you only
964have to specify information in \"data units\", the natural units of the
965data being plotted. KPlotWidget automatically converts everything to screen
966pixel units.")
967 (license license:lgpl2.1+)))
968
c1265fcc
HG
969(define-public ksyntaxhighlighting
970 (package
971 (name "ksyntaxhighlighting")
431ff8be 972 (version "5.42.0")
c1265fcc
HG
973 (source (origin
974 (method url-fetch)
975 (uri (string-append
976 "mirror://kde/stable/frameworks/"
977 (version-major+minor version) "/"
978 "syntax-highlighting-" version ".tar.xz"))
979 (sha256
980 (base32
431ff8be 981 "1iwiym50859jki4x41rfdmbd14jiq5lr2hdg46pjkyw17njdjd60"))))
c1265fcc
HG
982 (build-system cmake-build-system)
983 (native-inputs
984 `(("extra-cmake-modules" ,extra-cmake-modules)
985 ("perl" ,perl)
4467c2d1 986 ("qttools" ,qttools)
c1265fcc
HG
987 ;; Optional, for compile-time validation of syntax definition files:
988 ("qtxmlpatterns" ,qtxmlpatterns)))
989 (inputs
990 `(("qtbase" ,qtbase)))
991 (arguments
992 `(#:phases
993 (modify-phases %standard-phases
994 (add-after 'patch-source-shebangs 'unpatch-source-shebang
995 (lambda _
996 ;; revert the patch-shebang phase on scripts which are
997 ;; in fact test data
998 (substitute* '("autotests/input/test.bash"
999 "autotests/folding/test.bash.fold")
1000 (((which "bash")) "/bin/bash"))
1001 (substitute* '("autotests/input/highlight.sh"
1002 "autotests/folding/highlight.sh.fold")
1003 (((which "sh")) " /bin/sh")) ;; space in front!
1004 (substitute* '("autotests/input/highlight.pl"
1005 "autotests/folding/highlight.pl.fold")
1006 (((which "perl")) "/usr/bin/perl"))
c1265fcc
HG
1007 #t)))))
1008 (home-page "https://community.kde.org/Frameworks")
1009 (synopsis "Syntax highlighting engine for Kate syntax definitions")
1010 (description "This is a stand-alone implementation of the Kate syntax
1011highlighting engine. It's meant as a building block for text editors as well
1012as for simple highlighted text rendering (e.g. as HTML), supporting both
1013integration with a custom editor as well as a ready-to-use
1014@code{QSyntaxHighlighter} sub-class.")
de5a235c 1015 (properties `((upstream-name . "syntax-highlighting")))
c1265fcc
HG
1016 (license license:lgpl2.1+)))
1017
d5348b3f
DC
1018(define-public kwayland
1019 (package
1020 (name "kwayland")
431ff8be 1021 (version "5.42.0")
3dfcaf33
DC
1022 (source (origin
1023 (method url-fetch)
1024 (uri (string-append
1025 "mirror://kde/stable/frameworks/"
1026 (version-major+minor version) "/"
1027 name "-" version ".tar.xz"))
1028 (sha256
1029 (base32
431ff8be 1030 "0wr6ygppahxsx3dh71h2wmybv7z7iyqdv7wn80cxb0mp4zpyinh7"))))
d5348b3f
DC
1031 (build-system cmake-build-system)
1032 (native-inputs
1033 `(("extra-cmake-modules" ,extra-cmake-modules)
1034 ("pkg-config" ,pkg-config)))
1035 (inputs
1036 `(("qtbase" ,qtbase)
1037 ("wayland" ,wayland)))
1038 (arguments
1039 `(#:tests? #f ; FIXME tests require weston to run
1040 ; weston requires wayland flags in mesa
1041 #:phases
3dfcaf33
DC
1042 (modify-phases %standard-phases
1043 (add-before 'check 'check-setup
1044 (lambda _
1045 (setenv "XDG_RUNTIME_DIR" "/tmp")
1046 #t)))))
d5348b3f
DC
1047 (home-page "https://community.kde.org/Frameworks")
1048 (synopsis "Qt-style API to interact with the wayland client and server")
1049 (description "As the names suggest they implement a Client respectively a
1050Server API for the Wayland protocol. The API is Qt-styled removing the needs to
1051interact with a for a Qt developer uncomfortable low-level C-API. For example
1052the callback mechanism from the Wayland API is replaced by signals, data types
1053are adjusted to be what a Qt developer expects - two arguments of int are
1054represented by a QPoint or a QSize.")
1055 (license license:lgpl2.1+)))
1056
5e22e8ed
DC
1057(define-public kwidgetsaddons
1058 (package
1059 (name "kwidgetsaddons")
431ff8be 1060 (version "5.42.1")
5a3f0709
DC
1061 (source (origin
1062 (method url-fetch)
1063 (uri (string-append
1064 "mirror://kde/stable/frameworks/"
1065 (version-major+minor version) "/"
1066 name "-" version ".tar.xz"))
1067 (sha256
1068 (base32
431ff8be 1069 "0h0vfrfl5zi01fpvmd825kazzlyawz3i66qrfkymdrnvqmfzcmlg"))))
5e22e8ed
DC
1070 (build-system cmake-build-system)
1071 (native-inputs
1072 `(("extra-cmake-modules" ,extra-cmake-modules)
1073 ("qttools" ,qttools)
1074 ("xorg-server" ,xorg-server)))
1075 (inputs
1076 `(("qtbase" ,qtbase)))
1077 (arguments
3406d0b3 1078 `(#:phases
5a3f0709
DC
1079 (modify-phases %standard-phases
1080 (add-before 'check 'check-setup
1081 (lambda _
94e24d81
HG
1082 ;; make Qt render "offscreen", required for tests
1083 (setenv "QT_QPA_PLATFORM" "offscreen")
5a3f0709
DC
1084 (setenv "DBUS_FATAL_WARNINGS" "0")
1085 #t))
1086 (add-before 'check 'start-xorg-server
1087 (lambda* (#:key inputs #:allow-other-keys)
1088 ;; The test suite requires a running X server.
1089 ;; Xvfb doesn't have proper glx support and needs a pixeldepth
1090 ;; of 24 bit to avoid "libGL error: failed to load driver: swrast"
1091 ;; "Could not initialize GLX"
1092 (system (string-append (assoc-ref inputs "xorg-server")
1093 "/bin/Xvfb :1 -screen 0 640x480x24 &"))
1094 (setenv "DISPLAY" ":1")
1095 #t)))))
5e22e8ed
DC
1096 (home-page "https://community.kde.org/Frameworks")
1097 (synopsis "Large set of desktop widgets")
1098 (description "Provided are action classes that can be added to toolbars or
1099menus, a wide range of widgets for selecting characters, fonts, colors, actions,
1100dates and times, or MIME types, as well as platform-aware dialogs for
1101configuration pages, message boxes, and password requests.")
1102 (license (list license:gpl2+ license:lgpl2.1+))))
1103
4a827670
AE
1104(define-public kwindowsystem
1105 (package
1106 (name "kwindowsystem")
431ff8be 1107 (version "5.42.0")
48311df9
DC
1108 (source (origin
1109 (method url-fetch)
1110 (uri (string-append
1111 "mirror://kde/stable/frameworks/"
1112 (version-major+minor version) "/"
1113 name "-" version ".tar.xz"))
1114 (sha256
1115 (base32
431ff8be 1116 "15k6x0f93qxka3mz7qfzak2ibdd88q77pz6akil8s3g41zsg2dqv"))))
4a827670
AE
1117 (build-system cmake-build-system)
1118 (native-inputs
861748ef
DC
1119 `(("extra-cmake-modules" ,extra-cmake-modules)
1120 ("pkg-config" ,pkg-config)
ed4a3ec6 1121 ("dbus" ,dbus) ; for the tests
861748ef 1122 ("qttools" ,qttools)
c73210d7 1123 ("xorg-server" ,xorg-server))) ; for the tests
4a827670 1124 (inputs
861748ef
DC
1125 `(("libxrender" ,libxrender)
1126 ("qtbase" ,qtbase)
1127 ("qtx11extras" ,qtx11extras)
c73210d7 1128 ("xcb-utils-keysyms" ,xcb-util-keysyms)))
4a827670 1129 (arguments
ed4a3ec6
HG
1130 `(#:tests? #f ; FIXME: 3/12 tests fail.
1131 #:phases
1132 (modify-phases %standard-phases
1133 (delete 'check)
1134 (add-after 'install 'check
1135 (lambda* (#:key inputs outputs tests? #:allow-other-keys)
1136 ;; TODO: Simplify and use "common" phases when test-suite passes
1137 (if tests?
1138 (begin
1139 (let ((out (assoc-ref outputs "out")))
1140 (setenv "QT_PLUGIN_PATH"
61cc757d 1141 (string-append out "/lib/qt5/plugins:"
ed4a3ec6
HG
1142 (getenv "QT_PLUGIN_PATH"))))
1143 ;; The test suite requires a running X server, setting
1144 ;; QT_QPA_PLATFORM=offscreen does not suffice and even make
1145 ;; some tests fail.
1146 (system (string-append (assoc-ref inputs "xorg-server")
1147 "/bin/Xvfb :1 -screen 0 640x480x24 &"))
1148 (setenv "DISPLAY" ":1")
1149 (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
1150 (setenv "DBUS_FATAL_WARNINGS" "0")
1151 (zero? (system* "dbus-launch" "ctest" ".")))
1152 (begin
1153 (format #t "test suite not run~%")
1154 #t)))))))
4a827670
AE
1155 (home-page "https://community.kde.org/Frameworks")
1156 (synopsis "KDE access to the windowing system")
1157 (description "KWindowSystem provides information about and allows
1158interaction with the windowing system. It provides a high level API, which
1159is windowing system independent and has platform specific
1160implementations. This API is inspired by X11 and thus not all functionality
1161is available on all windowing systems.
1162
1163In addition to the high level API, this framework also provides several
1164lower level classes for interaction with the X Windowing System.")
1165 ;; Some source files mention lgpl2.0+, but the included license is
1166 ;; the lgpl2.1. Some source files are under non-copyleft licenses.
1167 (license license:lgpl2.1+)))
d8ea2782 1168
208094b4
DC
1169(define-public modemmanager-qt
1170 (package
1171 (name "modemmanager-qt")
431ff8be 1172 (version "5.42.0")
48e789da
DC
1173 (source (origin
1174 (method url-fetch)
1175 (uri (string-append
1176 "mirror://kde/stable/frameworks/"
1177 (version-major+minor version) "/"
1178 name "-" version ".tar.xz"))
1179 (sha256
1180 (base32
431ff8be 1181 "0q6qzn60z55h0gyc9xwdfaq45mjpk3zrr6d4qqjjfkqsr3866sfx"))))
208094b4
DC
1182 (build-system cmake-build-system)
1183 (native-inputs
1184 `(("extra-cmake-modules" ,extra-cmake-modules)
1185 ("dbus" ,dbus)
1186 ("pkg-config" ,pkg-config)))
a7d0154c 1187 (propagated-inputs
48e789da 1188 ;; Headers contain #include <ModemManager/ModemManager.h>
c695fb76 1189 `(("modem-manager" ,modem-manager)))
208094b4 1190 (inputs
a7d0154c 1191 `(("qtbase" ,qtbase)))
208094b4
DC
1192 (arguments
1193 `(#:phases
48e789da
DC
1194 (modify-phases %standard-phases
1195 (replace 'check
1196 (lambda _
1197 (setenv "DBUS_FATAL_WARNINGS" "0")
1198 (zero? (system* "dbus-launch" "ctest" ".")))))))
208094b4
DC
1199 (home-page "https://community.kde.org/Frameworks")
1200 (synopsis "Qt wrapper for ModemManager DBus API")
1201 (description "ModemManagerQt provides access to all ModemManager features
1202exposed on DBus. It allows you to manage modem devices and access to
1203information available for your modem devices, like signal, location and
1204messages.")
1205 (license license:lgpl2.1+)))
1206
864c25f4
DC
1207(define-public networkmanager-qt
1208 (package
1209 (name "networkmanager-qt")
431ff8be 1210 (version "5.42.0")
c3fefc81
DC
1211 (source (origin
1212 (method url-fetch)
1213 (uri (string-append
1214 "mirror://kde/stable/frameworks/"
1215 (version-major+minor version) "/"
1216 name "-" version ".tar.xz"))
1217 (sha256
1218 (base32
431ff8be 1219 "03hhvx8d52mfgbhd4gn0vhsk9k1fv1pvq24ixxdgs2mw44v884xq"))))
c3fefc81
DC
1220 (build-system cmake-build-system)
1221 (native-inputs
1222 `(("extra-cmake-modules" ,extra-cmake-modules)
1223 ("dbus" ,dbus)
1224 ("pkg-config" ,pkg-config)))
1225 (propagated-inputs
1226 ;; Headers contain #include <NetworkManager.h> and
1227 ;; #include <libnm/NetworkManager.h>
1228 `(("network-manager" ,network-manager)))
1229 (inputs
1230 `(("qtbase" ,qtbase)))
1231 (arguments
1232 `(#:phases
1233 (modify-phases %standard-phases
1234 (replace 'check
1235 (lambda _
1236 (setenv "DBUS_FATAL_WARNINGS" "0")
1237 (zero? (system* "dbus-launch" "ctest" ".")))))))
1238 (home-page "https://community.kde.org/Frameworks")
1239 (synopsis "Qt wrapper for NetworkManager DBus API")
1240 (description "NetworkManagerQt provides access to all NetworkManager
864c25f4
DC
1241features exposed on DBus. It allows you to manage your connections and control
1242your network devices and also provides a library for parsing connection settings
1243which are used in DBus communication.")
c3fefc81 1244 (license license:lgpl2.1+)))
864c25f4 1245
d8ea2782
EF
1246(define-public oxygen-icons
1247 (package
1248 (name "oxygen-icons")
431ff8be 1249 (version "5.42.0")
beb21382
DC
1250 (source (origin
1251 (method url-fetch)
1252 (uri (string-append
1253 "mirror://kde/stable/frameworks/"
1254 (version-major+minor version) "/"
1255 name "5" "-" version ".tar.xz"))
1256 (sha256
1257 (base32
431ff8be 1258 "0pnav9h0xmvbaamzpcyznjjv25slz8maszshx7sj7h07b5a23x46"))))
d8ea2782
EF
1259 (build-system cmake-build-system)
1260 (native-inputs
beb21382
DC
1261 `(("extra-cmake-modules" ,extra-cmake-modules)
1262 ("fdupes" ,fdupes)))
d8ea2782 1263 (inputs
b54c2cfc 1264 `(("qtbase" ,qtbase)))
d8ea2782 1265 (home-page "https://community.kde.org/Frameworks")
66e07664 1266 (synopsis "Oxygen provides the standard icon theme for the KDE desktop")
d8ea2782 1267 (description "Oxygen icon theme for the KDE desktop")
683c5ab7
LC
1268 (license license:lgpl3+)
1269 (properties '((upstream-name . "oxygen-icons5")))))
9fd502ce 1270
1289001a
HG
1271(define-public prison
1272 (package
1273 (name "prison")
431ff8be 1274 (version "5.42.0")
1289001a
HG
1275 (source
1276 (origin
1277 (method url-fetch)
1278 (uri (string-append "mirror://kde/stable/frameworks/"
1279 (version-major+minor version) "/"
1280 name "-" version ".tar.xz"))
1281 (sha256
431ff8be 1282 (base32 "0bhg2fjdwsv7mk16jh1nc3miwggz1dl9l99l2f20xvi75hn7rryg"))))
1289001a
HG
1283 (build-system cmake-build-system)
1284 (native-inputs
1285 `(("extra-cmake-modules" ,extra-cmake-modules)))
1286 (inputs
c695fb76 1287 `(("libdmtx" ,libdmtx)
1289001a
HG
1288 ("qrencode" ,qrencode)
1289 ("qtbase" ,qtbase))) ;; TODO: rethink: nix propagates this
1290 (home-page "https://api.kde.org/frameworks/prison/html/index.html")
1291 (synopsis "Barcode generation abstraction layer")
1292 (description "Prison is a Qt-based barcode abstraction layer/library and
1293provides uniform access to generation of barcodes with data.")
1294 (license license:lgpl2.1+)))
1295
102fc5bc
HG
1296(define-public qqc2-desktop-style
1297 (package
1298 (name "qqc2-desktop-style")
1299 (version "5.42.0")
1300 (source (origin
1301 (method url-fetch)
1302 (uri (string-append
1303 "mirror://kde/stable/frameworks/"
1304 (version-major+minor version) "/"
1305 name "-" version ".tar.xz"))
1306 (sha256
1307 (base32
1308 "1arlfhcshfs11pgf87jzjgln1p711zlx0v0q014740mbzb9g5wnk"))))
1309 (build-system cmake-build-system)
1310 (native-inputs
1311 `(("extra-cmake-modules" ,extra-cmake-modules)
1312 ("pkg-config" ,pkg-config)))
1313 (inputs
1314 `(("kauth" ,kauth)
1315 ("kconfigwidgets" ,kconfigwidgets) ; optional
1316 ("kcoreaddons" ,kcoreaddons)
1317 ("kiconthemes" ,kiconthemes) ; optional
1318 ("kirigami" ,kirigami)
1319 ("qtbase" ,qtbase)
7e4e3df4
HG
1320 ("qtdeclarative" ,qtdeclarative)
1321 ("qtquickcontrols2" ,qtquickcontrols2)))
102fc5bc
HG
1322 (home-page "https://community.kde.org/Frameworks")
1323 (synopsis "QtQuickControls2 style that integrates with the desktop")
1324 (description "This is a style for QtQuickControls2 which is using
1325QWidget's QStyle to paint the controls in order to give it a native look and
1326feel.")
1327 ;; Mostly LGPL 2+, but many files are dual-licensed
1328 (license (list license:lgpl2.1+ license:gpl3+))))
1329
9fd502ce
DC
1330(define-public solid
1331 (package
1332 (name "solid")
431ff8be 1333 (version "5.42.0")
6ad3befe
DC
1334 (source (origin
1335 (method url-fetch)
1336 (uri (string-append
1337 "mirror://kde/stable/frameworks/"
1338 (version-major+minor version) "/"
1339 name "-" version ".tar.xz"))
1340 (sha256
1341 (base32
431ff8be 1342 "10lr8paaq6vaiqn833kzcdc3kkyv8j9fdchy7h8pvi9ajjjwq0lq"))))
9fd502ce 1343 (build-system cmake-build-system)
9eb0f430
HG
1344 (arguments
1345 `(#:phases
1346 (modify-phases %standard-phases
1347 (replace 'check
1348 (lambda _
1349 (setenv "DBUS_FATAL_WARNINGS" "0")
1350 (zero? (system* "dbus-launch" "ctest" ".")))))))
9fd502ce
DC
1351 (native-inputs
1352 `(("bison" ,bison)
9eb0f430 1353 ("dbus" ,dbus)
9fd502ce 1354 ("extra-cmake-modules" ,extra-cmake-modules)
83dcfa72 1355 ("flex" ,flex)
9fd502ce
DC
1356 ("qttools" ,qttools)))
1357 (inputs
1358 `(("qtbase" ,qtbase)
e8737735 1359 ("qtdeclarative" ,qtdeclarative)
9fd502ce 1360 ("udev" ,eudev)))
1e0ae3b3 1361 ;; TODO: Add runtime-only dependency MediaPlayerInfo
9fd502ce
DC
1362 (home-page "https://community.kde.org/Frameworks")
1363 (synopsis "Desktop hardware abstraction")
1364 (description "Solid is a device integration framework. It provides a way of
1365querying and interacting with hardware independently of the underlying operating
1366system.")
1367 (license license:lgpl2.1+)))
39e547f2
DC
1368
1369(define-public sonnet
1370 (package
1371 (name "sonnet")
431ff8be 1372 (version "5.42.0")
71b37f7a
DC
1373 (source (origin
1374 (method url-fetch)
1375 (uri (string-append
1376 "mirror://kde/stable/frameworks/"
1377 (version-major+minor version) "/"
1378 name "-" version ".tar.xz"))
1379 (sha256
1380 (base32
431ff8be 1381 "1r3amddmy0nm8klw0jzvb8bl1l9hkrx50d8j0zq2lbjy36h3yliw"))))
39e547f2 1382 (build-system cmake-build-system)
431ff8be
HG
1383 (arguments
1384 `(#:phases
1385 (modify-phases %standard-phases
1386 (add-before 'check 'check-setup
1387 (lambda _
1388 ;; make Qt render "offscreen", required for tests
1389 (setenv "QT_QPA_PLATFORM" "offscreen")
1390 #t)))))
39e547f2
DC
1391 (native-inputs
1392 `(("extra-cmake-modules" ,extra-cmake-modules)
91499e45 1393 ("pkg-config" ,pkg-config)
39e547f2
DC
1394 ("qttools" ,qttools)))
1395 (inputs
ab313cd0
HG
1396 `(("hunspell" ,hunspell)
1397 ;; TODO: hspell (for Hebrew), Voikko (for Finish)
1398 ("qtbase" ,qtbase)))
39e547f2
DC
1399 (home-page "https://community.kde.org/Frameworks")
1400 (synopsis "Multi-language spell checker")
1401 (description "Sonnet is a plugin-based spell checking library for Qt-based
1402applications. It supports several different plugins, including HSpell, Enchant,
1403ASpell and HUNSPELL.")
1404 (license license:lgpl2.1+)))
60f75c8f
DC
1405
1406(define-public threadweaver
1407 (package
1408 (name "threadweaver")
431ff8be 1409 (version "5.42.0")
01fc411d
DC
1410 (source (origin
1411 (method url-fetch)
1412 (uri (string-append
1413 "mirror://kde/stable/frameworks/"
1414 (version-major+minor version) "/"
1415 name "-" version ".tar.xz"))
1416 (sha256
1417 (base32
431ff8be 1418 "1isqlpnfxzxyz7mdm7yfrafgnx09mcndicdgdw3mi4r4misbrrbn"))))
60f75c8f
DC
1419 (build-system cmake-build-system)
1420 (native-inputs
1421 `(("extra-cmake-modules" ,extra-cmake-modules)))
1422 (inputs
1423 `(("qtbase" ,qtbase)))
1424 (home-page "https://community.kde.org/Frameworks")
1425 (synopsis "Helper for multithreaded programming")
1426 (description "ThreadWeaver is a helper for multithreaded programming. It
1427uses a job-based interface to queue tasks and execute them in an efficient way.")
1428 (license license:lgpl2.1+)))
46c27be1
DC
1429
1430
1431;; Tier 2
1432;;
1433;; Tier 2 frameworks additionally depend on tier 1 frameworks, but still have
1434;; easily manageable dependencies.
1435
39d1a429
HG
1436(define-public kactivities
1437 (package
1438 (name "kactivities")
431ff8be 1439 (version "5.42.0")
39d1a429
HG
1440 (source (origin
1441 (method url-fetch)
1442 (uri (string-append
1443 "mirror://kde/stable/frameworks/"
1444 (version-major+minor version) "/"
1445 name "-" version ".tar.xz"))
1446 (sha256
1447 (base32
431ff8be 1448 "0z0ac426npq99s1b8yzrqkjjjc34nbxlpw8pw388yj7fa41hw21r"))))
39d1a429
HG
1449 (build-system cmake-build-system)
1450 (native-inputs
1451 `(("extra-cmake-modules" ,extra-cmake-modules)))
1452 (inputs
1453 `(("boost" ,boost)
1454 ("kauth" ,kauth)
1455 ("kbookmarks" ,kbookmarks)
1456 ("kcodecs" ,kcodecs)
1457 ("kcompletion" ,kcompletion)
1458 ("kconfig" ,kconfig)
1459 ("kconfigwidgets" ,kconfigwidgets)
1460 ("kcoreaddons" ,kcoreaddons)
1461 ("kio" ,kio)
1462 ("kitemviews" ,kitemviews)
1463 ("kjobwidgets" ,kjobwidgets)
1464 ("kservice" ,kservice)
1465 ("kwidgetsaddons" ,kwidgetsaddons)
1466 ("kwindowsystem" ,kwindowsystem)
1467 ("kxmlgui" ,kxmlgui)
1468 ("qtbase" ,qtbase)
1469 ("qtdeclarative" ,qtdeclarative)
1470 ("solid" ,solid)))
1471 (home-page "https://community.kde.org/Frameworks")
1472 (synopsis "Core components for the KDE Activity concept")
1473 (description "KActivities provides the infrastructure needed to manage a
1474user's activities, allowing them to switch between tasks, and for applications
1475to update their state to match the user's current activity. This includes a
1476daemon, a library for interacting with that daemon, and plugins for integration
1477with other frameworks.")
1478 ;; triple licensed
1479 (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
1480
46c27be1
DC
1481(define-public kauth
1482 (package
1483 (name "kauth")
431ff8be 1484 (version "5.42.0")
62dee732
DC
1485 (source (origin
1486 (method url-fetch)
1487 (uri (string-append
1488 "mirror://kde/stable/frameworks/"
1489 (version-major+minor version) "/"
1490 name "-" version ".tar.xz"))
1491 (sha256
1492 (base32
431ff8be 1493 "04kqb2hhr9lkpkxiaqlnyk0kmk6p89z5fgp5i5g83hsi8maz7swi"))))
46c27be1
DC
1494 (build-system cmake-build-system)
1495 (native-inputs
1496 `(("dbus" ,dbus)
1497 ("extra-cmake-modules" ,extra-cmake-modules)
1498 ("qttools" ,qttools)))
1499 (inputs
1500 `(("kcoreaddons" ,kcoreaddons)
1501 ("polkit-qt" ,polkit-qt)
1502 ("qtbase" ,qtbase)))
1503 (arguments
1504 `(#:phases
62dee732 1505 (modify-phases %standard-phases
dc2ef09a
HG
1506 (add-after 'unpack 'fix-cmake-install-directories
1507 (lambda _
1508 ;; Make packages using kauth put their policy files and helpers
1509 ;; into their own prefix.
1510 (substitute* "KF5AuthConfig.cmake.in"
1511 (("@KAUTH_POLICY_FILES_INSTALL_DIR@")
1512 "${KDE_INSTALL_DATADIR}/polkit-1/actions")
1513 (("@KAUTH_HELPER_INSTALL_DIR@")
1514 "${KDE_INSTALL_LIBEXECDIR}")
1515 (("@KAUTH_HELPER_INSTALL_ABSOLUTE_DIR@")
1516 "${KDE_INSTALL_LIBEXECDIR}"))))
62dee732
DC
1517 (replace 'check
1518 (lambda _
1519 (setenv "DBUS_FATAL_WARNINGS" "0")
1520 (zero? (system* "dbus-launch" "ctest" ".")))))))
46c27be1
DC
1521 (home-page "https://community.kde.org/Frameworks")
1522 (synopsis "Execute actions as privileged user")
1523 (description "KAuth provides a convenient, system-integrated way to offload
1524actions that need to be performed as a privileged user to small set of helper
1525utilities.")
1526 (license license:lgpl2.1+)))
13094df1
DC
1527
1528(define-public kcompletion
1529 (package
1530 (name "kcompletion")
431ff8be 1531 (version "5.42.0")
17b5144a
DC
1532 (source (origin
1533 (method url-fetch)
1534 (uri (string-append
1535 "mirror://kde/stable/frameworks/"
1536 (version-major+minor version) "/"
1537 name "-" version ".tar.xz"))
1538 (sha256
1539 (base32
431ff8be 1540 "0yqci2v0dk5v1mz4n3gca599a7mpihy563zc6sl8hsa30ld8li0f"))))
13094df1
DC
1541 (build-system cmake-build-system)
1542 (native-inputs
1543 `(("extra-cmake-modules" ,extra-cmake-modules)
72b073ca 1544 ("qttools" ,qttools)))
13094df1
DC
1545 (inputs
1546 `(("kconfig" ,kconfig)
1547 ("kwidgetsaddons" ,kwidgetsaddons)
1548 ("qtbase" ,qtbase)))
1549 (arguments
1550 `(#:phases
17b5144a
DC
1551 (modify-phases %standard-phases
1552 (add-before 'check 'check-setup
1553 (lambda _
94e24d81 1554 ;; make Qt render "offscreen", required for tests
17b5144a
DC
1555 (setenv "QT_QPA_PLATFORM" "offscreen")
1556 #t)))))
13094df1
DC
1557 (home-page "https://community.kde.org/Frameworks")
1558 (synopsis "Powerful autocompletion framework and widgets")
1559 (description "This framework helps implement autocompletion in Qt-based
1560applications. It provides a set of completion-ready widgets, or can be
1561integrated it into your application's other widgets.")
1562 (license license:lgpl2.1+)))
4d92ceb5
DC
1563
1564(define-public kcrash
1565 (package
1566 (name "kcrash")
431ff8be 1567 (version "5.42.0")
075eeb35
DC
1568 (source (origin
1569 (method url-fetch)
1570 (uri (string-append
1571 "mirror://kde/stable/frameworks/"
1572 (version-major+minor version) "/"
1573 name "-" version ".tar.xz"))
1574 (sha256
1575 (base32
431ff8be 1576 "049y0xdyw37y0qid3d3plj8szfys5gw98j7lhcakiini8mn5cins"))))
4d92ceb5
DC
1577 (build-system cmake-build-system)
1578 (native-inputs
03ac4824 1579 `(("extra-cmake-modules" ,extra-cmake-modules)))
4d92ceb5
DC
1580 (inputs
1581 `(("kcoreaddons" ,kcoreaddons)
1582 ("kwindowsystem" ,kwindowsystem)
1583 ("qtbase" ,qtbase)
1584 ("qtx11extras" ,qtx11extras)))
1585 (arguments
1586 `(#:phases
075eeb35 1587 (modify-phases %standard-phases
03ac4824
HG
1588 (add-before 'check 'check-setup
1589 (lambda _
1590 ;; make Qt render "offscreen", required for tests
1591 (setenv "QT_QPA_PLATFORM" "offscreen")
4d92ceb5
DC
1592 #t)))))
1593 (home-page "https://community.kde.org/Frameworks")
1594 (synopsis "Graceful handling of application crashes")
1595 (description "KCrash provides support for intercepting and handling
1596application crashes.")
1597 (license license:lgpl2.1+)))
110db07d
DC
1598
1599(define-public kdoctools
1600 (package
1601 (name "kdoctools")
431ff8be 1602 (version "5.42.0")
f5dae6ae
DC
1603 (source (origin
1604 (method url-fetch)
1605 (uri (string-append
1606 "mirror://kde/stable/frameworks/"
1607 (version-major+minor version) "/"
1608 name "-" version ".tar.xz"))
1609 (sha256
1610 (base32
431ff8be 1611 "1bby3avdllch1mji0mxzcix8q5yir5a0i6wpjs5lwckv1glh6kmz"))))
110db07d
DC
1612 (build-system cmake-build-system)
1613 (native-inputs
1614 `(("extra-cmake-modules" ,extra-cmake-modules)))
1615 (inputs
1616 `(("docbook-xml" ,docbook-xml)
1617 ("docbook-xsl" ,docbook-xsl)
1618 ("karchive" ,karchive)
1619 ("ki18n" ,ki18n)
1620 ("libxml2" ,libxml2)
1621 ("libxslt" ,libxslt)
1622 ("perl" ,perl)
1623 ("perl-uri" ,perl-uri)
1624 ("qtbase" ,qtbase)))
1625 (arguments
1626 `(#:phases
f5dae6ae
DC
1627 (modify-phases %standard-phases
1628 (add-after 'unpack 'cmake-find-docbook
1629 (lambda* (#:key inputs #:allow-other-keys)
1630 (substitute* (find-files "cmake" "\\.cmake$")
1631 (("CMAKE_SYSTEM_PREFIX_PATH")
1632 "CMAKE_PREFIX_PATH"))
1633 (substitute* "cmake/FindDocBookXML4.cmake"
1634 (("^.*xml/docbook/schema/dtd.*$")
1635 "xml/dtd/docbook\n"))
1636 (substitute* "cmake/FindDocBookXSL.cmake"
1637 (("^.*xml/docbook/stylesheet.*$")
1638 (string-append "xml/xsl/docbook-xsl-"
1639 ,(package-version docbook-xsl) "\n")))
f96302ab
HG
1640 #t))
1641 (add-after 'install 'add-symlinks
1642 ;; Some package(s) (e.g. kdelibs4support) refer to this locale by a
1643 ;; different spelling.
1644 (lambda* (#:key outputs #:allow-other-keys)
1645 (let ((xsl (string-append (assoc-ref outputs "out")
1646 "/share/kf5/kdoctools/customization/xsl/")))
1647 (symlink (string-append xsl "pt_br.xml")
1648 (string-append xsl "pt-BR.xml")))
f5dae6ae 1649 #t)))))
110db07d
DC
1650 (home-page "https://community.kde.org/Frameworks")
1651 (synopsis "Create documentation from DocBook")
1652 (description "Provides tools to generate documentation in various format
1653from DocBook files.")
1654 (license license:lgpl2.1+)))
b05eb5dd
DC
1655
1656(define-public kfilemetadata
1657 (package
1658 (name "kfilemetadata")
431ff8be 1659 (version "5.42.0")
3f34662b
DC
1660 (source (origin
1661 (method url-fetch)
1662 (uri (string-append
1663 "mirror://kde/stable/frameworks/"
1664 (version-major+minor version) "/"
1665 name "-" version ".tar.xz"))
1666 (sha256
1667 (base32
431ff8be 1668 "03wk38q3sq354ykz9dwbgykn73ldf94ryx6hxvpr66bq3a59jmwz"))))
b05eb5dd 1669 (build-system cmake-build-system)
9eb0f430
HG
1670 (arguments
1671 `(#:phases
1672 (modify-phases %standard-phases
431ff8be
HG
1673 (add-before 'check 'disable-failing-test
1674 (lambda _
1675 ;; Blacklist a failing test-function. FIXME: Make it pass.
1676 ;; UserMetaDataWriterTest fails with getxattr("…/writertest.txt")
1677 ;; -> EOPNOTSUPP (Operation not supported)
1678 (with-output-to-file "autotests/BLACKLIST"
1679 (lambda _
1680 (display "[test]\n*\n")))
9eb0f430 1681 #t)))))
b05eb5dd
DC
1682 (native-inputs
1683 `(("extra-cmake-modules" ,extra-cmake-modules)
fa10ae4f 1684 ("pkg-config" ,pkg-config)
b05eb5dd
DC
1685 ("python-2" ,python-2)))
1686 (inputs
1687 `(("attr" ,attr)
fa10ae4f 1688 ;; TODO: EPub http://sourceforge.net/projects/ebook-tools
b05eb5dd
DC
1689 ("karchive" ,karchive)
1690 ("ki18n" ,ki18n)
fa10ae4f 1691 ("qtmultimedia" ,qtmultimedia)
9eb0f430
HG
1692 ("qtbase" ,qtbase)
1693 ;; Required run-time packages
1694 ("catdoc" ,catdoc)
1695 ;; Optional run-time packages
1696 ("exiv2" ,exiv2)
1697 ("ffmpeg" ,ffmpeg)
fa10ae4f 1698 ("poppler-qt5" ,poppler-qt5)
9eb0f430 1699 ("taglib" ,taglib)))
b05eb5dd
DC
1700 (home-page "https://community.kde.org/Frameworks")
1701 (synopsis "Extract metadata from different fileformats")
1702 (description "KFileMetaData provides a simple library for extracting the
1703text and metadata from a number of different files. This library is typically
d1e4ad1b 1704used by file indexers to retrieve the metadata. This library can also be used
b05eb5dd
DC
1705by applications to write metadata.")
1706 (license (list license:lgpl2.0 license:lgpl2.1 license:lgpl3))))
8ff1dabe
DC
1707
1708(define-public kimageformats
1709 (package
1710 (name "kimageformats")
431ff8be 1711 (version "5.42.0")
2d64fdb1
DC
1712 (source (origin
1713 (method url-fetch)
1714 (uri (string-append
1715 "mirror://kde/stable/frameworks/"
1716 (version-major+minor version) "/"
1717 name "-" version ".tar.xz"))
1718 (sha256
1719 (base32
431ff8be 1720 "1k67yrmszx7azjzrg478rimbz991lghx4d6dmg22p6dknajd78a6"))))
8ff1dabe
DC
1721 (build-system cmake-build-system)
1722 (native-inputs
92605669
HG
1723 `(("extra-cmake-modules" ,extra-cmake-modules)
1724 ("pkg-config" ,pkg-config)))
8ff1dabe 1725 (inputs
92605669
HG
1726 `(("karchive" ,karchive) ; for Krita and OpenRaster images
1727 ("openexr" ,openexr) ; for OpenEXR high dynamic-range images
1728 ("qtbase" ,qtbase)))
8ff1dabe
DC
1729 (arguments
1730 `(#:phases
1731 (modify-phases %standard-phases
fa274ab2
HG
1732 ;; This test fails regularly (also at KDE CI, see
1733 ;; https://build.kde.org/job/Frameworks%20kimageformats%20kf5-qt5%20XenialQt5.7/6/testReport/)
1734 ;; delete offending portion
de5a235c
EF
1735 (add-after 'unpack 'neuter-read-xcf-test
1736 (lambda _
1737 (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.png")
1738 (delete-file "autotests/read/xcf/simple-rgba-gimp-2.8.10.xcf")))
03ac4824
HG
1739 (add-before 'check 'check-setup
1740 (lambda _
1741 ;; make Qt render "offscreen", required for tests
1742 (setenv "QT_QPA_PLATFORM" "offscreen")
6211aadf
HG
1743 (setenv "QT_PLUGIN_PATH"
1744 (string-append (getcwd) "/bin:"
1745 (getenv "QT_PLUGIN_PATH")))
92605669
HG
1746 #t)))
1747 ;; FIXME: The header files of ilmbase (propagated by openexr) are not
1748 ;; found when included by the header files of openexr, and an explicit
1749 ;; flag needs to be set.
1750 #:configure-flags
1751 (list (string-append "-DCMAKE_CXX_FLAGS=-I"
1752 (assoc-ref %build-inputs "ilmbase")
1753 "/include/OpenEXR"))))
8ff1dabe
DC
1754 (home-page "https://community.kde.org/Frameworks")
1755 (synopsis "Plugins to allow QImage to support extra file formats")
1756 (description "This framework provides additional image format plugins for
1757QtGui. As such it is not required for the compilation of any other software,
1758but may be a runtime requirement for Qt-based software to support certain image
1759formats.")
1760 (license license:lgpl2.1+)))
b2ac012d
DC
1761
1762(define-public kjobwidgets
1763 (package
1764 (name "kjobwidgets")
431ff8be 1765 (version "5.42.0")
4a9f3bf3
DC
1766 (source (origin
1767 (method url-fetch)
1768 (uri (string-append
1769 "mirror://kde/stable/frameworks/"
1770 (version-major+minor version) "/"
1771 name "-" version ".tar.xz"))
1772 (sha256
1773 (base32
431ff8be 1774 "1m3csdl7wh18ywv5p0qpbjpixvflgjcq3yvk3vlvh0sxxlwcz8k4"))))
b2ac012d
DC
1775 (build-system cmake-build-system)
1776 (native-inputs
1777 `(("extra-cmake-modules" ,extra-cmake-modules)
1778 ("qttools" ,qttools)))
1779 (inputs
1780 `(("kcoreaddons" ,kcoreaddons)
1781 ("kwidgetsaddons" ,kwidgetsaddons)
1782 ("qtbase" ,qtbase)
1783 ("qtx11extras" ,qtx11extras)))
1784 (home-page "https://community.kde.org/Frameworks")
1785 (synopsis "Widgets for showing progress of asynchronous jobs")
1786 (description "KJobWIdgets provides widgets for showing progress of
1787asynchronous jobs.")
1788 (license license:lgpl2.1+)))
5801d21f
DC
1789
1790(define-public knotifications
1791 (package
1792 (name "knotifications")
431ff8be 1793 (version "5.42.0")
75073998
DC
1794 (source (origin
1795 (method url-fetch)
1796 (uri (string-append
1797 "mirror://kde/stable/frameworks/"
1798 (version-major+minor version) "/"
1799 name "-" version ".tar.xz"))
1800 (sha256
1801 (base32
431ff8be 1802 "0awmwypmd104vhaj2v9k83niflxj26d4mbl6mzfcj75lgka6kffc"))))
5801d21f
DC
1803 (build-system cmake-build-system)
1804 (native-inputs
1805 `(("extra-cmake-modules" ,extra-cmake-modules)
1806 ("dbus" ,dbus)
1807 ("qttools" ,qttools)))
1808 (inputs
1809 `(("kcodecs" ,kcodecs)
1810 ("kconfig" ,kconfig)
1811 ("kcoreaddons" ,kcoreaddons)
1812 ("kwindowsystem" ,kwindowsystem)
1813 ("phonon" ,phonon)
1814 ("qtbase" ,qtbase)
ac5f3988 1815 ("qtspeech" ,qtspeech)
1e0ae3b3
HG
1816 ;; TODO: Think about adding dbusmenu-qt5 from
1817 ;; https://launchpad.net/libdbusmenu-qt
5801d21f
DC
1818 ("qtx11extras" ,qtx11extras)))
1819 (arguments
1820 `(#:phases
1821 (modify-phases %standard-phases
1822 (add-before 'check 'check-setup
75073998
DC
1823 (lambda _
1824 (setenv "HOME" (getcwd))
1825 #t))
5801d21f 1826 (replace 'check
75073998 1827 (lambda _
5801d21f
DC
1828 (setenv "DBUS_FATAL_WARNINGS" "0")
1829 (zero? (system* "dbus-launch" "ctest" ".")))))))
1830 (home-page "https://community.kde.org/Frameworks")
1831 (synopsis "Desktop notifications")
1832 (description "KNotification is used to notify the user of an event. It
1833covers feedback and persistent events.")
1834 (license license:lgpl2.1+)))
979e18fa
DC
1835
1836(define-public kpackage
1837 (package
1838 (name "kpackage")
431ff8be 1839 (version "5.42.0")
0e6c3057
DC
1840 (source (origin
1841 (method url-fetch)
1842 (uri (string-append
1843 "mirror://kde/stable/frameworks/"
1844 (version-major+minor version) "/"
1845 name "-" version ".tar.xz"))
1846 (sha256
1847 (base32
431ff8be 1848 "10amhh07x8d0jkyylb19cyzjs71k8dq1y8isfahqzb2kd43vijqa"))))
979e18fa
DC
1849 (build-system cmake-build-system)
1850 (native-inputs
1851 `(("extra-cmake-modules" ,extra-cmake-modules)))
1852 (inputs
1853 `(("karchive" ,karchive)
1854 ("kconfig" ,kconfig)
1855 ("kcoreaddons" ,kcoreaddons)
73a3598d 1856 ("kdoctools" ,kdoctools)
979e18fa
DC
1857 ("ki18n" ,ki18n)
1858 ("qtbase" ,qtbase)))
1859 (arguments
1e0ae3b3 1860 `(#:tests? #f ; FIXME: 3/9 tests fail.
979e18fa
DC
1861 #:phases
1862 (modify-phases %standard-phases
1863 (add-before 'check 'check-setup
0e6c3057 1864 (lambda _
0e6c3057
DC
1865 (setenv "HOME" (getcwd))
1866 #t)))))
979e18fa
DC
1867 (home-page "https://community.kde.org/Frameworks")
1868 (synopsis "Installation and loading of additional content as packages")
1869 (description "The Package framework lets the user install and load packages
1870of non binary content such as scripted extensions or graphic assets, as if they
1871were traditional plugins.")
1872 (license (list license:gpl2+ license:lgpl2.1+))))
fee9b266
DC
1873
1874(define-public kpty
1875 (package
1876 (name "kpty")
431ff8be 1877 (version "5.42.0")
84164f7f
DC
1878 (source (origin
1879 (method url-fetch)
1880 (uri (string-append
1881 "mirror://kde/stable/frameworks/"
1882 (version-major+minor version) "/"
1883 name "-" version ".tar.xz"))
1884 (sha256
1885 (base32
431ff8be 1886 "07s16zxs03ixy7yxy9fda83yqhcgqzx42gnvwjwkyc8q05njmma6"))))
fee9b266
DC
1887 (build-system cmake-build-system)
1888 (native-inputs
1889 `(("extra-cmake-modules" ,extra-cmake-modules)))
1890 (inputs
1891 `(("kcoreaddons" ,kcoreaddons)
1892 ("ki18n" ,ki18n)
1e0ae3b3 1893 ;; TODO: utempter, for managing UTMP entries
fee9b266
DC
1894 ("qtbase" ,qtbase)))
1895 (arguments
1896 `(#:tests? #f ; FIXME: 1/1 tests fail.
1897 #:phases
1898 (modify-phases %standard-phases
1899 (add-after 'unpack 'patch-tests
84164f7f 1900 (lambda _
84164f7f
DC
1901 (substitute* "autotests/kptyprocesstest.cpp"
1902 (("/bin/bash") (which "bash")))
1903 #t)))))
fee9b266
DC
1904 (home-page "https://community.kde.org/Frameworks")
1905 (synopsis "Interfacing with pseudo terminal devices")
1906 (description "This library provides primitives to interface with pseudo
1907terminal devices as well as a KProcess derived class for running child processes
1908and communicating with them using a pty.")
1909 (license (list license:gpl2+ license:lgpl2.1+))))
812bab6d
DC
1910
1911(define-public kunitconversion
1912 (package
1913 (name "kunitconversion")
431ff8be 1914 (version "5.42.0")
f7c2026f
DC
1915 (source (origin
1916 (method url-fetch)
1917 (uri (string-append
1918 "mirror://kde/stable/frameworks/"
1919 (version-major+minor version) "/"
1920 name "-" version ".tar.xz"))
1921 (sha256
1922 (base32
431ff8be 1923 "0219pna4l3vvhyf5acsc87n48jzdnws6kwyhaiy3hy1pzrilv32l"))))
812bab6d 1924 (build-system cmake-build-system)
4467c2d1
HG
1925 (arguments
1926 `(#:phases
1927 (modify-phases %standard-phases
1928 (add-after 'unpack 'disable-a-failing-test-case
1929 (lambda _
431ff8be 1930 ;; FIXME: Re-enable this test-case. It was committed with the
4467c2d1
HG
1931 ;; message: "tsan says it's clean, apart from issues in Qt
1932 ;; (reported upstream)"
1933 (substitute* "autotests/convertertest.cpp"
1934 (("const int numThreads = 2") "const int numThreads = 0")))))))
812bab6d
DC
1935 (native-inputs
1936 `(("extra-cmake-modules" ,extra-cmake-modules)))
1937 (inputs
1938 `(("ki18n" ,ki18n)
1939 ("qtbase" ,qtbase)))
1940 (home-page "https://community.kde.org/Frameworks")
1941 (synopsis "Converting physical units")
1942 (description "KUnitConversion provides functions to convert values in
1943different physical units. It supports converting different prefixes (e.g. kilo,
1944mega, giga) as well as converting between different unit systems (e.g. liters,
1945gallons).")
1946 (license license:lgpl2.1+)))
092ab1c0
DC
1947
1948
1949;; Tier 3
1950;;
1951;; Tier 3 frameworks are generally more powerful, comprehensive packages, and
1952;; consequently have more complex dependencies.
1953
1954(define-public baloo
1955 (package
1956 (name "baloo")
431ff8be 1957 (version "5.42.0")
442f2bea
DC
1958 (source (origin
1959 (method url-fetch)
1960 (uri (string-append
1961 "mirror://kde/stable/frameworks/"
1962 (version-major+minor version) "/"
1963 name "-" version ".tar.xz"))
1964 (sha256
1965 (base32
431ff8be 1966 "18yknkcls1ypsp8n5l254bhlffiq4as5w1wgcjzhnf49cacys8nl"))))
092ab1c0
DC
1967 (build-system cmake-build-system)
1968 (propagated-inputs
1969 `(("kcoreaddons" ,kcoreaddons)
1970 ("kfilemetadata" ,kfilemetadata)))
1971 (native-inputs
1972 `(("dbus" ,dbus)
1973 ("extra-cmake-modules" ,extra-cmake-modules)))
1974 (inputs
1975 `(("kbookmarks" ,kbookmarks)
1976 ("kcompletion" ,kcompletion)
1977 ("kconfig" ,kconfig)
1978 ("kcrash" ,kcrash)
1979 ("kdbusaddons" ,kdbusaddons)
1980 ("kidletime" ,kidletime)
1981 ("kio" ,kio)
1982 ("kitemviews" ,kitemviews)
1983 ("ki18n" ,ki18n)
1984 ("kjobwidgets" ,kjobwidgets)
1985 ("kservice" ,kservice)
1986 ("kwidgetsaddons" ,kwidgetsaddons)
1987 ("kxmlgui" ,kxmlgui)
1988 ("lmdb" ,lmdb)
1989 ("qtbase" ,qtbase)
1990 ("qtdeclarative" ,qtdeclarative)
1991 ("solid" ,solid)))
1992 (arguments
1993 `(#:phases
1994 (modify-phases %standard-phases
1995 (add-before 'check 'check-setup
1996 (lambda _
1997 (setenv "HOME" (getcwd))
94e24d81 1998 ;; make Qt render "offscreen", required for tests
092ab1c0
DC
1999 (setenv "QT_QPA_PLATFORM" "offscreen")
2000 #t))
de5a235c
EF
2001 (add-after 'unpack 'remove-failing-test
2002 ;; This test fails on i686 and aarch64
2003 (lambda _
2004 (substitute* "autotests/unit/file/CMakeLists.txt"
2005 (("metadatamovertest") ""))
2006 #t))
092ab1c0
DC
2007 (replace 'check
2008 (lambda _
2009 (setenv "DBUS_FATAL_WARNINGS" "0")
2010 (zero? (system* "dbus-launch" "ctest" ".")))))))
2011 (home-page "https://community.kde.org/Frameworks")
2012 (synopsis "File searching and indexing")
2013 (description "Baloo provides file searching and indexing. It does so by
2014maintaining an index of the contents of your files.")
2015 ;; dual licensed
2016 (license (list license:gpl2+ license:lgpl2.1+))))
88549d2e 2017
fb748c39
DC
2018(define-public kactivities-stats
2019 (package
2020 (name "kactivities-stats")
431ff8be 2021 (version "5.42.0")
4902494f
DC
2022 (source (origin
2023 (method url-fetch)
2024 (uri (string-append
2025 "mirror://kde/stable/frameworks/"
2026 (version-major+minor version) "/"
2027 name "-" version ".tar.xz"))
2028 (sha256
2029 (base32
431ff8be 2030 "0si70hayf4brr83jzdjdsfvp8nc1sb7vdk0q532liafhf8hw9mq8"))))
fb748c39
DC
2031 (build-system cmake-build-system)
2032 (native-inputs
2033 `(("extra-cmake-modules" ,extra-cmake-modules)))
2034 (inputs
2035 `(("boost" ,boost)
2036 ("kactivities" ,kactivities)
2037 ("kconfig" ,kconfig)
2038 ("qtbase" ,qtbase)
2039 ("qtdeclarative" ,qtdeclarative)))
2040 (home-page "https://community.kde.org/Frameworks")
2041 (synopsis "Access usage statistics collected by the activity manager")
2042 (description "The KActivitiesStats library provides a querying mechanism for
2043the data that the activitiy manager collects - which documents have been opened
2044by which applications, and what documents have been linked to which activity.")
2045 ;; triple licensed
2046 (license (list license:lgpl2.0+ license:lgpl2.1+ license:lgpl3+))))
5c63ebb8
DC
2047
2048(define-public kbookmarks
2049 (package
2050 (name "kbookmarks")
431ff8be 2051 (version "5.42.0")
b58e9bea
DC
2052 (source (origin
2053 (method url-fetch)
2054 (uri (string-append
2055 "mirror://kde/stable/frameworks/"
2056 (version-major+minor version) "/"
2057 name "-" version ".tar.xz"))
2058 (sha256
2059 (base32
431ff8be 2060 "08q413mr5ib04gwnqznvm9vkkfmnh16rgf6rqdvclnci9w7ml5x2"))))
5c63ebb8
DC
2061 (build-system cmake-build-system)
2062 (propagated-inputs
2063 `(("kwidgetsaddons" ,kwidgetsaddons)))
2064 (native-inputs
2065 `(("extra-cmake-modules" ,extra-cmake-modules)
2066 ("qttools" ,qttools)))
2067 (inputs
2068 `(("kauth" ,kauth)
2069 ("kcodecs" ,kcodecs)
2070 ("kconfig" ,kconfig)
2071 ("kconfigwidgets" ,kconfigwidgets)
2072 ("kcoreaddons" ,kcoreaddons)
2073 ("kiconthemes" ,kiconthemes)
2074 ("kxmlgui" ,kxmlgui)
2075 ("qtbase" ,qtbase)))
2076 (arguments
2077 `(#:phases
2078 (modify-phases %standard-phases
2079 (add-before 'check 'check-setup
2080 (lambda _
2081 (setenv "HOME" (getcwd))
94e24d81 2082 ;; make Qt render "offscreen", required for tests
5c63ebb8
DC
2083 (setenv "QT_QPA_PLATFORM" "offscreen")
2084 #t)))))
2085 (home-page "https://community.kde.org/Frameworks")
2086 (synopsis "Bookmarks management library")
2087 (description "KBookmarks lets you access and manipulate bookmarks stored
2088using the XBEL format.")
2089 (license license:lgpl2.1+)))
21d381f4
DC
2090
2091(define-public kcmutils
2092 (package
2093 (name "kcmutils")
431ff8be 2094 (version "5.42.0")
8ed8a9f5
DC
2095 (source (origin
2096 (method url-fetch)
2097 (uri (string-append
2098 "mirror://kde/stable/frameworks/"
2099 (version-major+minor version) "/"
2100 name "-" version ".tar.xz"))
2101 (sha256
2102 (base32
431ff8be 2103 "1q67b0m6w3xvm22kq8b0b0rib1jzf25gf6dz7h286987zfbbs5n7"))))
21d381f4
DC
2104 (build-system cmake-build-system)
2105 (propagated-inputs
2106 `(("kconfigwidgets" ,kconfigwidgets)
2107 ("kservice" ,kservice)))
2108 (native-inputs
2109 `(("extra-cmake-modules" ,extra-cmake-modules)))
2110 (inputs
2111 `(("kauth" ,kauth)
2112 ("kcodecs" ,kcodecs)
2113 ("kconfig" ,kconfig)
2114 ("kcoreaddons" ,kcoreaddons)
2115 ("kdeclarative" ,kdeclarative)
2116 ("kiconthemes" ,kiconthemes)
2117 ("kitemviews" ,kitemviews)
2118 ("ki18n" ,ki18n)
2119 ("kpackage" ,kpackage)
2120 ("kwidgetsaddons" ,kwidgetsaddons)
2121 ("kxmlgui" ,kxmlgui)
2122 ("qtbase" ,qtbase)
2123 ("qtdeclarative" ,qtdeclarative)))
2124 (home-page "https://community.kde.org/Frameworks")
2125 (synopsis "Utilities for KDE System Settings modules")
2126 (description "KCMUtils provides various classes to work with KCModules.
2127KCModules can be created with the KConfigWidgets framework.")
2128 (license license:lgpl2.1+)))
ccce03ed
DC
2129
2130(define-public kconfigwidgets
2131 (package
2132 (name "kconfigwidgets")
431ff8be 2133 (version "5.42.0")
986d0eae
DC
2134 (source (origin
2135 (method url-fetch)
2136 (uri (string-append
2137 "mirror://kde/stable/frameworks/"
2138 (version-major+minor version) "/"
2139 name "-" version ".tar.xz"))
2140 (sha256
2141 (base32
431ff8be 2142 "191zm24q2n001b65hcnfh2639k4iqhxwdmgdw29php3n2648xq4z"))))
ccce03ed
DC
2143 (build-system cmake-build-system)
2144 (propagated-inputs
2145 `(("kauth" ,kauth)
2146 ("kcodecs" ,kcodecs)
2147 ("kconfig" ,kconfig)
2148 ("kwidgetsaddons" ,kwidgetsaddons)))
2149 (native-inputs
cc527338
HG
2150 `(("extra-cmake-modules" ,extra-cmake-modules)
2151 ("kdoctools" ,kdoctools)))
ccce03ed
DC
2152 (inputs
2153 `(("kcoreaddons" ,kcoreaddons)
2154 ("kguiaddons" ,kguiaddons)
2155 ("ki18n" ,ki18n)
2156 ("qtbase" ,qtbase)))
2157 (arguments
2158 `(#:phases
2159 (modify-phases %standard-phases
2160 (add-before 'check 'check-setup
2161 (lambda _
94e24d81 2162 ;; make Qt render "offscreen", required for tests
ccce03ed
DC
2163 (setenv "QT_QPA_PLATFORM" "offscreen")
2164 #t)))))
2165 (home-page "https://community.kde.org/Frameworks")
2166 (synopsis "Widgets for configuration dialogs")
2167 (description "KConfigWidgets provides easy-to-use classes to create
2168configuration dialogs, as well as a set of widgets which uses KConfig to store
2169their settings.")
2170 ;; dual licensed
2171 (license (list license:gpl2+ license:lgpl2.1+))))
f422ad12
DC
2172
2173(define-public kdeclarative
2174 (package
2175 (name "kdeclarative")
431ff8be 2176 (version "5.42.0")
46e1ac0b
DC
2177 (source (origin
2178 (method url-fetch)
2179 (uri (string-append
2180 "mirror://kde/stable/frameworks/"
2181 (version-major+minor version) "/"
2182 name "-" version ".tar.xz"))
2183 (sha256
2184 (base32
431ff8be 2185 "1w604jy6vg2247vggz0ivl7wy2h5iapkz2z86mah3aw99f7dqa22"))))
f422ad12
DC
2186 (build-system cmake-build-system)
2187 (propagated-inputs
2188 `(("kconfig" ,kconfig)
2189 ("kpackage" ,kpackage)))
2190 (native-inputs
2191 `(("extra-cmake-modules" ,extra-cmake-modules)
d3726f05 2192 ("pkg-config" ,pkg-config)
f422ad12
DC
2193 ("xorg-server" ,xorg-server)))
2194 (inputs
2195 `(("kauth" ,kauth)
2196 ("kbookmarks" ,kbookmarks)
2197 ("kcodecs" ,kcodecs)
2198 ("kcompletion" ,kcompletion)
2199 ("kconfigwidgets" ,kconfigwidgets)
2200 ("kcoreaddons" ,kcoreaddons)
2201 ("kglobalaccel" ,kglobalaccel)
2202 ("kguiaddons" ,kguiaddons)
2203 ("kiconthemes" ,kiconthemes)
2204 ("kio" ,kio)
2205 ("kitemviews" ,kitemviews)
2206 ("ki18n" ,ki18n)
2207 ("kjobwidgets" ,kjobwidgets)
2208 ("kservice" ,kservice)
2209 ("kwidgetsaddons" ,kwidgetsaddons)
2210 ("kwindowsystem" ,kwindowsystem)
2211 ("kxmlgui" ,kxmlgui)
c695fb76 2212 ("libepoxy" ,libepoxy)
f422ad12
DC
2213 ("qtbase" ,qtbase)
2214 ("qtdeclarative" ,qtdeclarative)
2215 ("solid" ,solid)))
2216 (arguments
2217 `(#:phases
2218 (modify-phases %standard-phases
2219 (add-before 'check 'start-xorg-server
2220 (lambda* (#:key inputs #:allow-other-keys)
1e0ae3b3
HG
2221 ;; The test suite requires a running X server, setting
2222 ;; QT_QPA_PLATFORM=offscreen does not suffice.
f422ad12
DC
2223 (system (string-append (assoc-ref inputs "xorg-server")
2224 "/bin/Xvfb :1 -screen 0 640x480x24 &"))
2225 (setenv "DISPLAY" ":1")
2226 #t)))))
2227 (home-page "https://community.kde.org/Frameworks")
2228 (synopsis "Integration of QML and KDE work spaces")
2229 (description "KDeclarative provides integration of QML and KDE work spaces.
2230It's comprises two parts: a library used by the C++ part of your application to
2231intergrate QML with KDE Frameworks specific features, and a series of QML imports
2232that offer bindings to some of the Frameworks.")
2233 ;; dual licensed
2234 (license (list license:gpl2+ license:lgpl2.1+))))
ef0f8450
DC
2235
2236(define-public kded
2237 (package
2238 (name "kded")
431ff8be 2239 (version "5.42.0")
8e963d12
DC
2240 (source (origin
2241 (method url-fetch)
2242 (uri (string-append
2243 "mirror://kde/stable/frameworks/"
2244 (version-major+minor version) "/"
2245 name "-" version ".tar.xz"))
2246 (sha256
2247 (base32
431ff8be 2248 "0w25dl4pnvby28gz0yvij32vi9n3p8si4nm4x45j7zsi2cb70j4l"))))
ef0f8450
DC
2249 (build-system cmake-build-system)
2250 (native-inputs
2251 `(("extra-cmake-modules" ,extra-cmake-modules)))
2252 (inputs
2253 `(("kconfig" ,kconfig)
2254 ("kcoreaddons" ,kcoreaddons)
2255 ("kcrash" ,kcrash)
2256 ("kdbusaddons" ,kdbusaddons)
2257 ("kdoctools" ,kdoctools)
2258 ("kinit" ,kinit)
2259 ("kservice" ,kservice)
2260 ("qtbase" ,qtbase)))
2261 (home-page "https://community.kde.org/Frameworks")
2262 (synopsis "Central daemon of KDE work spaces")
2263 (description "KDED stands for KDE Daemon. KDED runs in the background and
2264performs a number of small tasks. Some of these tasks are built in, others are
2265started on demand.")
2266 ;; dual licensed
2267 (license (list license:lgpl2.0+ license:lgpl2.1+))))
d02addd5
DC
2268
2269(define-public kdesignerplugin
2270 (package
2271 (name "kdesignerplugin")
431ff8be 2272 (version "5.42.0")
9caef00b
DC
2273 (source (origin
2274 (method url-fetch)
2275 (uri (string-append
2276 "mirror://kde/stable/frameworks/"
2277 (version-major+minor version) "/"
2278 name "-" version ".tar.xz"))
2279 (sha256
2280 (base32
431ff8be 2281 "004axa1fkj954d65x7l9z8dmw04209hb368rwa4gjzb8naf13ib6"))))
d02addd5
DC
2282 (build-system cmake-build-system)
2283 (native-inputs
2284 `(("extra-cmake-modules" ,extra-cmake-modules)
2285 ("qttools" ,qttools)))
2286 (inputs
2287 `(("kconfig" ,kconfig)
2288 ("kcoreaddons" ,kcoreaddons)
2289 ("kdoctools" ,kdoctools)
11f65700
HG
2290 ("qtbase" ,qtbase)
2291 ;; optional:
2292 ("kcompletion" ,kcompletion)
2293 ("kconfigwidgets" ,kconfigwidgets)
2294 ("kiconthemes" ,kiconthemes)
2295 ("kitemviews" ,kitemviews)
2296 ("kio" ,kio)
2297 ("kplotting" ,kplotting)
2298 ("ktextwidgets" ,ktextwidgets)
2299 ("kdewebkit" ,kdewebkit)
2300 ("kwidgetsaddons" ,kwidgetsaddons)
2301 ("kxmlgui" ,kxmlgui)
2302 ("qtwebkit" ,qtwebkit)
2303 ("sonnet" ,sonnet)))
d02addd5
DC
2304 (arguments
2305 `(#:phases
2306 (modify-phases %standard-phases
2307 (add-before 'check 'check-setup
2308 (lambda _
94e24d81 2309 ;; make Qt render "offscreen", required for tests
d02addd5
DC
2310 (setenv "QT_QPA_PLATFORM" "offscreen")
2311 #t)))))
2312 (home-page "https://community.kde.org/Frameworks")
2313 (synopsis "Integrating KDE frameworks widgets with Qt Designer")
2314 (description "This framework provides plugins for Qt Designer that allow it
2315to display the widgets provided by various KDE frameworks, as well as a utility
2316(kgendesignerplugin) that can be used to generate other such plugins from
2317ini-style description files.")
2318 (license license:lgpl2.1+)))
40d76848
DC
2319
2320(define-public kdesu
2321 (package
2322 (name "kdesu")
431ff8be 2323 (version "5.42.0")
aa072198
DC
2324 (source (origin
2325 (method url-fetch)
2326 (uri (string-append
2327 "mirror://kde/stable/frameworks/"
2328 (version-major+minor version) "/"
2329 name "-" version ".tar.xz"))
2330 (sha256
2331 (base32
431ff8be 2332 "0402p1h7wifk6sppg7ca9w0zfjllbhc1j5gsxj7ypq55g94np7hx"))))
40d76848
DC
2333 (build-system cmake-build-system)
2334 (propagated-inputs
2335 `(("kpty" ,kpty)))
2336 (native-inputs
2337 `(("extra-cmake-modules" ,extra-cmake-modules)))
2338 (inputs
2339 `(("kconfig" ,kconfig)
2340 ("kcoreaddons" ,kcoreaddons)
2341 ("ki18n" ,ki18n)
2342 ("kservice" ,kservice)
2343 ("qtbase" ,qtbase)))
2344 (home-page "https://community.kde.org/Frameworks")
2345 (synopsis "User interface for running shell commands with root privileges")
2346 (description "KDESU provides functionality for building GUI front ends for
2347(password asking) console mode programs. kdesu and kdessh use it to interface
2348with su and ssh respectively.")
2349 (license license:lgpl2.1+)))
3e1ce65b 2350
a7dc8557
HG
2351(define-public kdewebkit
2352 (package
2353 (name "kdewebkit")
431ff8be 2354 (version "5.42.0")
a7dc8557
HG
2355 (source (origin
2356 (method url-fetch)
2357 (uri (string-append
2358 "mirror://kde/stable/frameworks/"
2359 (version-major+minor version) "/"
2360 name "-" version ".tar.xz"))
2361 (sha256
2362 (base32
431ff8be 2363 "1csd4p996im7ygxc5rfdkzgdpngjgzyqakj12rl9rnfbsd15i8kb"))))
a7dc8557
HG
2364 (build-system cmake-build-system)
2365 (native-inputs
2366 `(("extra-cmake-modules" ,extra-cmake-modules)))
2367 (inputs
2368 `(("kconfig" ,kconfig)
2369 ("kcoreaddons" ,kcoreaddons)
2370 ("kio" ,kio)
2371 ("kjobwidgets" ,kjobwidgets)
2372 ("kparts" ,kparts)
2373 ("kservice" ,kservice)
2374 ("kwallet" ,kwallet)
2375 ("qtbase" ,qtbase)
2376 ("qtwebkit" ,qtwebkit)))
2377 (home-page "https://community.kde.org/Frameworks")
2378 (synopsis "KDE Integration for QtWebKit")
2379 (description "This library provides KDE integration of the HTML rendering
2380engine WebKit via QtWebKit.")
2381 (license license:lgpl2.1+)))
2382
3e1ce65b
DC
2383(define-public kemoticons
2384 (package
2385 (name "kemoticons")
431ff8be 2386 (version "5.42.0")
25ebad65
DC
2387 (source (origin
2388 (method url-fetch)
2389 (uri (string-append
2390 "mirror://kde/stable/frameworks/"
2391 (version-major+minor version) "/"
2392 name "-" version ".tar.xz"))
2393 (sha256
2394 (base32
431ff8be 2395 "0f6an1bwxnga41a2b35b2pdcni4p0hh76k4jvanl3g046v07f2wr"))))
3e1ce65b
DC
2396 (build-system cmake-build-system)
2397 (propagated-inputs
2398 `(("kservice" ,kservice)))
2399 (native-inputs
2400 `(("extra-cmake-modules" ,extra-cmake-modules)))
2401 (inputs
2402 `(("karchive" ,karchive)
2403 ("kconfig" ,kconfig)
2404 ("kcoreaddons" ,kcoreaddons)
2405 ("qtbase" ,qtbase)))
2406 (arguments
2407 `(#:tests? #f ; FIXME: 2/2 tests fail.
2408 #:phases
2409 (modify-phases %standard-phases
2410 (add-before 'check 'check-setup
2411 (lambda _
2412 (setenv "HOME" (getcwd))
94e24d81 2413 ;; make Qt render "offscreen", required for tests
25ebad65
DC
2414 (setenv "QT_QPA_PLATFORM" "offscreen")
2415 #t)))))
3e1ce65b
DC
2416 (home-page "https://community.kde.org/Frameworks")
2417 (synopsis "Convert text emoticons to graphical emoticons")
2418 (description "KEmoticons converts emoticons from text to a graphical
2419representation with images in HTML. It supports setting different themes for
2420emoticons coming from different providers.")
2421 ;; dual licensed, image files are licensed under cc-by-sa4.0
2422 (license (list license:gpl2+ license:lgpl2.1+ license:cc-by-sa4.0))))
bdfe11a5
DC
2423
2424(define-public kglobalaccel
2425 (package
2426 (name "kglobalaccel")
431ff8be 2427 (version "5.42.0")
2b677bec
DC
2428 (source (origin
2429 (method url-fetch)
2430 (uri (string-append
2431 "mirror://kde/stable/frameworks/"
2432 (version-major+minor version) "/"
2433 name "-" version ".tar.xz"))
2434 (sha256
2435 (base32
431ff8be 2436 "0nlza73i0qd79yhwhpnvgbh2xa9lvd1n2xg25p3bvfzwidcfdxg6"))))
bdfe11a5
DC
2437 (build-system cmake-build-system)
2438 (native-inputs
2439 `(("extra-cmake-modules" ,extra-cmake-modules)
7a8287da 2440 ("pkg-config" ,pkg-config)
bdfe11a5
DC
2441 ("qttools" ,qttools)))
2442 (inputs
2443 `(("kconfig" ,kconfig)
2444 ("kcrash" ,kcrash)
2445 ("kcoreaddons" ,kcoreaddons)
2446 ("kdbusaddons" ,kdbusaddons)
2b677bec 2447 ("kservice" ,kservice)
bdfe11a5
DC
2448 ("kwindowsystem" ,kwindowsystem)
2449 ("libxcb" ,libxcb)
2450 ("qtbase" ,qtbase)
2451 ("qtx11extras" ,qtx11extras)
2452 ("xcb-util-keysyms" ,xcb-util-keysyms)))
2453 (arguments
2454 `(#:phases
2455 (modify-phases %standard-phases
2456 (add-before 'check 'check-setup
2457 (lambda _
94e24d81 2458 ;; make Qt render "offscreen", required for tests
bdfe11a5
DC
2459 (setenv "QT_QPA_PLATFORM" "offscreen")
2460 #t)))))
2461 (home-page "https://community.kde.org/Frameworks")
2462 (synopsis "Global desktop keyboard shortcuts")
2463 (description "KGlobalAccel allows you to have global accelerators that are
2464independent of the focused window. Unlike regular shortcuts, the application's
2465window does not need focus for them to be activated.")
2466 (license license:lgpl2.1+)))
612c2545
DC
2467
2468(define-public kiconthemes
2469 (package
2470 (name "kiconthemes")
431ff8be 2471 (version "5.42.0")
c8ddc56e
DC
2472 (source (origin
2473 (method url-fetch)
2474 (uri (string-append
2475 "mirror://kde/stable/frameworks/"
2476 (version-major+minor version) "/"
2477 name "-" version ".tar.xz"))
2478 (sha256
2479 (base32
431ff8be 2480 "1nbxxpf8bv835xl35b17rk8s3zs110bh31078kqqh7dhvwzlxic7"))))
612c2545
DC
2481 (build-system cmake-build-system)
2482 (native-inputs
2483 `(("extra-cmake-modules" ,extra-cmake-modules)
2484 ("shared-mime-info" ,shared-mime-info)))
2485 (inputs
2486 `(("karchive" ,karchive)
2487 ("kauth" ,kauth)
2488 ("kcodecs" ,kcodecs)
2489 ("kcoreaddons" ,kcoreaddons)
2490 ("kconfig" ,kconfig)
2491 ("kconfigwidgets" ,kconfigwidgets)
2492 ("ki18n" ,ki18n)
2493 ("kitemviews" ,kitemviews)
2494 ("kwidgetsaddons" ,kwidgetsaddons)
2495 ("qtbase" ,qtbase)
2496 ("qtsvg" ,qtsvg)))
2497 (arguments
9ebffc50 2498 `(#:phases
612c2545
DC
2499 (modify-phases %standard-phases
2500 (add-before 'check 'check-setup
2501 (lambda* (#:key inputs #:allow-other-keys)
2502 (setenv "XDG_DATA_DIRS"
2503 (string-append (assoc-ref inputs "shared-mime-info")
2504 "/share"))
2505 (setenv "HOME" (getcwd))
94e24d81 2506 ;; make Qt render "offscreen", required for tests
c8ddc56e
DC
2507 (setenv "QT_QPA_PLATFORM" "offscreen")
2508 #t)))))
612c2545
DC
2509 (home-page "https://community.kde.org/Frameworks")
2510 (synopsis "Icon GUI utilities")
2511 (description "This library contains classes to improve the handling of icons
2512in applications using the KDE Frameworks.")
2513 (license license:lgpl2.1+)))
3d670190
DC
2514
2515(define-public kinit
2516 (package
2517 (name "kinit")
431ff8be 2518 (version "5.42.0")
89d522a3
DC
2519 (source (origin
2520 (method url-fetch)
2521 (uri (string-append
2522 "mirror://kde/stable/frameworks/"
2523 (version-major+minor version) "/"
2524 name "-" version ".tar.xz"))
2525 (sha256
2526 (base32
431ff8be 2527 "05vpac41pw1n8y58l2z08vyknzv950x8dxxw66dnymm2v31w07ia"))))
3d670190
DC
2528 (build-system cmake-build-system)
2529 (native-inputs
7cf6793b
HG
2530 `(("extra-cmake-modules" ,extra-cmake-modules)
2531 ("pkg-config" ,pkg-config)))
3d670190
DC
2532 (inputs
2533 `(("kauth" ,kauth)
2534 ("kbookmarks" ,kbookmarks)
2535 ("kcodecs" ,kcodecs)
2536 ("kcompletion" ,kcompletion)
2537 ("kconfig" ,kconfig)
2538 ("kconfigwidgets" ,kconfigwidgets)
2539 ("kcoreaddons" ,kcoreaddons)
2540 ("kcrash" ,kcrash)
7cf6793b 2541 ("kdoctools" ,kdoctools)
3d670190
DC
2542 ("kio" ,kio)
2543 ("kitemviews" ,kitemviews)
2544 ("ki18n" ,ki18n)
2545 ("kjobwidgets" ,kjobwidgets)
2546 ("kservice" ,kservice)
2547 ("kwidgetsaddons" ,kwidgetsaddons)
2548 ("kwindowsystem" ,kwindowsystem)
2549 ("kxmlgui" ,kxmlgui)
7cf6793b 2550 ("libcap" ,libcap) ; to install start_kdeinit with CAP_SYS_RESOURCE
3d670190
DC
2551 ("qtbase" ,qtbase)
2552 ("solid" ,solid)))
2553 (home-page "https://community.kde.org/Frameworks")
2554 (synopsis "Library to speed up start of applications on KDE workspaces")
2555 (description "Kdeinit is a process launcher similar to init used for booting
2556UNIX. It launches processes by forking and then loading a dynamic library which
2557contains a 'kdemain(...)' function. Using kdeinit to launch KDE applications
2558makes starting KDE applications faster and reduces memory consumption.")
2559 ;; dual licensed
2560 (license (list license:lgpl2.0+ license:lgpl2.1+))))
17252110
DC
2561
2562(define-public kio
2563 (package
2564 (name "kio")
431ff8be 2565 (version "5.42.0")
ed3634e7
DC
2566 (source (origin
2567 (method url-fetch)
2568 (uri (string-append
2569 "mirror://kde/stable/frameworks/"
2570 (version-major+minor version) "/"
2571 name "-" version ".tar.xz"))
2572 (sha256
2573 (base32
431ff8be 2574 "1526a89x11ank55dp3rfp7xd04w8x7prjg3y6i7n2q9nabwhw7gc"))))
17252110
DC
2575 (build-system cmake-build-system)
2576 (propagated-inputs
2577 `(("kbookmarks" ,kbookmarks)
2578 ("kconfig" ,kconfig)
2579 ("kcompletion" ,kcompletion)
2580 ("kcoreaddons" ,kcoreaddons)
2581 ("kitemviews" ,kitemviews)
2582 ("kjobwidgets" ,kjobwidgets)
2583 ("kservice" ,kservice)
2584 ("kxmlgui" ,kxmlgui)
2585 ("solid" ,solid)))
2586 (native-inputs
2587 `(("dbus" ,dbus)
2588 ("extra-cmake-modules" ,extra-cmake-modules)))
2589 (inputs
3d7bb7b3 2590 `(;; TODO: LibACL , <ftp://oss.sgi.com/projects/xfs/cmd_tars>
786cb783 2591 ("krb5" ,mit-krb5)
17252110
DC
2592 ("karchive" ,karchive)
2593 ("kauth" ,kauth)
2594 ("kcodecs" ,kcodecs)
2595 ("kconfigwidgets" ,kconfigwidgets)
2596 ("kdbusaddons" ,kdbusaddons)
2597 ("kdoctools" ,kdoctools)
2598 ("kiconthemes" ,kiconthemes)
2599 ("ki18n" ,ki18n)
2600 ("knotifications" ,knotifications)
2601 ("ktextwidgets" ,ktextwidgets)
2602 ("kwallet" ,kwallet)
2603 ("kwidgetsaddons" ,kwidgetsaddons)
2604 ("kwindowsystem" ,kwindowsystem)
2605 ("libxml2" ,libxml2)
2606 ("libxslt" ,libxslt)
2607 ("qtbase" ,qtbase)
786cb783 2608 ("qtscript" ,qtscript)
17252110
DC
2609 ("qtx11extras" ,qtx11extras)
2610 ("sonnet" ,sonnet)))
2611 (arguments
2612 `(#:tests? #f ; FIXME: 41/50 tests fail.
2613 #:phases
2614 (modify-phases %standard-phases
bb4fcf7b
HG
2615 (add-after 'unpack 'patch
2616 (lambda _
2617 ;; Better error message (taken from nix)
2618 (substitute* "src/kiod/kiod_main.cpp"
2619 (("(^\\s*qCWarning(KIOD_CATEGORY) << \"Error loading plugin:\")( << loader.errorString();)" _ a b)
2620 (string-append a "<< name" b)))
2621 ;; TODO: samba-search-path.patch from nix: search smbd on $PATH
2622 #t))
17252110
DC
2623 (add-before 'check 'check-setup
2624 (lambda _
2625 (setenv "HOME" (getcwd))
2626 (setenv "XDG_RUNTIME_DIR" (getcwd))
94e24d81 2627 ;; make Qt render "offscreen", required for tests
ed3634e7 2628 (setenv "QT_QPA_PLATFORM" "offscreen")
cf7cf45a
HG
2629 #t))
2630 (add-after 'install 'add-symlinks
2631 ;; Some package(s) (e.g. bluedevil) refer to these service types by
2632 ;; the wrong name. I would prefer to patch those packages, but I
2633 ;; cannot find the files!
2634 (lambda* (#:key outputs #:allow-other-keys)
2635 (let ((kst5 (string-append (assoc-ref outputs "out")
2636 "/share/kservicetypes5/")))
2637 (symlink (string-append kst5 "kfileitemactionplugin.desktop")
2638 (string-append kst5 "kfileitemaction-plugin.desktop"))))))))
17252110
DC
2639 ;;(replace 'check
2640 ;; (lambda _
2641 ;; (setenv "DBUS_FATAL_WARNINGS" "0")
2642 ;; (zero? (system* "dbus-launch" "ctest" ".")))))))
2643 (home-page "https://community.kde.org/Frameworks")
2644 (synopsis "Network transparent access to files and data")
2645 (description "This framework implements a lot of file management functions.
2646It supports accessing files locally as well as via HTTP and FTP out of the box
2647and can be extended by plugins to support other protocols as well. There is a
2648variety of plugins available, e.g. to support access via SSH. The framework can
2649also be used to bridge a native protocol to a file-based interface. This makes
2650the data accessible in all applications using the KDE file dialog or any other
2651KIO enabled infrastructure.")
2652 (license license:lgpl2.1+)))
2ac7e35a
DC
2653
2654(define-public knewstuff
2655 (package
2656 (name "knewstuff")
431ff8be 2657 (version "5.42.0")
7064ad3f
DC
2658 (source (origin
2659 (method url-fetch)
2660 (uri (string-append
2661 "mirror://kde/stable/frameworks/"
2662 (version-major+minor version) "/"
2663 name "-" version ".tar.xz"))
2664 (sha256
2665 (base32
431ff8be 2666 "0i2gmyp67xzf2m5wnv7v574q3gsp1yxfflv1jgl0wy57vchwn9g6"))))
2ac7e35a
DC
2667 (build-system cmake-build-system)
2668 (propagated-inputs
2669 `(("attica" ,attica)
2670 ("kservice" ,kservice)
2671 ("kxmlgui" ,kxmlgui)))
2672 (native-inputs
2673 `(("extra-cmake-modules" ,extra-cmake-modules)))
2674 (inputs
2675 `(("karchive" ,karchive)
2676 ("kauth" ,kauth)
2677 ("kbookmarks" ,kbookmarks)
2678 ("kcodecs" ,kcodecs)
2679 ("kcompletion" ,kcompletion)
2680 ("kconfig" ,kconfig)
2681 ("kconfigwidgets" ,kconfigwidgets)
2682 ("kcoreaddons" ,kcoreaddons)
2683 ("kio" ,kio)
2684 ("kitemviews" ,kitemviews)
2685 ("ki18n" ,ki18n)
2686 ("kiconthemes" ,kiconthemes)
2687 ("kjobwidgets" ,kjobwidgets)
2688 ("ktextwidgets" ,ktextwidgets)
2689 ("kwidgetsaddons" ,kwidgetsaddons)
2690 ("qtbase" ,qtbase)
4467c2d1 2691 ("qtdeclarative" ,qtdeclarative)
2ac7e35a
DC
2692 ("solid" ,solid)
2693 ("sonnet" ,sonnet)))
2694 (arguments
2695 `(#:tests? #f ; FIXME: 1/3 tests fail.
2696 #:phases
2697 (modify-phases %standard-phases
2698 (add-before 'check 'check-setup
2699 (lambda _ ; XDG_DATA_DIRS isn't set
2700 (setenv "HOME" (getcwd))
94e24d81 2701 ;; make Qt render "offscreen", required for tests
7064ad3f
DC
2702 (setenv "QT_QPA_PLATFORM" "offscreen")
2703 #t)))))
2ac7e35a
DC
2704 (home-page "https://community.kde.org/Frameworks")
2705 (synopsis "Framework for downloading and sharing additional application data")
2706 (description "The KNewStuff library implements collaborative data sharing
2707for applications. It uses libattica to support the Open Collaboration Services
2708specification.")
2709 (license license:lgpl2.1+)))
10ca449a
DC
2710
2711(define-public knotifyconfig
2712 (package
2713 (name "knotifyconfig")
431ff8be 2714 (version "5.42.0")
59cb98e1
DC
2715 (source (origin
2716 (method url-fetch)
2717 (uri (string-append
2718 "mirror://kde/stable/frameworks/"
2719 (version-major+minor version) "/"
2720 name "-" version ".tar.xz"))
2721 (sha256
2722 (base32
431ff8be 2723 "1h07bjj71611v6912m5ajli6qszh9w925zqbk3vih8rn6pd2s3mc"))))
10ca449a
DC
2724 (build-system cmake-build-system)
2725 (native-inputs
2726 `(("extra-cmake-modules" ,extra-cmake-modules)))
2727 (inputs
2728 `(("kauth" ,kauth)
2729 ("kbookmarks" ,kbookmarks)
2730 ("kcodecs" ,kcodecs)
2731 ("kcompletion" ,kcompletion)
2732 ("kconfig" ,kconfig)
2733 ("kconfigwidgets" ,kconfigwidgets)
2734 ("kcoreaddons" ,kcoreaddons)
2735 ("kio" ,kio)
2736 ("kitemviews" ,kitemviews)
2737 ("ki18n" ,ki18n)
2738 ("kjobwidgets" ,kjobwidgets)
2739 ("knotifications" ,knotifications)
2740 ("kservice" ,kservice)
2741 ("kwidgetsaddons" ,kwidgetsaddons)
2742 ("kxmlgui" ,kxmlgui)
2743 ("phonon" ,phonon)
2744 ("qtbase" ,qtbase)
2745 ("solid" ,solid)))
2746 (home-page "https://community.kde.org/Frameworks")
2747 (synopsis "Configuration dialog for desktop notifications")
2748 (description "KNotifyConfig provides a configuration dialog for desktop
2749notifications which can be embedded in your application.")
2750 ;; dual licensed
2751 (license (list license:lgpl2.0+ license:lgpl2.1+))))
6609b1a3
DC
2752
2753(define-public kparts
2754 (package
2755 (name "kparts")
431ff8be 2756 (version "5.42.0")
33fa4658
DC
2757 (source (origin
2758 (method url-fetch)
2759 (uri (string-append
2760 "mirror://kde/stable/frameworks/"
2761 (version-major+minor version) "/"
2762 name "-" version ".tar.xz"))
2763 (sha256
2764 (base32
431ff8be 2765 "1mb5gp2ckmmrb4ym7cqvyl81wnp7cryk85gmizl7cnn69svlf40h"))))
6609b1a3
DC
2766 (build-system cmake-build-system)
2767 (propagated-inputs
2768 `(("kio" ,kio)
2769 ("ktextwidgets" ,ktextwidgets)
2770 ("kxmlgui" ,kxmlgui)))
2771 (native-inputs
1ee4fb14
HG
2772 `(("extra-cmake-modules" ,extra-cmake-modules)
2773 ("shared-mime-info" ,shared-mime-info)
2774 ))
6609b1a3
DC
2775 (inputs
2776 `(("kauth" ,kauth)
2777 ("kbookmarks" ,kbookmarks)
2778 ("kcodecs" ,kcodecs)
2779 ("kcompletion" ,kcompletion)
2780 ("kconfig" ,kconfig)
2781 ("kconfigwidgets" ,kconfigwidgets)
2782 ("kcoreaddons" ,kcoreaddons)
2783 ("kiconthemes" ,kiconthemes)
2784 ("kitemviews" ,kitemviews)
2785 ("ki18n" ,ki18n)
2786 ("kjobwidgets" ,kjobwidgets)
2787 ("kservice" ,kservice)
2788 ("kwidgetsaddons" ,kwidgetsaddons)
2789 ("qtbase" ,qtbase)
2790 ("solid" ,solid)
2791 ("sonnet" ,sonnet)))
2792 (arguments
2793 `(#:phases
2794 (modify-phases %standard-phases
2795 (add-before 'check 'check-setup
2796 (lambda _
94e24d81 2797 ;; make Qt render "offscreen", required for tests
6609b1a3
DC
2798 (setenv "QT_QPA_PLATFORM" "offscreen")
2799 #t)))))
2800 (home-page "https://community.kde.org/Frameworks")
2801 (synopsis "Plugin framework for user interface components")
2802 (description "This library implements the framework for KDE parts, which are
2803widgets with a user-interface defined in terms of actions.")
2804 (license license:lgpl2.1+)))
85e831ec
DC
2805
2806(define-public kpeople
2807 (package
2808 (name "kpeople")
431ff8be 2809 (version "5.42.0")
3a1e972d
DC
2810 (source (origin
2811 (method url-fetch)
2812 (uri (string-append
2813 "mirror://kde/stable/frameworks/"
2814 (version-major+minor version) "/"
2815 name "-" version ".tar.xz"))
2816 (sha256
2817 (base32
431ff8be 2818 "050km3rpx58acx2341si46lxc2hywa59m8rwd849c2dnsxw3w1hm"))))
85e831ec
DC
2819 (build-system cmake-build-system)
2820 (native-inputs
2821 `(("extra-cmake-modules" ,extra-cmake-modules)))
2822 (inputs
2823 `(("kconfig" ,kconfig)
2824 ("kcoreaddons" ,kcoreaddons)
2825 ("kitemviews" ,kitemviews)
2826 ("ki18n" ,ki18n)
2827 ("kservice" ,kservice)
2828 ("kwidgetsaddons" ,kwidgetsaddons)
2829 ("qtbase" ,qtbase)
2830 ("qtdeclarative" ,qtdeclarative)))
2831 (arguments
2832 `(#:tests? #f ; FIXME: 1/3 tests fail.
2833 #:phases
2834 (modify-phases %standard-phases
2835 (add-before 'check 'check-setup
2836 (lambda _
94e24d81 2837 ;; make Qt render "offscreen", required for tests
3a1e972d
DC
2838 (setenv "QT_QPA_PLATFORM" "offscreen")
2839 #t)))))
85e831ec
DC
2840 (home-page "https://community.kde.org/Frameworks")
2841 (synopsis "Provides access to all contacts and aggregates them by person")
2842 (description "KPeople offers unified access to our contacts from different
2843sources, grouping them by person while still exposing all the data. KPeople
2844also provides facilities to integrate the data provided in user interfaces by
2845providing QML and Qt Widgets components. The sources are plugin-based, allowing
2846to easily extend the contacts collection.")
2847 (license license:lgpl2.1+)))
e9417752
DC
2848
2849(define-public krunner
2850 (package
2851 (name "krunner")
431ff8be 2852 (version "5.42.0")
dc219cc6
DC
2853 (source (origin
2854 (method url-fetch)
2855 (uri (string-append
2856 "mirror://kde/stable/frameworks/"
2857 (version-major+minor version) "/"
2858 name "-" version ".tar.xz"))
2859 (sha256
2860 (base32
431ff8be 2861 "0xh9kss67l09am1ilsr9zyx1yhlmaq3g9x60hw0sx7h7wrl6zsw6"))))
e9417752
DC
2862 (build-system cmake-build-system)
2863 (propagated-inputs
2864 `(("plasma-framework" ,plasma-framework)))
2865 (native-inputs
2866 `(("extra-cmake-modules" ,extra-cmake-modules)))
2867 (inputs
2868 `(("kauth" ,kauth)
2869 ("kbookmarks" ,kbookmarks)
2870 ("kcodecs" ,kcodecs)
2871 ("kcompletion" ,kcompletion)
2872 ("kconfig" ,kconfig)
2873 ("kconfigwidgets" ,kconfigwidgets)
2874 ("kcoreaddons" ,kcoreaddons)
2875 ("kio" ,kio)
2876 ("kitemviews" ,kitemviews)
2877 ("ki18n" ,ki18n)
2878 ("kjobwidgets" ,kjobwidgets)
2879 ("kpackage" ,kpackage)
2880 ("kservice" ,kservice)
2881 ("kwidgetsaddons" ,kwidgetsaddons)
de5a235c 2882 ("kwindowsystem" ,kwindowsystem)
e9417752
DC
2883 ("kxmlgui" ,kxmlgui)
2884 ("qtbase" ,qtbase)
2885 ("qtdeclarative" ,qtdeclarative)
2886 ("solid" ,solid)
2887 ("threadweaver" ,threadweaver)))
2888 (arguments
b1beb167 2889 `(#:phases
e9417752 2890 (modify-phases %standard-phases
b1beb167
HG
2891 (add-after 'unpack 'fix-paths-for-test
2892 ;; This test tries to access paths like /home, /usr/bin and /bin/ls
2893 ;; which don't exist in the build-container. Change to existing paths.
2894 (lambda _
2895 (substitute* "autotests/runnercontexttest.cpp"
2896 (("/home\"") "/tmp\"") ;; single path-part
2897 (("//usr/bin\"") (string-append (getcwd) "\"")) ;; multiple path-parts
2898 (("/bin/ls" path)
2899 (string-append (assoc-ref %build-inputs "coreutils") path)))))
e9417752
DC
2900 (add-before 'check 'check-setup
2901 (lambda _
b1beb167 2902 (setenv "HOME" (getcwd))
94e24d81 2903 ;; make Qt render "offscreen", required for tests
dc219cc6 2904 (setenv "QT_QPA_PLATFORM" "offscreen")
431ff8be 2905 ;; Blacklist a failing test-function. FIXME: Make it pass.
b1beb167
HG
2906 (with-output-to-file "bin/BLACKLIST"
2907 (lambda _
2908 (display "[testMatch]\n*\n")))
dc219cc6 2909 #t)))))
e9417752
DC
2910 (home-page "https://community.kde.org/Frameworks")
2911 (synopsis "Framework for Plasma runners")
2912 (description "The Plasma workspace provides an application called KRunner
2913which, among other things, allows one to type into a text area which causes
2914various actions and information that match the text appear as the text is being
2915typed.")
2916 (license license:lgpl2.1+)))
12b49b62
DC
2917
2918(define-public kservice
2919 (package
2920 (name "kservice")
431ff8be 2921 (version "5.42.0")
886d8155
DC
2922 (source (origin
2923 (method url-fetch)
2924 (uri (string-append
2925 "mirror://kde/stable/frameworks/"
2926 (version-major+minor version) "/"
2927 name "-" version ".tar.xz"))
2928 (sha256
2929 (base32
431ff8be 2930 "0z8zfpd00ndvkm1klp8l4mrcksshhyg280zgmg3gffz5rgh3gwri"))))
12b49b62
DC
2931 (build-system cmake-build-system)
2932 (propagated-inputs
2933 `(("kconfig" ,kconfig)
2934 ("kcoreaddons" ,kcoreaddons)))
2935 (native-inputs
886d8155
DC
2936 `(("bison" ,bison)
2937 ("extra-cmake-modules" ,extra-cmake-modules)
83dcfa72 2938 ("flex" ,flex)))
12b49b62
DC
2939 (inputs
2940 `(("kcrash" ,kcrash)
2941 ("kdbusaddons" ,kdbusaddons)
2942 ("kdoctools" ,kdoctools)
2943 ("ki18n" ,ki18n)
2944 ("qtbase" ,qtbase)))
2945 (arguments
12a9f7be 2946 `(#:tests? #f ; FIXME: 6/10 tests fail.
12b49b62
DC
2947 #:phases
2948 (modify-phases %standard-phases
2949 (add-before 'check 'check-setup
2950 (lambda _
2951 (setenv "HOME" (getcwd))
94e24d81 2952 ;; make Qt render "offscreen", required for tests
12b49b62
DC
2953 (setenv "QT_QPA_PLATFORM" "offscreen")
2954 #t)))))
2955 (home-page "https://community.kde.org/Frameworks")
2956 (synopsis "Plugin framework for desktop services")
2957 (description "KService provides a plugin framework for handling desktop
2958services. Services can be applications or libraries. They can be bound to MIME
2959types or handled by application specific code.")
2960 ;; triple licensed
2961 (license (list license:gpl2+ license:gpl3+ license:lgpl2.1+))))
def00811
DC
2962
2963(define-public ktexteditor
2964 (package
2965 (name "ktexteditor")
431ff8be 2966 (version "5.42.0")
b0791cf9
DC
2967 (source (origin
2968 (method url-fetch)
2969 (uri (string-append
2970 "mirror://kde/stable/frameworks/"
2971 (version-major+minor version) "/"
2972 name "-" version ".tar.xz"))
2973 (sha256
2974 (base32
431ff8be 2975 "020y3j6vm15sfpiwainr3qsx9i93j15mrvq523wmbmdj1z36yrh2"))))
def00811
DC
2976 (build-system cmake-build-system)
2977 (propagated-inputs
2978 `(("kparts" ,kparts)))
2979 (native-inputs
37aa54b7
HG
2980 `(("extra-cmake-modules" ,extra-cmake-modules)
2981 ("pkg-config" ,pkg-config)))
def00811 2982 (inputs
1e0ae3b3
HG
2983 `(;; TODO: editor-config
2984 ("karchive" ,karchive)
def00811
DC
2985 ("kauth" ,kauth)
2986 ("kbookmarks" ,kbookmarks)
2987 ("kcodecs" ,kcodecs)
2988 ("kcompletion" ,kcompletion)
2989 ("kconfig" ,kconfig)
2990 ("kconfigwidgets" ,kconfigwidgets)
2991 ("kcoreaddons" ,kcoreaddons)
2992 ("kguiaddons" ,kguiaddons)
2993 ("kiconthemes" ,kiconthemes)
2994 ("kio" ,kio)
2995 ("kitemviews" ,kitemviews)
2996 ("ki18n" ,ki18n)
2997 ("kjobwidgets" ,kjobwidgets)
2998 ("kservice" ,kservice)
4467c2d1 2999 ("ksyntaxhighlighting" ,ksyntaxhighlighting)
def00811
DC
3000 ("ktextwidgets" ,ktextwidgets)
3001 ("kwidgetsaddons" ,kwidgetsaddons)
3002 ("kxmlgui" ,kxmlgui)
3003 ("libgit2" ,libgit2)
3004 ("perl" ,perl)
3005 ("qtbase" ,qtbase)
c695fb76 3006 ("qtdeclarative" ,qtdeclarative)
def00811
DC
3007 ("qtscript" ,qtscript)
3008 ("qtxmlpatterns" ,qtxmlpatterns)
3009 ("solid" ,solid)
3010 ("sonnet" ,sonnet)))
3011 (arguments
3012 `(#:tests? #f ; FIXME: 2/54 tests fail: Cannot find fontdirectory qtbase/lib/font
3013 #:phases
3014 (modify-phases %standard-phases
3015 (add-after 'unpack 'setup
3016 (lambda* (#:key inputs #:allow-other-keys)
3017 (setenv "XDG_DATA_DIRS" ; FIXME build phase doesn't find parts.desktop
3018 (string-append (assoc-ref inputs "kparts") "/share"))
3019 #t))
3020 (add-before 'check 'check-setup
3021 (lambda _
3022 (setenv "HOME" (getcwd))
94e24d81 3023 ;; make Qt render "offscreen", required for tests
def00811 3024 (setenv "QT_QPA_PLATFORM" "offscreen")
b87633fc
HG
3025 #t))
3026 (add-after 'install 'add-symlinks
3027 ;; Some package(s) (e.g. plasma-sdk) refer to these service types
3028 ;; by the wrong name. I would prefer to patch those packages, but
3029 ;; I cannot find the files!
3030 (lambda* (#:key outputs #:allow-other-keys)
3031 (let ((kst5 (string-append (assoc-ref outputs "out")
3032 "/share/kservicetypes5/")))
3033 (symlink (string-append kst5 "ktexteditorplugin.desktop")
3034 (string-append kst5 "ktexteditor-plugin.desktop"))))))))
def00811
DC
3035 (home-page "https://community.kde.org/Frameworks")
3036 (synopsis "Full text editor component")
3037 (description "KTextEditor provides a powerful text editor component that you
3038can embed in your application, either as a KPart or using the KF5::TextEditor
3039library.")
3040 ;; triple licensed
3041 (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
2128da9a
DC
3042
3043(define-public ktextwidgets
3044 (package
3045 (name "ktextwidgets")
431ff8be 3046 (version "5.42.0")
f07f6709
DC
3047 (source (origin
3048 (method url-fetch)
3049 (uri (string-append
3050 "mirror://kde/stable/frameworks/"
3051 (version-major+minor version) "/"
3052 name "-" version ".tar.xz"))
3053 (sha256
3054 (base32
431ff8be 3055 "088azbv95ycwxmxxw4l63i2l14fmn8l473pb4djh2mvz1ypfqayk"))))
2128da9a
DC
3056 (build-system cmake-build-system)
3057 (propagated-inputs
3058 `(("ki18n" ,ki18n)
3059 ("sonnet" ,sonnet)))
3060 (native-inputs
3061 `(("extra-cmake-modules" ,extra-cmake-modules)))
3062 (inputs
3063 `(("kauth" ,kauth)
3064 ("kcodecs" ,kcodecs)
3065 ("kcompletion" ,kcompletion)
3066 ("kconfig" ,kconfig)
3067 ("kconfigwidgets" ,kconfigwidgets)
3068 ("kcoreaddons" ,kcoreaddons)
3069 ("kiconthemes" ,kiconthemes)
3070 ("kservice" ,kservice)
3071 ("kwidgetsaddons" ,kwidgetsaddons)
3072 ("kwindowsystem" ,kwindowsystem)
96e622f1 3073 ("qtbase" ,qtbase)
c695fb76 3074 ("qtspeech" ,qtspeech)))
2128da9a
DC
3075 (arguments
3076 `(#:phases
3077 (modify-phases %standard-phases
3078 (add-before 'check 'check-setup
3079 (lambda _
94e24d81 3080 ;; make Qt render "offscreen", required for tests
2128da9a
DC
3081 (setenv "QT_QPA_PLATFORM" "offscreen")
3082 #t)))))
3083 (home-page "https://community.kde.org/Frameworks")
3084 (synopsis "Text editing widgets")
3085 (description "KTextWidgets provides widgets for displaying and editing text.
3086It supports rich text as well as plain text.")
3087 ;; dual licensed
3088 (license (list license:lgpl2.0+ license:lgpl2.1+))))
7ac520dd
DC
3089
3090(define-public kwallet
3091 (package
3092 (name "kwallet")
431ff8be 3093 (version "5.42.0")
8b9b0e5e
DC
3094 (source (origin
3095 (method url-fetch)
3096 (uri (string-append
3097 "mirror://kde/stable/frameworks/"
3098 (version-major+minor version) "/"
3099 name "-" version ".tar.xz"))
3100 (sha256
3101 (base32
431ff8be 3102 "1kv3v7593srfn0wd7qp4rhvb30rxp7d2qmlwi0n4nc9s6v59pabn"))))
7ac520dd
DC
3103 (build-system cmake-build-system)
3104 (native-inputs
3105 `(("extra-cmake-modules" ,extra-cmake-modules)))
3106 (inputs
79677b2f 3107 `(("gpgme" ,gpgme)
7ac520dd
DC
3108 ("kauth" ,kauth)
3109 ("kcodecs" ,kcodecs)
3110 ("kconfig" ,kconfig)
3111 ("kconfigwidgets" ,kconfigwidgets)
3112 ("kcoreaddons" ,kcoreaddons)
3113 ("kdbusaddons" ,kdbusaddons)
3114 ("kdoctools" ,kdoctools)
3115 ("kiconthemes" ,kiconthemes)
3116 ("ki18n" ,ki18n)
3117 ("knotifications" ,knotifications)
3118 ("kservice" ,kservice)
3119 ("kwidgetsaddons" ,kwidgetsaddons)
3120 ("kwindowsystem" ,kwindowsystem)
3121 ("libgcrypt" ,libgcrypt)
3122 ("phonon" ,phonon)
79677b2f 3123 ("qgpgme" ,qgpgme)
7ac520dd
DC
3124 ("qtbase" ,qtbase)))
3125 (home-page "https://community.kde.org/Frameworks")
3126 (synopsis "Safe desktop-wide storage for passwords")
3127 (description "This framework contains an interface to KWallet, a safe
3128desktop-wide storage for passwords and the kwalletd daemon used to safely store
3129the passwords on KDE work spaces.")
3130 (license license:lgpl2.1+)))
469a743c
DC
3131
3132(define-public kxmlgui
3133 (package
3134 (name "kxmlgui")
431ff8be 3135 (version "5.42.0")
19fbf93f
DC
3136 (source (origin
3137 (method url-fetch)
3138 (uri (string-append
3139 "mirror://kde/stable/frameworks/"
3140 (version-major+minor version) "/"
3141 name "-" version ".tar.xz"))
3142 (sha256
3143 (base32
431ff8be 3144 "0kfxjx8wrhkys5bydnv84nqxc2jqvv92zb2l6zpi0km5ggmia5y0"))))
469a743c
DC
3145 (build-system cmake-build-system)
3146 (propagated-inputs
3147 `(("kconfig" ,kconfig)
3148 ("kconfigwidgets" ,kconfigwidgets)))
3149 (native-inputs
3150 `(("extra-cmake-modules" ,extra-cmake-modules)))
3151 (inputs
3152 `(("attica" ,attica)
c695fb76 3153 ("kauth" ,kauth)
469a743c
DC
3154 ("kcodecs" ,kcodecs)
3155 ("kcoreaddons" ,kcoreaddons)
3156 ("kglobalaccel" ,kglobalaccel)
3157 ("kiconthemes" ,kiconthemes)
3158 ("kitemviews" ,kitemviews)
3159 ("ki18n" ,ki18n)
3160 ("ktextwidgets" ,ktextwidgets)
3161 ("kwidgetsaddons" ,kwidgetsaddons)
3162 ("kwindowsystem" ,kwindowsystem)
3163 ("qtbase" ,qtbase)
3164 ("sonnet" ,sonnet)))
3165 (arguments
3166 `(#:tests? #f ; FIXME: 1/5 tests fail.
3167 #:phases
3168 (modify-phases %standard-phases
3169 (add-before 'check 'check-setup
3170 (lambda _
3171 (setenv "HOME" (getcwd))
94e24d81 3172 ;; make Qt render "offscreen", required for tests
469a743c 3173 (setenv "QT_QPA_PLATFORM" "offscreen")
469a743c
DC
3174 #t)))))
3175 (home-page "https://community.kde.org/Frameworks")
3176 (synopsis "Framework for managing menu and toolbar actions")
3177 (description "KXMLGUI provides a framework for managing menu and toolbar
3178actions in an abstract way. The actions are configured through a XML description
3179and hooks in the application code. The framework supports merging of multiple
3180descriptions for integrating actions from plugins.")
3181 ;; dual licensed
3182 (license (list license:gpl2+ license:lgpl2.1+))))
97bb2dbb
DC
3183
3184(define-public kxmlrpcclient
3185 (package
3186 (name "kxmlrpcclient")
431ff8be 3187 (version "5.42.0")
6c6e8b19
DC
3188 (source (origin
3189 (method url-fetch)
3190 (uri (string-append
3191 "mirror://kde/stable/frameworks/"
3192 (version-major+minor version) "/"
3193 name "-" version ".tar.xz"))
3194 (sha256
3195 (base32
431ff8be 3196 "0ciip27ilsfk9s3gslpbi06v8i6ipdbmcig2jf43z3amsxpq0ncn"))))
97bb2dbb
DC
3197 (build-system cmake-build-system)
3198 (propagated-inputs
3199 `(("kio" ,kio)))
3200 (native-inputs
3201 `(("extra-cmake-modules" ,extra-cmake-modules)))
3202 (inputs
3203 `(("kauth" ,kauth)
3204 ("kbookmarks" ,kbookmarks)
3205 ("kcodecs" ,kcodecs)
3206 ("kcompletion" ,kcompletion)
3207 ("kconfig" ,kconfig)
3208 ("kconfigwidgets" ,kconfigwidgets)
3209 ("kcoreaddons" ,kcoreaddons)
3210 ("kitemviews" ,kitemviews)
3211 ("ki18n" ,ki18n)
3212 ("kjobwidgets" ,kjobwidgets)
3213 ("kservice" ,kservice)
3214 ("kwidgetsaddons" ,kwidgetsaddons)
3215 ("kxmlgui" ,kxmlgui)
3216 ("qtbase" ,qtbase)
3217 ("solid" ,solid)))
3218 (home-page "https://community.kde.org/Frameworks")
3219 (synopsis "XML-RPC client")
3220 (description "This library contains simple XML-RPC Client support. It is a
3221complete client and is easy to use. Only one interface is exposed,
3222kxmlrpcclient/client.h and from that interface, you only need to use 3 methods:
3223setUrl, setUserAgent and call.")
3224 ;; dual licensed
3225 (license (list license:bsd-2 license:lgpl2.1+))))
0a7c2d08
DC
3226
3227(define-public plasma-framework
3228 (package
3229 (name "plasma-framework")
431ff8be 3230 (version "5.42.0")
9efa472f
DC
3231 (source (origin
3232 (method url-fetch)
3233 (uri (string-append
3234 "mirror://kde/stable/frameworks/"
3235 (version-major+minor version) "/"
3236 name "-" version ".tar.xz"))
3237 (sha256
3238 (base32
431ff8be 3239 "079c8h0lmbkfr3srj5m8a40b50kyrxbgmy1n66329l8js9xrvaah"))))
0a7c2d08
DC
3240 (build-system cmake-build-system)
3241 (propagated-inputs
3242 `(("kpackage" ,kpackage)
3243 ("kservice" ,kservice)))
3244 (native-inputs
faec8b8f
HG
3245 `(("extra-cmake-modules" ,extra-cmake-modules)
3246 ("pkg-config" ,pkg-config)))
0a7c2d08
DC
3247 (inputs
3248 `(("kactivities" ,kactivities)
3249 ("karchive" ,karchive)
3250 ("kauth" ,kauth)
3251 ("kbookmarks" ,kbookmarks)
3252 ("kcodecs" ,kcodecs)
3253 ("kcompletion" ,kcompletion)
3254 ("kconfig" ,kconfig)
3255 ("kconfigwidgets" ,kconfigwidgets)
3256 ("kcoreaddons" ,kcoreaddons)
3257 ("kdbusaddons" ,kdbusaddons)
3258 ("kdeclarative" ,kdeclarative)
3259 ("kdoctools" ,kdoctools)
3260 ("kglobalaccel" ,kglobalaccel)
3261 ("kguiaddons" ,kguiaddons)
3262 ("kiconthemes" ,kiconthemes)
431ff8be 3263 ("kirigami" ,kirigami)
0a7c2d08
DC
3264 ("kitemviews" ,kitemviews)
3265 ("kio" ,kio)
3266 ("ki18n" ,ki18n)
3267 ("kjobwidgets" ,kjobwidgets)
3268 ("knotificantions" ,knotifications)
faec8b8f 3269 ("kwayland" ,kwayland)
0a7c2d08
DC
3270 ("kwidgetsaddons" ,kwidgetsaddons)
3271 ("kwindowsystem" ,kwindowsystem)
3272 ("kxmlgui" ,kxmlgui)
3273 ("phonon" ,phonon)
3274 ("qtbase" ,qtbase)
3275 ("qtdeclarative" ,qtdeclarative)
3276 ("qtsvg" ,qtsvg)
3277 ("qtx11extras" ,qtx11extras)
3278 ("solid" ,solid)))
3279 (arguments
1e0ae3b3 3280 `(#:tests? #f ; FIXME: 9/15 tests fail.
0a7c2d08
DC
3281 #:phases
3282 (modify-phases %standard-phases
3283 (add-before 'check 'check-setup
3284 (lambda _
3285 (setenv "HOME" (getcwd))
94e24d81 3286 ;; make Qt render "offscreen", required for tests
0a7c2d08
DC
3287 (setenv "QT_QPA_PLATFORM" "offscreen")
3288 #t)))))
3289 (home-page "https://community.kde.org/Frameworks")
3290 (synopsis "Libraries, components and tools of Plasma workspaces")
3291 (description "The plasma framework provides QML components, libplasma and
3292script engines.")
3293 ;; dual licensed
3294 (license (list license:gpl2+ license:lgpl2.1+))))
834d1222
TD
3295
3296;; This version of kdbusaddons does not use kinit as an input, and is used to
3297;; build kinit-bootstrap, as well as bootstrap versions of all kinit
3298;; dependencies which also rely on kdbusaddons.
3299(define kdbusaddons-bootstrap
3300 (package
3301 (inherit kdbusaddons)
3302 (source (origin
3303 (inherit (package-source kdbusaddons))
3304 (patches '())))
3305 (inputs (alist-delete "kinit" (package-inputs kdbusaddons)))
3306 (arguments
3307 (substitute-keyword-arguments (package-arguments kdbusaddons)
3308 ((#:phases phases)
3309 `(modify-phases ,phases
3310 (delete 'patch-source)))))))
3311
3312(define kinit-bootstrap
3313 ((package-input-rewriting `((,kdbusaddons . ,kdbusaddons-bootstrap))) kinit))
4cdf00d6
HG
3314
3315
3316;; Tier 4
3317;;
3318;; Tier 4 frameworks can be mostly ignored by application programmers; this
3319;; tier consists of plugins acting behind the scenes to provide additional
3320;; functionality or platform integration to existing frameworks (including
3321;; Qt).
3322
3323(define-public kde-frameworkintegration
3324 (package
3325 (name "kde-frameworkintegration")
431ff8be 3326 (version "5.42.0")
4cdf00d6
HG
3327 (source (origin
3328 (method url-fetch)
3329 (uri (string-append
3330 "mirror://kde/stable/frameworks/"
3331 (version-major+minor version) "/"
3332 "frameworkintegration-" version ".tar.xz"))
3333 (sha256
3334 (base32
431ff8be 3335 "17fyny3c5chv7bipr19ayfjmd1amp2nms4ba5r7mwjp97xkphry7"))))
4cdf00d6
HG
3336 (build-system cmake-build-system)
3337 (native-inputs
3338 `(("extra-cmake-modules" ,extra-cmake-modules)
3339 ("pkg-config" ,pkg-config)))
10afdf78 3340 ;; TODO: Optional packages not yet in Guix: packagekitqt5, AppStreamQt
4cdf00d6
HG
3341 (inputs
3342 `(("kconfig" ,kconfig)
3343 ("kconfigwidgets" ,kconfigwidgets)
3344 ("kcoreaddons" ,kcoreaddons)
3345 ("ki18n" ,ki18n)
3346 ("kiconthemes" ,kiconthemes)
3347 ("kitemviews" ,kitemviews)
3348 ("knewstuff" ,knewstuff)
3349 ("knotificantions" ,knotifications)
3350 ("kpackage" ,kpackage)
3351 ("kwidgetsaddons" ,kwidgetsaddons)
3352 ("qtbase" ,qtbase)
3353 ("qtx11extras" ,qtx11extras)))
3354 (arguments
3355 `(#:phases
3356 (modify-phases %standard-phases
3357 (add-before 'check 'check-setup
3358 (lambda _
3359 (setenv "HOME" (getcwd))
3360 ;; Make Qt render "offscreen", required for tests
3361 (setenv "QT_QPA_PLATFORM" "offscreen")
3362 #t)))))
3363 (home-page "https://community.kde.org/Frameworks")
3364 (synopsis "KDE Frameworks 5 workspace and cross-framework integration plugins")
3365 (description "Framework Integration is a set of plugins responsible for
3366better integration of Qt applications when running on a KDE Plasma
3367workspace.")
3368 ;; This package is distributed under either LGPL2 or LGPL3, but some
3369 ;; files are explicitly LGPL2+.
18733212 3370 (license (list license:lgpl2.0 license:lgpl3 license:lgpl2.0+))
4cdf00d6 3371 (properties `((upstream-name . "frameworkintegration")))))
10afdf78
HG
3372
3373
3374;; Porting Aids
3375;;
3376;; Porting Aids frameworks provide code and utilities to ease the transition
3377;; from kdelibs 4 to KDE Frameworks 5. Code should aim to port away from this
3378;; framework, new projects should avoid using these libraries.
3379
3380(define-public kdelibs4support
3381 (package
3382 (name "kdelibs4support")
431ff8be 3383 (version "5.42.0")
10afdf78
HG
3384 (source
3385 (origin
3386 (method url-fetch)
3387 (uri (string-append
3388 "mirror://kde/stable/frameworks/"
3389 (version-major+minor version) "/portingAids/"
3390 name "-" version ".tar.xz"))
3391 (sha256
431ff8be 3392 (base32 "0aiig8akn6bdxrqdl96xjjy2pxw8hhfrsalbkkzyhh06j794snfb"))))
10afdf78
HG
3393 (build-system cmake-build-system)
3394 (native-inputs
3395 `(("dbus" ,dbus)
3396 ("docbook-xml" ,docbook-xml-4.4) ; optional
3397 ("extra-cmake-modules" ,extra-cmake-modules)
c695fb76 3398 ("perl" ,perl)
10afdf78
HG
3399 ("perl-uri" ,perl-uri)
3400 ("pkg-config" ,pkg-config)
3401 ("shared-mime-info" ,shared-mime-info)
3402 ("kjobwidgets" ,kjobwidgets) ;; required for running the tests
3403 ("strace" ,strace)
3404 ("tzdata" ,tzdata)))
3405 (propagated-inputs
3406 ;; These are required to be installed along with this package, see
3407 ;; lib64/cmake/KF5KDELibs4Support/KF5KDELibs4SupportConfig.cmake
3408 `(("karchive" ,karchive)
3409 ("kauth" ,kauth)
3410 ("kconfigwidgets" ,kconfigwidgets)
3411 ("kcoreaddons" ,kcoreaddons)
3412 ("kcrash" ,kcrash)
3413 ("kdbusaddons" ,kdbusaddons)
3414 ("kdesignerplugin" ,kdesignerplugin)
3415 ("kdoctools" ,kdoctools)
3416 ("kemoticons" ,kemoticons)
3417 ("kguiaddons" ,kguiaddons)
3418 ("kiconthemes" ,kiconthemes)
3419 ("kinit" ,kinit)
3420 ("kitemmodels" ,kitemmodels)
3421 ("knotifications" ,knotifications)
3422 ("kparts" ,kparts)
3423 ("ktextwidgets" ,ktextwidgets)
c695fb76 3424 ("kunitconversion" ,kunitconversion)
10afdf78
HG
3425 ("kwindowsystem" ,kwindowsystem)
3426 ("qtbase" ,qtbase)))
3427 (inputs
3428 `(("kcompletion" ,kcompletion)
3429 ("kconfig" ,kconfig)
10afdf78 3430 ("kded" ,kded)
10afdf78 3431 ("kglobalaccel" ,kglobalaccel)
10afdf78
HG
3432 ("ki18n" ,ki18n)
3433 ("kio" ,kio)
3434 ("kservice" ,kservice)
3435 ("kwidgetsaddons" ,kwidgetsaddons)
3436 ("kxmlgui" ,kxmlgui)
c695fb76
TGR
3437 ("libsm" ,libsm)
3438 ("networkmanager-qt" ,networkmanager-qt)
3439 ("openssl" ,openssl)
10afdf78
HG
3440 ("qtsvg" ,qtsvg)
3441 ("qttools" ,qttools)
3442 ("qtx11extras" ,qtx11extras)))
3443 ;; FIXME: Use GuixSD ca-bundle.crt in etc/xdg/ksslcalist and
3444 ;; share/kf5/kssl/ca-bundle.crt
3445 (arguments
3446 `(#:phases
3447 (modify-phases %standard-phases
3448 (add-after 'unpack 'make-cmake-to-find-docbook
3449 (lambda _
3450 (substitute* "cmake/FindDocBookXML4.cmake"
3451 (("^.*xml/docbook/schema/dtd.*$")
3452 "xml/dtd/docbook\n"))
3453 #t))
3454 (delete 'check)
3455 (add-after 'install 'check-post-install
3456 (lambda* (#:key inputs tests? #:allow-other-keys)
3457 (setenv "HOME" (getcwd))
3458 (setenv "TZDIR" ; KDateTimeTestsome needs TZDIR
3459 (string-append (assoc-ref inputs "tzdata")
3460 "/share/zoneinfo"))
3461 ;; Make Qt render "offscreen", required for tests
3462 (setenv "QT_QPA_PLATFORM" "offscreen")
3463 ;; enable debug output
3464 (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
3465 (setenv "DBUS_FATAL_WARNINGS" "0")
5bc1efd7
HG
3466 ;; Make kstandarddirstest pass (see https://bugs.kde.org/381098)
3467 (mkdir-p ".kde-unit-test/xdg/config")
3468 (with-output-to-file ".kde-unit-test/xdg/config/foorc"
3469 (lambda () #t)) ;; simply touch the file
ed8bdde9
HG
3470 ;; Blacklist a test-function (failing at build.kde.org, too).
3471 (with-output-to-file "autotests/BLACKLIST"
3472 (lambda _
3473 (display "[testSmb]\n*\n")))
431ff8be 3474 ;; kuniqueapptest hangs. FIXME: Make this test pass.
10afdf78 3475 (zero? (system* "dbus-launch" "ctest" "."
6211aadf 3476 "-E" "kstandarddirstest|kuniqueapptest")))))))
10afdf78
HG
3477 (home-page "https://community.kde.org/Frameworks")
3478 (synopsis "KDE Frameworks 5 porting aid from KDELibs4")
3479 (description "This framework provides code and utilities to ease the
3480transition from kdelibs 4 to KDE Frameworks 5. This includes CMake macros and
3481C++ classes whose functionality has been replaced by code in CMake, Qt and
3482other frameworks.
3483
3484Code should aim to port away from this framework eventually. The API
3485documentation of the classes in this framework and the notes at
3486http://community.kde.org/Frameworks/Porting_Notes should help with this.")
3487 ;; Most files are distributed under LGPL2+, but the package includes code
3488 ;; under a variety of licenses.
18733212
LC
3489 (license (list license:lgpl2.1+ license:lgpl2.0 license:lgpl2.0+
3490 license:gpl2 license:gpl2+
3491 license:expat license:bsd-2 license:bsd-3
3492 license:public-domain))))
7090518f 3493
f0d4fe18
HG
3494(define-public khtml
3495 (package
3496 (name "khtml")
431ff8be 3497 (version "5.42.0")
f0d4fe18
HG
3498 (source
3499 (origin
3500 (method url-fetch)
3501 (uri (string-append
3502 "mirror://kde/stable/frameworks/"
3503 (version-major+minor version) "/portingAids/"
3504 name "-" version ".tar.xz"))
3505 (sha256
431ff8be 3506 (base32 "1bfslndxvad0zgzr22w2mz1xwavix9bh5qrrv8dpshlh043bwr3l"))))
f0d4fe18
HG
3507 (build-system cmake-build-system)
3508 (native-inputs
3509 `(("extra-cmake-modules" ,extra-cmake-modules)
c695fb76 3510 ("perl" ,perl)))
f0d4fe18
HG
3511 (inputs
3512 `(("giflib" ,giflib)
de5a235c 3513 ("gperf" ,gperf)
f0d4fe18
HG
3514 ("karchive" ,karchive)
3515 ("kcodecs" ,kcodecs)
3516 ("kglobalaccel" ,kglobalaccel)
3517 ("ki18n" ,ki18n)
3518 ("kiconthemes" ,kiconthemes)
3519 ("kio" ,kio)
3520 ("kjs" ,kjs)
3521 ("knotifications" ,knotifications)
3522 ("kparts" ,kparts)
3523 ("ktextwidgets" ,ktextwidgets)
c695fb76 3524 ("kwallet" ,kwallet)
f0d4fe18
HG
3525 ("kwidgetsaddons" ,kwidgetsaddons)
3526 ("kwindowsystem" ,kwindowsystem)
3527 ("kxmlgui" ,kxmlgui)
c695fb76
TGR
3528 ("libjpeg" ,libjpeg)
3529 ("libpng" ,libpng)
3530 ("openssl" ,openssl)
3531 ("phonon" ,phonon)
f0d4fe18
HG
3532 ("qtbase" ,qtbase)
3533 ("qtx11extras" ,qtx11extras)
3534 ("sonnet" ,sonnet)))
3535 (arguments
3536 `(#:phases
3537 (modify-phases %standard-phases
3538 (add-before 'check 'check-setup
3539 (lambda _
3540 ;; Make Qt render "offscreen", required for tests
3541 (setenv "QT_QPA_PLATFORM" "offscreen")
3542 #t)))))
3543 (home-page "https://community.kde.org/Frameworks")
3544 (synopsis "KDE Frameworks 5 HTML widget and component")
3545 (description "KHTML is a web rendering engine, based on the KParts
3546technology and using KJS for JavaScript support.")
3547 ;; Most files are distributed under LGPL2+, but the package includes code
3548 ;; under a variety of licenses.
18733212
LC
3549 (license (list license:lgpl2.0+ license:lgpl2.1+
3550 license:gpl2 license:gpl3+
3551 license:expat license:bsd-2 license:bsd-3))))
f0d4fe18 3552
7090518f
HG
3553(define-public kjs
3554 (package
3555 (name "kjs")
431ff8be 3556 (version "5.42.0")
7090518f
HG
3557 (source
3558 (origin
3559 (method url-fetch)
3560 (uri (string-append
3561 "mirror://kde/stable/frameworks/"
3562 (version-major+minor version) "/portingAids/"
3563 name "-" version ".tar.xz"))
3564 (sha256
431ff8be 3565 (base32 "1m26sb2qyrcgmpkw76k2yv5my2pkhld96vw6aaqm77q90faw734g"))))
7090518f
HG
3566 (build-system cmake-build-system)
3567 (native-inputs
3568 `(("extra-cmake-modules" ,extra-cmake-modules)
3569 ("kdoctools" ,kdoctools)
3570 ("perl" ,perl)
3571 ("pkg-config" ,pkg-config)))
3572 (inputs
3573 `(("pcre" ,pcre)
3574 ("qtbase" ,qtbase)))
3575 (home-page "https://community.kde.org/Frameworks")
3576 (synopsis "KDE Frameworks 5 support for Javascript scripting in Qt
3577applications")
3578 (description "Add-on library to Qt which adds JavaScript scripting
3579support.")
3580 ;; Most files are distributed under LGPL2+, but the package also includes
3581 ;; code under a variety of licenses.
18733212
LC
3582 (license (list license:lgpl2.1+
3583 license:bsd-2 license:bsd-3
3584 (license:non-copyleft "file://src/kjs/dtoa.cpp")))))
d153dc5b
HG
3585
3586(define-public kjsembed
3587 (package
3588 (name "kjsembed")
431ff8be 3589 (version "5.42.0")
d153dc5b
HG
3590 (source
3591 (origin
3592 (method url-fetch)
3593 (uri (string-append
3594 "mirror://kde/stable/frameworks/"
3595 (version-major+minor version) "/portingAids/"
3596 name "-" version ".tar.xz"))
3597 (sha256
431ff8be 3598 (base32 "10w4w4ncwr245bv1ii4sh154w91ghfz0l60k89j50lsydpcqcp3a"))))
d153dc5b
HG
3599 (build-system cmake-build-system)
3600 (native-inputs
3601 `(("extra-cmake-modules" ,extra-cmake-modules)
3602 ("kdoctools" ,kdoctools)
3603 ("qttools" ,qttools)))
3604 (inputs
3605 `(("ki18n" ,ki18n)
3606 ("kjs" ,kjs)
3607 ("qtbase" ,qtbase)
3608 ("qtsvg" ,qtsvg)))
3609 (home-page "https://community.kde.org/Frameworks")
3610 (synopsis "KDE Frameworks 5 embedded Javascript engine for Qt")
3611 (description "KJSEmbed provides a method of binding Javascript objects to
3612QObjects, so you can script your applications.")
3613 (license license:lgpl2.1+)))
8d10244d
HG
3614
3615(define-public kmediaplayer
3616 (package
3617 (name "kmediaplayer")
431ff8be 3618 (version "5.42.0")
8d10244d
HG
3619 (source
3620 (origin
3621 (method url-fetch)
3622 (uri (string-append
3623 "mirror://kde/stable/frameworks/"
3624 (version-major+minor version) "/portingAids/"
3625 name "-" version ".tar.xz"))
3626 (sha256
431ff8be 3627 (base32 "1k1pjc0cz36gs0pl2pxw8f9f82xkbqyy320nfyhan5waxbl1qd5n"))))
8d10244d
HG
3628 (build-system cmake-build-system)
3629 (native-inputs
3630 `(("extra-cmake-modules" ,extra-cmake-modules)
3631 ("kdoctools" ,kdoctools)
3632 ("qttools" ,qttools)))
3633 (inputs
3634 `(("kcompletion" ,kcompletion)
3635 ("kcoreaddons" ,kcoreaddons)
3636 ("ki18n" ,ki18n)
3637 ("kiconthemes" ,kiconthemes)
3638 ("kio" ,kio)
3639 ("kparts" ,kparts)
3640 ("kwidgetsaddons" ,kwidgetsaddons)
3641 ("kxmlgui" ,kxmlgui)
3642 ("qtbase" ,qtbase)))
3643 (arguments
3644 `(#:phases
3645 (modify-phases %standard-phases
3646 (add-before 'check 'check-setup
3647 (lambda _
3648 ;; Make Qt render "offscreen", required for tests
3649 (setenv "QT_QPA_PLATFORM" "offscreen")
3650 #t)))))
3651 (home-page "https://community.kde.org/Frameworks")
3652 (synopsis "KDE Frameworks 5 plugin interface for media player features")
3653 (description "KMediaPlayer builds on the KParts framework to provide a
3654common interface for KParts that can play media files.
3655
3656This framework is a porting aid. It is not recommended for new projects, and
3657existing projects that use it are advised to port away from it, and use plain
3658KParts instead.")
3659 (license license:expat)))
346d5d58
HG
3660
3661(define-public kross
3662 (package
3663 (name "kross")
431ff8be 3664 (version "5.42.0")
346d5d58
HG
3665 (source
3666 (origin
3667 (method url-fetch)
3668 (uri (string-append
3669 "mirror://kde/stable/frameworks/"
3670 (version-major+minor version) "/portingAids/"
3671 name "-" version ".tar.xz"))
3672 (sha256
431ff8be 3673 (base32 "1aqqwby6jslimpvx42d4n6gjsjc8l82gmsq5ajpv9zkkk91dqfqi"))))
346d5d58
HG
3674 (build-system cmake-build-system)
3675 (native-inputs
3676 `(("extra-cmake-modules" ,extra-cmake-modules)
3677 ("kdoctools" ,kdoctools)
3678 ("qttools" ,qttools)))
3679 (inputs
3680 `(("kcompletion" ,kcompletion)
3681 ("kcoreaddons" ,kcoreaddons)
3682 ("ki18n" ,ki18n)
3683 ("kiconthemes" ,kiconthemes)
3684 ("kparts" ,kparts)
3685 ("kwidgetsaddons" ,kwidgetsaddons)
3686 ("kxmlgui" ,kxmlgui)
3687 ("qtbase" ,qtbase)
3688 ("qtscript" ,qtscript)))
3689 (home-page "https://community.kde.org/Frameworks")
3690 (synopsis "KDE Frameworks 5 solution for application scripting")
3691 (description "Kross is a scripting bridge for the KDE Development Platform
3692used to embed scripting functionality into an application. It supports
3693QtScript as a scripting interpreter backend.
3694
3695Kross provides an abstract API to provide scripting functionality in a
3696interpreter-independent way. The application that uses Kross should not need
3697to know anything about the scripting language being used. The core of Kross
3698provides the framework to deal transparently with interpreter-backends and
3699offers abstract functionality to deal with scripts.")
3700 ;; Most files are distributed under LGPL2+, but the package includes code
3701 ;; under a variety of licenses.
18733212
LC
3702 (license (list license:lgpl2.0+ license:lgpl2.1+
3703 license:lgpl2.0 license:gpl3+))))