projects/guix·blob ruby-team · refs

1604 lines · 54.8 KiB

1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2017, 2019 Hartmut Goebel <[email protected]>
3;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <[email protected]>
4;;; Copyright © 2021-2025 Zheng Junjie <[email protected]>
5;;; Copyright © 2022 Brendan Tildesley <[email protected]>
6;;; Copyright © 2022 Petr Hodina <[email protected]>
7;;; Copyright © 2025, 2026 Sughosha <[email protected]>
8;;; Copyright © 2025 Andreas Enge <[email protected]>
9;;; Copyright © 2026 Maxim Cournoyer <[email protected]>
10;;;
11;;; This file is part of GNU Guix.
12;;;
13;;; GNU Guix is free software; you can redistribute it and/or modify it
14;;; under the terms of the GNU General Public License as published by
15;;; the Free Software Foundation; either version 3 of the License, or (at
16;;; your option) any later version.
17;;;
18;;; GNU Guix is distributed in the hope that it will be useful, but
19;;; WITHOUT ANY WARRANTY; without even the implied warranty of
20;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21;;; GNU General Public License for more details.
22;;;
23;;; You should have received a copy of the GNU General Public License
24;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
25
26(define-module (gnu packages kde-utils)
27 #:use-module (guix build-system qt)
28 #:use-module (guix gexp)
29 #:use-module (guix download)
30 #:use-module (guix git-download)
31 #:use-module ((guix licenses) #:prefix license:)
32 #:use-module (guix packages)
33 #:use-module (guix utils)
34 #:use-module (gnu packages)
35 #:use-module (gnu packages backup)
36 #:use-module (gnu packages bash)
37 #:use-module (gnu packages cmake)
38 #:use-module (gnu packages compression)
39 #:use-module (gnu packages crypto)
40 #:use-module (gnu packages cups)
41 #:use-module (gnu packages fontutils)
42 #:use-module (gnu packages freedesktop)
43 #:use-module (gnu packages glib) ; dbus for tests
44 #:use-module (gnu packages gnome)
45 #:use-module (gnu packages gnupg)
46 #:use-module (gnu packages gstreamer)
47 #:use-module (gnu packages image)
48 #:use-module (gnu packages imagemagick)
49 #:use-module (gnu packages mp3)
50 #:use-module (gnu packages multiprecision)
51 #:use-module (gnu packages pdf)
52 #:use-module (gnu packages photo)
53 #:use-module (gnu packages pkg-config)
54 #:use-module (gnu packages kde-frameworks)
55 #:use-module (gnu packages kde-multimedia)
56 #:use-module (gnu packages kde-pim)
57 #:use-module (gnu packages kde-plasma)
58 #:use-module (gnu packages python)
59 #:use-module (gnu packages qt)
60 #:use-module (gnu packages samba)
61 #:use-module (gnu packages tls)
62 #:use-module (gnu packages xdisorg)
63 #:use-module (gnu packages xorg)
64 #:use-module (gnu packages version-control))
65
66(define-public ark
67 (package
68 (name "ark")
69 (version "25.12.3")
70 (source (origin
71 (method url-fetch)
72 (uri (string-append "mirror://kde/stable/release-service/" version
73 "/src/ark-" version ".tar.xz"))
74 (sha256
75 (base32
76 "12q2brbgg68kknf193wx44spg8jbqzib58hhrvnkqvr1ivq7xwl1"))
77 ;; The libarchive package in Guix does not support
78 ;; xar; disable related tests.
79 (patches (search-patches "ark-skip-xar-test.patch"))))
80 (build-system qt-build-system)
81 (arguments
82 (list
83 #:qtbase qtbase
84 #:phases
85 #~(modify-phases %standard-phases
86 (add-before 'check 'start-xserver
87 ;; adddialogtest requires DISPLAY.
88 (lambda* (#:key inputs #:allow-other-keys)
89 (let ((xorg-server (assoc-ref inputs "xorg-server")))
90 (setenv "HOME" (getcwd))
91 (system (format #f "~a/bin/Xvfb :1 &" xorg-server))
92 (setenv "DISPLAY" ":1"))))
93 (add-after 'install 'wrap-executable
94 (lambda* (#:key inputs outputs #:allow-other-keys)
95 (let* ((out (assoc-ref outputs "out"))
96 (lrzip (assoc-ref inputs "lrzip"))
97 (lzop (assoc-ref inputs "lzop"))
98 (p7zip (assoc-ref inputs "p7zip"))
99 (unzip (assoc-ref inputs "unzip"))
100 (zip (assoc-ref inputs "zip"))
101 (zstd (assoc-ref inputs "zstd")))
102 (wrap-program (string-append out "/bin/ark")
103 `("PATH" suffix
104 ,(map (lambda (p)
105 (string-append p "/bin"))
106 (list lrzip lzop p7zip unzip zip zstd))))))))))
107 (native-inputs
108 (list extra-cmake-modules pkg-config kdoctools xorg-server))
109 (inputs
110 (list bash-minimal
111 breeze-icons
112 karchive
113 kconfig
114 kcrash
115 kdbusaddons
116 ki18n
117 kiconthemes
118 kio
119 kitemmodels
120 kparts
121 kpty
122 kservice
123 kwidgetsaddons
124 kfilemetadata
125 libarchive
126 libzip
127 zlib
128 ;; Command line tools used by Ark.
129 lrzip
130 lzop
131 p7zip
132 unzip
133 qtwayland
134 zip
135 zstd))
136 (home-page "https://apps.kde.org/ark/")
137 (synopsis "Graphical archiving tool")
138 (description "Ark is a graphical file compression/decompression utility
139with support for multiple formats, including tar, gzip, bzip2, rar and zip, as
140well as CD-ROM images.")
141 (license license:gpl2+)))
142
143(define-public atelier
144 (let ((commit "8c7f18d3a88b3213546439775a60030b93e1f5b1") ; no releases
145 (revision "2"))
146 (package
147 (name "atelier")
148 (version (git-version "0.1-pre" revision commit))
149 (source (origin
150 (method git-fetch)
151 (uri (git-reference
152 (url "https://invent.kde.org/utilities/atelier")
153 (commit commit)))
154 (file-name (git-file-name name version))
155 (sha256
156 (base32
157 "0vf2j4yjyz21s6bfkzz0jci0h32rnmsm32k1gf6p3i7rlcqx3vyg"))))
158 (build-system qt-build-system)
159 (arguments (list #:qtbase qtbase #:tests? #f))
160 (native-inputs (list extra-cmake-modules qttools pkg-config))
161 (inputs (list ki18n
162 kxmlgui
163 kconfigwidgets
164 ktexteditor
165 libatcore
166 qt3d
167 qtcharts
168 qtdeclarative
169 qtmultimedia
170 qtserialport
171 qtwayland))
172 (home-page "https://atelier.kde.org")
173 (synopsis "Desktop interface to control 3D printers powered by AtCore")
174 (description "Atelier provides interface to control and manage your printer.
175@itemize
176@item Load and see your GCode File
177@item Real time graphic to monitor your bed and hotend temperatures
178@item You can log everything that comes and go from your printer
179@item Edit gcode file
180@end itemize")
181 (license license:gpl3+))))
182
183(define-public basket
184 (let ((commit "bb230be9f6fb838b02ca85c45f9a0ca244efe967")
185 (revision "2"))
186 (package
187 (name "basket")
188 (version (git-version "2.49" revision commit))
189 (source (origin
190 (method git-fetch)
191 (uri (git-reference
192 (url "https://invent.kde.org/utilities/basket")
193 (commit commit)))
194 (file-name (git-file-name name version))
195 (sha256
196 (base32
197 "0r5f48vvahhmqfsl9svnkqg83y39570pa944yb9s09h10z96d16i"))))
198 (build-system qt-build-system)
199 (arguments (list #:qtbase qtbase
200 #:configure-flags
201 #~(list "-DENABLE_GPG=ON"
202 "-DENABLE_GIT=ON")))
203 (native-inputs (list extra-cmake-modules
204 kdoctools
205 pkg-config))
206 (inputs (list breeze-icons
207 gpgme
208 karchive
209 kcompletion
210 kconfig
211 kconfigwidgets
212 kcoreaddons
213 kcrash
214 kdbusaddons
215 kfilemetadata
216 kglobalaccel
217 kguiaddons
218 ki18n
219 kiconthemes
220 kcmutils
221 kio
222 knotifications
223 kparts
224 kservice
225 ktextwidgets
226 kwidgetsaddons
227 kwindowsystem
228 kxmlgui
229 libgit2
230 phonon
231 qt5compat
232 qtwayland))
233 (home-page "https://invent.kde.org/utilities/basket")
234 (synopsis "Notes and to-dos organizer")
235 (description "This package provides simple note taking and to-do app.")
236 (license license:gpl2+))))
237
238(define-public fielding
239 (let ((commit "4ee9aea59718851125edcac71e2e4fdc5a592ed9")
240 ;; no releases yet
241 (revision "2"))
242 (package
243 (name "fielding")
244 (version (git-version "0.1-pre" revision commit))
245 (source (origin
246 (method git-fetch)
247 (uri (git-reference
248 (url "https://invent.kde.org/utilities/fielding")
249 (commit commit)))
250 (file-name (git-file-name name version))
251 (sha256
252 (base32
253 "04gzp4bch4k2cvjk0mjcrmjpi986j5bqz3l4xcqykfwbgd08kas2"))))
254 (build-system qt-build-system)
255 (native-inputs (list extra-cmake-modules))
256 (inputs (list kirigami
257 kirigami-addons
258 kcoreaddons
259 kconfig
260 ki18n
261 kdbusaddons
262 ksyntaxhighlighting
263 qtdeclarative
264 qtsvg
265 qtwayland))
266 (arguments (list #:qtbase qtbase
267 #:tests? #f))
268 (home-page "https://invent.kde.org/utilities/fielding")
269 (synopsis "REST API testing tool")
270 (description
271 "This package provides a tool for testing REST APIs.")
272 (license license:lgpl2.1+))))
273
274(define-public filelight
275 (package
276 (name "filelight")
277 (version "25.12.3")
278 (source (origin
279 (method url-fetch)
280 (uri (string-append "mirror://kde/stable/release-service/"
281 version "/src/filelight-" version ".tar.xz"))
282 (sha256
283 (base32
284 "1p6k758gx09pfkrjyp5mpv73xc55c2r6db7vhi6dl1qadvqpcj4i"))))
285 (build-system qt-build-system)
286 (native-inputs (list extra-cmake-modules))
287 (inputs (list kcrash
288 kirigami
289 kirigami-addons
290 kquickcharts
291 kxmlgui
292 kio
293 ki18n
294 kdeclarative
295 qqc2-desktop-style
296 qtsvg
297 qtwayland))
298 (arguments (list #:qtbase qtbase))
299 (home-page "https://apps.kde.org/filelight/")
300 (synopsis "Visualize the disk usage")
301 (description "Filelight is an application to visualize the disk usage on
302your computer.")
303 (license license:lgpl2.1+)))
304
305(define-public francis
306 (package
307 (name "francis")
308 (version "25.12.3")
309 (source (origin
310 (method url-fetch)
311 (uri (string-append "mirror://kde/stable/release-service/"
312 version "/src/francis-" version ".tar.xz"))
313 (sha256
314 (base32
315 "1fg9b7ar8n4bz1rjnkgg1hrz2317dgdy49gp1r4d6xwzm0gck4h8"))))
316 (build-system qt-build-system)
317 (native-inputs (list extra-cmake-modules))
318 (inputs (list kirigami
319 kirigami-addons
320 kcoreaddons
321 kconfig
322 ki18n
323 kdbusaddons
324 knotifications
325 qtdeclarative
326 qtsvg
327 qtwayland))
328 (arguments (list #:qtbase qtbase))
329 (home-page "https://invent.kde.org/utilities/francis")
330 (synopsis "Track your time")
331 (description "This package provides time tracking.")
332 (license license:lgpl2.1+)))
333
334(define-public isoimagewriter
335 (package
336 (name "isoimagewriter")
337 (version "25.12.3")
338 (source (origin
339 (method url-fetch)
340 (uri (string-append "mirror://kde/stable/release-service/"
341 version "/src/isoimagewriter-" version
342 ".tar.xz"))
343 (sha256
344 (base32
345 "02g9k51srrqslapjxzcymnmy9v1frv9pkgg8wmf6d0607hwkaff5"))))
346 (build-system qt-build-system)
347 (native-inputs (list extra-cmake-modules))
348 (inputs (list gpgme-2
349 kauth
350 karchive
351 kcoreaddons
352 ki18n
353 kiconthemes
354 kcrash
355 solid
356 kwidgetsaddons
357 qgpgme
358 qtwayland))
359 (arguments (list #:qtbase qtbase
360 #:tests? #f))
361 (home-page "https://apps.kde.org/isoimagewriter/")
362 (synopsis "Write hybrid ISO files onto USB disks")
363 (description
364 "This package provides a tool to write ISO files to USB disks.")
365 (license license:gpl3+)))
366
367(define-public kaichat
368 (package
369 (name "kaichat")
370 (version "0.7.0")
371 (source
372 (origin
373 (method url-fetch)
374 (uri (string-append "mirror://kde//stable/kaichat/kaichat-" version
375 ".tar.xz"))
376 (sha256
377 (base32 "0bhargyi237zikpwrah95g7sdlf3860y65zlqd0nmanlnqgqklqc"))))
378 (build-system qt-build-system)
379 (arguments
380 (list #:qtbase qtbase))
381 (native-inputs
382 (list extra-cmake-modules kdoctools))
383 (inputs
384 (list kcoreaddons
385 kcrash
386 kdbusaddons
387 ki18n
388 kiconthemes
389 kio
390 knotifications
391 knotifyconfig
392 kstatusnotifieritem
393 ktextaddons
394 kwidgetsaddons
395 kwindowsystem
396 kxmlgui
397 purpose
398 python
399 sonnet
400 qtspeech
401 qtwayland))
402 (home-page "https://apps.kde.org/kaichat/")
403 (synopsis "Chat interface for AI models")
404 (description "KAIChat is a chat interface which allows you to chat with AI
405models such as Ollama.")
406 (license license:gpl3+)))
407
408(define-public kalm
409 (package
410 (name "kalm")
411 (version "25.12.3")
412 (source
413 (origin
414 (method url-fetch)
415 (uri (string-append "mirror://kde/stable/release-service/" version
416 "/src/kalm-" version ".tar.xz"))
417 (sha256
418 (base32 "0hz66b23i6zf31drl70npfzmsfzbkqdffnnq1ks2sw8rckwy8r66"))))
419 (build-system qt-build-system)
420 (arguments
421 (list #:qtbase qtbase
422 #:phases
423 #~(modify-phases %standard-phases
424 (add-before 'check 'check-setup
425 (lambda _
426 (setenv "HOME" (getcwd)))))))
427 (native-inputs
428 (list extra-cmake-modules python-minimal))
429 (inputs
430 (list kconfig
431 kcoreaddons
432 kcrash
433 ki18n
434 kirigami
435 kirigami-addons
436 qqc2-desktop-style
437 qtbase
438 qtdeclarative
439 qtwayland
440 sonnet))
441 (home-page "https://apps.kde.org/kalm/")
442 (synopsis "Breathing techniques teacher")
443 (description "Kalm can teach you different breathing techniques.")
444 (license license:lgpl2.1+)))
445
446(define-public kamera
447 (package
448 (name "kamera")
449 (version "25.12.3")
450 (source (origin
451 (method url-fetch)
452 (uri (string-append "mirror://kde/stable/release-service/"
453 version "/src/kamera-" version ".tar.xz"))
454 (sha256
455 (base32
456 "0qw0k7zl49vl1y696jgc5g3hhcn25limc8hm8d5qprrf39hz9vzx"))))
457 (build-system qt-build-system)
458 (arguments
459 (list #:qtbase qtbase
460 #:tests? #f))
461 (native-inputs
462 (list extra-cmake-modules kdoctools))
463 (inputs
464 (list kcmutils
465 kconfig
466 kconfigwidgets
467 kxmlgui
468 ki18n
469 kio
470 libgphoto2
471 qtwayland))
472 (home-page "https://apps.kde.org/kamera/")
473 (synopsis "KDE integration to digital cameras")
474 (description
475 "Kamera provides a configuration tool and a KIO worker to read and write
476to camera devices supported by @code{libgphoto2} using
477@acronym{PTP,Pictute Transfer Protocol}.")
478 (license license:gpl2+)))
479
480(define-public kate
481 (package
482 (name "kate")
483 (version "25.12.3")
484 (source
485 (origin
486 (method url-fetch)
487 (uri (string-append "mirror://kde/stable/release-service/" version
488 "/src/kate-" version ".tar.xz"))
489 (sha256
490 (base32 "1awhrqkbd1ckxdb8xqli72s6x3fhvrlr07912wv888lrq5vdjqfp"))
491 (modules '((guix build utils)))
492 ;; Unbundle SingleApplication.
493 (snippet
494 '(begin
495 (delete-file-recursively "3rdparty/SingleApplication")
496 (with-directory-excursion "apps/kate"
497 (substitute* "CMakeLists.txt"
498 ((".*3rdparty.*") "")
499 ((" -DQAPPLICATION_CLASS=FreeStandingSingleApplication") ""))
500 (substitute* "main.cpp"
501 (("(#include )\"SingleApplication\\/SingleApplication\"" _ keep)
502 (string-append keep "<SingleApplication>"))))))))
503 (build-system qt-build-system)
504 (native-inputs
505 (list extra-cmake-modules kdoctools xorg-server-for-tests))
506 ;; TODO: Unbundle rapidjson.
507 (inputs
508 (list breeze-icons ;; default icon set
509 karchive
510 kconfig
511 kcrash
512 kdbusaddons
513 kguiaddons
514 ki18n
515 kiconthemes
516 kitemmodels
517 threadweaver
518 knewstuff
519 kio
520 kjobwidgets
521 kparts
522 ktexteditor
523 ktextwidgets
524 ksyntaxhighlighting
525 kwallet
526 kwindowsystem
527 kxmlgui
528 libplasma
529 libxkbcommon
530 plasma-activities
531 qtsvg
532 qtwayland
533 single-application))
534 (arguments
535 (list #:qtbase qtbase
536 #:phases
537 #~(modify-phases %standard-phases
538 (add-after 'unpack 'link-single-application
539 (lambda _
540 (substitute* "apps/kate/CMakeLists.txt"
541 (("target_link_libraries\\(kate-bin PRIVATE kateprivate"
542 all)
543 (string-append all " "
544 #$(this-package-input "single-application")
545 "/lib/libSingleApplication.a")))))
546 (add-after 'unpack 'patch-tests
547 (lambda* (#:key inputs #:allow-other-keys)
548 ;; This test requires a 'bin' diretory under '/usr'.
549 (substitute* "addons/externaltools/autotests/externaltooltest.cpp"
550 (("QStringLiteral[(]\"/usr\"[)]")
551 (format #f "QStringLiteral(\"~a\")"
552 (dirname (dirname (which "ls"))))))))
553 (add-before 'check 'set-home-directory
554 (lambda* _
555 (setenv "HOME" (getcwd)))))))
556 (home-page "https://kate-editor.org/")
557 (synopsis "Multi-document, multi-view text editor")
558 (description "Kate is a powerful text editor that can open multiple files
559simultaneously.
560
561With a built-in terminal, syntax highlighting, and tabbed sidebar, it performs
562as a lightweight but capable development environment. Kate's many tools,
563plugins, and scripts make it highly customizable.
564
565Kate's features include:
566@itemize
567@item Multiple saved sessions, each with numerous files
568@item Scriptable syntax highlighting, indentation, and code-folding
569@item Configurable templates and text snippets
570@item Symbol viewers for C, C++, and Python
571@item XML completion and validation
572@end itemize")
573 (license
574 ;; GPL for programs, LGPL for libraries and MIT (Expat) for the 3rd party
575 ;; libraries.
576 (list license:gpl2+ license:lgpl2.0 license:expat))))
577
578(define-public kdebugsettings
579 (package
580 (name "kdebugsettings")
581 (version "25.12.3")
582 (source (origin
583 (method url-fetch)
584 (uri (string-append "mirror://kde/stable/release-service/"
585 version "/src/kdebugsettings-" version
586 ".tar.xz"))
587 (sha256
588 (base32
589 "1gmds302y59d0iwmk2y5hl963kzxqm56hy48mgaywiivrvwmi8n2"))))
590 (build-system qt-build-system)
591 (native-inputs (list extra-cmake-modules))
592 (inputs (list kcompletion
593 kcoreaddons
594 kconfig
595 kcrash
596 kdbusaddons
597 ki18n
598 kiconthemes
599 kitemviews
600 kwidgetsaddons
601 kwindowsystem
602 kxmlgui
603 qtwayland))
604 (arguments (list #:qtbase qtbase))
605 (home-page "https://invent.kde.org/utilities/kdebugsettings")
606 (synopsis "Choose which QLoggingCategory are displayed")
607 (description
608 "This package selects which QLoggingCategory are displayed.")
609 (license license:lgpl2.0+)))
610
611(define-public kbackup
612 (package
613 (name "kbackup")
614 (version "25.12.3")
615 (source (origin
616 (method url-fetch)
617 (uri (string-append "mirror://kde/stable/release-service/"
618 version "/src/kbackup-" version ".tar.xz"))
619 (sha256
620 (base32
621 "03cln9n9i9caynjkf7660prrjwcrx0p80y7y72rqvnxzzmzcxh00"))))
622 (build-system qt-build-system)
623 (native-inputs (list extra-cmake-modules))
624 (inputs (list kguiaddons
625 knotifications
626 ki18n
627 kio
628 kxmlgui
629 kiconthemes
630 karchive
631 kwidgetsaddons
632 kstatusnotifieritem
633 libarchive
634 shared-mime-info
635 qt5compat
636 qtwayland))
637 (arguments (list #:qtbase qtbase
638 #:tests? #f))
639 (home-page "https://apps.kde.org/kbackup/")
640 (synopsis "Backup program with an easy-to-use interface")
641 (description
642 "This package provides tool to backup your data.
643@itemize
644@item profile for directories and files to be included or excluded from the
645backup
646@item The backup target can be either a locally mounted device like a ZIP
647drive, USB stick, etc
648@item Running automated backups without using a graphical user interface
649@end itemize")
650 (license license:gpl2+)))
651
652(define-public kcalc
653 (package
654 (name "kcalc")
655 (version "25.12.3")
656 (source (origin
657 (method url-fetch)
658 (uri (string-append "mirror://kde/stable/release-service/"
659 version "/src/kcalc-" version ".tar.xz"))
660 (sha256
661 (base32
662 "1yma237j8x5ygz0a0alv4gzd83ykb5zpk5mbh8mlnx065qijqf62"))))
663 (build-system qt-build-system)
664 (arguments (list #:qtbase qtbase))
665 (native-inputs (list extra-cmake-modules kdoctools))
666 (inputs (list gmp
667 kcoreaddons
668 kcrash
669 kconfig
670 kconfigwidgets
671 kguiaddons
672 ki18n
673 kiconthemes
674 knotifications
675 kxmlgui
676 mpc
677 mpfr
678 qtwayland))
679 (home-page "https://apps.kde.org/kcalc/")
680 (synopsis "Scientific calculator")
681 (description
682 "This package provides a scientific calculator.")
683 (license license:gpl2+)))
684
685(define-public kcharselect
686 (package
687 (name "kcharselect")
688 (version "25.12.3")
689 (source (origin
690 (method url-fetch)
691 (uri (string-append "mirror://kde/stable/release-service/"
692 version "/src/kcharselect-" version
693 ".tar.xz"))
694 (sha256
695 (base32
696 "1ppczh9ajp19nwzbvc631lfhcqwprayzjygzxn1jvivda51mbpwh"))))
697 (build-system qt-build-system)
698 (arguments
699 (list #:qtbase qtbase
700 #:tests? #f))
701 (native-inputs (list extra-cmake-modules kdoctools))
702 (inputs
703 (list kbookmarks
704 kcoreaddons
705 kcrash
706 ki18n
707 kiconthemes
708 kwidgetsaddons
709 kxmlgui
710 qtwayland))
711 (home-page "https://apps.kde.org/kcharselect/")
712 (synopsis "Select and copy special characters from installed fonts")
713 (description
714 "This package provides a tool to display various information
715about the selected character. This includes not only the Unicode character
716name, but also aliases, general notes and cross references to similar
717characters.")
718 (license license:gpl2+)))
719
720(define-public kclock
721 (package
722 (name "kclock")
723 (version "25.12.3")
724 (source (origin
725 (method git-fetch)
726 (uri (git-reference
727 (url "https://invent.kde.org/utilities/kclock")
728 (commit (string-append "v" version))))
729 (file-name (git-file-name name version))
730 (sha256
731 (base32
732 "1c1j1ya7s9y2y1287a4jh7w7ynnk68myzs79nh2k0wym74hk13kb"))))
733 (build-system qt-build-system)
734 (arguments (list #:qtbase qtbase ;for Qt 6
735 #:tests? #f)) ;no tests
736 (native-inputs (list extra-cmake-modules pkg-config))
737 (inputs
738 (list kconfig
739 kcoreaddons
740 kcrash
741 kdbusaddons
742 ki18n
743 kio
744 kirigami
745 kirigami-addons
746 kjobwidgets
747 knotifications
748 kstatusnotifieritem
749 ksvg
750 libplasma
751 qqc2-desktop-style
752 qtdeclarative
753 qtmultimedia
754 qtsvg
755 qtwayland
756 sonnet
757 wayland
758 wayland-protocols))
759 (home-page "https://invent.kde.org/utilities/kclock")
760 (synopsis "Clock application for Plasma")
761 (description "KClock is a convergent clock application for Plasma, which
762comes with alarms, a stopwatch, world clocks and timers. Indicators are
763displayed on the system tray (if available) for pending alarms and timers, as
764well as sound notifications. If the system has PowerDevil installed, alarms
765and timers can also wake the system from suspend.")
766 (license license:gpl2+)))
767
768(define-public kdialog
769 (package
770 (name "kdialog")
771 (version "25.12.3")
772 (source (origin
773 (method url-fetch)
774 (uri (string-append "mirror://kde/stable/release-service/"
775 version "/src/kdialog-" version ".tar.xz"))
776 (sha256
777 (base32
778 "18ay220hj46g6qlyzci71mxi7mfdf6jawvm7vix6m4cl4gas7rgy"))))
779 (build-system qt-build-system)
780 (arguments (list #:qtbase qtbase
781 #:tests? #f))
782 (native-inputs (list extra-cmake-modules kdoctools))
783 (inputs (list ktextwidgets
784 knotifications
785 kguiaddons
786 kiconthemes
787 kwindowsystem
788 kio
789 kdbusaddons
790 qtwayland))
791 (home-page "https://invent.kde.org/utilities/kdialog")
792 (synopsis "Show dialog boxes from shell scripts")
793 (description "This package provides tool to show nice dialog boxes from
794shell scripts.")
795 (license license:gpl2+)))
796
797(define-public keurocalc
798 (let ((commit "c6e83859624de10210ad6b839c473dd8ea7a0e83") ; just one release
799 (revision "2"))
800 (package
801 (name "keurocalc")
802 (version (git-version "1.3.0" revision commit))
803 (source (origin
804 (method git-fetch)
805 (uri (git-reference
806 (url "https://invent.kde.org/utilities/keurocalc")
807 (commit commit)))
808 (file-name (git-file-name name version))
809 (sha256
810 (base32
811 "040x28lnirwply5ph5xz3jcmx7c10qifmwcjgvqymlgqhcfkda0r"))))
812 (build-system qt-build-system)
813 (native-inputs (list extra-cmake-modules kdoctools))
814 (inputs (list kconfig
815 kconfigwidgets
816 kcoreaddons
817 ki18n
818 kio
819 kwidgetsaddons
820 kxmlgui
821 qtwayland))
822 (arguments (list #:qtbase qtbase
823 #:tests? #f))
824 (home-page "https://invent.kde.org/utilities/keurocalc")
825 (synopsis "Currency conversion tool")
826 (description "This package provides a utility to handle currency
827conversions between European currencies.")
828 (license license:gpl2+))))
829
830(define-public keysmith
831 (package
832 (name "keysmith")
833 (version "25.12.3")
834 (source (origin
835 (method url-fetch)
836 (uri (string-append "mirror://kde/stable/release-service/"
837 version "/src/keysmith-" version ".tar.xz"))
838 (sha256
839 (base32
840 "1m52klqwisq49z3fn7r7y86xxr8syya3lscaw1d27h5yr9vxbg71"))))
841 (build-system qt-build-system)
842 (native-inputs (list extra-cmake-modules pkg-config python-minimal))
843 (inputs (list kconfig
844 kcoreaddons
845 kdbusaddons
846 kirigami
847 kirigami-addons
848 ki18n
849 kwindowsystem
850 libsodium
851 openssl
852 prison
853 qqc2-desktop-style
854 qtsvg
855 qtdeclarative
856 qtwayland))
857 (arguments
858 (list #:qtbase qtbase
859 #:phases
860 #~(modify-phases %standard-phases
861 (add-after 'unpack 'unrequire-qmlmodule
862 (lambda _
863 ;; HACK: ecm_find_qmlmodule cannot find qmlmodule on other
864 ;; prefix, so we remove its requirement.
865 (substitute* "CMakeLists.txt"
866 (("(org\\.kde\\.prison\\.scanner) REQUIRED" all start)
867 start)))))))
868 (home-page "https://invent.kde.org/utilities/keysmith")
869 (synopsis "OTP client for Plasma Mobile and Desktop")
870 (description
871 "This package provides OTP client for Plasma Mobile and Desktop
872with support for QR scanning.")
873 (license license:gpl3+)))
874
875(define-public kfind
876 (package
877 (name "kfind")
878 (version "25.12.3")
879 (source (origin
880 (method url-fetch)
881 (uri (string-append "mirror://kde/stable/release-service/"
882 version "/src/kfind-" version ".tar.xz"))
883 (sha256
884 (base32
885 "1h9aqw3vrm68qqyqni75dws45jmw5izqd5ivdba1iph62xaynlxh"))))
886 (build-system qt-build-system)
887 (arguments (list #:qtbase qtbase
888 #:tests? #f))
889 (native-inputs (list extra-cmake-modules kdoctools))
890 (inputs (list karchive
891 kcoreaddons
892 kcrash
893 kfilemetadata
894 kxmlgui
895 ki18n
896 kio
897 kwidgetsaddons
898 qt5compat
899 qtwayland))
900 (home-page "https://apps.kde.org/kfind/")
901 (synopsis "File search utility")
902 (description
903 "This package provides a file search utility for KDE.")
904 (license license:gpl2+)))
905
906(define-public kirogi
907 (let ((commit "73b009f1fc5ac159c2faba720b302c704f89a806") ; no releases yet
908 (revision "1"))
909 (package
910 (name "kirogi")
911 (version (git-version "0.1-pre" revision commit))
912 (source (origin
913 (method git-fetch)
914 (uri (git-reference
915 (url "https://invent.kde.org/utilities/kirogi")
916 (commit commit)))
917 (file-name (git-file-name name version))
918 (sha256
919 (base32
920 "1gncfnwadh11ipynfcrsh1vnk2g02c7scd5wanphi8i95jzak9jd"))))
921 (build-system qt-build-system)
922 (arguments
923 (list #:tests? #f
924 #:phases #~(modify-phases %standard-phases
925 (add-after 'unpack 'fix-gstreamer
926 (lambda* _
927 (substitute* "CMakeLists.txt"
928 (("gstreamer-video-1.0")
929 "")))))))
930 (native-inputs (list extra-cmake-modules pkg-config))
931 (inputs (list kconfigwidgets-5
932 kcoreaddons-5
933 ki18n-5
934 kirigami-5
935 kcrash-5
936 kdnssd-5
937 qtquickcontrols2-5
938 qtgraphicaleffects
939 qtdeclarative-5
940 qtgamepad-5
941 qtlocation-5
942 qtwayland-5))
943 (propagated-inputs (list gstreamer))
944 (home-page "https://apps.kde.org/kirogi/")
945 (synopsis "Ground control application for drones")
946 (description "Kirogi is a ground control application for drones.
947@itemize
948@item Direct flight controls
949@item Fly by touch on a Navigation Map
950@item Trigger vehicle actions (e.g. flips, trim)
951@item Gamepad/joypad support
952@item Live video
953@item Take photo and record video
954@item Configure flight parameters (speed, altitude limits)
955@item Support for Parrot (Anafi, Bebop 2) and Ryze Tello drones
956@end itemize")
957 (license ;GPL for programs, LGPL for libraries
958 (list license:gpl2+ license:lgpl2.0)))))
959
960(define-public komodo
961 (package
962 (name "komodo")
963 (version "1.6.0")
964 (source
965 (origin
966 (method url-fetch)
967 (uri (string-append "mirror://kde/stable/komodo/" version
968 "/komodo-" version ".tar.xz"))
969 (sha256
970 (base32 "16h814cmh5v60fr71la73ldicblb5snfl6rnvwqg5p5a1wgk59n7"))))
971 (build-system qt-build-system)
972 (arguments
973 (list #:qtbase qtbase))
974 (native-inputs
975 (list extra-cmake-modules kdoctools))
976 (inputs
977 (list kcolorscheme
978 kconfig
979 kcoreaddons
980 kdbusaddons
981 kguiaddons
982 ki18n
983 kiconthemes
984 kirigami
985 kirigami-addons
986 kitemmodels
987 qqc2-desktop-style
988 qtdeclarative
989 qtwayland))
990 (home-page "https://apps.kde.org/komodo/")
991 (synopsis "To-do manager that uses todo.txt")
992 (description "KomoDo is a to-do manager that uses
993@uref{https://github.com/todotxt/todo.txt/blob/master/README.md, todo.txt
994specification}. It parses any compliant @uref{https://todotxt.org/, todo.txt}
995files and turns them into easy to use list of tasks. It also has built-in help
996for the todo.txt specification.
997
998It's features include:
999@itemize
1000@item Open and create new todo.txt files
1001@item Add, delete and edit tasks
1002@item Filter and search tasks
1003@end itemize")
1004 (license license:gpl2+)))
1005
1006(define-public kongress
1007 (package
1008 (name "kongress")
1009 (version "25.12.3")
1010 (source (origin
1011 (method url-fetch)
1012 (uri (string-append "mirror://kde/stable/release-service/" version
1013 "/src/kongress-" version ".tar.xz"))
1014 (sha256
1015 (base32
1016 "11vmpkfc81jlxv0y3fmvgk91j3q01mklrzg2dphlw83h6bf0d3s8"))))
1017 (build-system qt-build-system)
1018 (native-inputs (list extra-cmake-modules python-minimal))
1019 ;; NOTE: Reporting bugs is linked to web browser, better not link it and let
1020 ;; it reslove through xdg-open in the run time
1021 (inputs (list kirigami
1022 kirigami-addons
1023 kcrash
1024 kdbusaddons
1025 ki18n
1026 kcalendarcore
1027 kconfigwidgets
1028 kwindowsystem
1029 kcoreaddons
1030 kcontacts
1031 kitemmodels
1032 knotifications
1033 kosmindoormap
1034 kxmlgui
1035 kiconthemes
1036 qtdeclarative
1037 qtsvg
1038 qtwayland))
1039 (arguments
1040 (list #:qtbase qtbase
1041 #:tests? #f))
1042 (home-page "https://apps.kde.org/kongress/")
1043 (synopsis "Companion application for conferences")
1044 (description "This application provides list of upcoming conferences with
1045the schedule and venue information.")
1046 (license license:gpl3+)))
1047
1048(define-public kontrast
1049 (package
1050 (name "kontrast")
1051 (version "25.12.3")
1052 (source (origin
1053 (method url-fetch)
1054 (uri (string-append "mirror://kde/stable/release-service/"
1055 version "/src/kontrast-" version ".tar.xz"))
1056 (sha256
1057 (base32
1058 "024idzd6wfskr83p9ma8bv4qw9mszryv48man06qgvp4pi800x0c"))))
1059 (build-system qt-build-system)
1060 (arguments (list #:qtbase qtbase
1061 #:tests? #f))
1062 (native-inputs (list extra-cmake-modules kdoctools python-minimal))
1063 (inputs (list kcrash
1064 kirigami
1065 kirigami-addons
1066 ki18n
1067 kcoreaddons
1068 qtdeclarative
1069 futuresql
1070 qcoro-qt6
1071 qtsvg
1072 qtwayland))
1073 (home-page "https://apps.kde.org/kontrast/")
1074 (synopsis "Color contrast checker")
1075 (description
1076 "Kontrast is a color contrast checker and tells you if your color
1077combinations are distinct enough to be readable and accessible.")
1078 (license license:gpl3+)))
1079
1080(define-public libatcore
1081 (let ((commit "c32a13a90d39e44dc5a8dcb601e2b4aa9c996428")
1082 (revision "1"))
1083 (package
1084 (name "libatcore")
1085 (version (git-version "1.0.0" revision commit))
1086 (source (origin
1087 (method git-fetch)
1088 (uri (git-reference
1089 (url "https://invent.kde.org/libraries/atcore")
1090 (commit commit)))
1091 (file-name (git-file-name name version))
1092 (sha256
1093 (base32
1094 "1avcrnxml0iczy0n4xa3ryklbvawbk015wm7l82088qjz2zparcw"))))
1095 (build-system qt-build-system)
1096 (native-inputs (list extra-cmake-modules qttools))
1097 (inputs (list qtcharts qtdeclarative qtserialport))
1098 (arguments (list #:qtbase qtbase
1099 #:tests? #f))
1100 (home-page "https://invent.kde.org/libraries/atcore")
1101 (synopsis "Library for connection and management of 3D printers")
1102 (description
1103 "This package provides a API to manage the serial connection between
1104the computer and 3D Printers.")
1105 (license (list license:lgpl2.1 license:lgpl3)))))
1106
1107(define-public kmag
1108 (package
1109 (name "kmag")
1110 (version "25.12.3")
1111 (source
1112 (origin
1113 (method url-fetch)
1114 (uri (string-append "mirror://kde/stable/release-service/" version
1115 "/src/kmag-" version ".tar.xz"))
1116 (sha256
1117 (base32 "1b17c9j0427bgrjmfwiwyj7jzkdii1n6vkqzfnxx235zc8qvblps"))))
1118 (build-system qt-build-system)
1119 (arguments
1120 (list #:qtbase qtbase
1121 #:tests? #f))
1122 (native-inputs
1123 (list extra-cmake-modules kdoctools))
1124 (inputs
1125 (list kcrash
1126 ki18n
1127 kio
1128 kxmlgui
1129 breeze-icons ;; default icon set
1130 libqaccessibilityclient
1131 qtwayland))
1132 (home-page "https://apps.kde.org/kmag/")
1133 (synopsis "Screen magnifier tool")
1134 (description "You can use KMagnifier to magnify a part of the screen just
1135as you would use a lens to magnify a newspaper fine-print or a photograph.
1136This application is useful for a variety of people: from researchers to
1137artists to web-designers to people with low vision.")
1138 (license ;; GPL for programs, FDL for documentation
1139 (list license:gpl2+ license:fdl1.2+))))
1140
1141(define-public kmousetool
1142 (package
1143 (name "kmousetool")
1144 (version "25.12.3")
1145 (source
1146 (origin
1147 (method url-fetch)
1148 (uri (string-append "mirror://kde/stable/release-service/" version
1149 "/src/kmousetool-" version ".tar.xz"))
1150 (sha256
1151 (base32 "1pm60lfdrr24gahx7zji3cdkhm9gsaw83w1472b6gdx270nbvbry"))))
1152 (build-system qt-build-system)
1153 (native-inputs
1154 (list extra-cmake-modules kdoctools))
1155 (inputs
1156 (list breeze-icons ;; default icon set
1157 kauth
1158 kcoreaddons
1159 kconfigwidgets
1160 kdbusaddons
1161 ki18n
1162 kiconthemes
1163 knotifications
1164 kxmlgui
1165 kwindowsystem
1166 kstatusnotifieritem
1167 libxtst
1168 libxt
1169 phonon
1170 qtmultimedia
1171 qtwayland))
1172 (arguments
1173 (list #:qtbase qtbase
1174 #:tests? #f))
1175 (home-page "https://apps.kde.org/kmousetool/")
1176 (synopsis "Automatic mouse click and mouse manipulation tool for the
1177disabled")
1178 (description "KMouseTool clicks the mouse whenever the mouse cursor pauses
1179briefly. It was designed to help those with repetitive strain injuries, for
1180whom pressing buttons hurts.")
1181 (license ;; GPL for programs, FDL for documentation
1182 (list license:gpl2+ license:fdl1.2+))))
1183
1184(define-public kmouth
1185 (package
1186 (name "kmouth")
1187 (version "25.12.3")
1188 (source
1189 (origin
1190 (method url-fetch)
1191 (uri (string-append "mirror://kde/stable/release-service/" version
1192 "/src/kmouth-" version ".tar.xz"))
1193 (sha256
1194 (base32 "0f05gihqk06g70bpdlk5bx2szrasi2x9xyr8y7kfjfx8m9qy65hg"))))
1195 (build-system qt-build-system)
1196 (native-inputs
1197 (list extra-cmake-modules kdoctools))
1198 (inputs
1199 (list kcompletion
1200 kconfig
1201 kconfigwidgets
1202 kcoreaddons
1203 kcrash
1204 ki18n
1205 kio
1206 kwidgetsaddons
1207 kxmlgui
1208 breeze-icons ;; default icon set
1209 qtspeech
1210 qtwayland))
1211 (arguments
1212 (list #:qtbase qtbase
1213 #:tests? #f))
1214 (home-page "https://apps.kde.org/kmouth/")
1215 (synopsis "Type-and-say frontend for speech synthesizers")
1216 (description "KMouth is a program which enables persons that cannot speak
1217to let their computer speak, e.g. mutal people or people who have lost their
1218voice. It has a text input field and speaks the sentences that you enter. It
1219also has support for user defined phrasebooks.
1220
1221It includes a history of spoken sentences from which the user can select
1222sentences to be re-spoken.")
1223 (license ;; GPL for programs, FDL for documentation
1224 (list license:gpl2+ license:fdl1.2+))))
1225
1226(define-public krename
1227 (let ((commit "33b6d5eec7284d82b9d15c4ea43949b0864a2567")
1228 (revision "0"))
1229 (package
1230 (name "krename")
1231 (version (git-version "5.0.2" revision commit))
1232 (source (origin
1233 (method git-fetch)
1234 (uri (git-reference
1235 (url "https://invent.kde.org/utilities/krename")
1236 (commit commit)))
1237 (file-name (git-file-name name version))
1238 (sha256
1239 (base32
1240 "1v056qf4fd1jny0n4n0wka9j0bdx9ii4s0ljb8f2fqgpi2wj57lm"))))
1241 (build-system qt-build-system)
1242 (arguments
1243 (list #:qtbase qtbase
1244 #:configure-flags
1245 #~(list "-DQT_MAJOR_VERSION=6")))
1246 (native-inputs
1247 (list extra-cmake-modules pkg-config))
1248 (inputs
1249 (list exiv2
1250 freetype
1251 karchive
1252 kcompletion
1253 kconfig
1254 kcoreaddons
1255 kcrash
1256 ki18n
1257 kiconthemes
1258 kio
1259 kitemviews
1260 kjobwidgets
1261 kservice
1262 kwidgetsaddons
1263 kxmlgui
1264 podofo
1265 taglib
1266 qt5compat
1267 qtwayland))
1268 (home-page "https://userbase.kde.org/KRename")
1269 (synopsis "Utility to handle specialized file renames")
1270 (description "KRename is a batch file renamer by KDE. It allows you to
1271easily rename hundreds or even more files in one go. The filenames can be
1272constructed using parts of the original filename or information from the file
1273metadata such as the creation date or Exif information of an image.
1274
1275Its features include:
1276
1277@itemize
1278@item renaming a list of files based on a set of expressions,
1279@item copying/moving a list of files to another directory,
1280@item converting filenames to upper/lower case,
1281@item adding numbers to filenames,
1282@item finding and replacing parts of the filename,
1283@item rename audio files (e.g. mp3, ogg) files based on their metadata,
1284@item setting access and modification dates, permissions and file ownership,
1285@item a plug-in API which allows you to extend KRename's features,
1286@item renaming directories recursively,
1287@item support for KFilePlugins and
1288@item creating undo file.
1289@end itemize")
1290 (license license:gpl3+))))
1291
1292(define-public kronometer
1293 (let ((commit "8cfa062655e89b4b0cad911af3acab6609b13ecd")
1294 (revision "0"))
1295 (package
1296 (name "kronometer")
1297 (version (git-version "2.3.0" revision commit))
1298 (source (origin
1299 (method git-fetch)
1300 (uri (git-reference
1301 (url "https://invent.kde.org/utilities/kronometer.git/")
1302 (commit commit)))
1303 (file-name (git-file-name name version))
1304 (sha256
1305 (base32
1306 "1vzdi9zyrx6s3l74yaxvd1y6729n51m23k0bxydwi36my3zml2kk"))))
1307 (build-system qt-build-system)
1308 (native-inputs
1309 (list extra-cmake-modules kdoctools))
1310 (inputs
1311 (list breeze-icons ;; default icon set
1312 kauth
1313 kconfig
1314 kconfigwidgets
1315 kcoreaddons
1316 kcrash
1317 ki18n
1318 kwidgetsaddons
1319 kxmlgui
1320 qtwayland))
1321 (arguments (list #:qtbase qtbase))
1322 (home-page "https://apps.kde.org/kronometer/")
1323 (synopsis "Simple stopwatch application")
1324 (description "Kronometer is a stopwatch application. It features the
1325basic stopwatch actions (pause, resume, reset, laps), as well as the ability
1326to save the times and resume them later.")
1327 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
1328 license:gpl2+))))
1329
1330(define-public krusader
1331 (package
1332 (name "krusader")
1333 (version "2.9.0")
1334 (source
1335 (origin
1336 (method url-fetch)
1337 (uri (string-append "mirror://kde/stable/krusader/" version
1338 "/krusader-" version ".tar.xz"))
1339 (sha256
1340 (base32 "012f75afp7vjpp7wps4lzvcszj6a5y9yzv21wgh9zikcvvx9pdy9"))))
1341 (build-system qt-build-system)
1342 (arguments
1343 (list #:qtbase qtbase
1344 #:tests? #f))
1345 (native-inputs
1346 (list extra-cmake-modules kdoctools))
1347 (inputs
1348 (list breeze-icons ;; default icon set
1349 karchive
1350 kbookmarks
1351 kcodecs
1352 kcompletion
1353 kconfig
1354 kcoreaddons
1355 kcrash
1356 kglobalaccel
1357 kguiaddons
1358 ki18n
1359 kiconthemes
1360 kio
1361 kitemviews
1362 knotifications
1363 kparts
1364 kstatusnotifieritem
1365 ktextwidgets
1366 kwallet
1367 kwidgetsaddons
1368 kwindowsystem
1369 kxmlgui
1370 qt5compat
1371 qtwayland
1372 solid
1373 zlib))
1374 (home-page "https://krusader.org/")
1375 (synopsis "Twin-panel (commander-style) file manager")
1376 (description "Krusader is a simple, easy, yet powerful,
1377twin-panel (commander-style) file manager, similar to Midnight Commander or
1378Total Commander
1379
1380It provides all the file management features you could possibly want. Plus:
1381extensive archive handling, mounted file system support, FTP, advanced search
1382module, an internal viewer/editor, directory synchronisation, file content
1383comparisons, powerful batch renaming and much much more. It supports a wide
1384variety of archive formats and can handle other KIO slaves such as smb or
1385fish.
1386
1387Almost completely customizable, Krusader is very user friendly, fast and looks
1388great on your desktop.")
1389 (license license:gpl2+)))
1390
1391(define-public ktimer
1392 (package
1393 (name "ktimer")
1394 (version "25.12.3")
1395 (source (origin
1396 (method url-fetch)
1397 (uri (string-append "mirror://kde/stable/release-service/" version
1398 "/src/ktimer-" version ".tar.xz"))
1399 (sha256
1400 (base32
1401 "0p13wndvsn7s4klg79j4jlxhj6f4ggww9hmj7py82klqivmwswzy"))))
1402 (build-system qt-build-system)
1403 (native-inputs
1404 (list extra-cmake-modules
1405 kdoctools))
1406 (inputs
1407 (list kcrash
1408 kdbusaddons
1409 ki18n
1410 kio
1411 knotifications
1412 kconfigwidgets
1413 kstatusnotifieritem
1414 qt5compat
1415 qtwayland))
1416 (arguments
1417 (list #:qtbase qtbase
1418 #:tests? #f))
1419 (home-page "https://kde.org/applications/utilities/ktimer")
1420 (synopsis "Countdown Launcher")
1421 (description "KTimer is a little tool to execute programs after some time.
1422It allows you to enter several tasks and to set a timer for each of them. The
1423timers for each task can be started, stopped, changed, or looped.")
1424 (license license:gpl2+)))
1425
1426(define-public kxstitch
1427 (let ((commit "bfe934ffc2c2dfa1cc554bc4483a3285b027b00c")
1428 (revision "0"))
1429 (package
1430 (name "kxstitch")
1431 (version (git-version "2.2.0" revision commit))
1432 (source (origin
1433 (method git-fetch)
1434 (uri (git-reference
1435 (url "https://invent.kde.org/graphics/kxstitch.git/")
1436 (commit commit)))
1437 (file-name (git-file-name name version))
1438 (sha256
1439 (base32
1440 "1vhan3pmbm80bh0kdrsmzda2pir3921m8flm1haw8nf5i706gk87"))))
1441 (build-system qt-build-system)
1442 (native-inputs
1443 (list extra-cmake-modules kdoctools pkg-config))
1444 (inputs
1445 (list kcompletion
1446 kconfigwidgets
1447 kguiaddons
1448 ki18n
1449 kio
1450 ktextwidgets
1451 kwidgetsaddons
1452 kxmlgui
1453 kconfig
1454 imagemagick
1455 qtwayland))
1456 (arguments (list #:qtbase qtbase
1457 #:tests? #f))
1458 (home-page "https://apps.kde.org/kxstitch/")
1459 (synopsis "Create and print cross stitch patterns")
1460 (description
1461 "KXStitch allows creating and printing cross stitch patterns, which can
1462either be created or generated from a image.")
1463 (license license:gpl2+))))
1464
1465(define-public okteta
1466 (package
1467 (name "okteta")
1468 (version "0.26.25")
1469 (source
1470 (origin
1471 (method url-fetch)
1472 (uri (string-append "mirror://kde/stable/okteta/" version
1473 "/src/okteta-" version ".tar.xz"))
1474 (sha256
1475 (base32 "0sxpbd52bj6s7yngd3qb3iy5a0n54b81mnx51h1kijwqyhdqkq9b"))))
1476 (build-system qt-build-system)
1477 (native-inputs
1478 (list extra-cmake-modules kdoctools-5 qttools-5 shared-mime-info))
1479 (inputs
1480 (list kbookmarks-5
1481 kcmutils-5
1482 kcodecs-5
1483 kcrash-5
1484 kcompletion-5
1485 kconfigwidgets-5
1486 kdbusaddons-5
1487 ki18n-5
1488 kiconthemes-5
1489 kio-5
1490 knewstuff-5
1491 kparts-5
1492 kservice-5
1493 kwidgetsaddons-5
1494 kxmlgui-5
1495 breeze-icons ;; default icon set
1496 qca
1497 qtbase-5
1498 qtdeclarative-5
1499 qtscript-5
1500 qtwayland-5))
1501 (arguments
1502 `(#:phases
1503 (modify-phases %standard-phases
1504 (add-before 'check 'check-setup
1505 (lambda _
1506 ;; make Qt render "offscreen", required for tests
1507 (setenv "QT_QPA_PLATFORM" "offscreen")
1508 (setenv "HOME" "/tmp/dummy-home"))))))
1509 (home-page "https://apps.kde.org/okteta/")
1510 (synopsis "Hexadecimal editor for binary files")
1511 (description "Okteta is a simple editor for the raw data of files. This
1512type of program is also called hex editor or binary editor.
1513
1514The data is displayed in the traditional view with two columns: one with the
1515numeric values and one with the assigned characters. Editing can be done both
1516in the value column and the character column. Besides the usual editing
1517capabilities Okteta also brings a small set of tools, like a table listing
1518decodings into common simple data types, a table listing all possible bytes
1519with its character and value equivalents, a info view with a statistic and a
1520filter tool. All modifications to the data loaded can be endlessly undone or
1521redone.")
1522 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
1523 (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
1524
1525(define-public rsibreak
1526 (package
1527 (name "rsibreak")
1528 (version "0.13.0")
1529 (source (origin
1530 (method url-fetch)
1531 (uri (string-append "mirror://kde/stable/rsibreak/"
1532 (version-major+minor version)
1533 "/rsibreak-" version ".tar.xz"))
1534 (sha256
1535 (base32
1536 "086ipa9jbpiaj8j79cygk2p5bgpbgpw9bsh8hcbya3vxql4wxcka"))))
1537 (build-system qt-build-system)
1538 (native-inputs
1539 (list extra-cmake-modules kdoctools))
1540 (inputs
1541 (list breeze-icons ;; default icon set
1542 kcolorscheme
1543 kconfig
1544 kconfigwidgets
1545 kcoreaddons
1546 kcrash
1547 kdbusaddons
1548 ki18n
1549 kidletime
1550 knotifications
1551 knotifyconfig
1552 kstatusnotifieritem
1553 ktextwidgets
1554 kwindowsystem
1555 kxmlgui
1556 qtwayland))
1557 (arguments (list #:qtbase qtbase))
1558 (home-page "https://apps.kde.org/rsibreak/")
1559 (synopsis "Recovery and Repetitive Strain Injury prevention assistsant")
1560 (description "Repetitive Strain Injury is an illness which can occur as a
1561result of working with a mouse and keyboard. This utility can be used to
1562remind you to take a break now and then.")
1563 (license ;; GPL for programs, FDL for documentation
1564 (list license:gpl2+ license:fdl1.2+))))
1565
1566(define-public sweeper
1567 (package
1568 (name "sweeper")
1569 (version "25.12.3")
1570 (source
1571 (origin
1572 (method url-fetch)
1573 (uri (string-append "mirror://kde/stable/release-service/" version
1574 "/src/sweeper-" version ".tar.xz"))
1575 (sha256
1576 (base32 "1l6wsd46l0j1ncqikmymwc0mvbzx29r0jf0zmmc48lnb8fx9vb8q"))))
1577 (build-system qt-build-system)
1578 (arguments
1579 (list #:qtbase qtbase
1580 #:tests? #f))
1581 (native-inputs
1582 (list extra-cmake-modules kdoctools))
1583 (inputs
1584 (list breeze-icons ;; default icon set
1585 plasma-activities-stats
1586 kbookmarks
1587 kcrash
1588 kconfig
1589 kconfigwidgets
1590 kcoreaddons
1591 ki18n
1592 kio
1593 ktextwidgets
1594 kxmlgui
1595 qtwayland))
1596 (home-page "https://apps.kde.org/sweeper/")
1597 (synopsis "Temporary file and history cleaner")
1598 (description "
1599Sweeper helps to clean unwanted traces the user leaves on the system and to
1600regain disk space removing unused temporary files.
1601It can quickly remove temporary information, such as web page cookies,
1602browser history, or the list of recently-opened documents. It helps provide
1603additional privacy on a system shared between multiple users.")
1604 (license license:lgpl2.0+ )))