gnu: emacs-svg-icon: Fix grammar.
[jackhill/guix/guix.git] / gnu / packages / lxqt.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
4 ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
5 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
6 ;;; Copyright © 2017 Nikita <nikita@n0.is>
7 ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
8 ;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net>
9 ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
10 ;;; Copyright © 2019, 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
11 ;;; Copyright © 2020 Fakhri Sajadi <f.sajadi@pantherx.org>
12 ;;; Copyright © 2020 André Batista <nandre@riseup.net>
13 ;;;
14 ;;; This file is part of GNU Guix.
15 ;;;
16 ;;; GNU Guix is free software; you can redistribute it and/or modify it
17 ;;; under the terms of the GNU General Public License as published by
18 ;;; the Free Software Foundation; either version 3 of the License, or (at
19 ;;; your option) any later version.
20 ;;;
21 ;;; GNU Guix is distributed in the hope that it will be useful, but
22 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
23 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
24 ;;; GNU General Public License for more details.
25 ;;;
26 ;;; You should have received a copy of the GNU General Public License
27 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
28
29 (define-module (gnu packages lxqt)
30 #:use-module (guix download)
31 #:use-module (guix git-download)
32 #:use-module ((guix licenses) #:prefix license:)
33 #:use-module (guix packages)
34 #:use-module (guix utils)
35 #:use-module (guix build-system cmake)
36 #:use-module (guix build-system gnu)
37 #:use-module (guix build-system trivial)
38 #:use-module (gnu packages)
39 #:use-module (gnu packages admin)
40 #:use-module (gnu packages compression)
41 #:use-module (gnu packages documentation)
42 #:use-module (gnu packages compton)
43 #:use-module (gnu packages fonts)
44 #:use-module (gnu packages freedesktop)
45 #:use-module (gnu packages glib)
46 #:use-module (gnu packages gnome)
47 #:use-module (gnu packages gtk)
48 #:use-module (gnu packages image)
49 #:use-module (gnu packages kde-frameworks)
50 #:use-module (gnu packages kde-plasma)
51 #:use-module (gnu packages linux)
52 #:use-module (gnu packages perl)
53 #:use-module (gnu packages lxde)
54 #:use-module (gnu packages maths)
55 #:use-module (gnu packages openbox)
56 #:use-module (gnu packages pcre)
57 #:use-module (gnu packages photo)
58 #:use-module (gnu packages pkg-config)
59 #:use-module (gnu packages polkit)
60 #:use-module (gnu packages pulseaudio)
61 #:use-module (gnu packages qt)
62 #:use-module (gnu packages textutils)
63 #:use-module (gnu packages xdisorg)
64 #:use-module (gnu packages xml)
65 #:use-module (gnu packages xorg))
66
67
68 ;; Third party libraries
69
70 (define-public libdbusmenu-qt
71 (package
72 (name "libdbusmenu-qt")
73 (version "0.9.3+16.04.20160218-0ubuntu1")
74 (source
75 (origin
76 (method git-fetch)
77 ;; Download from github rather than launchpad because launchpad trunk
78 ;; tarball hash is not deterministic.
79 (uri (git-reference
80 (url "https://github.com/unity8-team/libdbusmenu-qt")
81 (commit version)))
82 (file-name (git-file-name name version))
83 (sha256
84 (base32 "0b7ii1cvmpcyl79gqal9c3va9m55h055s4hx7fpxkhhqs9463ggg"))))
85 (build-system cmake-build-system)
86 (arguments
87 ;; XXX: Tests require a dbus session and some icons.
88 '(#:tests? #f))
89 (native-inputs
90 `(("doxygen" ,doxygen)))
91 (inputs
92 `(("qtbase" ,qtbase)))
93 (home-page "https://launchpad.net/libdbusmenu-qt")
94 (synopsis "Qt implementation of the DBusMenu spec")
95 (description "This library provides a Qt implementation of the DBusMenu
96 protocol. The DBusMenu protocol makes it possible for applications to export
97 and import their menus over DBus.")
98 (license license:lgpl2.1+)))
99
100 (define-public libstatgrab
101 (package
102 (name "libstatgrab")
103 (version "0.92")
104 (source
105 (origin
106 (method url-fetch)
107 (uri (string-append "https://ftp.i-scream.org/pub/i-scream/libstatgrab/"
108 name "-" version ".tar.gz"))
109 (sha256
110 (base32 "15m1sl990l85ijf8pnc6hdfha6fqyiq74mijrzm3xz4zzxm91wav"))))
111 (build-system gnu-build-system)
112 (arguments
113 '(#:configure-flags '("--enable-tests")))
114 (native-inputs
115 ;; For testing.
116 `(("perl" ,perl)))
117 (home-page "https://www.i-scream.org/libstatgrab/")
118 (synopsis "Provides access to statistics about the system")
119 (description "libstatgrab is a library that provides cross platform access
120 to statistics about the system on which it's run.")
121 ;; Libraries are under LGPL2.1+, and programs under GPLv2+.
122 (license license:gpl2+)))
123
124
125 ;; Base
126
127 (define-public lxqt-build-tools
128 (package
129 (name "lxqt-build-tools")
130 (version "0.7.0")
131 (source
132 (origin
133 (method url-fetch)
134 (uri (string-append "https://github.com/lxqt/lxqt-build-tools/releases"
135 "/download/" version
136 "/lxqt-build-tools-" version ".tar.xz"))
137 (sha256
138 (base32 "147vdkc25mrlr0fy785yzwhm4gwjxa5xl3n3hljz4c97m531kzl5"))))
139 (build-system cmake-build-system)
140 (arguments
141 `(#:tests? #f ; no tests
142 #:configure-flags
143 ;; 'startlxqt' will add LXQT_DATA_DIR to XDG_DATA_DIRS,
144 ;; LXQT_ETC_XDG_DIR to XDG_CONFIG_DIRS, and 'lxqt-about' will report
145 ;; LXQT_ETC_XDG_DIR in its "Technical Info".
146 '("-DLXQT_DATA_DIR=/run/current-system/profile/share"
147 "-DLXQT_ETC_XDG_DIR=/run/current-system/profile/etc/xdg")))
148 (native-inputs
149 `(("pkg-config" ,pkg-config)
150 ("glib" ,glib)))
151 (inputs
152 `(("qtbase" ,qtbase)))
153 (synopsis "LXQt Build tools")
154 (description
155 "Lxqt-build-tools is providing several tools needed to build LXQt
156 itself as well as other components maintained by the LXQt project.")
157 (home-page "https://lxqt.github.io")
158 (license license:lgpl2.1+)))
159
160 (define-public libqtxdg
161 (package
162 (name "libqtxdg")
163 (version "3.5.0")
164 (source
165 (origin
166 (method url-fetch)
167 (uri (string-append
168 "https://github.com/lxqt/libqtxdg/releases/download/"
169 version "/libqtxdg-" version ".tar.xz"))
170 (sha256
171 (base32 "0g2mwipgl8737jhgqymjixvk745svh2rlini3qr92lrg60v9paa1"))))
172 (build-system cmake-build-system)
173 (arguments
174 '(#:configure-flags
175 '("-DBUILD_TESTS=ON"
176 "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=lib/qt5/plugins/iconengines")
177 #:phases
178 (modify-phases %standard-phases
179 (add-before 'check 'pre-check
180 (lambda _
181 ;; Run the tests offscreen.
182 (setenv "QT_QPA_PLATFORM" "offscreen")
183 #t)))))
184 (propagated-inputs
185 ;; required by Qt5XdgIconLoader.pc
186 `(("glib" ,glib)
187 ("qtbase" ,qtbase)
188 ("qtsvg" ,qtsvg)))
189 (native-inputs
190 `(("lxqt-build-tools" ,lxqt-build-tools)
191 ("pkg-config" ,pkg-config)))
192 (home-page "https://github.com/lxqt/libqtxdg")
193 (synopsis "Qt implementation of freedesktop.org xdg specifications")
194 (description "Libqtxdg implements the freedesktop.org xdg specifications
195 in Qt.")
196 (license license:lgpl2.1+)))
197
198 (define-public liblxqt
199 (package
200 (name "liblxqt")
201 (version "0.15.1")
202 (source
203 (origin
204 (method url-fetch)
205 (uri (string-append
206 "https://github.com/lxqt/" name "/releases/download/"
207 version "/" name "-" version ".tar.xz"))
208 (sha256
209 (base32 "0mg62gypjpmpjd3lr7rrvzmkkhli1vf5pri47hg76byz84vng4a9"))))
210 (build-system cmake-build-system)
211 (arguments
212 `(#:tests? #f ; no tests
213 #:phases
214 (modify-phases %standard-phases
215 (add-after 'unpack 'patch-source
216 (lambda _
217 (substitute* "CMakeLists.txt"
218 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
219 "DESTINATION \"share/polkit-1/actions"))
220 #t))
221 (add-after 'unpack 'patch-translations-dir
222 (lambda* (#:key outputs #:allow-other-keys)
223 (substitute* "CMakeLists.txt"
224 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
225 (string-append (assoc-ref outputs "out")
226 "/share/lxqt/translations")))
227 #t)))))
228 (inputs
229 `(("kwindowsystem" ,kwindowsystem)
230 ("libqtxdg" ,libqtxdg)
231 ("libxscrnsaver" ,libxscrnsaver)
232 ("polkit-qt" ,polkit-qt)
233 ("qtsvg" ,qtsvg)
234 ("qtx11extras" ,qtx11extras)))
235 (native-inputs
236 `(("lxqt-build-tools" ,lxqt-build-tools)
237 ("qttools" ,qttools)))
238 (home-page "https://lxqt.github.io")
239 (synopsis "Core utility library for all LXQt components")
240 (description "liblxqt provides the basic libraries shared by the
241 components of the LXQt desktop environment.")
242 (license license:lgpl2.1+)))
243
244 (define-public libsysstat
245 (package
246 (name "libsysstat")
247 (version "0.4.3")
248 (source
249 (origin
250 (method url-fetch)
251 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
252 version "/" name "-" version ".tar.xz"))
253 (sha256
254 (base32 "1s5s7skzy3sh4rlnfy7r0cg3r1scvp35ldd28bhnqjya99m7ip37"))))
255 (build-system cmake-build-system)
256 (arguments '(#:tests? #f)) ; no tests
257 (inputs
258 `(("qtbase" ,qtbase)))
259 (native-inputs
260 `(("lxqt-build-tools" ,lxqt-build-tools)))
261 (home-page "https://lxqt.github.io")
262 (synopsis "Library used to query system info and statistics")
263 (description "libsysstat is a library to query system information like CPU
264 and memory usage or network traffic.")
265 (license license:lgpl2.1+)))
266
267
268 ;; Core
269
270 (define-public lxqt-about
271 (package
272 (name "lxqt-about")
273 (version "0.15.0")
274 (source
275 (origin
276 (method url-fetch)
277 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
278 version "/" name "-" version ".tar.xz"))
279 (sha256
280 (base32 "0p24z1vykyp8dkhwaxxi4hw5150yv9a2ncc55vbwx4c6bmmibmsh"))))
281 (build-system cmake-build-system)
282 (inputs
283 `(("kwindowsystem" ,kwindowsystem)
284 ("liblxqt" ,liblxqt)
285 ("libqtxdg" ,libqtxdg)
286 ("qtbase" ,qtbase)
287 ("qtsvg" ,qtsvg)
288 ("qtx11extras" ,qtx11extras)))
289 (native-inputs
290 `(("lxqt-build-tools" ,lxqt-build-tools)
291 ("qttools" ,qttools)))
292 (arguments
293 '(#:tests? #f ; no tests
294 #:phases
295 (modify-phases %standard-phases
296 (add-before 'build 'setenv
297 (lambda _
298 (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
299 #t))
300 (add-after 'unpack 'patch-translations-dir
301 (lambda* (#:key outputs #:allow-other-keys)
302 (substitute* "CMakeLists.txt"
303 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
304 (string-append (assoc-ref outputs "out")
305 "/share/lxqt/translations")))
306 #t)))))
307 (home-page "https://lxqt.github.io")
308 (synopsis "Provides information about LXQt and the system")
309 (description "lxqt-about is a dialogue window providing information about
310 LXQt and the system it's running on.")
311 (license license:lgpl2.1+)))
312
313 (define-public lxqt-admin
314 (package
315 (name "lxqt-admin")
316 (version "0.15.0")
317 (source
318 (origin
319 (method url-fetch)
320 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
321 version "/" name "-" version ".tar.xz"))
322 (sha256
323 (base32 "1zal37hyzqimwsymmi3w15n1iq78g53754s8abc9ylkzc236xpfc"))))
324 (build-system cmake-build-system)
325 (inputs
326 `(("kwindowsystem" ,kwindowsystem)
327 ("liblxqt" ,liblxqt)
328 ("libqtxdg" ,libqtxdg)
329 ("polkit-qt" ,polkit-qt)
330 ("qtsvg" ,qtsvg)
331 ("qtx11extras" ,qtx11extras)))
332 (native-inputs
333 `(("lxqt-build-tools" ,lxqt-build-tools)
334 ("qttools" ,qttools)))
335 (arguments
336 '(#:tests? #f ; no tests
337 #:phases
338 (modify-phases %standard-phases
339 (add-after 'unpack 'patch-source
340 (lambda _
341 (substitute* "lxqt-admin-user/CMakeLists.txt"
342 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
343 "DESTINATION \"share/polkit-1/actions"))
344 #t))
345 (add-after 'unpack 'patch-translations-dir
346 (lambda* (#:key outputs #:allow-other-keys)
347 (substitute* '("lxqt-admin-time/CMakeLists.txt"
348 "lxqt-admin-user/CMakeLists.txt")
349 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
350 (string-append (assoc-ref outputs "out")
351 "/share/lxqt/translations")))
352 #t)))))
353 (home-page "https://lxqt.github.io")
354 (synopsis "LXQt system administration tool")
355 (description "lxqt-admin is providing two GUI tools to adjust settings of
356 the operating system LXQt is running on.")
357 (license license:lgpl2.1+)))
358
359 (define-public lxqt-config
360 (package
361 (name "lxqt-config")
362 (version "0.15.0")
363 (source
364 (origin
365 (method url-fetch)
366 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
367 version "/" name "-" version ".tar.xz"))
368 (sha256
369 (base32 "18fagd6ynmx74qw0pjkkg2n3v6s18n6lcsbj7lvfd4lkbcfnzqpb"))))
370 (build-system cmake-build-system)
371 (inputs
372 `(("eudev" ,eudev)
373 ("kwindowsystem" ,kwindowsystem)
374 ("libkscreen" ,libkscreen)
375 ("liblxqt" ,liblxqt)
376 ("libqtxdg" ,libqtxdg)
377 ("libxcursor" ,libxcursor)
378 ("libxi" ,libxi)
379 ("qtbase" ,qtbase)
380 ("qtsvg" ,qtsvg)
381 ("qtx11extras" ,qtx11extras)
382 ("solid" ,solid)
383 ("xf86-input-libinput" ,xf86-input-libinput)
384 ("xkeyboard-config" ,xkeyboard-config)
385 ("zlib" ,zlib)))
386 (native-inputs
387 `(("pkg-config" ,pkg-config)
388 ("lxqt-build-tools" ,lxqt-build-tools)
389 ("qttools" ,qttools)))
390 (arguments
391 '(#:tests? #f ; no tests
392 #:phases
393 (modify-phases %standard-phases
394 (add-after 'unpack 'patch-source
395 (lambda _
396 (substitute* '("src/CMakeLists.txt")
397 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
398 "DESTINATION \"etc/xdg"))
399 #t))
400 (add-after 'unpack 'set-xkeyboard-config-file-name
401 (lambda* (#:key inputs #:allow-other-keys)
402 ;; Set the file name to xkeyboard-config.
403 (let ((xkb (assoc-ref inputs "xkeyboard-config")))
404 (substitute* "lxqt-config-input/keyboardlayoutconfig.h"
405 (("/usr/share/X11/xkb/rules/base.lst")
406 (string-append xkb "/share/X11/xkb/rules/base.lst")))
407 #t)))
408 (add-after 'unpack 'patch-translations-dir
409 (lambda* (#:key outputs #:allow-other-keys)
410 (substitute* '("lxqt-config-file-associations/CMakeLists.txt"
411 "lxqt-config-brightness/CMakeLists.txt"
412 "lxqt-config-appearance/CMakeLists.txt"
413 "lxqt-config-locale/CMakeLists.txt"
414 "lxqt-config-monitor/CMakeLists.txt"
415 "lxqt-config-input/CMakeLists.txt"
416 "liblxqt-config-cursor/CMakeLists.txt"
417 "src/CMakeLists.txt")
418 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
419 (string-append (assoc-ref outputs "out")
420 "/share/lxqt/translations")))
421 #t)))))
422 (home-page "https://lxqt.github.io")
423 (synopsis "Tools to configure LXQt and the underlying operating system")
424 (description "lxqt-config is providing several tools involved in the
425 configuration of both LXQt and the underlying operating system.")
426 (license license:lgpl2.1+)))
427
428 (define-public lxqt-globalkeys
429 (package
430 (name "lxqt-globalkeys")
431 (version "0.15.0")
432 (source
433 (origin
434 (method url-fetch)
435 (uri (string-append "https://github.com/lxqt/lxqt-globalkeys/"
436 "releases/download/" version "/"
437 "lxqt-globalkeys-" version ".tar.xz"))
438 (sha256
439 (base32 "1wfvpvy32p60j7xibfa30skzxx2187qrsqxm1npabj1y5bva2m6f"))))
440 (build-system cmake-build-system)
441 (inputs
442 `(("kwindowsystem" ,kwindowsystem)
443 ("liblxqt" ,liblxqt)
444 ("libqtxdg" ,libqtxdg)
445 ("qtbase" ,qtbase)
446 ("qtsvg" ,qtsvg)
447 ("qtx11extras" ,qtx11extras)))
448 (native-inputs
449 `(("pkg-config" ,pkg-config)
450 ("qttools" ,qttools)
451 ("lxqt-build-tools" ,lxqt-build-tools)))
452 (arguments
453 '(#:tests? #f ; no tests
454 #:phases
455 (modify-phases %standard-phases
456 (add-after 'unpack 'patch-source
457 (lambda _
458 (substitute* '("autostart/CMakeLists.txt"
459 "xdg/CMakeLists.txt")
460 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
461 "DESTINATION \"etc/xdg"))
462 #t))
463 (add-after 'unpack 'patch-translations-dir
464 (lambda* (#:key outputs #:allow-other-keys)
465 (substitute* "config/CMakeLists.txt"
466 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
467 (string-append (assoc-ref outputs "out")
468 "/share/lxqt/translations")))
469 #t)))))
470 (home-page "https://lxqt.github.io")
471 (synopsis "Daemon used to register global keyboard shortcuts")
472 (description "lxqt-globalkeys is providing tools to set global keyboard
473 shortcuts in LXQt sessions, that is shortcuts which apply to the LXQt session
474 as a whole and are not limited to distinct applications.")
475 (license license:lgpl2.1+)))
476
477 (define-public lxqt-notificationd
478 (package
479 (name "lxqt-notificationd")
480 (version "0.15.0")
481 (source
482 (origin
483 (method url-fetch)
484 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
485 version "/" name "-" version ".tar.xz"))
486 (sha256
487 (base32 "01fva6q2vb0aframxgm0jslvb3z0dcwmhz0yr239bskvdwpn885w"))))
488 (build-system cmake-build-system)
489 (inputs
490 `(("kwindowsystem" ,kwindowsystem)
491 ("liblxqt" ,liblxqt)
492 ("libqtxdg" ,libqtxdg)
493 ("qtbase" ,qtbase)
494 ("qtsvg" ,qtsvg)
495 ("qtx11extras" ,qtx11extras)))
496 (native-inputs
497 `(("lxqt-build-tools" ,lxqt-build-tools)
498 ("qttools" ,qttools)))
499 (arguments
500 '(#:tests? #f ; no test target
501 #:phases
502 (modify-phases %standard-phases
503 (add-after 'unpack 'patch-source
504 (lambda _
505 (substitute* '("autostart/CMakeLists.txt")
506 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
507 "DESTINATION \"etc/xdg"))
508 #t))
509 (add-after 'unpack 'patch-translations-dir
510 (lambda* (#:key outputs #:allow-other-keys)
511 (substitute* '("config/CMakeLists.txt"
512 "src/CMakeLists.txt")
513 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
514 (string-append (assoc-ref outputs "out")
515 "/share/lxqt/translations")))
516 #t)))))
517 (home-page "https://lxqt.github.io")
518 (synopsis "The LXQt notification daemon")
519 (description "lxqt-notificationd is LXQt's implementation of a daemon
520 according to the Desktop Notifications Specification.")
521 (license license:lgpl2.1+)))
522
523 (define-public lxqt-openssh-askpass
524 (package
525 (name "lxqt-openssh-askpass")
526 (version "0.15.0")
527 (source
528 (origin
529 (method url-fetch)
530 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
531 version "/" name "-" version ".tar.xz"))
532 (sha256
533 (base32 "1h8nhj4ig8419kfdqjsig16ayf2byrzgrk698aiym544n5ayjwak"))))
534 (build-system cmake-build-system)
535 (inputs
536 `(("kwindowsystem" ,kwindowsystem)
537 ("liblxqt" ,liblxqt)
538 ("libqtxdg" ,libqtxdg)
539 ("qtbase" ,qtbase)
540 ("qtsvg" ,qtsvg)
541 ("qtx11extras" ,qtx11extras)))
542 (native-inputs
543 `(("lxqt-build-tools" ,lxqt-build-tools)
544 ("qttools" ,qttools)))
545 (arguments
546 '(#:tests? #f ; no tests
547 #:phases
548 (modify-phases %standard-phases
549 (add-after 'unpack 'patch-translations-dir
550 (lambda* (#:key outputs #:allow-other-keys)
551 (substitute* "CMakeLists.txt"
552 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
553 (string-append (assoc-ref outputs "out")
554 "/share/lxqt/translations")))
555 #t)))))
556 (home-page "https://lxqt.github.io")
557 (synopsis "GUI to query passwords on behalf of SSH agents")
558 (description "lxqt-openssh-askpass is a GUI to query credentials on behalf
559 of other programs.")
560 (license license:lgpl2.1+)))
561
562 (define-public lxqt-panel
563 (package
564 (name "lxqt-panel")
565 (version "0.15.1")
566 (source
567 (origin
568 (method url-fetch)
569 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
570 version "/" name "-" version ".tar.xz"))
571 (sha256
572 (base32 "1b40l9p31nz96q38vwgd1zj142xcwqnjwljsird4nnzs2smjn1c6"))))
573 (build-system cmake-build-system)
574 (inputs
575 `(("alsa-lib" ,alsa-lib)
576 ("kguiaddons" ,kguiaddons)
577 ("libdbusmenu-qt" ,libdbusmenu-qt)
578 ("liblxqt" ,liblxqt)
579 ("libqtxdg" ,libqtxdg)
580 ("libstatgrab" ,libstatgrab)
581 ("libsysstat" ,libsysstat)
582 ("libxcomposite" ,libxcomposite)
583 ("libxdamage" ,libxdamage)
584 ("libxkbcommon" ,libxkbcommon)
585 ("libxrender" ,libxrender)
586 ("lm-sensors" ,lm-sensors "lib")
587 ("lxqt-globalkeys" ,lxqt-globalkeys)
588 ("pcre" ,pcre)
589 ("pulseaudio" ,pulseaudio)
590 ("qtbase" ,qtbase)
591 ("qtsvg" ,qtsvg)
592 ("qtx11extras" ,qtx11extras)
593 ("solid" ,solid)
594 ("xcb-util" ,xcb-util)
595 ("xkeyboard-config" ,xkeyboard-config)))
596 (native-inputs
597 `(("pkg-config" ,pkg-config)
598 ("lxqt-build-tools" ,lxqt-build-tools)
599 ("qttools" ,qttools)))
600 (propagated-inputs
601 ;; Propagating KWINDOWSYSTEM so that the list of opened applications
602 ;; shows up in lxqt-panel's taskbar plugin.
603 `(("kwindowsystem" ,kwindowsystem)
604 ("lxmenu-data" ,lxmenu-data)))
605 (arguments
606 '(#:tests? #f ; no tests
607 #:phases
608 (modify-phases %standard-phases
609 (add-after 'unpack 'patch-source
610 (lambda _
611 (substitute* '("autostart/CMakeLists.txt"
612 "menu/CMakeLists.txt")
613 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
614 "DESTINATION \"etc/xdg"))
615 #t))
616 (add-after 'unpack 'patch-translations-dir
617 (lambda* (#:key outputs #:allow-other-keys)
618 (substitute* '("cmake/BuildPlugin.cmake"
619 "panel/CMakeLists.txt")
620 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
621 (string-append (assoc-ref outputs "out")
622 "/share/lxqt/translations")))
623 #t))
624 (add-after 'unpack 'set-xkeyboard-config-file-path
625 (lambda* (#:key inputs #:allow-other-keys)
626 ;; Set the path to xkeyboard-config.
627 (let ((xkb (assoc-ref inputs "xkeyboard-config")))
628 (substitute* "plugin-kbindicator/src/x11/kbdlayout.cpp"
629 (("/usr/share/X11/xkb/rules/evdev.xml")
630 (string-append xkb "/share/X11/xkb/rules/evdev.xml")))
631 #t))))))
632 (home-page "https://lxqt.github.io")
633 (synopsis "The LXQt desktop panel")
634 (description "lxqt-panel represents the taskbar of LXQt.")
635 (license license:lgpl2.1+)))
636
637 (define-public lxqt-policykit
638 (package
639 (name "lxqt-policykit")
640 (version "0.15.0")
641 (source
642 (origin
643 (method url-fetch)
644 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
645 version "/" name "-" version ".tar.xz"))
646 (sha256
647 (base32 "0kzc9mxl47bz6mifmk4xi9sxh7jl31d55j7cq8vijqg3w1yb5rp2"))))
648 (build-system cmake-build-system)
649 (inputs
650 `(("kwindowsystem" ,kwindowsystem)
651 ("liblxqt" ,liblxqt)
652 ("libqtxdg" ,libqtxdg)
653 ("pcre" ,pcre)
654 ("polkit-qt" ,polkit-qt)
655 ("qtbase" ,qtbase)
656 ("qtsvg" ,qtsvg)
657 ("qtx11extras" ,qtx11extras)))
658 (native-inputs
659 `(("pkg-config" ,pkg-config)
660 ("polkit" ,polkit)
661 ("lxqt-build-tools" ,lxqt-build-tools)
662 ("qttools" ,qttools)))
663 (arguments
664 '(#:tests? #f ; no test target
665 #:phases
666 (modify-phases %standard-phases
667 (add-after 'unpack 'patch-source
668 (lambda _
669 (substitute* '("autostart/CMakeLists.txt")
670 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
671 "DESTINATION \"etc/xdg"))
672 #t))
673 (add-after 'unpack 'patch-translations-dir
674 (lambda* (#:key outputs #:allow-other-keys)
675 (substitute* "CMakeLists.txt"
676 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
677 (string-append (assoc-ref outputs "out")
678 "/share/lxqt/translations")))
679 #t)))))
680 (home-page "https://lxqt.github.io")
681 (synopsis "The LXQt PolicyKit agent")
682 (description "lxqt-policykit is the polkit authentication agent of
683 LXQt.")
684 (license license:lgpl2.1+)))
685
686 (define-public lxqt-powermanagement
687 (package
688 (name "lxqt-powermanagement")
689 (version "0.15.0")
690 (source
691 (origin
692 (method url-fetch)
693 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
694 version "/" name "-" version ".tar.xz"))
695 (sha256
696 (base32 "1kal7w6ngs9yrg309p4wacmabpynsrysmbpfkpphg158z548wwl0"))))
697 (build-system cmake-build-system)
698 (inputs
699 `(("kidletime" ,kidletime)
700 ("kwindowsystem" ,kwindowsystem)
701 ("liblxqt" ,liblxqt)
702 ("libqtxdg" ,libqtxdg)
703 ("qtbase" ,qtbase)
704 ("qtsvg" ,qtsvg)
705 ("qtx11extras" ,qtx11extras)
706 ("solid" ,solid)))
707 (native-inputs
708 `(("lxqt-build-tools" ,lxqt-build-tools)
709 ("qttools" ,qttools)))
710 (arguments
711 '(#:tests? #f ; no tests
712 #:phases
713 (modify-phases %standard-phases
714 (add-after 'unpack 'patch-source
715 (lambda _
716 (substitute* '("autostart/CMakeLists.txt")
717 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
718 "DESTINATION \"etc/xdg"))
719 #t))
720 (add-after 'unpack 'patch-translations-dir
721 (lambda* (#:key outputs #:allow-other-keys)
722 (substitute* '("config/CMakeLists.txt"
723 "src/CMakeLists.txt")
724 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
725 (string-append (assoc-ref outputs "out")
726 "/share/lxqt/translations")))
727 #t)))))
728 (home-page "https://lxqt.github.io")
729 (synopsis "Power management module for LXQt")
730 (description "lxqt-powermanagement is providing tools to monitor power
731 management events and optionally trigger actions like e. g. shut down a system
732 when laptop batteries are low on power.")
733 (license license:lgpl2.1+)))
734
735 (define-public lxqt-qtplugin
736 (package
737 (name "lxqt-qtplugin")
738 (version "0.15.1")
739 (source
740 (origin
741 (method url-fetch)
742 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
743 version "/" name "-" version ".tar.xz"))
744 (sha256
745 (base32 "17kmpm3nn07xyxz21f86y3hqi6s0jvqyhsc703zy0463sc58vvys"))))
746 (build-system cmake-build-system)
747 (inputs
748 `(("libdbusmenu-qt" ,libdbusmenu-qt)
749 ("libfm-qt" ,libfm-qt)
750 ("libqtxdg" ,libqtxdg)
751 ("qtbase" ,qtbase)
752 ("qtsvg" ,qtsvg)
753 ("qtx11extras" ,qtx11extras)))
754 (native-inputs
755 `(("lxqt-build-tools" ,lxqt-build-tools)
756 ("qttools" ,qttools)))
757 (arguments
758 '(#:tests? #f ; no tests
759 #:phases
760 (modify-phases %standard-phases
761 (add-after 'unpack 'patch-source
762 (lambda _
763 (substitute* '("src/CMakeLists.txt")
764 (("DESTINATION \"\\$\\{QT_PLUGINS_DIR\\}")
765 "DESTINATION \"lib/qt5/plugins"))
766 #t)))))
767 (home-page "https://lxqt.github.io")
768 (synopsis "LXQt Qt platform integration plugin")
769 (description "lxqt-qtplugin is providing a library libqtlxqt to integrate
770 Qt with LXQt.")
771 (license license:lgpl2.1+)))
772
773 (define-public lxqt-runner
774 (package
775 (name "lxqt-runner")
776 (version "0.15.0")
777 (source
778 (origin
779 (method url-fetch)
780 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
781 version "/" name "-" version ".tar.xz"))
782 (sha256
783 (base32 "02xxpflhh6a8qpnjhl5mrl07ikzl5x21mf0rj8nmm0v28rpkqjk1"))))
784 (build-system cmake-build-system)
785 (inputs
786 `(("kwindowsystem" ,kwindowsystem)
787 ("liblxqt" ,liblxqt)
788 ("libqtxdg" ,libqtxdg)
789 ("lxqt-globalkeys" ,lxqt-globalkeys)
790 ("muparser" ,muparser)
791 ("pcre" ,pcre)
792 ("qtbase" ,qtbase)
793 ("qtsvg" ,qtsvg)
794 ("qtx11extras" ,qtx11extras)))
795 (native-inputs
796 `(("pkg-config" ,pkg-config)
797 ("qttools" ,qttools)
798 ("lxqt-build-tools" ,lxqt-build-tools)))
799 (arguments
800 '(#:tests? #f ; no tests
801 #:phases
802 (modify-phases %standard-phases
803 (add-after 'unpack 'patch-source
804 (lambda _
805 (substitute* '("autostart/CMakeLists.txt")
806 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
807 "DESTINATION \"etc/xdg"))
808 #t))
809 (add-after 'unpack 'patch-translations-dir
810 (lambda* (#:key outputs #:allow-other-keys)
811 (substitute* "CMakeLists.txt"
812 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
813 (string-append (assoc-ref outputs "out")
814 "/share/lxqt/translations")))
815 #t)))))
816 (home-page "https://lxqt.github.io")
817 (synopsis "Tool used to launch programs quickly by typing their names")
818 (description "lxqt-runner provides a GUI that comes up on the desktop and
819 allows for launching applications or shutting down the system.")
820 (license license:lgpl2.1+)))
821
822 (define-public lxqt-session
823 (package
824 (name "lxqt-session")
825 (version "0.15.0")
826 (source
827 (origin
828 (method url-fetch)
829 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
830 version "/" name "-" version ".tar.xz"))
831 (sha256
832 (base32 "17y6l1l2m2hzxlzvr7wbixnldbr7waky97vj6lx72r81l45wqkz4"))))
833 (build-system cmake-build-system)
834 (inputs
835 `(("eudev" ,eudev)
836 ("kwindowsystem" ,kwindowsystem)
837 ("liblxqt" ,liblxqt)
838 ("libqtxdg" ,libqtxdg)
839 ("qtbase" ,qtbase)
840 ("qtsvg" ,qtsvg)
841 ("qtx11extras" ,qtx11extras)
842 ("xdg-user-dirs" ,xdg-user-dirs)))
843 (native-inputs
844 `(("pkg-config" ,pkg-config)
845 ("lxqt-build-tools" ,lxqt-build-tools)
846 ("qttools" ,qttools)))
847 (arguments
848 `(#:tests? #f
849 #:phases
850 (modify-phases %standard-phases
851 (add-after 'unpack 'patch-source
852 (lambda* (#:key outputs #:allow-other-keys)
853 (substitute* '("autostart/CMakeLists.txt"
854 "config/CMakeLists.txt")
855 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
856 "DESTINATION \"etc/xdg"))
857 (let ((out (assoc-ref outputs "out")))
858 (substitute* '("xsession/lxqt.desktop.in")
859 (("Exec=startlxqt") (string-append "Exec=" out "/bin/startlxqt"))
860 (("TryExec=lxqt-session") (string-append "TryExec=" out "/bin/startlxqt")))
861 #t)))
862 ;; add write permission to lxqt-rc.xml file which is stored as read-only in store
863 (add-after 'unpack 'patch-openbox-permission
864 (lambda _
865 (substitute* "startlxqt.in"
866 (("cp \"\\$LXQT_DEFAULT_OPENBOX_CONFIG\" \"\\$XDG_CONFIG_HOME/openbox\"")
867 (string-append "cp \"$LXQT_DEFAULT_OPENBOX_CONFIG\" \"$XDG_CONFIG_HOME/openbox\"\n"
868 " # fix openbox permission issue\n"
869 " chmod u+w \"$XDG_CONFIG_HOME/openbox\"/*")))
870 #t))
871 (add-after 'unpack 'patch-translations-dir
872 (lambda* (#:key outputs #:allow-other-keys)
873 (substitute* '("lxqt-config-session/CMakeLists.txt"
874 "lxqt-leave/CMakeLists.txt"
875 "lxqt-session/CMakeLists.txt")
876 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
877 (string-append (assoc-ref outputs "out")
878 "/share/lxqt/translations")))
879 #t))
880 (add-after 'install 'wrap-program
881 (lambda* (#:key inputs outputs #:allow-other-keys)
882 (let ((out (assoc-ref outputs "out")))
883 (wrap-program (string-append out "/bin/startlxqt")
884 `("XDG_CONFIG_DIRS" ":" suffix ("/run/current-system/profile/share"
885 "/run/current-system/profile/share/pcmanfm-qt")))
886 #t))))))
887 (home-page "https://lxqt.github.io")
888 (synopsis "Session manager for LXQt")
889 (description "lxqt-session provides the standard session manager
890 for the LXQt desktop environment.")
891 (license license:lgpl2.1+)))
892
893 (define-public lxqt-sudo
894 (package
895 (name "lxqt-sudo")
896 (version "0.15.0")
897 (source
898 (origin
899 (method url-fetch)
900 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
901 version "/" name "-" version ".tar.xz"))
902 (sha256
903 (base32 "1v4gzmld3zqi3y9pdy3hb8lq81jwbgi4ia00lbzccg8cm0m8n55w"))))
904 (build-system cmake-build-system)
905 (inputs
906 `(("kwindowsystem" ,kwindowsystem)
907 ("liblxqt" ,liblxqt)
908 ("libqtxdg" ,libqtxdg)
909 ("qtbase" ,qtbase)
910 ("qtsvg" ,qtsvg)
911 ("qtx11extras" ,qtx11extras)
912 ("sudo" ,sudo)))
913 (native-inputs
914 `(("pkg-config" ,pkg-config)
915 ("qttools" ,qttools)
916 ("lxqt-build-tools" ,lxqt-build-tools)))
917 (arguments
918 '(#:tests? #f ; no tests
919 #:phases
920 (modify-phases %standard-phases
921 (add-after 'unpack 'patch-translations-dir
922 (lambda* (#:key outputs #:allow-other-keys)
923 (substitute* "CMakeLists.txt"
924 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
925 (string-append (assoc-ref outputs "out")
926 "/share/lxqt/translations")))
927 #t)))))
928 (home-page "https://lxqt.github.io")
929 (synopsis "GUI frontend for sudo/su")
930 (description "lxqt-sudo is a graphical front-end of commands sudo and su
931 respectively. As such it enables regular users to launch applications with
932 permissions of other users including root.")
933 (license license:lgpl2.1+)))
934
935 (define-public lxqt-themes
936 (package
937 (name "lxqt-themes")
938 (version "0.15.0")
939 (source
940 (origin
941 (method url-fetch)
942 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
943 version "/" name "-" version ".tar.xz"))
944 (sha256
945 (base32 "1dzv60q1dhi666ajh218smkp3ybh5vl2mxyvlbyc9zwvhgx3f0d1"))))
946 (build-system cmake-build-system)
947 (native-inputs
948 `(("lxqt-build-tools" ,lxqt-build-tools)))
949 (arguments
950 `(#:tests? #f ; no tests
951 #:phases
952 (modify-phases %standard-phases
953 (add-after 'unpack 'patch-source
954 (lambda _
955 (substitute* '("CMakeLists.txt")
956 (("DESTINATION \"\\$\\{LXQT_GRAPHICS_DIR\\}")
957 "DESTINATION \"share/lxqt/graphics"))
958 (substitute* '("themes/CMakeLists.txt")
959 (("DESTINATION \"\\$\\{LXQT_SHARE_DIR\\}")
960 "DESTINATION \"share/lxqt"))
961 #t)))))
962 (home-page "https://lxqt.github.io")
963 (synopsis "Themes, graphics and icons for LXQt")
964 (description "This package comprises a number of graphic files and themes
965 for LXQt.")
966 ;; The whole package is released under LGPL 2.1+, while the LXQt logo is
967 ;; licensed under CC-BY-SA 3.0.
968 (license license:lgpl2.1+)))
969
970
971 ;; File Manager
972
973 (define-public libfm-qt
974 (package
975 (name "libfm-qt")
976 (version "0.15.1")
977 (source
978 (origin
979 (method url-fetch)
980 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
981 version "/" name "-" version ".tar.xz"))
982 (sha256
983 (base32 "034kc8i571m31fksprih6iiykxj85j98fmm6nrkmlwql45kr6rvs"))))
984 (build-system cmake-build-system)
985 (arguments
986 '(#:tests? #f)) ; no tests
987 (inputs
988 `(("glib" ,glib)
989 ("libexif" ,libexif)
990 ("libfm" ,libfm)
991 ("libxcb" ,libxcb)
992 ("menu-cache" ,menu-cache)
993 ("pcre" ,pcre)
994 ("qtbase" ,qtbase)
995 ("qtx11extras" ,qtx11extras)))
996 (native-inputs
997 `(("pkg-config" ,pkg-config)
998 ("lxqt-build-tools" ,lxqt-build-tools)
999 ("qttools" ,qttools)))
1000 (home-page "https://lxqt.github.io")
1001 (synopsis "Qt binding for libfm")
1002 (description "libfm-qt is the Qt port of libfm, a library providing
1003 components to build desktop file managers which belongs to LXDE.")
1004 (license license:lgpl2.1+)))
1005
1006 (define-public pcmanfm-qt
1007 (package
1008 (name "pcmanfm-qt")
1009 (version "0.15.1")
1010 (source
1011 (origin
1012 (method url-fetch)
1013 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1014 version "/" name "-" version ".tar.xz"))
1015 (sha256
1016 (base32 "1izc60hrc16sv2ig9psr3br9iq8nln6a2ycfspzycgpk8rh0f6jd"))))
1017 (build-system cmake-build-system)
1018 (inputs
1019 `(("libfm-qt" ,libfm-qt)
1020 ("qtbase" ,qtbase)
1021 ("qtx11extras" ,qtx11extras)))
1022 (native-inputs
1023 `(("pkg-config" ,pkg-config)
1024 ("qttools" ,qttools)
1025 ("lxqt-build-tools" ,lxqt-build-tools)))
1026 (arguments
1027 '(#:tests? #f ; no tests
1028 #:phases
1029 (modify-phases %standard-phases
1030 (add-after 'unpack 'patch-source
1031 (lambda _
1032 (substitute* '("autostart/CMakeLists.txt")
1033 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1034 "DESTINATION \"etc/xdg"))
1035 (substitute* '("config/pcmanfm-qt/lxqt/settings.conf.in")
1036 (("@LXQT_SHARE_DIR@")
1037 "/run/current-system/profile/share/lxqt" ))
1038 #t)))))
1039 (home-page "https://lxqt.github.io")
1040 (synopsis "File manager and desktop icon manager")
1041 (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of
1042 LXDE.")
1043 (license license:gpl2+)))
1044
1045
1046 ;; Extra
1047
1048 (define-public compton-conf
1049 (package
1050 (name "compton-conf")
1051 (version "0.15.0")
1052 (source
1053 (origin
1054 (method url-fetch)
1055 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1056 version "/" name "-" version ".tar.xz"))
1057 (sha256
1058 (base32 "1ii1bans7wdafm9rmxvsdqp3ad4cj0pa8kf92plbmbm3nycpf1q9"))))
1059 (build-system cmake-build-system)
1060 (inputs
1061 `(("libconfig" ,libconfig)
1062 ("qtbase" ,qtbase)))
1063 (native-inputs
1064 `(("lxqt-build-tools" ,lxqt-build-tools)
1065 ("pkg-config" ,pkg-config)
1066 ("qttools" ,qttools)))
1067 (arguments
1068 '(#:tests? #f ; no tests
1069 #:phases
1070 (modify-phases %standard-phases
1071 (add-after 'unpack 'patch-source
1072 (lambda _
1073 (substitute* '("autostart/CMakeLists.txt")
1074 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1075 "DESTINATION \"etc/xdg"))
1076 #t)))))
1077 (home-page "https://lxqt.github.io")
1078 (synopsis "GUI configuration tool for compton X composite manager")
1079 (description "@code{compton-conf} is a configuration tool for X composite
1080 manager Compton.")
1081 (license license:lgpl2.1+)))
1082
1083 (define-public lximage-qt
1084 (package
1085 (name "lximage-qt")
1086 (version "0.15.0")
1087 (source
1088 (origin
1089 (method url-fetch)
1090 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1091 version "/" name "-" version ".tar.xz"))
1092 (sha256
1093 (base32 "02iyymb8ywlzvv69lga5a86b7kh4v78zw6qzq5kcnjp1rpj2rjrk"))))
1094 (build-system cmake-build-system)
1095 (inputs
1096 `(("libexif" ,libexif)
1097 ("libfm-qt" ,libfm-qt)
1098 ("qtbase" ,qtbase)
1099 ("qtsvg" ,qtsvg)
1100 ("qtx11extras" ,qtx11extras)))
1101 (native-inputs
1102 `(("pkg-config" ,pkg-config)
1103 ("lxqt-build-tools" ,lxqt-build-tools)
1104 ("qttools" ,qttools)))
1105 (arguments
1106 '(#:tests? #f)) ; no tests
1107 (home-page "https://lxqt.github.io")
1108 (synopsis "The image viewer and screenshot tool for lxqt")
1109 (description "LXImage-Qt is the Qt port of LXImage, a simple and fast
1110 image viewer.")
1111 (license license:gpl2+)))
1112
1113 (define-public obconf-qt
1114 (package
1115 (name "obconf-qt")
1116 (version "0.15.0")
1117 (source
1118 (origin
1119 (method url-fetch)
1120 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1121 version "/" name "-" version ".tar.xz"))
1122 (sha256
1123 (base32 "1vcv2y54hgxcf76cr775632kajmvz3v4x1q3r6p1lzs9s7lmrh6q"))))
1124 (build-system cmake-build-system)
1125 (inputs
1126 `(("imlib2" ,imlib2)
1127 ("libsm" ,libsm)
1128 ("librsvg" ,librsvg)
1129 ("libxft" ,libxft)
1130 ("libxml2" ,libxml2)
1131 ("openbox" ,openbox)
1132 ("pango" ,pango)
1133 ("pcre" ,pcre)
1134 ("qtbase" ,qtbase)
1135 ("qtx11extras" ,qtx11extras)))
1136 (native-inputs
1137 `(("lxqt-build-tools" ,lxqt-build-tools)
1138 ("pkg-config" ,pkg-config)
1139 ("qttools" ,qttools)))
1140 (arguments
1141 '(#:tests? #f)) ; no tests
1142 (home-page "https://lxqt.github.io")
1143 (synopsis "Openbox configuration tool")
1144 (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for
1145 window manager OpenBox.")
1146 (license license:gpl2+)))
1147
1148 (define-public pavucontrol-qt
1149 (package
1150 (name "pavucontrol-qt")
1151 (version "0.15.0")
1152 (source
1153 (origin
1154 (method url-fetch)
1155 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1156 version "/" name "-" version ".tar.xz"))
1157 (sha256
1158 (base32 "15wknwmb4640r5fm4wiq6xa70qa2djay2806wyvajh11xjmqy566"))))
1159 (build-system cmake-build-system)
1160 (inputs
1161 `(("glib" ,glib)
1162 ("pcre" ,pcre)
1163 ("pulseaudio" ,pulseaudio)
1164 ("qtbase" ,qtbase)
1165 ("qtx11extras" ,qtx11extras)))
1166 (native-inputs
1167 `(("pkg-config" ,pkg-config)
1168 ("lxqt-build-tools" ,lxqt-build-tools)
1169 ("qttools" ,qttools)))
1170 (arguments
1171 '(#:tests? #f)) ; no tests
1172 (home-page "https://lxqt.github.io")
1173 (synopsis "Pulseaudio mixer in Qt")
1174 (description "@code{pavucontrol-qt} is the Qt port of volume control
1175 @code{pavucontrol} of sound server @code{PulseAudio}.")
1176 (license license:gpl2+)))
1177
1178 (define-public qps
1179 (package
1180 (name "qps")
1181 (version "2.1.0")
1182 (source
1183 (origin
1184 (method url-fetch)
1185 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1186 version "/" name "-" version ".tar.xz"))
1187 (sha256
1188 (base32 "0yym1bpglz8vha28x7k21fxx1vlsq19m3fyhk2cq3pwq3nqijwp7"))))
1189 (build-system cmake-build-system)
1190 (inputs
1191 `(("kwindowsystem" ,kwindowsystem)
1192 ("libxrender" ,libxrender)
1193 ("liblxqt" ,liblxqt)
1194 ("libqtxdg" ,libqtxdg)
1195 ("qtbase" ,qtbase)
1196 ("qtx11extras" ,qtx11extras)))
1197 (native-inputs
1198 `(("lxqt-build-tools" ,lxqt-build-tools)
1199 ("qttools" ,qttools)))
1200 (arguments
1201 '(#:tests? #f)) ; no tests
1202 (home-page "https://lxqt.github.io")
1203 (synopsis "Qt-based visual process status monitor")
1204 (description "@code{qps} is a monitor that displays the status of the
1205 processes currently in existence, much like code{top} or code{ps}.")
1206 (license license:gpl2+)))
1207
1208 (define-public qtermwidget
1209 (package
1210 (name "qtermwidget")
1211 (version "0.15.0")
1212 (source
1213 (origin
1214 (method url-fetch)
1215 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1216 version "/" name "-" version ".tar.xz"))
1217 (sha256
1218 (base32 "1vn3bbc99py0ak7z9s6p71n9cacpckz57a1p97iwb0p23g4zgjkf"))))
1219 (build-system cmake-build-system)
1220 (inputs
1221 `(("qtbase" ,qtbase)
1222 ("utf8proc" ,utf8proc)))
1223 (native-inputs
1224 `(("lxqt-build-tools" ,lxqt-build-tools)
1225 ("qttools" ,qttools)))
1226 (arguments
1227 '(#:tests? #f)) ; no tests
1228 (home-page "https://lxqt.github.io")
1229 (synopsis "The terminal widget for QTerminal")
1230 (description "QTermWidget is a terminal emulator widget for Qt 5.")
1231 (license license:gpl2+)))
1232
1233 (define-public qterminal
1234 (package
1235 (name "qterminal")
1236 (version "0.15.0")
1237 (source
1238 (origin
1239 (method url-fetch)
1240 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1241 version "/" name "-" version ".tar.xz"))
1242 (sha256
1243 (base32 "0r7xmwjpak47ayj7cj37bwrdlv1mx5nhqpccb5pbn2fh8slp8zsm"))))
1244 (build-system cmake-build-system)
1245 (inputs
1246 `(("qtbase" ,qtbase)
1247 ("qtx11extras" ,qtx11extras)
1248 ("qtermwidget" ,qtermwidget)))
1249 (native-inputs
1250 `(("lxqt-build-tools" ,lxqt-build-tools)
1251 ("qttools" ,qttools)))
1252 (arguments
1253 '(#:tests? #f)) ; no tests
1254 (home-page "https://lxqt.github.io")
1255 (synopsis "Lightweight Qt-based terminal emulator")
1256 (description "QTerminal is a lightweight Qt terminal emulator based on
1257 QTermWidget.")
1258 (license license:gpl2+)))
1259
1260 (define-public screengrab
1261 (package
1262 (name "screengrab")
1263 (version "2.0.1")
1264 (source
1265 (origin
1266 (method url-fetch)
1267 (uri (string-append "https://github.com/lxqt/screengrab/releases/download/"
1268 version "/screengrab-" version ".tar.xz"))
1269 (sha256
1270 (base32 "14znjw3d3gw02fsmhrjcj86l173m2ypl1x8hhba9ld23icr1gqwf"))))
1271 (build-system cmake-build-system)
1272 (inputs
1273 `(("kwindowsystem" ,kwindowsystem)
1274 ("libqtxdg" ,libqtxdg)
1275 ("qtbase" ,qtbase)
1276 ("qtsvg" ,qtsvg)
1277 ("qtx11extras" ,qtx11extras)))
1278 (native-inputs
1279 `(("pkg-config" ,pkg-config)
1280 ("qttools" ,qttools)))
1281 (arguments
1282 '(#:tests? #f)) ; no tests
1283 (home-page "https://lxqt.github.io")
1284 (synopsis "Crossplatform tool for fast making screenshots")
1285 (description "ScreenGrab is a program for fast creating screenshots, and
1286 easily publishing them on internet image hosting services.")
1287 (license license:gpl2+)))
1288
1289
1290 (define-public lxqt-archiver
1291 (package
1292 (name "lxqt-archiver")
1293 (version "0.2.0")
1294 (source
1295 (origin
1296 (method url-fetch)
1297 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1298 version "/" name "-" version ".tar.xz"))
1299 (sha256
1300 (base32 "1i725zaah0wv18j5fchg6isbh4b601filx549cq2hkzf2sylh9ff"))))
1301 (build-system cmake-build-system)
1302 (inputs
1303 `(("glib" ,glib)
1304 ("json-glib" ,json-glib)
1305 ("libfm-qt" ,libfm-qt)
1306 ("qtbase" ,qtbase)
1307 ("qtx11extras" ,qtx11extras)))
1308 (native-inputs
1309 `(("pkg-config" ,pkg-config)
1310 ("lxqt-build-tools" ,lxqt-build-tools)
1311 ("qttools" ,qttools)))
1312 (arguments
1313 '(#:tests? #f))
1314 (home-page "https://lxqt.github.io")
1315 (synopsis "Simple & lightweight desktop-agnostic Qt file archiver")
1316 (description
1317 "This package provides a Qt graphical interface to archiving programs
1318 like @command{tar} and @command{zip}.")
1319 (license license:gpl2+)))
1320
1321 (define-public lxqt-connman-applet
1322 ;; since the main developers didn't release any version yet, their
1323 ;; latest commit on `master` branch at the moment used for this version.
1324 (let ((commit "8a6cc14371a2f18f963e6a2996446082bb60f17d")
1325 (revision "0"))
1326 (package
1327 (name "lxqt-connman-applet")
1328 (version (git-version "0.15.0" revision commit))
1329 (source
1330 (origin
1331 (method git-fetch)
1332 (uri (git-reference
1333 (url (string-append "https://github.com/lxqt/" name))
1334 (commit commit)))
1335 (file-name (git-file-name name version))
1336 (sha256 (base32 "0br4bxfrl8k7lq84aq4grznlk8xzzjgkmd19bf9mwjr0a87gg72v"))))
1337 (build-system cmake-build-system)
1338 (inputs
1339 `(("kwindowsystem" ,kwindowsystem)
1340 ("qtbase" ,qtbase)
1341 ("qtsvg" ,qtsvg)
1342 ("liblxqt" ,liblxqt)
1343 ("qtx11extras" ,qtx11extras)
1344 ("libqtxdg" ,libqtxdg)))
1345 (native-inputs
1346 `(("lxqt-build-tools" ,lxqt-build-tools)
1347 ("qtlinguist" ,qttools)))
1348 (arguments
1349 `(#:tests? #f ; no tests
1350 #:phases
1351 (modify-phases %standard-phases
1352 (add-after 'unpack 'patch-translations-dir
1353 (lambda* (#:key outputs #:allow-other-keys)
1354 (substitute* "CMakeLists.txt"
1355 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
1356 (string-append (assoc-ref outputs "out")
1357 "/share/lxqt/translations"))
1358 (("\\$\\{LXQT_ETC_XDG_DIR\\}") "etc/xdg"))
1359 #t))
1360 (add-after 'unpack 'remove-definitions
1361 (lambda _
1362 (substitute* "CMakeLists.txt"
1363 (("include\\(LXQtCompilerSettings NO_POLICY_SCOPE\\)")
1364 "include(LXQtCompilerSettings NO_POLICY_SCOPE)
1365 remove_definitions(-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII)"))
1366 #t)))))
1367 (home-page "https://github.com/lxqt/lxqt-connman-applet")
1368 (synopsis "System-tray applet for connman")
1369 (description "This package provides a Qt-based system-tray applet for
1370 the network management tool Connman, originally developed for the LXQT
1371 desktop.")
1372 (license license:lgpl2.1+))))
1373
1374 ;; The LXQt Desktop Environment
1375
1376 (define-public lxqt
1377 (package
1378 (name "lxqt")
1379 (version (package-version lxqt-session))
1380 (source #f)
1381 (build-system trivial-build-system)
1382 (arguments '(#:builder (begin (mkdir %output) #t)))
1383 (propagated-inputs
1384 `(;; XDG
1385 ("desktop-file-utils" ,desktop-file-utils)
1386 ("hicolor-icon-theme" ,hicolor-icon-theme)
1387 ("xdg-user-dirs" ,xdg-user-dirs)
1388 ("xdg-utils" ,xdg-utils)
1389 ;; Base
1390 ;; TODO: qtsvg is needed for lxqt apps to display icons. Maybe it
1391 ;; should be added to their propagated-inputs?
1392 ("qtsvg" ,qtsvg)
1393 ;; Core
1394 ("lxqt-about" ,lxqt-about)
1395 ("lxqt-admin" ,lxqt-admin)
1396 ("lxqt-config" ,lxqt-config)
1397 ("lxqt-globalkeys" ,lxqt-globalkeys)
1398 ("lxqt-notificationd" ,lxqt-notificationd)
1399 ("lxqt-openssh-askpass" ,lxqt-openssh-askpass)
1400 ("lxqt-panel" ,lxqt-panel)
1401 ("lxqt-policykit" ,lxqt-policykit)
1402 ("lxqt-powermanagement" ,lxqt-powermanagement)
1403 ("lxqt-qtplugin" ,lxqt-qtplugin)
1404 ("lxqt-runner" ,lxqt-runner)
1405 ("lxqt-session" ,lxqt-session)
1406 ("lxqt-sudo" ,lxqt-sudo)
1407 ("lxqt-themes" ,lxqt-themes)
1408 ("pcmanfm-qt" ,pcmanfm-qt)
1409 ;; Extra
1410 ("compton" ,compton)
1411 ("compton-conf" ,compton-conf)
1412 ("font-dejavu" ,font-dejavu)
1413 ("lximage-qt" ,lximage-qt)
1414 ("obconf-qt" ,obconf-qt)
1415 ("openbox" ,openbox)
1416 ("oxygen-icons" ,oxygen-icons)
1417 ("pavucontrol-qt" ,pavucontrol-qt)
1418 ("qps" ,qps)
1419 ("qterminal" ,qterminal)))
1420 (synopsis "The Lightweight Qt Desktop Environment")
1421 (description "LXQt is a lightweight Qt desktop environment.")
1422 (home-page "https://lxqt.github.io")
1423 (license license:gpl2+)))