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