gnu: fontconfig: Add replacement with font-dejavu instead of gs-fonts.
[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 (home-page "https://kde.org/applications/utilities/org.kde.kronometer")
237 (synopsis "Simple stopwatch application")
238 (description "Kronometer is a stopwatch application. It features the
239 basic stopwatch actions (pause, resume, reset, laps), as well as the ability
240 to save the times and resume them later.")
241 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
242 license:gpl2+)))
243
244 (define-public krusader
245 (package
246 (name "krusader")
247 (version "2.7.2")
248 (source
249 (origin
250 (method url-fetch)
251 (uri (string-append "mirror://kde/stable/krusader/" version
252 "/krusader-" version ".tar.xz"))
253 (sha256
254 (base32 "02b1jz5a7cjr13v6c7fczrhs1xmg1krnva5fxk8x2bf4nd1rm8s1"))))
255 (build-system qt-build-system)
256 (native-inputs
257 `(("extra-cmake-modules" ,extra-cmake-modules)
258 ("kdoctools" ,kdoctools)))
259 (inputs
260 `(("karchive" ,karchive)
261 ("kbookmarks" ,kbookmarks)
262 ("kcodecs" ,kcodecs)
263 ("kcompletion" ,kcompletion)
264 ("kconfig" ,kconfig)
265 ("kcoreaddons" ,kcoreaddons)
266 ("kguiaddons" ,kguiaddons)
267 ("ki18n" ,ki18n)
268 ("kiconthemes" ,kiconthemes)
269 ("kio" ,kio)
270 ("kitemviews" ,kitemviews)
271 ("knotifications" ,knotifications)
272 ("kparts" ,kparts)
273 ("ktextwidgets" ,ktextwidgets)
274 ("kwallet" ,kwallet)
275 ("kwidgetsaddons" ,kwidgetsaddons)
276 ("kwindowsystem" ,kwindowsystem)
277 ("kxmlgui" ,kxmlgui)
278 ("oxygen-icons" ,oxygen-icons) ;; default icon set
279 ("qtbase" ,qtbase)
280 ("solid" ,solid)
281 ("zlib" ,zlib)))
282 (home-page "https://www.krusader.org")
283 (synopsis "Twin-panel (commander-style) file manager")
284 (description "Krusader is a simple, easy, yet powerful,
285 twin-panel (commander-style) file manager, similar to Midnight Commander or
286 Total Commander
287
288 It provides all the file management features you could possibly want. Plus:
289 extensive archive handling, mounted filesystem support, FTP, advanced search
290 module, an internal viewer/editor, directory synchronisation, file content
291 comparisons, powerful batch renaming and much much more. It supports a wide
292 variety of archive formats and can handle other KIO slaves such as smb or
293 fish.
294
295 Almost completely customizable, Krusader is very user friendly, fast and looks
296 great on your desktop.")
297 (license license:gpl2+)))
298
299 (define-public okteta
300 (package
301 (name "okteta")
302 (version "17.12.3")
303 (source
304 (origin
305 (method url-fetch)
306 ;; TODO: Why is this not in "stable" anymore
307 (uri (string-append "mirror://kde/Attic/applications/" version
308 "/src/okteta-" version ".tar.xz"))
309 (sha256
310 (base32 "03wsv83l1cay2dpcsksad124wzan7kh8zxdw1h0yicn398kdbck4"))))
311 (build-system qt-build-system)
312 (native-inputs
313 `(("extra-cmake-modules" ,extra-cmake-modules)
314 ("kdoctools" ,kdoctools)
315 ("qttools" ,qttools)
316 ("shared-mime-info" ,shared-mime-info)))
317 (inputs
318 `(("kbookmarks" ,kbookmarks)
319 ("kcmutils" ,kcmutils)
320 ("kcodecs" ,kcodecs)
321 ("kcrash" ,kcrash)
322 ("kcompletion" ,kcompletion)
323 ("kconfigwidgets" ,kconfigwidgets)
324 ("kdbusaddons" ,kdbusaddons)
325 ("ki18n" ,ki18n)
326 ("kiconthemes" ,kiconthemes)
327 ("kio" ,kio)
328 ("knewstuff" ,knewstuff)
329 ("kparts" ,kparts)
330 ("kservice" ,kservice)
331 ("kwidgetsaddons" ,kwidgetsaddons)
332 ("kxmlgui" ,kxmlgui)
333 ("oxygen-icons" ,oxygen-icons) ;; default icon set
334 ("qca" ,qca)
335 ("qtbase" ,qtbase)
336 ("qtscript" ,qtscript)))
337 (arguments
338 `(#:phases
339 (modify-phases %standard-phases
340 (add-before 'check 'check-setup
341 (lambda _
342 ;; make Qt render "offscreen", required for tests
343 (setenv "QT_QPA_PLATFORM" "offscreen")
344 (setenv "HOME" "/tmp/dummy-home")
345 #t)))))
346 (home-page "https://kde.org/applications/utilities/org.kde.okteta")
347 (synopsis "Hexadecimal editor for binary files")
348 (description "Okteta is a simple editor for the raw data of files. This
349 type of program is also called hex editor or binary editor.
350
351 The data is displayed in the traditional view with two columns: one with the
352 numeric values and one with the assigned characters. Editing can be done both
353 in the value column and the character column. Besides the usual editing
354 capabilities Okteta also brings a small set of tools, like a table listing
355 decodings into common simple data types, a table listing all possible bytes
356 with its character and value equivalents, a info view with a statistic and a
357 filter tool. All modifications to the data loaded can be endlessly undone or
358 redone.")
359 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
360 (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
361
362 (define-public rsibreak
363 (package
364 (name "rsibreak")
365 (version "0.12.11")
366 (source
367 (origin
368 (method url-fetch)
369 (uri (string-append "mirror://kde//stable/rsibreak/0.12/"
370 "rsibreak-" version ".tar.xz"))
371 (sha256
372 (base32 "09axg6gbmpnxsk88mdjbxxvfaj5af7xaf1gmnr17b0506zcfgwhv"))))
373 (build-system qt-build-system)
374 (native-inputs
375 `(("extra-cmake-modules" ,extra-cmake-modules)
376 ("kdoctools" ,kdoctools)))
377 (inputs
378 `(("kauth" ,kauth)
379 ("kconfig" ,kconfig)
380 ("kconfigwidgets" ,kconfigwidgets)
381 ("kcoreaddons" ,kcoreaddons)
382 ("kcrash" ,kcrash)
383 ("kdbusaddons" ,kdbusaddons)
384 ("ki18n" ,ki18n)
385 ("kiconthemes" ,kiconthemes)
386 ("kidletime" ,kidletime)
387 ("knotifications" ,knotifications)
388 ("knotifyconfig" ,knotifyconfig)
389 ("ktextwidgets" ,ktextwidgets)
390 ("kwindowsystem" ,kwindowsystem)
391 ("kxmlgui" ,kxmlgui)
392 ("oxygen-icons" ,oxygen-icons) ;; default icon set
393 ("qtbase" ,qtbase)))
394 (home-page "https://kde.org/applications/utilities/org.kde.rsibreak")
395 (synopsis "Assists in the Recovery and Prevention of Repetitive Strain
396 Injury")
397 (description "Repetitive Strain Injury is an illness which can occur as a
398 result of working with a mouse and keyboard. This utility can be used to
399 remind you to take a break now and then.")
400 (license ;; GPL for programs, FDL for documentation
401 (list license:gpl2+ license:fdl1.2+))))
402
403 (define-public smb4k
404 (package
405 (name "smb4k")
406 (version "3.0.2")
407 (source
408 (origin
409 (method url-fetch)
410 (uri (string-append "https://sourceforge.net/projects/smb4k/files/"
411 version "/smb4k-" version ".tar.xz/download"))
412 (sha256
413 (base32 "1daajaj8qhxkzz8dsaracwi49z4i57466h6qnqnh2ir2l54q00ir"))))
414 (build-system qt-build-system)
415 (native-inputs
416 `(("extra-cmake-modules" ,extra-cmake-modules)
417 ("kdoctools" ,kdoctools)))
418 (inputs
419 `(("kauth" ,kauth)
420 ("kconfig" ,kconfig)
421 ("kconfigwidgets" ,kconfigwidgets)
422 ("kcompletion" ,kcompletion)
423 ("kcoreaddons" ,kcoreaddons)
424 ("kcrash" ,kcrash)
425 ("kdbusaddons" ,kdbusaddons)
426 ("ki18n" ,ki18n)
427 ("kiconthemes" ,kiconthemes)
428 ("kio" ,kio)
429 ("kjobwidgets" ,kjobwidgets)
430 ("knotifications" ,knotifications)
431 ("knotifyconfig" ,knotifyconfig)
432 ("ktextwidgets" ,ktextwidgets)
433 ("kwallet" ,kwallet)
434 ("kwidgetsaddons" ,kwidgetsaddons)
435 ("kwindowsystem" ,kwindowsystem)
436 ("kxmlgui" ,kxmlgui)
437 ("libsmbclient" ,samba)
438 ("oxygen-icons" ,oxygen-icons) ;; default icon set
439 ("plasma-framework" ,plasma-framework)
440 ("qtbase" ,qtbase)
441 ("qtdeclarative" ,qtdeclarative)
442 ("solid" ,solid)))
443 (home-page "https://kde.org/applications/utilities/org.kde.smb4k")
444 (synopsis "Samba (SMB) share advanced browser")
445 (description "Smb4K is an network neighborhood browser for the KDE
446 Software Compilation and a frontend to the programs of the Samba software
447 suite.
448
449 Features:
450 @itemize
451 @item Scanning for (active) workgroups, hosts, and shares
452 @item Support of the CIFS (Linux) and SMBFS (FreeBSD) file system
453 @item Mounting and unmounting of shares (using the KAuth framework)
454 @item Access to the files of a mounted share using a file manager or terminal
455 @item Auto-detection of external mounts and unmounts
456 @item Remounting of previously used shares on program start
457 @item Miscellaneous infos about remote network items and mounted shares
458 @item Network search
459 @item WINS server support
460 @item Preview of the contents of a share
461 @item Several methods to look up the initial list of workgroups and domains
462 @item Default login
463 @item Special handling of homes shares
464 @item Ability to bookmark favorite shares and organize them in groups
465 @item System tray widget
466 @item Support of advanced Samba options
467 @item Support of printer shares
468 @item KWallet support
469 @item Synchronization of a remote share with a local copy and vice versa
470 @item Ability to define custom options for individual servers and shares
471 @item Laptop support through the Solid hardware device framework
472 @end itemize")
473 (license license:gpl2+)))
474
475 (define-public sweeper
476 (package
477 (name "sweeper")
478 (version "19.08.3")
479 (source
480 (origin
481 (method url-fetch)
482 (uri (string-append "mirror://kde/stable/applications/" version
483 "/src/sweeper-" version ".tar.xz"))
484 (sha256
485 (base32 "1gn87yxmhi7rs82jq7y89bvlx33xbl9wq8kr96pcz423khqvjl84"))))
486 (build-system qt-build-system)
487 (native-inputs
488 `(("extra-cmake-modules" ,extra-cmake-modules)
489 ("kdoctools" ,kdoctools)))
490 (inputs
491 `(("kactivities-stats" ,kactivities-stats)
492 ("kbookmarks" ,kbookmarks)
493 ("kcrash" ,kcrash)
494 ("kconfig" ,kconfig)
495 ("kconfigwidgets" ,kconfigwidgets)
496 ("kcoreaddons" ,kcoreaddons)
497 ("ki18n" ,ki18n)
498 ("kio" ,kio)
499 ("ktextwidgets" ,ktextwidgets)
500 ("kxmlgui" ,kxmlgui)
501 ("oxygen-icons" ,oxygen-icons) ;; default icon set
502 ("qtbase" ,qtbase)))
503 (home-page "https://kde.org/applications/utilities/org.kde.sweeper")
504 (synopsis "Temporary file and history cleaner")
505 (description "
506 Sweeper helps to clean unwanted traces the user leaves on the system and to
507 regain disk space removing unused temporary files.
508 It can quickly remove temporary information, such as web page cookies,
509 browser history, or the list of recently-opened documents. It helps provide
510 additional privacy on a system shared between multiple users.")
511 (license license:lgpl2.0+ )))