gnu: r-nmf: Move from "annotation" to "package" section.
[jackhill/guix/guix.git] / gnu / packages / kde.scm
CommitLineData
d34c594a 1;;; GNU Guix --- Functional package management for GNU
f97ad3f8 2;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
15cd7067 3;;; Copyright © 2016 David Craven <david@craven.ch>
d3065c87 4;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
a50f5258 5;;; Copyright © 2017, 2018 Mark Meyer <mark@ofosos.org>
fc87c7ce 6;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
a50f5258 7;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
2668e06e 8;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
00fad32a 9;;; Copyright © 2018, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
9b65dea8 10;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
9141cec4 11;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
a2954e2a 12;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
18bf33a7 13;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com>
7a8d4557 14;;; Copyright © 2020 Zheng Junjie <873216071@qq.com>
d34c594a
EF
15;;;
16;;; This file is part of GNU Guix.
17;;;
18;;; GNU Guix is free software; you can redistribute it and/or modify it
19;;; under the terms of the GNU General Public License as published by
20;;; the Free Software Foundation; either version 3 of the License, or (at
21;;; your option) any later version.
22;;;
23;;; GNU Guix is distributed in the hope that it will be useful, but
24;;; WITHOUT ANY WARRANTY; without even the implied warranty of
25;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26;;; GNU General Public License for more details.
27;;;
28;;; You should have received a copy of the GNU General Public License
29;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
30
31(define-module (gnu packages kde)
32 #:use-module (guix build-system cmake)
e185e900 33 #:use-module (guix build-system qt)
e87b83b6 34 #:use-module (guix deprecation)
d34c594a 35 #:use-module (guix download)
a50f5258 36 #:use-module (guix git-download)
d34c594a
EF
37 #:use-module ((guix licenses) #:prefix license:)
38 #:use-module (guix packages)
39 #:use-module (guix utils)
38988dbe 40 #:use-module (gnu packages)
40761f57 41 #:use-module (gnu packages algebra)
c02c8cf4 42 #:use-module (gnu packages apr)
b9c9cdbf 43 #:use-module (gnu packages audio)
00fad32a 44 #:use-module (gnu packages bison)
c02c8cf4 45 #:use-module (gnu packages boost)
6e23bee6 46 #:use-module (gnu packages code)
a2954e2a 47 #:use-module (gnu packages cpp)
f447dbc7 48 #:use-module (gnu packages compression)
40761f57 49 #:use-module (gnu packages curl)
a387cbab 50 #:use-module (gnu packages djvu)
f447dbc7 51 #:use-module (gnu packages documentation)
a387cbab 52 #:use-module (gnu packages ebook)
00fad32a 53 #:use-module (gnu packages flex)
a387cbab 54 #:use-module (gnu packages fontutils)
40761f57
MM
55 #:use-module (gnu packages gettext)
56 #:use-module (gnu packages ghostscript)
7781afde
TD
57 #:use-module (gnu packages gl)
58 #:use-module (gnu packages gnome)
40761f57
MM
59 #:use-module (gnu packages graphics)
60 #:use-module (gnu packages image)
550791b8 61 #:use-module (gnu packages kde-frameworks)
9141cec4 62 #:use-module (gnu packages kde-pim)
bec2a2e1 63 #:use-module (gnu packages kde-plasma)
15cd7067 64 #:use-module (gnu packages linux)
7781afde 65 #:use-module (gnu packages llvm)
a387cbab 66 #:use-module (gnu packages markup)
40761f57
MM
67 #:use-module (gnu packages maths)
68 #:use-module (gnu packages pdf)
69 #:use-module (gnu packages perl)
70 #:use-module (gnu packages photo)
d34c594a 71 #:use-module (gnu packages pkg-config)
b9c9cdbf 72 #:use-module (gnu packages pulseaudio)
ce8964b6 73 #:use-module (gnu packages python)
d34c594a 74 #:use-module (gnu packages tls)
c02c8cf4 75 #:use-module (gnu packages qt)
40761f57 76 #:use-module (gnu packages version-control)
a50f5258 77 #:use-module (gnu packages video)
ce8964b6 78 #:use-module (gnu packages xdisorg)
b2fdd0cf 79 #:use-module (gnu packages xml)
40761f57 80 #:use-module (gnu packages xorg))
d34c594a 81
15622105
HG
82(define-public baloo-widgets
83 (package
84 (name "baloo-widgets")
6701d232 85 (version "20.04.1")
15622105
HG
86 (source
87 (origin
88 (method url-fetch)
6701d232 89 (uri (string-append "mirror://kde/stable/release-service/" version
15622105
HG
90 "/src/baloo-widgets-" version ".tar.xz"))
91 (sha256
6701d232 92 (base32 "1x4v79vhvc5ixkbsf3jyjz5ig1lf78rfw3r7g3llpb4j1kcp3wh0"))))
15622105
HG
93 (build-system qt-build-system)
94 (native-inputs
95 `(("extra-cmake-modules" ,extra-cmake-modules)))
96 (inputs
97 `(("baloo" ,baloo)
98 ("kconfig" ,kconfig)
99 ("ki18n" ,ki18n)
100 ("kio" ,kio)
101 ("qtbase" ,qtbase)))
102 (arguments
103 `(#:phases
104 (modify-phases %standard-phases
105 (add-before 'check 'check-setup
106 (lambda _
107 (setenv "QT_QPA_PLATFORM" "offscreen")
108 #t)))))
109 (home-page "https://community.kde.org/Baloo")
110 (synopsis "Wigets for use with Baloo")
111 (description "Baloo is a framework for searching and managing metadata.
112This package contains GUI widgets for baloo.")
113 (license license:lgpl2.0+)))
114
b2fdd0cf
HG
115(define-public grantleetheme
116 (package
117 (name "grantleetheme")
6701d232 118 (version "20.04.1")
b2fdd0cf
HG
119 (source
120 (origin
121 (method url-fetch)
6701d232 122 (uri (string-append "mirror://kde/stable/release-service/" version
b2fdd0cf
HG
123 "/src/grantleetheme-" version ".tar.xz"))
124 (sha256
6701d232 125 (base32 "0gabc5cb0sf00s7m5v2jnq55qsrdbrq6nqd15y1i15p788zifsjx"))
b2fdd0cf
HG
126 (patches (search-patches "grantlee-merge-theme-dirs.patch"))))
127 (build-system qt-build-system)
128 (native-inputs
129 `(("extra-cmake-modules" ,extra-cmake-modules)
130 ("libxml2" ,libxml2))) ;; xmllint required for tests
131 (inputs
132 `(("grantlee" ,grantlee)
6701d232 133 ("kguiaddons" ,kguiaddons)
b2fdd0cf
HG
134 ("ki18n" ,ki18n)
135 ("kiconthemes" ,kiconthemes)
136 ("knewstuff" ,knewstuff)
137 ("qtbase" ,qtbase)))
b828057e 138 (home-page "https://invent.kde.org/pim/grantleetheme")
b2fdd0cf
HG
139 (synopsis "Library providing Grantlee theme support")
140 (description "This library provides Grantlee theme support.")
141 (license ;; LGPL for libraries, FDL for documentation
6701d232 142 (list license:lgpl2.1+ license:fdl1.2+))))
b2fdd0cf 143
a50f5258 144(define-public kdenlive
c073efc9 145 (let ((version "20.08.3"))
a50f5258
MM
146 (package
147 (name "kdenlive")
148 (version version)
149 (source
150 (origin
151 (method git-fetch)
152 (uri (git-reference
8ba70a6a 153 (url "https://invent.kde.org/multimedia/kdenlive")
a50f5258
MM
154 (commit (string-append "v" version))))
155 (file-name (string-append name "-" version "-checkout"))
156 (sha256
c073efc9 157 (base32 "0x0qfwf6wfnybjyjvmllpf87sm27d1n2akslhp2k8ins838qy55i"))))
a50f5258
MM
158 (build-system cmake-build-system)
159 (native-inputs
160 `(("extra-cmake-modules" ,extra-cmake-modules)
34b6dd36 161 ("pkg-config" ,pkg-config)
a50f5258 162 ("qttools" ,qttools)))
a50f5258
MM
163 (inputs
164 `(("shared-mime-info" ,shared-mime-info)
165 ("frei0r-plugins" ,frei0r-plugins)
3f663e57 166 ("ffmpeg" ,ffmpeg)
a2954e2a
MR
167 ("rttr" ,rttr)
168 ("mlt" ,mlt)
a50f5258
MM
169 ("qtbase" ,qtbase)
170 ("qtscript" ,qtscript)
171 ("qtsvg" ,qtsvg)
a2954e2a 172 ("qtmultimedia" ,qtmultimedia)
a50f5258
MM
173 ("kparts" ,kparts)
174 ("knotifications" ,knotifications)
175 ("karchive" ,karchive)
176 ("kdbusaddons" ,kdbusaddons)
177 ("kcrash" ,kcrash)
178 ("kguiaddons" ,kguiaddons)
179 ("knewstuff" ,knewstuff)
180 ("knotifyconfig" ,knotifyconfig)
181 ("kfilemetadata" ,kfilemetadata)
182 ("kdoctools" ,kdoctools)
b42b5afd
MW
183 ("kdeclarative" ,kdeclarative)
184 ("qtdeclarative" ,qtdeclarative)
185 ("qtquickcontrols" ,qtquickcontrols)
a2954e2a 186 ("qtquickcontrols2" ,qtquickcontrols2)
b42b5afd 187 ("kiconthemes" ,kiconthemes)
e33a1e54 188 ("breeze" ,breeze)
34b6dd36
PG
189 ("purpose" ,purpose)
190 ("qtwebkit" ,qtwebkit)
a50f5258 191 ("qtgraphicaleffects" ,qtgraphicaleffects)
b42b5afd 192 ("kplotting" ,kplotting)))
a50f5258 193 (arguments
a2954e2a
MR
194 `(#:tests? #f ;TODO needs X
195 #:phases
a50f5258
MM
196 (modify-phases %standard-phases
197 (add-after 'install 'wrap-executable
198 (lambda* (#:key inputs outputs #:allow-other-keys)
199 (let* ((out (assoc-ref outputs "out"))
a50f5258 200 (qtbase (assoc-ref inputs "qtbase"))
a50f5258 201 (frei0r (assoc-ref inputs "frei0r-plugins"))
3f663e57 202 (ffmpeg (assoc-ref inputs "ffmpeg"))
cd6ec670 203 (breeze (assoc-ref inputs "breeze")))
a50f5258 204 (wrap-program (string-append out "/bin/kdenlive")
3f663e57
PG
205 `("PATH" ":" prefix
206 ,(list (string-append ffmpeg "/bin")))
e33a1e54
PG
207 `("XDG_DATA_DIRS" ":" prefix
208 ,(list (string-append breeze "/share")))
a50f5258 209 `("QT_PLUGIN_PATH" ":" prefix
cd6ec670 210 ,(list (getenv "QT_PLUGIN_PATH")))
a50f5258
MM
211 `("FREI0R_PATH" ":" =
212 (,(string-append frei0r "/lib/frei0r-1/")))
213 `("QT_QPA_PLATFORM_PLUGIN_PATH" ":" =
214 (,(string-append qtbase "/lib/qt5/plugins/platforms")))
215 `("QML2_IMPORT_PATH" ":" prefix
cd6ec670 216 ,(list (getenv "QML2_IMPORT_PATH")))
a2954e2a
MR
217 `("MLT_PREFIX" ":" =
218 (,(assoc-ref inputs "mlt")))))
a50f5258
MM
219 #t)))))
220 (home-page "https://kdenlive.org")
221 (synopsis "Non-linear video editor")
222 (description "Kdenlive is an acronym for KDE Non-Linear Video Editor.
223
224Non-linear video editing is much more powerful than beginner's (linear)
225editors, hence it requires a bit more organization before starting. However,
226it is not reserved to specialists and can be used for small personal
227projects.")
228 (license license:gpl2+))))
229
7781afde
TD
230(define-public kdevelop
231 (package
232 (name "kdevelop")
32a4c032 233 (version "5.5.2")
7781afde
TD
234 (source
235 (origin
236 (method url-fetch)
237 (uri (string-append "mirror://kde/stable/kdevelop"
238 "/" version "/src/kdevelop-"
239 version ".tar.xz"))
240 (sha256
32a4c032 241 (base32 "1nkl3z1n1l7ly2zvmbx2sdhx5q72wcvpwhzsz3qgw1474qd9i3i2"))))
6e23bee6 242 (build-system qt-build-system)
7781afde
TD
243 (native-inputs
244 `(("extra-cmake-modules" ,extra-cmake-modules)
245 ("pkg-config" ,pkg-config)
6e23bee6 246 ("shared-mime-info" ,shared-mime-info)
7781afde
TD
247 ("qttools" ,qttools)))
248 (inputs
6e23bee6
HG
249 `(("boost" ,boost)
250 ("clang" ,clang)
251 ("grantlee" ,grantlee)
7781afde
TD
252 ("karchive" ,karchive)
253 ("kcmutils" ,kcmutils)
6e23bee6 254 ("kcrash" ,kcrash)
7781afde
TD
255 ("kdeclarative" ,kdeclarative)
256 ("kdoctools" ,kdoctools)
257 ("kguiaddons" ,kguiaddons)
258 ("ki18n" ,ki18n)
7781afde 259 ("kiconthemes" ,kiconthemes)
6e23bee6 260 ("kio" ,kio) ;; not checked as requirement
7781afde
TD
261 ("kitemmodels" ,kitemmodels)
262 ("kitemviews" ,kitemviews)
263 ("kjobwidgets" ,kjobwidgets)
7781afde 264 ("knotifications" ,knotifications)
6e23bee6 265 ("knotifyconfig" ,knotifyconfig)
7781afde 266 ("kparts" ,kparts)
6e23bee6 267 ("kservice" ,kservice)
7781afde
TD
268 ("ktexteditor" ,ktexteditor)
269 ("kwindowsystem" ,kwindowsystem)
6e23bee6
HG
270 ("kxmlgui" ,kxmlgui)
271 ("libkomparediff2" ,libkomparediff2)
272 ("oxygen-icons" ,oxygen-icons)
273 ("qtbase" ,qtbase)
274 ("qtdeclarative" ,qtdeclarative)
275 ("qtquickcontrols" ,qtquickcontrols) ;; not checked as requirement
276 ("qtquickcontrols2" ,qtquickcontrols2) ;; not checked as requirement
277 ("qtwebkit" ,qtwebkit)
278 ("threadweaver" ,threadweaver)
279
280 ;; recommendes
281 ("astyle" ,astyle)
282 ("kdevelop-pg-qt" ,kdevelop-pg-qt)
283 ("libksysguard" ,libksysguard)
284
285 ;; optional
286 ("apr" ,apr) ; required for subversion support
287 ("apr-util" ,apr-util) ; required for subversion support
288 ("attica" ,attica)
289 ("kconfigwidgets" ,kconfigwidgets)
290 ("knewstuff" ,knewstuff)
291 ("krunner" ,krunner)
292 ;; TODO: OktetaGui, OktetaKastenControllers
7781afde 293 ("plasma" ,plasma-framework)
6e23bee6
HG
294 ;; TODO: purpose
295 ("sonnet" ,sonnet)
296 ("subversion" ,subversion)))
297
298 ;; run-time packages - TODO
299 ;; ClazyStandalone
300 ;; Cppcheck
301 ;; heaptrack
302 ;; heaptrack_gui
303 ;; meson
7781afde 304 (arguments
6e23bee6
HG
305 `(#:tests? #f ;; there are some issues with the test suite
306 #:phases
0422d3e1 307 (modify-phases %standard-phases
6e23bee6
HG
308 (add-before 'configure 'add-include-path
309 (lambda* (#:key inputs #:allow-other-keys)
310 (substitute* "cmake/modules/FindClang.cmake"
311 (("^\\s*PATHS \"\\$\\{CLANG_LIBRARY_DIRS\\}\"" line)
312 (string-append line " " (assoc-ref inputs "clang") "/lib")))
313 #t)))))
7781afde
TD
314 (home-page "https://kdevelop.org")
315 (synopsis "IDE for C, C++, Python, Javascript and PHP")
316 (description "The KDevelop IDE provides semantic syntax highlighting, as
317well as code navigation and completion for C, C++ (using Clang/LLVM), QML,
318JavaScript, Python and PHP. It also integrates with a debugger, different
319build systems (CMake, QMake, custom Makefiles) and version control
320software (Git, Subversion, Mercurial, CVS and Bazaar).")
321 (license license:lgpl2.1+)))
322
8bb115e0
TD
323(define-public kdevelop-pg-qt
324 (package
325 (name "kdevelop-pg-qt")
f97ad3f8 326 (version "2.2.1")
8bb115e0
TD
327 (source
328 (origin
f97ad3f8
EF
329 (method git-fetch)
330 (uri (git-reference
331 (url "https://github.com/KDE/kdevelop-pg-qt")
332 (commit (string-append "v" version))))
333 (file-name (git-file-name name version))
8bb115e0 334 (sha256
f97ad3f8 335 (base32 "1kfab4p717acbdkcdi41d98vwch7v431gb2qi6s38hmclsf8bf8g"))))
8bb115e0
TD
336 (native-inputs
337 `(("extra-cmake-modules" ,extra-cmake-modules)))
338 (inputs
339 `(("qtbase" ,qtbase)))
340 (build-system cmake-build-system)
341 (home-page "https://kde.org")
342 (synopsis "Parser generator library for KDevplatform")
343 (description "KDevelop-PG-Qt is the parser generator used in KDevplatform
344for some KDevelop language plugins (Ruby, PHP, CSS...).")
345 (license license:lgpl2.0+)))
346
e87b83b6 347;; kdevplatform was merged into kdevelop as of 5.2.x
9b65dea8 348(define-deprecated kdevplatform kdevelop)
c02c8cf4 349
9d95d8bd
HG
350(define-public kdiagram
351 (package
352 (name "kdiagram")
8415182a 353 (version "2.7.0")
9d95d8bd
HG
354 (source
355 (origin
356 (method url-fetch)
357 (uri (string-append "mirror://kde/stable/kdiagram/" version
358 "/kdiagram-" version ".tar.xz"))
359 (sha256
8415182a 360 (base32 "1pgvf2q8b59hw0jg5ajmj5nrn4q8cgnifpvdd0fynk2ml6zym8k3"))
9d95d8bd
HG
361 (patches (search-patches
362 "kdiagram-Fix-missing-link-libraries.patch"))))
363 (build-system qt-build-system)
364 (native-inputs
365 `(("extra-cmake-modules" ,extra-cmake-modules)
366 ("qttools" ,qttools)))
367 (inputs
368 `(("qtbase" ,qtbase)
369 ("qtsvg" ,qtsvg)))
b828057e 370 (home-page "https://invent.kde.org/graphics/kdiagram")
9d95d8bd
HG
371 (synopsis "Libraries for creating business diagrams")
372 (description "This package provides libraries for integrating business
373diagrams in Qt-based applications.
374
375@code{KCharts} provides an implementation of the ODF Chart specification. It
376supports stock charts, box charts, and whisker charts. @code{KGantt} provides
377a module for implementing ODF Gantt charts, which are bar charts that
378illustrate project schedules.")
379 (license license:gpl2+)))
380
40761f57
MM
381(define-public krita
382 (package
383 (name "krita")
eaae3e11 384 (version "4.4.1")
40761f57
MM
385 (source (origin
386 (method url-fetch)
387 (uri (string-append
6d8bffd1 388 "mirror://kde/stable/krita/" version
2668e06e 389 "/krita-" version ".tar.gz"))
40761f57
MM
390 (sha256
391 (base32
eaae3e11 392 "05rq5hkh2lmk8hall2h9ccaav0nw8fj7vd4aff5fyp2fiq3aybbg"))))
40761f57
MM
393 (build-system cmake-build-system)
394 (arguments
395 `(#:tests? #f
396 #:configure-flags
2668e06e 397 (list "-DBUILD_TESTING=OFF"
1475d5c6 398 (string-append "-DCMAKE_CXX_FLAGS=-I"
7d703a2f 399 (assoc-ref %build-inputs "openexr")
990e93fc
LF
400 "/include/OpenEXR"))
401 #:phases
402 (modify-phases %standard-phases
1ee750ba
LF
403 ;; Ensure that icons are found at runtime.
404 ;; This works around <https://bugs.gnu.org/22138>.
990e93fc
LF
405 (add-after 'install 'wrap-executable
406 (lambda* (#:key inputs outputs #:allow-other-keys)
407 (let ((out (assoc-ref outputs "out"))
408 (qt '("qtbase" "qtsvg")))
409 (wrap-program (string-append out "/bin/krita")
410 `("QT_PLUGIN_PATH" ":" prefix
411 ,(map (lambda (label)
412 (string-append (assoc-ref inputs label)
413 "/lib/qt5/plugins/"))
414 qt)))
415 #t))))))
40761f57
MM
416 (native-inputs
417 `(("curl" ,curl)
418 ("eigen" ,eigen)
419 ("extra-cmake-modules" ,extra-cmake-modules)
420 ("gettext-minimal" ,gettext-minimal)
421 ("kitemmodels" ,kitemmodels)
2668e06e 422 ("pkg-config" ,pkg-config)
1475d5c6
MM
423 ("qwt" ,qwt)
424 ("vc" ,vc)))
40761f57 425 (inputs
2668e06e
NG
426 `(("boost" ,boost)
427 ("exiv2" ,exiv2)
428 ("fftw" ,fftw)
429 ("gsl" ,gsl)
430 ("ilmbase" ,ilmbase)
40761f57
MM
431 ("karchive" ,karchive)
432 ("kcompletion" ,kcompletion)
433 ("kconfig" ,kconfig)
434 ("kcoreaddons" ,kcoreaddons)
435 ("kcrash" ,kcrash)
436 ("kguiaddons" ,kguiaddons)
437 ("ki18n" ,ki18n)
438 ("kiconthemes" ,kiconthemes)
439 ("kio" ,kio)
440 ("kitemviews" ,kitemviews)
441 ("kwidgetsaddons" ,kwidgetsaddons)
442 ("kwindowsystem" ,kwindowsystem)
443 ("kxmlgui" ,kxmlgui)
40761f57 444 ("lcms" ,lcms)
1475d5c6 445 ("libjpeg-turbo" ,libjpeg-turbo)
2668e06e
NG
446 ("libpng" ,libpng)
447 ("libraw" ,libraw-0.18)
448 ("libtiff" ,libtiff)
40761f57
MM
449 ("libx11" ,libx11)
450 ("libxcb" ,libxcb)
451 ("libxi" ,libxi)
2668e06e 452 ("openexr" ,openexr)
1475d5c6 453 ("perl" ,perl)
2668e06e 454 ("poppler-qt5" ,poppler-qt5)
c23737d6 455 ("qtbase" ,qtbase)
2668e06e
NG
456 ("qtdeclarative" ,qtdeclarative)
457 ("qtmultimedia" ,qtmultimedia)
458 ("qtsvg" ,qtsvg)
459 ("qtx11extras" ,qtx11extras)
460 ("quazip" ,quazip)
461 ("zlib" ,zlib)))
40761f57
MM
462 (home-page "https://krita.org")
463 (synopsis "Digital painting application")
464 (description
465 "Krita is a professional painting tool designed for concept artists,
466illustrators, matte and texture artists, and the VFX industry. Notable
467features include brush stabilizers, brush engines and wrap-around mode.")
468 (license license:gpl2+)))
469
5a16e1c0
TD
470(define-public libkomparediff2
471 (package
472 (name "libkomparediff2")
6701d232 473 (version "20.04.1")
5a16e1c0
TD
474 (source
475 (origin
476 (method url-fetch)
6701d232 477 (uri (string-append "mirror://kde/stable/release-service/" version
40b5ec2f 478 "/src/libkomparediff2-" version ".tar.xz"))
5a16e1c0 479 (sha256
6701d232 480 (base32 "0m8m7sgpf2f4nxpaaymyvihlk0pcyblyd99mcbibrnyr5kzkzzdc"))))
5a16e1c0
TD
481 (native-inputs
482 `(("extra-cmake-modules" ,extra-cmake-modules)
483 ("pkg-config" ,pkg-config)))
484 (inputs
485 `(("kcodecs" ,kcodecs)
486 ("kconfig" ,kconfig)
487 ("kcoreaddons" ,kcoreaddons)
488 ("ki18n" ,ki18n)
489 ("kio" ,kio)
490 ("kxmlgui" ,kxmlgui)
491 ("qtbase" ,qtbase)))
492 (build-system cmake-build-system)
493 (home-page "https://kde.org")
494 (synopsis "Library to compare files and strings, used in Kompare and KDevelop")
495 (description "Libkomparediff2 is a library to work with diffs and patches,
496used in KDE development tools Kompare and KDevelop.")
497
498 ;; GPL, some files are also licensed under LGPL or BSD, see COPYING in the
499 ;; source archive
500 (license (list license:gpl2+ license:lgpl2.0+ license:bsd-3))))
501
d34c594a
EF
502(define-public qca
503 (package
504 (name "qca")
565d2eb0 505 (version "2.3.0")
d34c594a
EF
506 (source
507 (origin
508 (method url-fetch)
bb8d1b2a 509 (uri (string-append "mirror://kde/stable/qca/" version
7f5f61ae 510 "/qca-" version ".tar.xz"))
d34c594a
EF
511 (sha256
512 (base32
565d2eb0 513 "1mrj748yz1grgzmfbmffgjkpcqiaj1l3m4pbddwcj7dnl50yys0x"))))
d34c594a
EF
514 (build-system cmake-build-system)
515 (native-inputs
516 `(("pkg-config" ,pkg-config)))
517 (inputs
518 `(("openssl" ,openssl)
05b9c00e 519 ("qtbase" ,qtbase)))
49e6b0d9 520 (home-page "https://userbase.kde.org/QCA")
d34c594a
EF
521 (synopsis "Libraries for the Qt Cryptographic Architecture")
522 (description "The Qt Cryptographic Architecture (QCA) provides a
523straightforward and cross-platform API for a range of cryptographic features,
524including SSL/TLS, X.509 certificates, SASL, OpenPGP, S/MIME CMS, and smart
525cards.")
63be1a7d 526 (license license:lgpl2.1+)))
550791b8 527
15cd7067
HG
528(define-public kpmcore
529 (package
530 (name "kpmcore")
5db3f6c1 531 (version "4.1.0")
15cd7067
HG
532 (source (origin
533 (method url-fetch)
534 (uri (string-append
535 "mirror://kde/stable/kpmcore"
536 "/" version "/src/"
537 name "-" version ".tar.xz"))
538 (sha256
539 (base32
5db3f6c1 540 "0jsig7algmab9h0fb09my0axjqzw83zgscamhzl8931lribs6idm"))))
15cd7067
HG
541 (build-system cmake-build-system)
542 (native-inputs
543 `(("extra-cmake-modules" ,extra-cmake-modules)
544 ("pkg-config" ,pkg-config)))
545 (inputs
9c881490
546 `(("kauth" ,kauth)
547 ("kcoreaddons" ,kcoreaddons)
15cd7067 548 ("ki18n" ,ki18n)
9c881490 549 ("kwidgetsaddons" ,kwidgetsaddons)
15cd7067 550 ("qtbase" ,qtbase)
38988dbe 551 ("qca" ,qca)
bb93042c 552 ("util-linux" ,util-linux "lib")))
15cd7067
HG
553 (home-page "https://community.kde.org/Frameworks")
554 (synopsis "Library for managing partitions")
555 (description "Library for managing partitions.")
556 (license license:gpl3+)))
557
550791b8
EF
558(define-public snorenotify
559 (package
560 (name "snorenotify")
561 (version "0.7.0")
562 (source
563 (origin
564 (method url-fetch)
343bffbd 565 (uri (string-append "mirror://kde/stable/snorenotify/"
550791b8
EF
566 version "/src/snorenotify-" version ".tar.xz"))
567 (sha256
568 (base32
569 "0jz6ivk90h7iwgyxar7xzzj8yvzn6s1my6cqs9bdnwqswfk1nhbd"))))
570 (build-system cmake-build-system)
571 (arguments
572 `(#:tests? #f)) ; both tests fail, require display
573 (inputs
3c526173
EF
574 `(("qtbase" ,qtbase)))
575 (native-inputs
550791b8 576 `(("extra-cmake-modules" ,extra-cmake-modules)
5f2074ca 577 ("qttools" ,qttools)))
550791b8
EF
578 (home-page "https://techbase.kde.org/Projects/Snorenotify")
579 (synopsis "Qt notification framework")
580 (description "Snorenotify is a multi platform Qt notification framework.
581Using a plugin system it is possible to create notifications with many
582different notification systems.")
583 (license license:lgpl3)))
ce8964b6
EF
584
585(define-public kdeconnect
586 (package
587 (name "kdeconnect")
05b23730 588 (version "20.04.2")
ce8964b6
EF
589 (source
590 (origin
591 (method url-fetch)
0526185e
EF
592 (uri (string-append "mirror://kde/stable/release-service/"
593 version "/src/kdeconnect-kde-"
ce8964b6
EF
594 version ".tar.xz"))
595 (sha256
596 (base32
05b23730 597 "0yq3afbbcc9gmlcachvh3xz3gdj57092fpagp36l5knw8gr0d9ip"))))
e185e900 598 (build-system qt-build-system)
ce8964b6 599 (arguments
720855b5 600 `(#:configure-flags '("-DBUILD_TESTING=ON"
0526185e 601 "-DKDE_INSTALL_LIBEXECDIR=libexec")
9141cec4
MB
602 #:phases (modify-phases %standard-phases
603 (add-after 'set-paths 'extend-CPLUS_INCLUDE_PATH
604 (lambda* (#:key inputs #:allow-other-keys)
605 ;; FIXME: <kcmutils_version.h> is not found during one
606 ;; of the compilation steps without this hack.
607 (setenv "CPLUS_INCLUDE_PATH"
608 (string-append (assoc-ref inputs "kcmutils")
609 "/include/KF5:"
610 (or (getenv "CPLUS_INCLUDE_PATH")
611 "")))
612 #t)))
cd165d10 613 #:tests? #f)) ; tests fail hard in our build environment
ce8964b6
EF
614 (native-inputs
615 `(("extra-cmake-modules" ,extra-cmake-modules)
616 ("kdoctools" ,kdoctools)
617 ("libxtst" ,libxtst)
618 ("pkg-config" ,pkg-config)
619 ("python" ,python-wrapper)))
620 (inputs
621 `(("kcmutils" ,kcmutils)
622 ("kconfigwidgets" ,kconfigwidgets)
623 ("kdbusaddons" ,kdbusaddons)
624 ("ki18n" ,ki18n)
625 ("kiconthemes" ,kiconthemes)
626 ("kio" ,kio)
9141cec4 627 ("kirigami" ,kirigami)
ce8964b6 628 ("knotifications" ,knotifications)
9141cec4
MB
629 ("kpeople" ,kpeople)
630 ("kpeoplevcard" ,kpeoplevcard)
ce8964b6
EF
631 ("kwayland" ,kwayland)
632 ("libfakekey" ,libfakekey)
9141cec4 633 ("pulseaudio-qt" ,pulseaudio-qt)
ce8964b6
EF
634 ("qca" ,qca)
635 ("qtbase" ,qtbase)
636 ("qtdeclarative" ,qtdeclarative)
31113b6f 637 ("qtgraphicaleffects" ,qtgraphicaleffects)
9141cec4 638 ("qtmultimedia" ,qtmultimedia)
31113b6f
EF
639 ("qtquickcontrols" ,qtquickcontrols)
640 ("qtquickcontrols2" ,qtquickcontrols2)
ce8964b6
EF
641 ("qtx11extras" ,qtx11extras)))
642 (home-page "https://community.kde.org/KDEConnect")
643 (synopsis "Enable your devices to communicate with each other")
644 (description "KDE Connect is a project that enables all your devices to
645communicate with each other. Here's a few things KDE Connect can do:
646@enumerate
647@item Receive your phone notifications on your desktop computer and reply to messages
648@item Control music playing on your desktop from your phone
649@item Use your phone as a remote control for your desktop
650@item Run predefined commands on your PC from connected devices
651@item Check your phones battery level from the desktop
652@item Ring your phone to help finding it
653@item Share files and links between devices
654@item Browse your phone from the desktop
655@item Control the desktop's volume from the phone
656@end enumerate")
0d7dfbce 657 (properties `((upstream-name . "kdeconnect-kde")))
ce8964b6 658 (license (list license:gpl2 license:gpl3)))) ; dual licensed
dece3433
EF
659
660(define-public kqtquickcharts
661 (package
662 (name "kqtquickcharts")
6701d232 663 (version "20.04.1")
dece3433
EF
664 (source
665 (origin
666 (method url-fetch)
6701d232 667 (uri (string-append "mirror://kde/stable/release-service/"
dece3433
EF
668 version "/src/kqtquickcharts-" version ".tar.xz"))
669 (sha256
670 (base32
6701d232 671 "1wxp35mf9zlpgzi4msdl86b2krdq2ipqw371gyx23r7j84vdyxi3"))))
dece3433
EF
672 (build-system cmake-build-system)
673 (native-inputs
674 `(("extra-cmake-modules" ,extra-cmake-modules)))
675 (inputs
676 `(("qtbase" ,qtbase)
677 ("qtdeclarative" ,qtdeclarative)))
678 (home-page "https://phabricator.kde.org/source/kqtquickcharts/")
679 (synopsis "Interactive charts for Qt Quick")
680 (description
681 "Kqtquickcharts is a QtQuick plugin to render beautiful and interactive
682charts.")
683 (license license:lgpl2.1+)))
8cf20d73
LC
684
685(define-public kcachegrind
686 (package
687 (name "kcachegrind")
6701d232 688 (version "20.04.1")
8cf20d73
LC
689 (source (origin
690 (method url-fetch)
6701d232 691 (uri (string-append "mirror://kde/stable/release-service/" version
8cf20d73
LC
692 "/src/kcachegrind-" version ".tar.xz"))
693 (sha256
694 (base32
6701d232 695 "0fx17s6fj1pxl1mgfrqhchk8sihkbji1x8y3nhb1r0971wzd1nsc"))))
8cf20d73
LC
696 (build-system cmake-build-system)
697 (native-inputs
698 `(("extra-cmake-modules" ,extra-cmake-modules)
699 ("perl" ,perl)
700 ("python" ,python)
701 ("qttools" ,qttools)
702 ("kdoctools" ,kdoctools)))
703 (inputs
704 `(("qtbase" ,qtbase)
705 ("karchive" ,karchive)
706 ("ki18n" ,ki18n)
707 ("kio" ,kio)
708 ("kdbusaddons" ,kdbusaddons)))
709 ;; Note: The 'hotshot2calltree' and 'pprof2calltree' scripts depend on
710 ;; Python and PHP, respectively. These are optional and we ignore them
711 ;; for now.
712 (home-page "https://kcachegrind.github.io/html/Home.html")
713 (synopsis "Visualize profiles produces by Valgrind's Cachegrind tool")
714 (description
715 "The data files generated by the Callgrind of Valgrind, an application
716profiler, can be loaded into KCachegrind for browsing the performance results.
717There is also a command-line tool to get ASCII reports from data files without
718the need to use KCachegrind.
719
720The format of Callgrind output is documented. With conversion scripts,
721KCachegrind is able to visualize output of other profilers like OProfile, a
722system-wide profiler for Linux using statistical sampling with hardware
723performance counters. There also exist converters for profiling output of
724Python, PHP, and Perl.")
725 (license license:gpl2)))
b9c9cdbf
HG
726
727(define-public libkdegames
728 (package
729 (name "libkdegames")
6701d232 730 (version "20.04.1")
b9c9cdbf
HG
731 (source
732 (origin
733 (method url-fetch)
6701d232 734 (uri (string-append "mirror://kde/stable/release-service/" version
b9c9cdbf
HG
735 "/src/libkdegames-" version ".tar.xz"))
736 (sha256
6701d232 737 (base32 "1xsrrvhwjwi5aajcaxydmzc69i4yx6shs8ly8vr85njc188ycg13"))))
cd165d10 738 (build-system qt-build-system)
b9c9cdbf
HG
739 (native-inputs
740 `(("extra-cmake-modules" ,extra-cmake-modules)))
741 (inputs
742 `(("karchive" ,karchive)
743 ("kbookmarks" ,kbookmarks)
744 ("kcodecs" ,kcodecs)
745 ("kcompletion" ,kcompletion)
746 ("kconfigwidgets" ,kconfigwidgets)
747 ("kcrash" ,kcrash)
748 ("kdbusaddons" ,kdbusaddons)
749 ("kdeclarative" ,kdeclarative)
750 ("kdnssd" ,kdnssd)
751 ("kglobalaccel" ,kglobalaccel)
752 ("kguiaddons" ,kguiaddons)
753 ("ki18n" ,ki18n)
754 ("kiconthemes" ,kiconthemes)
755 ;("kio" ,kio)
756 ("kitemviews" ,kitemviews)
757 ("kjobwidgets" ,kjobwidgets)
758 ("knewstuff" ,knewstuff)
759 ("kservice" ,kservice)
760 ("ktextwidgets" ,ktextwidgets)
761 ("kwidgetsaddons" ,kwidgetsaddons)
762 ("kxmlgui" ,kxmlgui)
763 ("libsndfile" ,libsndfile)
764 ("openal" ,openal)
765 ("qtbase" ,qtbase)
766 ("qtdeclarative" ,qtdeclarative)
767 ("qtsvg" ,qtsvg)))
b9c9cdbf
HG
768 (home-page "https://games.kde.org/")
769 (synopsis "Runtime library for kdegames")
770 (description "Runtime library for kdegames")
771 (license (list license:gpl2+ license:fdl1.2+))))
9b98d288 772
a387cbab
ZJ
773(define-public okular
774 (package
775 (name "okular")
776 (version "20.12.0")
777 (source
778 (origin
779 (method url-fetch)
780 (uri (string-append "mirror://kde/stable/release-service/" version
781 "/src/" name "-" version ".tar.xz"))
782 (sha256
783 (base32 "1kib8zqfd9qgqn7bz88hay2j3kcvarnlfyr3a417pi6rvaam6b4p"))))
784 (build-system qt-build-system)
785 ;; The tests fail because they can't find the proper mimetype plugins:
786 ;; "org.kde.okular.core: No plugin for mimetype '"image/jpeg"'."
787 ;; The built program seems to work okay, so we skip the tests for now.
788 (arguments
789 `(#:tests? #f
790 #:configure-flags
791 (list "-DBUILD_TESTING=OFF")))
792 (native-inputs
793 `(("extra-cmake-modules" ,extra-cmake-modules)
794 ("kdoctools" ,kdoctools)
795 ("pkg-config" ,pkg-config)))
796 (inputs
797 `(("ebook-tools" ,ebook-tools)
798 ("breeze-icons" ,breeze-icons)
799 ("discount" ,discount)
800 ("djvulibre" ,djvulibre)
801 ("kactivities" ,kactivities)
802 ("khtml" ,khtml)
803 ("chmlib" ,chmlib)
804 ("kdegraphics-mobipocket" ,kdegraphics-mobipocket)
805 ("karchive" ,karchive)
806 ("kbookmarks" ,kbookmarks)
807 ("kcompletion" ,kcompletion)
808 ("kconfig" ,kconfig)
809 ("qtbase" ,qtbase)
810 ("libjpeg-turbo" ,libjpeg-turbo)
811 ("libtiff" ,libtiff)
812 ("kirigami" ,kirigami)
813 ("purpose" ,purpose)
814 ("freetype" ,freetype)
815 ("kiconthemes" ,kiconthemes)
816 ("kio" ,kio)
817 ("kparts" ,kparts)
818 ("kpty" ,kpty)
819 ("qtspeech" ,qtspeech)
820 ("kwallet" ,kwallet)
821 ("kwindowsystem" ,kwindowsystem)
822 ("libkexiv2" ,libkexiv2)
823 ("libspectre" ,libspectre)
824 ("libzip" ,libzip)
825 ("phonon" ,phonon)
826 ("poppler-qt5" ,poppler-qt5)
827 ("qca" ,qca)
828 ("qtdeclarative" ,qtdeclarative)
829 ("qtsvg" ,qtsvg)
830 ("threadweaver" ,threadweaver)
831 ("kcrash" ,kcrash)
832 ("kjs" ,kjs)))
833 (home-page "https://kde.org/applications/graphics/okular/")
834 (synopsis "Document Viewer")
835 (description "Okular is a universal document viewer developed by KDE.
836 Okular works on multiple platforms, including but not limited to
837 Linux, Windows, macOS, *BSD, etc.")
838 (license license:gpl2+)))
839
7a8d4557
ZJ
840(define-public kdegraphics-mobipocket
841 (package
842 (name "kdegraphics-mobipocket")
843 (version "20.12.0")
844 (source
845 (origin
846 (method url-fetch)
847 (uri (string-append "mirror://kde/stable/release-service/" version
848 "/src/" name "-" version ".tar.xz"))
849 (sha256
850 (base32 "0fm880lp9g60zgrkjyh4jxws6x0s77l9ia4f8pza3w8sxcbbswk5"))))
851 (build-system cmake-build-system)
852 (native-inputs
853 `(("extra-cmake-modules" ,extra-cmake-modules)))
854 (inputs
855 `(("kio" ,kio)
856 ("qtbase" ,qtbase)))
857 (home-page "https://apps.kde.org/en/kdegraphics_mobipocket")
858 (synopsis "KDE thumbnailer for Mobipocket files")
859 (description "This package provides a KDE plugin that shows thumbnails of
860Mobipocket e-books in Dolphin and other KDE apps.")
861 (license license:gpl2+)))
fdfa25ed
ZJ
862
863(define-public libkexiv2
864 (package
865 (name "libkexiv2")
866 (version "20.12.0")
867 (source
868 (origin
869 (method url-fetch)
870 (uri (string-append "mirror://kde/stable/release-service/" version
871 "/src/" name "-" version ".tar.xz"))
872 (sha256
873 (base32 "0k0iinf7s8qlk3fwvq7iic1b4zn2gm65rfd58q7d3wb1i1j2hjjk"))))
874 (build-system cmake-build-system)
875 (native-inputs
876 `(("extra-cmake-modules" ,extra-cmake-modules)))
877 (inputs
878 `(("exiv2" ,exiv2)
879 ("qtbase" ,qtbase)))
880 (home-page "https://invent.kde.org/graphics/libkexiv2")
881 (synopsis "Manipulate the metadata of images")
882 (description "Libkexiv2 wraps the Exiv2 library, allowing to manipulate
883picture metadata as EXIF/IPTC and XMP.")
884 (license license:gpl2+)))
885
9b98d288
HG
886(define-public zeroconf-ioslave
887 (package
888 (name "zeroconf-ioslave")
6701d232 889 (version "20.04.1")
9b98d288
HG
890 (source
891 (origin
892 (method url-fetch)
6701d232 893 (uri (string-append "mirror://kde/stable/release-service/" version
9b98d288
HG
894 "/src/zeroconf-ioslave-" version ".tar.xz"))
895 (sha256
6701d232 896 (base32 "1qck5jyc4psslpibhki8sz8aj0hsnx8z791vzyn10lmdzn71vx8c"))))
9b98d288
HG
897 (build-system qt-build-system)
898 (native-inputs
899 `(("extra-cmake-modules" ,extra-cmake-modules)))
900 (inputs
901 `(("kdbusaddons" ,kdbusaddons)
902 ("kdnssd" ,kdnssd)
903 ("ki18n" ,ki18n)
904 ("kio" ,kio)
905 ("qtbase" ,qtbase)))
906 (home-page "https://kde.org/applications/internet/org.kde.zeroconf_ioslave")
907 (synopsis "DNS-SD Service Discovery Monitor")
908 (description "Adds an entry to Dolphin's Network page to show local
909services such as printers which advertise themselves with DNSSD (called Avahi
910or Bonjour by other projects).")
911 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
912 (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
00fad32a
HG
913
914
915(define-public kuserfeedback
916 ;; FIXME: Try to reduce data collection and ensure transmission i disabled by default.
917 ;; FIXME: Check https://www.reddit.com/r/kde/comments/f7ojg9 for insights
918 (package
919 (name "kuserfeedback")
920 (version "1.0.0")
921 (source
922 (origin
923 (method url-fetch)
924 (uri (string-append "mirror://kde/stable/kuserfeedback/"
925 "/kuserfeedback-" version ".tar.xz"))
926 (sha256
927 (base32 "1dwx9fscnfp3zsxdir774skn8xvad2dvscnaaw3ji6mrnkmm6bss"))))
928 (build-system qt-build-system)
929 (native-inputs
930 `(("extra-cmake-modules" ,extra-cmake-modules)
931 ("qttools" ,qttools)
932 ;; For optional component "Survey target expression parser"
933 ("bison" ,bison)
934 ("flex" ,flex)
935 ;; For syntax checking and unit tests of PHP server code
936 ;;("php" ,php)
937 ;;("phpunit" ,phpunit)
938 ))
939 (inputs
940 `(("qtbase" ,qtbase)
941 ("qtcharts" ,qtcharts)
942 ("qtdeclarative" ,qtdeclarative)
943 ("qtsvg" ,qtsvg)))
944 (arguments
945 `(#:tests? #f)) ;; 4/17 fail
946 (home-page "https://api.kde.org/frameworks/kuserfeedback/html/")
947 (synopsis "Framework for collecting feedback from application users via
948telemetry and targeted surveys")
949 (description "This framework consists of the following components:
c8ac02b2 950@itemize
00fad32a
HG
951@item Libraries for use in applications.
952@item QML bindings for the above.
953@item A server application.
954@item A management and analytics application.
955@end itemize")
956 (license license:expat)))