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>
5 ;;; This file is part of GNU Guix.
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.
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.
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/>.
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 kde)
28 #:use-module (gnu packages kde-frameworks)
29 #:use-module (gnu packages kde-plasma)
30 #:use-module (gnu packages qt)
31 #:use-module (gnu packages samba)
32 #:use-module (gnu packages xorg))
41 (uri (string-append "mirror://kde/stable/release-service/" version
42 "/src/kate-" version ".tar.xz"))
44 (base32 "0nrby307syrqlxrf9lwdzc9c15ifw47418qwszqwg345ma2pww7i"))))
45 (build-system qt-build-system)
47 `(("extra-cmake-modules" ,extra-cmake-modules)
48 ("kdoctools" ,kdoctools)))
50 `(("kactivities" ,kactivities)
53 ("kdbusaddons" ,kdbusaddons)
54 ("kguiaddons" ,kguiaddons)
56 ("kiconthemes" ,kiconthemes)
57 ("kitemmodels" ,kitemmodels)
58 ("threadweaver" ,threadweaver)
59 ("knewstuff" ,knewstuff)
61 ("kjobwidgets" ,kjobwidgets)
63 ("ktexteditor" ,ktexteditor)
65 ("plasma-framework" ,plasma-framework)
66 ("kwindowsystem" ,kwindowsystem)
68 ("oxygen-icons" ,oxygen-icons) ;; default icon set
70 ("qtscript" ,qtscript)))
72 `(#:tests? #f ;; 2/7 tests fail
74 (modify-phases %standard-phases
75 (add-before 'check 'check-setup
77 ;; make Qt render "offscreen", required for tests
78 (setenv "QT_QPA_PLATFORM" "offscreen")
79 (setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")
81 (home-page "https://kate-editor.org/")
82 (synopsis "Multi-document, multi-view text editor")
83 (description "Kate is a powerful text editor that can open multiple files
86 With a built-in terminal, syntax highlighting, and tabbed sidebar, it performs
87 as a lightweight but capable development environment. Kate's many tools,
88 plugins, and scripts make it highly customizable.
90 Kate's features include:
92 @item Multiple saved sessions, each with numerous files
93 @item Scriptable syntax highlighting, indentation, and code-folding
94 @item Configurable templates and text snippets
95 @item Symbol viewers for C, C++, and Python
96 @item XML completion and validation
98 (license ;; GPL for programs, LGPL for libraries
99 (list license:gpl2+ license:lgpl2.0))))
108 (uri (string-append "mirror://kde/stable/release-service/" version
109 "/src/kmag-" version ".tar.xz"))
111 (base32 "18lk8i2r90gvw8q5j179xgpniih92mwk06krk7w4jv98yinqf6m5"))))
112 (build-system qt-build-system)
114 `(("extra-cmake-modules" ,extra-cmake-modules)
115 ("kdoctools" ,kdoctools)))
120 ("oxygen-icons" ,oxygen-icons) ;; default icon set
121 ;; TODO: QAccessibilityClient - libqaccessibilityclien
123 (home-page "https://kde.org/applications/utilities/org.kde.kmag")
124 (synopsis "Screen magnifier tool")
125 (description "You can use KMagnifier to magnify a part of the screen just
126 as you would use a lens to magnify a newspaper fine-print or a photograph.
127 This application is useful for a variety of people: from researchers to
128 artists to web-designers to people with low vision.")
129 (license ;; GPL for programs, FDL for documentation
130 (list license:gpl2+ license:fdl1.2+))))
132 (define-public kmousetool
139 (uri (string-append "mirror://kde/stable/release-service/" version
140 "/src/kmousetool-" version ".tar.xz"))
142 (base32 "01j6bx8zihns4ip8maj0gb3w3bhx1ha2ljhfmsm6lcyay531ay98"))))
143 (build-system qt-build-system)
145 `(("extra-cmake-modules" ,extra-cmake-modules)
146 ("kdoctools" ,kdoctools)))
149 ("kcoreaddons" ,kcoreaddons)
150 ("kconfigwidgets", kconfigwidgets)
151 ("kdbusaddons" ,kdbusaddons)
153 ("kiconthemes" ,kiconthemes)
154 ("knotifications" ,knotifications)
156 ("kwindowsystem" ,kwindowsystem)
160 ("oxygen-icons" ,oxygen-icons) ;; default icon set
162 (home-page "https://kde.org/applications/utilities/org.kde.kmousetool")
163 (synopsis "Automatic mouse click and mouse manipulation tool for the
165 (description "KMouseTool clicks the mouse whenever the mouse cursor pauses
166 briefly. It was designed to help those with repetitive strain injuries, for
167 whom pressing buttons hurts.")
168 (license ;; GPL for programs, FDL for documentation
169 (list license:gpl2+ license:fdl1.2+))))
171 (define-public kmouth
178 (uri (string-append "mirror://kde/stable/release-service/" version
179 "/src/kmouth-" version ".tar.xz"))
181 (base32 "1afgxlys9mvmc3rd33g7gchfb0ylx83x3x0a0qf3dra6cpgsgcg7"))))
182 (build-system qt-build-system)
184 `(("extra-cmake-modules" ,extra-cmake-modules)
185 ("kdoctools" ,kdoctools)))
187 `(("kcompletion" ,kcompletion)
189 ("kconfigwidgets", kconfigwidgets)
190 ("kcoreaddons" ,kcoreaddons)
194 ("kwidgetsaddons" ,kwidgetsaddons)
196 ("oxygen-icons" ,oxygen-icons) ;; default icon set
198 ("qtspeech" ,qtspeech)))
199 (home-page "https://kde.org/applications/utilities/org.kde.kmouth")
200 (synopsis "Type-and-say frontend for speech synthesizers")
201 (description "KMouth is a program which enables persons that cannot speak
202 to let their computer speak, e.g. mutal people or people who have lost their
203 voice. It has a text input field and speaks the sentences that you enter. It
204 also has support for user defined phrasebooks.
206 It includes a history of spoken sentences from which the user can select
207 sentences to be re-spoken.")
208 (license ;; GPL for programs, FDL for documentation
209 (list license:gpl2+ license:fdl1.2+))))
211 (define-public kronometer
218 (uri (string-append "mirror://kde/stable/kronometer/" version
219 "/src/kronometer-" version ".tar.xz"))
221 (base32 "05hs8729a3aqjpwmn2xdf2sriacrll4sj4ax3lm4s1ravj09n9bm"))))
222 (build-system qt-build-system)
224 `(("extra-cmake-modules" ,extra-cmake-modules)
225 ("kdoctools" ,kdoctools)))
229 ("kconfigwidgets", kconfigwidgets)
230 ("kcoreaddons" ,kcoreaddons)
233 ("kwidgetsaddons" ,kwidgetsaddons)
235 ("oxygen-icons" ,oxygen-icons) ;; default icon set
237 (home-page "https://kde.org/applications/utilities/org.kde.kronometer")
238 (synopsis "Simple stopwatch application")
239 (description "Kronometer is a stopwatch application. It features the
240 basic stopwatch actions (pause, resume, reset, laps), as well as the ability
241 to save the times and resume them later.")
242 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
245 (define-public krusader
252 (uri (string-append "mirror://kde/stable/krusader/" version
253 "/krusader-" version ".tar.xz"))
255 (base32 "02b1jz5a7cjr13v6c7fczrhs1xmg1krnva5fxk8x2bf4nd1rm8s1"))))
256 (build-system qt-build-system)
258 `(("extra-cmake-modules" ,extra-cmake-modules)
259 ("kdoctools" ,kdoctools)))
261 `(("karchive" ,karchive)
262 ("kbookmarks" ,kbookmarks)
264 ("kcompletion" ,kcompletion)
266 ("kcoreaddons" ,kcoreaddons)
267 ("kguiaddons" ,kguiaddons)
269 ("kiconthemes" ,kiconthemes)
271 ("kitemviews" ,kitemviews)
272 ("knotifications" ,knotifications)
274 ("ktextwidgets" ,ktextwidgets)
276 ("kwidgetsaddons" ,kwidgetsaddons)
277 ("kwindowsystem" ,kwindowsystem)
279 ("oxygen-icons" ,oxygen-icons) ;; default icon set
283 (home-page "https://www.krusader.org")
284 (synopsis "Twin-panel (commander-style) file manager")
285 (description "Krusader is a simple, easy, yet powerful,
286 twin-panel (commander-style) file manager, similar to Midnight Commander or
289 It provides all the file management features you could possibly want. Plus:
290 extensive archive handling, mounted filesystem support, FTP, advanced search
291 module, an internal viewer/editor, directory synchronisation, file content
292 comparisons, powerful batch renaming and much much more. It supports a wide
293 variety of archive formats and can handle other KIO slaves such as smb or
296 Almost completely customizable, Krusader is very user friendly, fast and looks
297 great on your desktop.")
298 (license license:gpl2+)))
300 (define-public okteta
307 ;; TODO: Why is this not in "stable" anymore
308 (uri (string-append "mirror://kde/Attic/applications/" version
309 "/src/okteta-" version ".tar.xz"))
311 (base32 "03wsv83l1cay2dpcsksad124wzan7kh8zxdw1h0yicn398kdbck4"))))
312 (build-system qt-build-system)
314 `(("extra-cmake-modules" ,extra-cmake-modules)
315 ("kdoctools" ,kdoctools)
317 ("shared-mime-info" ,shared-mime-info)))
319 `(("kbookmarks" ,kbookmarks)
320 ("kcmutils" ,kcmutils)
323 ("kcompletion" ,kcompletion)
324 ("kconfigwidgets" ,kconfigwidgets)
325 ("kdbusaddons" ,kdbusaddons)
327 ("kiconthemes" ,kiconthemes)
329 ("knewstuff" ,knewstuff)
331 ("kservice" ,kservice)
332 ("kwidgetsaddons" ,kwidgetsaddons)
334 ("oxygen-icons" ,oxygen-icons) ;; default icon set
337 ("qtscript" ,qtscript)))
340 (modify-phases %standard-phases
341 (add-before 'check 'check-setup
343 ;; make Qt render "offscreen", required for tests
344 (setenv "QT_QPA_PLATFORM" "offscreen")
345 (setenv "HOME" "/tmp/dummy-home")
347 (home-page "https://kde.org/applications/utilities/org.kde.okteta")
348 (synopsis "Hexadecimal editor for binary files")
349 (description "Okteta is a simple editor for the raw data of files. This
350 type of program is also called hex editor or binary editor.
352 The data is displayed in the traditional view with two columns: one with the
353 numeric values and one with the assigned characters. Editing can be done both
354 in the value column and the character column. Besides the usual editing
355 capabilities Okteta also brings a small set of tools, like a table listing
356 decodings into common simple data types, a table listing all possible bytes
357 with its character and value equivalents, a info view with a statistic and a
358 filter tool. All modifications to the data loaded can be endlessly undone or
360 (license ;; GPL for programs, LGPL for libraries, FDL for documentation
361 (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
363 (define-public rsibreak
370 (uri (string-append "mirror://kde//stable/rsibreak/0.12/"
371 "rsibreak-" version ".tar.xz"))
373 (base32 "09axg6gbmpnxsk88mdjbxxvfaj5af7xaf1gmnr17b0506zcfgwhv"))))
374 (build-system qt-build-system)
376 `(("extra-cmake-modules" ,extra-cmake-modules)
377 ("kdoctools" ,kdoctools)))
381 ("kconfigwidgets" ,kconfigwidgets)
382 ("kcoreaddons" ,kcoreaddons)
384 ("kdbusaddons" ,kdbusaddons)
386 ("kiconthemes" ,kiconthemes)
387 ("kidletime" ,kidletime)
388 ("knotifications" ,knotifications)
389 ("knotifyconfig" ,knotifyconfig)
390 ("ktextwidgets" ,ktextwidgets)
391 ("kwindowsystem" ,kwindowsystem)
393 ("oxygen-icons" ,oxygen-icons) ;; default icon set
395 (home-page "https://kde.org/applications/utilities/org.kde.rsibreak")
396 (synopsis "Assists in the Recovery and Prevention of Repetitive Strain
398 (description "Repetitive Strain Injury is an illness which can occur as a
399 result of working with a mouse and keyboard. This utility can be used to
400 remind you to take a break now and then.")
401 (license ;; GPL for programs, FDL for documentation
402 (list license:gpl2+ license:fdl1.2+))))
411 (uri (string-append "https://sourceforge.net/projects/smb4k/files/"
412 version "/smb4k-" version ".tar.xz/download"))
414 (base32 "0hz6nfd845bykf78s4g2qs77szl96gy6g8rpg44pqd39a0k0xbh7"))))
415 (build-system qt-build-system)
417 `(("extra-cmake-modules" ,extra-cmake-modules)
418 ("kdoctools" ,kdoctools)))
422 ("kconfigwidgets" ,kconfigwidgets)
423 ("kcompletion" ,kcompletion)
424 ("kcoreaddons" ,kcoreaddons)
426 ("kdbusaddons" ,kdbusaddons)
428 ("kiconthemes" ,kiconthemes)
430 ("kjobwidgets" ,kjobwidgets)
431 ("knotifications" ,knotifications)
432 ("knotifyconfig" ,knotifyconfig)
433 ("ktextwidgets" ,ktextwidgets)
435 ("kwidgetsaddons" ,kwidgetsaddons)
436 ("kwindowsystem" ,kwindowsystem)
438 ("libsmbclient" ,samba)
439 ("oxygen-icons" ,oxygen-icons) ;; default icon set
440 ("plasma-framework" ,plasma-framework)
442 ("qtdeclarative" ,qtdeclarative)
444 (home-page "https://kde.org/applications/utilities/org.kde.smb4k")
445 (synopsis "Samba (SMB) share advanced browser")
446 (description "Smb4K is an network neighborhood browser for the KDE
447 Software Compilation and a frontend to the programs of the Samba software
452 @item Scanning for (active) workgroups, hosts, and shares
453 @item Support of the CIFS (Linux) and SMBFS (FreeBSD) file system
454 @item Mounting and unmounting of shares (using the KAuth framework)
455 @item Access to the files of a mounted share using a file manager or terminal
456 @item Auto-detection of external mounts and unmounts
457 @item Remounting of previously used shares on program start
458 @item Miscellaneous infos about remote network items and mounted shares
460 @item WINS server support
461 @item Preview of the contents of a share
462 @item Several methods to look up the initial list of workgroups and domains
464 @item Special handling of homes shares
465 @item Ability to bookmark favorite shares and organize them in groups
466 @item System tray widget
467 @item Support of advanced Samba options
468 @item Support of printer shares
469 @item KWallet support
470 @item Synchronization of a remote share with a local copy and vice versa
471 @item Ability to define custom options for individual servers and shares
472 @item Laptop support through the Solid hardware device framework
474 (license license:gpl2+)))
476 (define-public sweeper
483 (uri (string-append "mirror://kde/stable/release-service/" version
484 "/src/sweeper-" version ".tar.xz"))
486 (base32 "1az3c2khnh51bbmqpamj4p26d3a0ff4l5rd3vcrylg94mk7wgh59"))))
487 (build-system qt-build-system)
489 `(("extra-cmake-modules" ,extra-cmake-modules)
490 ("kdoctools" ,kdoctools)))
492 `(("kactivities-stats" ,kactivities-stats)
493 ("kbookmarks" ,kbookmarks)
496 ("kconfigwidgets" ,kconfigwidgets)
497 ("kcoreaddons" ,kcoreaddons)
500 ("ktextwidgets" ,ktextwidgets)
502 ("oxygen-icons" ,oxygen-icons) ;; default icon set
504 (home-page "https://kde.org/applications/utilities/org.kde.sweeper")
505 (synopsis "Temporary file and history cleaner")
507 Sweeper helps to clean unwanted traces the user leaves on the system and to
508 regain disk space removing unused temporary files.
509 It can quickly remove temporary information, such as web page cookies,
510 browser history, or the list of recently-opened documents. It helps provide
511 additional privacy on a system shared between multiple users.")
512 (license license:lgpl2.0+ )))