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