gnu: libdvdcss: Update to 1.4.3.
[jackhill/guix/guix.git] / gnu / packages / kde-utils.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
3 ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (gnu packages kde-utils)
21 #:use-module (guix build-system qt)
22 #:use-module (guix download)
23 #:use-module ((guix licenses) #:prefix license:)
24 #:use-module (guix packages)
25 #:use-module (gnu packages compression)
26 #:use-module (gnu packages gnome)
27 #:use-module (gnu packages imagemagick)
28 #:use-module (gnu packages pkg-config)
29 #:use-module (gnu packages kde)
30 #:use-module (gnu packages kde-frameworks)
31 #:use-module (gnu packages kde-plasma)
32 #:use-module (gnu packages qt)
33 #:use-module (gnu packages samba)
34 #:use-module (gnu packages xorg))
35
36 (define-public kate
37 (package
38 (name "kate")
39 (version "20.04.1")
40 (source
41 (origin
42 (method url-fetch)
43 (uri (string-append "mirror://kde/stable/release-service/" version
44 "/src/kate-" version ".tar.xz"))
45 (sha256
46 (base32 "0nrby307syrqlxrf9lwdzc9c15ifw47418qwszqwg345ma2pww7i"))))
47 (build-system qt-build-system)
48 (native-inputs
49 `(("extra-cmake-modules" ,extra-cmake-modules)
50 ("kdoctools" ,kdoctools)))
51 (inputs
52 `(("kactivities" ,kactivities)
53 ("kconfig" ,kconfig)
54 ("kcrash" ,kcrash)
55 ("kdbusaddons" ,kdbusaddons)
56 ("kguiaddons" ,kguiaddons)
57 ("ki18n" ,ki18n)
58 ("kiconthemes" ,kiconthemes)
59 ("kitemmodels" ,kitemmodels)
60 ("threadweaver" ,threadweaver)
61 ("knewstuff" ,knewstuff)
62 ("kio" ,kio)
63 ("kjobwidgets" ,kjobwidgets)
64 ("kparts" ,kparts)
65 ("ktexteditor" ,ktexteditor)
66 ("kwallet" ,kwallet)
67 ("plasma-framework" ,plasma-framework)
68 ("kwindowsystem" ,kwindowsystem)
69 ("kxmlgui" ,kxmlgui)
70 ("oxygen-icons" ,oxygen-icons) ;; default icon set
71 ("qtbase" ,qtbase)
72 ("qtscript" ,qtscript)))
73 (arguments
74 `(#:tests? #f ;; 2/7 tests fail
75 #:phases
76 (modify-phases %standard-phases
77 (add-before 'check 'check-setup
78 (lambda _
79 ;; make Qt render "offscreen", required for tests
80 (setenv "QT_QPA_PLATFORM" "offscreen")
81 (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")
82 #t)))))
83 (home-page "https://kate-editor.org/")
84 (synopsis "Multi-document, multi-view text editor")
85 (description "Kate is a powerful text editor that can open multiple files
86 simultaneously.
87
88 With a built-in terminal, syntax highlighting, and tabbed sidebar, it performs
89 as a lightweight but capable development environment. Kate's many tools,
90 plugins, and scripts make it highly customizable.
91
92 Kate's features include:
93 @itemize
94 @item Multiple saved sessions, each with numerous files
95 @item Scriptable syntax highlighting, indentation, and code-folding
96 @item Configurable templates and text snippets
97 @item Symbol viewers for C, C++, and Python
98 @item XML completion and validation
99 @end itemize")
100 (license ;; GPL for programs, LGPL for libraries
101 (list license:gpl2+ license:lgpl2.0))))
102
103 (define-public kmag
104 (package
105 (name "kmag")
106 (version "20.04.1")
107 (source
108 (origin
109 (method url-fetch)
110 (uri (string-append "mirror://kde/stable/release-service/" version
111 "/src/kmag-" version ".tar.xz"))
112 (sha256
113 (base32 "18lk8i2r90gvw8q5j179xgpniih92mwk06krk7w4jv98yinqf6m5"))))
114 (build-system qt-build-system)
115 (native-inputs
116 `(("extra-cmake-modules" ,extra-cmake-modules)
117 ("kdoctools" ,kdoctools)))
118 (inputs
119 `(("ki18n" ,ki18n)
120 ("kio" ,kio)
121 ("kxmlgui" ,kxmlgui)
122 ("oxygen-icons" ,oxygen-icons) ;; default icon set
123 ;; TODO: QAccessibilityClient - libqaccessibilityclien
124 ("qtbase" ,qtbase)))
125 (home-page "https://kde.org/applications/utilities/org.kde.kmag")
126 (synopsis "Screen magnifier tool")
127 (description "You can use KMagnifier to magnify a part of the screen just
128 as you would use a lens to magnify a newspaper fine-print or a photograph.
129 This application is useful for a variety of people: from researchers to
130 artists to web-designers to people with low vision.")
131 (license ;; GPL for programs, FDL for documentation
132 (list license:gpl2+ license:fdl1.2+))))
133
134 (define-public kmousetool
135 (package
136 (name "kmousetool")
137 (version "20.04.1")
138 (source
139 (origin
140 (method url-fetch)
141 (uri (string-append "mirror://kde/stable/release-service/" version
142 "/src/kmousetool-" version ".tar.xz"))
143 (sha256
144 (base32 "01j6bx8zihns4ip8maj0gb3w3bhx1ha2ljhfmsm6lcyay531ay98"))))
145 (build-system qt-build-system)
146 (native-inputs
147 `(("extra-cmake-modules" ,extra-cmake-modules)
148 ("kdoctools" ,kdoctools)))
149 (inputs
150 `(("kauth" ,kauth)
151 ("kcoreaddons" ,kcoreaddons)
152 ("kconfigwidgets" ,kconfigwidgets)
153 ("kdbusaddons" ,kdbusaddons)
154 ("ki18n" ,ki18n)
155 ("kiconthemes" ,kiconthemes)
156 ("knotifications" ,knotifications)
157 ("kxmlgui" ,kxmlgui)
158 ("kwindowsystem" ,kwindowsystem)
159 ("libxtst" ,libxtst)
160 ("libxt" ,libxt)
161 ("phonon" ,phonon)
162 ("oxygen-icons" ,oxygen-icons) ;; default icon set
163 ("qtbase" ,qtbase)))
164 (home-page "https://kde.org/applications/utilities/org.kde.kmousetool")
165 (synopsis "Automatic mouse click and mouse manipulation tool for the
166 disabled")
167 (description "KMouseTool clicks the mouse whenever the mouse cursor pauses
168 briefly. It was designed to help those with repetitive strain injuries, for
169 whom pressing buttons hurts.")
170 (license ;; GPL for programs, FDL for documentation
171 (list license:gpl2+ license:fdl1.2+))))
172
173 (define-public kmouth
174 (package
175 (name "kmouth")
176 (version "20.04.1")
177 (source
178 (origin
179 (method url-fetch)
180 (uri (string-append "mirror://kde/stable/release-service/" version
181 "/src/kmouth-" version ".tar.xz"))
182 (sha256
183 (base32 "1afgxlys9mvmc3rd33g7gchfb0ylx83x3x0a0qf3dra6cpgsgcg7"))))
184 (build-system qt-build-system)
185 (native-inputs
186 `(("extra-cmake-modules" ,extra-cmake-modules)
187 ("kdoctools" ,kdoctools)))
188 (inputs
189 `(("kcompletion" ,kcompletion)
190 ("kconfig" ,kconfig)
191 ("kconfigwidgets" ,kconfigwidgets)
192 ("kcoreaddons" ,kcoreaddons)
193 ("kcrash" ,kcrash)
194 ("ki18n" ,ki18n)
195 ("kio" ,kio)
196 ("kwidgetsaddons" ,kwidgetsaddons)
197 ("kxmlgui" ,kxmlgui)
198 ("oxygen-icons" ,oxygen-icons) ;; default icon set
199 ("qtbase" ,qtbase)
200 ("qtspeech" ,qtspeech)))
201 (home-page "https://kde.org/applications/utilities/org.kde.kmouth")
202 (synopsis "Type-and-say frontend for speech synthesizers")
203 (description "KMouth is a program which enables persons that cannot speak
204 to let their computer speak, e.g. mutal people or people who have lost their
205 voice. It has a text input field and speaks the sentences that you enter. It
206 also has support for user defined phrasebooks.
207
208 It includes a history of spoken sentences from which the user can select
209 sentences to be re-spoken.")
210 (license ;; GPL for programs, FDL for documentation
211 (list license:gpl2+ license:fdl1.2+))))
212
213 (define-public kronometer
214 (package
215 (name "kronometer")
216 (version "2.2.3")
217 (source
218 (origin
219 (method url-fetch)
220 (uri (string-append "mirror://kde/stable/kronometer/" version
221 "/src/kronometer-" version ".tar.xz"))
222 (sha256
223 (base32 "05hs8729a3aqjpwmn2xdf2sriacrll4sj4ax3lm4s1ravj09n9bm"))))
224 (build-system qt-build-system)
225 (native-inputs
226 `(("extra-cmake-modules" ,extra-cmake-modules)
227 ("kdoctools" ,kdoctools)))
228 (inputs
229 `(("kauth" ,kauth)
230 ("kconfig" ,kconfig)
231 ("kconfigwidgets" ,kconfigwidgets)
232 ("kcoreaddons" ,kcoreaddons)
233 ("kcrash" ,kcrash)
234 ("ki18n" ,ki18n)
235 ("kwidgetsaddons" ,kwidgetsaddons)
236 ("kxmlgui" ,kxmlgui)
237 ("oxygen-icons" ,oxygen-icons) ;; default icon set
238 ("qtbase" ,qtbase)))
239 (home-page "https://kde.org/applications/utilities/org.kde.kronometer")
240 (synopsis "Simple stopwatch application")
241 (description "Kronometer is a stopwatch application. It features the
242 basic stopwatch actions (pause, resume, reset, laps), as well as the ability
243 to save the times and resume them later.")
244 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
245 license:gpl2+)))
246
247 (define-public krusader
248 (package
249 (name "krusader")
250 (version "2.7.2")
251 (source
252 (origin
253 (method url-fetch)
254 (uri (string-append "mirror://kde/stable/krusader/" version
255 "/krusader-" version ".tar.xz"))
256 (sha256
257 (base32 "02b1jz5a7cjr13v6c7fczrhs1xmg1krnva5fxk8x2bf4nd1rm8s1"))))
258 (build-system qt-build-system)
259 (native-inputs
260 `(("extra-cmake-modules" ,extra-cmake-modules)
261 ("kdoctools" ,kdoctools)))
262 (inputs
263 `(("karchive" ,karchive)
264 ("kbookmarks" ,kbookmarks)
265 ("kcodecs" ,kcodecs)
266 ("kcompletion" ,kcompletion)
267 ("kconfig" ,kconfig)
268 ("kcoreaddons" ,kcoreaddons)
269 ("kguiaddons" ,kguiaddons)
270 ("ki18n" ,ki18n)
271 ("kiconthemes" ,kiconthemes)
272 ("kio" ,kio)
273 ("kitemviews" ,kitemviews)
274 ("knotifications" ,knotifications)
275 ("kparts" ,kparts)
276 ("ktextwidgets" ,ktextwidgets)
277 ("kwallet" ,kwallet)
278 ("kwidgetsaddons" ,kwidgetsaddons)
279 ("kwindowsystem" ,kwindowsystem)
280 ("kxmlgui" ,kxmlgui)
281 ("oxygen-icons" ,oxygen-icons) ;; default icon set
282 ("qtbase" ,qtbase)
283 ("solid" ,solid)
284 ("zlib" ,zlib)))
285 (home-page "https://www.krusader.org")
286 (synopsis "Twin-panel (commander-style) file manager")
287 (description "Krusader is a simple, easy, yet powerful,
288 twin-panel (commander-style) file manager, similar to Midnight Commander or
289 Total Commander
290
291 It provides all the file management features you could possibly want. Plus:
292 extensive archive handling, mounted file system support, FTP, advanced search
293 module, an internal viewer/editor, directory synchronisation, file content
294 comparisons, powerful batch renaming and much much more. It supports a wide
295 variety of archive formats and can handle other KIO slaves such as smb or
296 fish.
297
298 Almost completely customizable, Krusader is very user friendly, fast and looks
299 great on your desktop.")
300 (license license:gpl2+)))
301
302 (define-public kxstitch
303 (package
304 (name "kxstitch")
305 (version "2.2.0")
306 (source
307 (origin
308 (method url-fetch)
309 (uri (string-append "mirror://kde/stable/kxstitch/" version
310 "/kxstitch-" version ".tar.xz"))
311 (sha256
312 (base32 "1q6blvcqz6hxdfrkdi0fplmz7rmk3im56kpp68r0yrivhx3hn8sc"))))
313 (build-system qt-build-system)
314 (native-inputs
315 `(("extra-cmake-modules" ,extra-cmake-modules)
316 ("kdoctools" ,kdoctools)
317 ("pkg-config" ,pkg-config)))
318 (inputs
319 `(("ktexteditor" ,ktexteditor)
320 ("imagemagick" ,imagemagick)
321 ("qtbase" ,qtbase)
322 ("qtx11extras" ,qtx11extras)))
323 (home-page "https://kde.org/applications/en/graphics/org.kde.kxstitch")
324 (synopsis "Create and print cross stitch patterns")
325 (description
326 "KXStitch allows creating and printing cross stitch patterns, which can
327 either be created or generated from a image.")
328 (license license:gpl2+)))
329
330 (define-public okteta
331 (package
332 (name "okteta")
333 (version "17.12.3")
334 (source
335 (origin
336 (method url-fetch)
337 ;; TODO: Why is this not in "stable" anymore
338 (uri (string-append "mirror://kde/Attic/applications/" version
339 "/src/okteta-" version ".tar.xz"))
340 (sha256
341 (base32 "03wsv83l1cay2dpcsksad124wzan7kh8zxdw1h0yicn398kdbck4"))))
342 (build-system qt-build-system)
343 (native-inputs
344 `(("extra-cmake-modules" ,extra-cmake-modules)
345 ("kdoctools" ,kdoctools)
346 ("qttools" ,qttools)
347 ("shared-mime-info" ,shared-mime-info)))
348 (inputs
349 `(("kbookmarks" ,kbookmarks)
350 ("kcmutils" ,kcmutils)
351 ("kcodecs" ,kcodecs)
352 ("kcrash" ,kcrash)
353 ("kcompletion" ,kcompletion)
354 ("kconfigwidgets" ,kconfigwidgets)
355 ("kdbusaddons" ,kdbusaddons)
356 ("ki18n" ,ki18n)
357 ("kiconthemes" ,kiconthemes)
358 ("kio" ,kio)
359 ("knewstuff" ,knewstuff)
360 ("kparts" ,kparts)
361 ("kservice" ,kservice)
362 ("kwidgetsaddons" ,kwidgetsaddons)
363 ("kxmlgui" ,kxmlgui)
364 ("oxygen-icons" ,oxygen-icons) ;; default icon set
365 ("qca" ,qca)
366 ("qtbase" ,qtbase)
367 ("qtscript" ,qtscript)))
368 (arguments
369 `(#:phases
370 (modify-phases %standard-phases
371 (add-before 'check 'check-setup
372 (lambda _
373 ;; make Qt render "offscreen", required for tests
374 (setenv "QT_QPA_PLATFORM" "offscreen")
375 (setenv "HOME" "/tmp/dummy-home")
376 #t)))))
377 (home-page "https://kde.org/applications/utilities/org.kde.okteta")
378 (synopsis "Hexadecimal editor for binary files")
379 (description "Okteta is a simple editor for the raw data of files. This
380 type of program is also called hex editor or binary editor.
381
382 The data is displayed in the traditional view with two columns: one with the
383 numeric values and one with the assigned characters. Editing can be done both
384 in the value column and the character column. Besides the usual editing
385 capabilities Okteta also brings a small set of tools, like a table listing
386 decodings into common simple data types, a table listing all possible bytes
387 with its character and value equivalents, a info view with a statistic and a
388 filter tool. All modifications to the data loaded can be endlessly undone or
389 redone.")
390 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
391 (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
392
393 (define-public rsibreak
394 (package
395 (name "rsibreak")
396 (version "0.12.13")
397 (source
398 (origin
399 (method url-fetch)
400 (uri (string-append "mirror://kde//stable/rsibreak/0.12/"
401 "rsibreak-" version ".tar.xz"))
402 (sha256
403 (base32 "06kzyj5jzmzvhw6jy6p7ldrq719bys0yg0nll9rawziwpxzvwh1p"))))
404 (build-system qt-build-system)
405 (native-inputs
406 `(("extra-cmake-modules" ,extra-cmake-modules)
407 ("kdoctools" ,kdoctools)))
408 (inputs
409 `(("kauth" ,kauth)
410 ("kconfig" ,kconfig)
411 ("kconfigwidgets" ,kconfigwidgets)
412 ("kcoreaddons" ,kcoreaddons)
413 ("kcrash" ,kcrash)
414 ("kdbusaddons" ,kdbusaddons)
415 ("ki18n" ,ki18n)
416 ("kiconthemes" ,kiconthemes)
417 ("kidletime" ,kidletime)
418 ("knotifications" ,knotifications)
419 ("knotifyconfig" ,knotifyconfig)
420 ("ktextwidgets" ,ktextwidgets)
421 ("kwindowsystem" ,kwindowsystem)
422 ("kxmlgui" ,kxmlgui)
423 ("oxygen-icons" ,oxygen-icons) ;; default icon set
424 ("qtbase" ,qtbase)))
425 (home-page "https://kde.org/applications/utilities/org.kde.rsibreak")
426 (synopsis "Assists in the Recovery and Prevention of Repetitive Strain
427 Injury")
428 (description "Repetitive Strain Injury is an illness which can occur as a
429 result of working with a mouse and keyboard. This utility can be used to
430 remind you to take a break now and then.")
431 (license ;; GPL for programs, FDL for documentation
432 (list license:gpl2+ license:fdl1.2+))))
433
434 (define-public smb4k
435 (package
436 (name "smb4k")
437 (version "3.0.6")
438 (source
439 (origin
440 (method url-fetch)
441 (uri (string-append "https://sourceforge.net/projects/smb4k/files/"
442 version "/smb4k-" version ".tar.xz/download"))
443 (sha256
444 (base32 "0hz6nfd845bykf78s4g2qs77szl96gy6g8rpg44pqd39a0k0xbh7"))))
445 (build-system qt-build-system)
446 (native-inputs
447 `(("extra-cmake-modules" ,extra-cmake-modules)
448 ("kdoctools" ,kdoctools)))
449 (inputs
450 `(("kauth" ,kauth)
451 ("kconfig" ,kconfig)
452 ("kconfigwidgets" ,kconfigwidgets)
453 ("kcompletion" ,kcompletion)
454 ("kcoreaddons" ,kcoreaddons)
455 ("kcrash" ,kcrash)
456 ("kdbusaddons" ,kdbusaddons)
457 ("ki18n" ,ki18n)
458 ("kiconthemes" ,kiconthemes)
459 ("kio" ,kio)
460 ("kjobwidgets" ,kjobwidgets)
461 ("knotifications" ,knotifications)
462 ("knotifyconfig" ,knotifyconfig)
463 ("ktextwidgets" ,ktextwidgets)
464 ("kwallet" ,kwallet)
465 ("kwidgetsaddons" ,kwidgetsaddons)
466 ("kwindowsystem" ,kwindowsystem)
467 ("kxmlgui" ,kxmlgui)
468 ("libsmbclient" ,samba)
469 ("oxygen-icons" ,oxygen-icons) ;; default icon set
470 ("plasma-framework" ,plasma-framework)
471 ("qtbase" ,qtbase)
472 ("qtdeclarative" ,qtdeclarative)
473 ("solid" ,solid)))
474 (home-page "https://kde.org/applications/utilities/org.kde.smb4k")
475 (synopsis "Samba (SMB) share advanced browser")
476 (description "Smb4K is an network neighborhood browser for the KDE
477 Software Compilation and a frontend to the programs of the Samba software
478 suite.
479
480 Features:
481 @itemize
482 @item Scanning for (active) workgroups, hosts, and shares
483 @item Support of the CIFS (Linux) and SMBFS (FreeBSD) file system
484 @item Mounting and unmounting of shares (using the KAuth framework)
485 @item Access to the files of a mounted share using a file manager or terminal
486 @item Auto-detection of external mounts and unmounts
487 @item Remounting of previously used shares on program start
488 @item Miscellaneous infos about remote network items and mounted shares
489 @item Network search
490 @item WINS server support
491 @item Preview of the contents of a share
492 @item Several methods to look up the initial list of workgroups and domains
493 @item Default login
494 @item Special handling of homes shares
495 @item Ability to bookmark favorite shares and organize them in groups
496 @item System tray widget
497 @item Support of advanced Samba options
498 @item Support of printer shares
499 @item KWallet support
500 @item Synchronization of a remote share with a local copy and vice versa
501 @item Ability to define custom options for individual servers and shares
502 @item Laptop support through the Solid hardware device framework
503 @end itemize")
504 (license license:gpl2+)))
505
506 (define-public sweeper
507 (package
508 (name "sweeper")
509 (version "20.04.1")
510 (source
511 (origin
512 (method url-fetch)
513 (uri (string-append "mirror://kde/stable/release-service/" version
514 "/src/sweeper-" version ".tar.xz"))
515 (sha256
516 (base32 "1az3c2khnh51bbmqpamj4p26d3a0ff4l5rd3vcrylg94mk7wgh59"))))
517 (build-system qt-build-system)
518 (native-inputs
519 `(("extra-cmake-modules" ,extra-cmake-modules)
520 ("kdoctools" ,kdoctools)))
521 (inputs
522 `(("kactivities-stats" ,kactivities-stats)
523 ("kbookmarks" ,kbookmarks)
524 ("kcrash" ,kcrash)
525 ("kconfig" ,kconfig)
526 ("kconfigwidgets" ,kconfigwidgets)
527 ("kcoreaddons" ,kcoreaddons)
528 ("ki18n" ,ki18n)
529 ("kio" ,kio)
530 ("ktextwidgets" ,ktextwidgets)
531 ("kxmlgui" ,kxmlgui)
532 ("oxygen-icons" ,oxygen-icons) ;; default icon set
533 ("qtbase" ,qtbase)))
534 (home-page "https://kde.org/applications/utilities/org.kde.sweeper")
535 (synopsis "Temporary file and history cleaner")
536 (description "
537 Sweeper helps to clean unwanted traces the user leaves on the system and to
538 regain disk space removing unused temporary files.
539 It can quickly remove temporary information, such as web page cookies,
540 browser history, or the list of recently-opened documents. It helps provide
541 additional privacy on a system shared between multiple users.")
542 (license license:lgpl2.0+ )))