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