Merge remote-tracking branch 'origin/master' into staging
[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 (native-inputs
596 `(("pkg-config" ,pkg-config)
597 ("lxqt-build-tools" ,lxqt-build-tools)
598 ("qttools" ,qttools)))
599 (propagated-inputs
600 ;; Propagating KWINDOWSYSTEM so that the list of opened applications
601 ;; shows up in lxqt-panel's taskbar plugin.
602 `(("kwindowsystem" ,kwindowsystem)
603 ("lxmenu-data" ,lxmenu-data)))
604 (arguments
605 '(#:tests? #f ; no tests
606 #:phases
607 (modify-phases %standard-phases
608 (add-after 'unpack 'patch-source
609 (lambda _
610 (substitute* '("autostart/CMakeLists.txt"
611 "menu/CMakeLists.txt")
612 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
613 "DESTINATION \"etc/xdg"))
614 #t))
615 (add-after 'unpack 'patch-translations-dir
616 (lambda* (#:key outputs #:allow-other-keys)
617 (substitute* '("cmake/BuildPlugin.cmake"
618 "panel/CMakeLists.txt")
619 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
620 (string-append (assoc-ref outputs "out")
621 "/share/lxqt/translations")))
622 #t)))))
623 (home-page "https://lxqt.github.io")
624 (synopsis "The LXQt desktop panel")
625 (description "lxqt-panel represents the taskbar of LXQt.")
626 (license license:lgpl2.1+)))
627
628 (define-public lxqt-policykit
629 (package
630 (name "lxqt-policykit")
631 (version "0.15.0")
632 (source
633 (origin
634 (method url-fetch)
635 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
636 version "/" name "-" version ".tar.xz"))
637 (sha256
638 (base32 "0kzc9mxl47bz6mifmk4xi9sxh7jl31d55j7cq8vijqg3w1yb5rp2"))))
639 (build-system cmake-build-system)
640 (inputs
641 `(("kwindowsystem" ,kwindowsystem)
642 ("liblxqt" ,liblxqt)
643 ("libqtxdg" ,libqtxdg)
644 ("pcre" ,pcre)
645 ("polkit-qt" ,polkit-qt)
646 ("qtbase" ,qtbase)
647 ("qtsvg" ,qtsvg)
648 ("qtx11extras" ,qtx11extras)))
649 (native-inputs
650 `(("pkg-config" ,pkg-config)
651 ("polkit" ,polkit)
652 ("lxqt-build-tools" ,lxqt-build-tools)
653 ("qttools" ,qttools)))
654 (arguments
655 '(#:tests? #f ; no test target
656 #:phases
657 (modify-phases %standard-phases
658 (add-after 'unpack 'patch-source
659 (lambda _
660 (substitute* '("autostart/CMakeLists.txt")
661 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
662 "DESTINATION \"etc/xdg"))
663 #t))
664 (add-after 'unpack 'patch-translations-dir
665 (lambda* (#:key outputs #:allow-other-keys)
666 (substitute* "CMakeLists.txt"
667 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
668 (string-append (assoc-ref outputs "out")
669 "/share/lxqt/translations")))
670 #t)))))
671 (home-page "https://lxqt.github.io")
672 (synopsis "The LXQt PolicyKit agent")
673 (description "lxqt-policykit is the polkit authentication agent of
674 LXQt.")
675 (license license:lgpl2.1+)))
676
677 (define-public lxqt-powermanagement
678 (package
679 (name "lxqt-powermanagement")
680 (version "0.15.0")
681 (source
682 (origin
683 (method url-fetch)
684 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
685 version "/" name "-" version ".tar.xz"))
686 (sha256
687 (base32 "1kal7w6ngs9yrg309p4wacmabpynsrysmbpfkpphg158z548wwl0"))))
688 (build-system cmake-build-system)
689 (inputs
690 `(("kidletime" ,kidletime)
691 ("kwindowsystem" ,kwindowsystem)
692 ("liblxqt" ,liblxqt)
693 ("libqtxdg" ,libqtxdg)
694 ("qtbase" ,qtbase)
695 ("qtsvg" ,qtsvg)
696 ("qtx11extras" ,qtx11extras)
697 ("solid" ,solid)))
698 (native-inputs
699 `(("lxqt-build-tools" ,lxqt-build-tools)
700 ("qttools" ,qttools)))
701 (arguments
702 '(#:tests? #f ; no tests
703 #:phases
704 (modify-phases %standard-phases
705 (add-after 'unpack 'patch-source
706 (lambda _
707 (substitute* '("autostart/CMakeLists.txt")
708 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
709 "DESTINATION \"etc/xdg"))
710 #t))
711 (add-after 'unpack 'patch-translations-dir
712 (lambda* (#:key outputs #:allow-other-keys)
713 (substitute* '("config/CMakeLists.txt"
714 "src/CMakeLists.txt")
715 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
716 (string-append (assoc-ref outputs "out")
717 "/share/lxqt/translations")))
718 #t)))))
719 (home-page "https://lxqt.github.io")
720 (synopsis "Power management module for LXQt")
721 (description "lxqt-powermanagement is providing tools to monitor power
722 management events and optionally trigger actions like e. g. shut down a system
723 when laptop batteries are low on power.")
724 (license license:lgpl2.1+)))
725
726 (define-public lxqt-qtplugin
727 (package
728 (name "lxqt-qtplugin")
729 (version "0.15.1")
730 (source
731 (origin
732 (method url-fetch)
733 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
734 version "/" name "-" version ".tar.xz"))
735 (sha256
736 (base32 "17kmpm3nn07xyxz21f86y3hqi6s0jvqyhsc703zy0463sc58vvys"))))
737 (build-system cmake-build-system)
738 (inputs
739 `(("libdbusmenu-qt" ,libdbusmenu-qt)
740 ("libfm-qt" ,libfm-qt)
741 ("libqtxdg" ,libqtxdg)
742 ("qtbase" ,qtbase)
743 ("qtsvg" ,qtsvg)
744 ("qtx11extras" ,qtx11extras)))
745 (native-inputs
746 `(("lxqt-build-tools" ,lxqt-build-tools)
747 ("qttools" ,qttools)))
748 (arguments
749 '(#:tests? #f ; no tests
750 #:phases
751 (modify-phases %standard-phases
752 (add-after 'unpack 'patch-source
753 (lambda _
754 (substitute* '("src/CMakeLists.txt")
755 (("DESTINATION \"\\$\\{QT_PLUGINS_DIR\\}")
756 "DESTINATION \"lib/qt5/plugins"))
757 #t)))))
758 (home-page "https://lxqt.github.io")
759 (synopsis "LXQt Qt platform integration plugin")
760 (description "lxqt-qtplugin is providing a library libqtlxqt to integrate
761 Qt with LXQt.")
762 (license license:lgpl2.1+)))
763
764 (define-public lxqt-runner
765 (package
766 (name "lxqt-runner")
767 (version "0.15.0")
768 (source
769 (origin
770 (method url-fetch)
771 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
772 version "/" name "-" version ".tar.xz"))
773 (sha256
774 (base32 "02xxpflhh6a8qpnjhl5mrl07ikzl5x21mf0rj8nmm0v28rpkqjk1"))))
775 (build-system cmake-build-system)
776 (inputs
777 `(("kwindowsystem" ,kwindowsystem)
778 ("liblxqt" ,liblxqt)
779 ("libqtxdg" ,libqtxdg)
780 ("lxqt-globalkeys" ,lxqt-globalkeys)
781 ("muparser" ,muparser)
782 ("pcre" ,pcre)
783 ("qtbase" ,qtbase)
784 ("qtsvg" ,qtsvg)
785 ("qtx11extras" ,qtx11extras)))
786 (native-inputs
787 `(("pkg-config" ,pkg-config)
788 ("qttools" ,qttools)
789 ("lxqt-build-tools" ,lxqt-build-tools)))
790 (arguments
791 '(#:tests? #f ; no tests
792 #:phases
793 (modify-phases %standard-phases
794 (add-after 'unpack 'patch-source
795 (lambda _
796 (substitute* '("autostart/CMakeLists.txt")
797 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
798 "DESTINATION \"etc/xdg"))
799 #t))
800 (add-after 'unpack 'patch-translations-dir
801 (lambda* (#:key outputs #:allow-other-keys)
802 (substitute* "CMakeLists.txt"
803 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
804 (string-append (assoc-ref outputs "out")
805 "/share/lxqt/translations")))
806 #t)))))
807 (home-page "https://lxqt.github.io")
808 (synopsis "Tool used to launch programs quickly by typing their names")
809 (description "lxqt-runner provides a GUI that comes up on the desktop and
810 allows for launching applications or shutting down the system.")
811 (license license:lgpl2.1+)))
812
813 (define-public lxqt-session
814 (package
815 (name "lxqt-session")
816 (version "0.15.0")
817 (source
818 (origin
819 (method url-fetch)
820 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
821 version "/" name "-" version ".tar.xz"))
822 (sha256
823 (base32 "17y6l1l2m2hzxlzvr7wbixnldbr7waky97vj6lx72r81l45wqkz4"))))
824 (build-system cmake-build-system)
825 (inputs
826 `(("eudev" ,eudev)
827 ("kwindowsystem" ,kwindowsystem)
828 ("liblxqt" ,liblxqt)
829 ("libqtxdg" ,libqtxdg)
830 ("qtbase" ,qtbase)
831 ("qtsvg" ,qtsvg)
832 ("qtx11extras" ,qtx11extras)
833 ("xdg-user-dirs" ,xdg-user-dirs)))
834 (native-inputs
835 `(("pkg-config" ,pkg-config)
836 ("lxqt-build-tools" ,lxqt-build-tools)
837 ("qttools" ,qttools)))
838 (arguments
839 `(#:tests? #f
840 #:phases
841 (modify-phases %standard-phases
842 (add-after 'unpack 'patch-source
843 (lambda _
844 (substitute* '("autostart/CMakeLists.txt"
845 "config/CMakeLists.txt")
846 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
847 "DESTINATION \"etc/xdg"))
848 #t))
849 ;; add write permission to lxqt-rc.xml file which is stored as read-only in store
850 (add-after 'unpack 'patch-openbox-permission
851 (lambda _
852 (substitute* "startlxqt.in"
853 (("cp \"\\$LXQT_DEFAULT_OPENBOX_CONFIG\" \"\\$XDG_CONFIG_HOME/openbox\"")
854 (string-append "cp \"$LXQT_DEFAULT_OPENBOX_CONFIG\" \"$XDG_CONFIG_HOME/openbox\"\n"
855 " # fix openbox permission issue\n"
856 " chmod u+w \"$XDG_CONFIG_HOME/openbox\"/*")))
857 #t))
858 (add-after 'unpack 'patch-translations-dir
859 (lambda* (#:key outputs #:allow-other-keys)
860 (substitute* '("lxqt-config-session/CMakeLists.txt"
861 "lxqt-leave/CMakeLists.txt"
862 "lxqt-session/CMakeLists.txt")
863 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
864 (string-append (assoc-ref outputs "out")
865 "/share/lxqt/translations")))
866 #t)))))
867 (home-page "https://lxqt.github.io")
868 (synopsis "Session manager for LXQt")
869 (description "lxqt-session provides the standard session manager
870 for the LXQt desktop environment.")
871 (license license:lgpl2.1+)))
872
873 (define-public lxqt-sudo
874 (package
875 (name "lxqt-sudo")
876 (version "0.15.0")
877 (source
878 (origin
879 (method url-fetch)
880 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
881 version "/" name "-" version ".tar.xz"))
882 (sha256
883 (base32 "1v4gzmld3zqi3y9pdy3hb8lq81jwbgi4ia00lbzccg8cm0m8n55w"))))
884 (build-system cmake-build-system)
885 (inputs
886 `(("kwindowsystem" ,kwindowsystem)
887 ("liblxqt" ,liblxqt)
888 ("libqtxdg" ,libqtxdg)
889 ("qtbase" ,qtbase)
890 ("qtsvg" ,qtsvg)
891 ("qtx11extras" ,qtx11extras)
892 ("sudo" ,sudo)))
893 (native-inputs
894 `(("pkg-config" ,pkg-config)
895 ("qttools" ,qttools)
896 ("lxqt-build-tools" ,lxqt-build-tools)))
897 (arguments
898 '(#:tests? #f ; no tests
899 #:phases
900 (modify-phases %standard-phases
901 (add-after 'unpack 'patch-translations-dir
902 (lambda* (#:key outputs #:allow-other-keys)
903 (substitute* "CMakeLists.txt"
904 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
905 (string-append (assoc-ref outputs "out")
906 "/share/lxqt/translations")))
907 #t)))))
908 (home-page "https://lxqt.github.io")
909 (synopsis "GUI frontend for sudo/su")
910 (description "lxqt-sudo is a graphical front-end of commands sudo and su
911 respectively. As such it enables regular users to launch applications with
912 permissions of other users including root.")
913 (license license:lgpl2.1+)))
914
915 (define-public lxqt-themes
916 (package
917 (name "lxqt-themes")
918 (version "0.15.0")
919 (source
920 (origin
921 (method url-fetch)
922 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
923 version "/" name "-" version ".tar.xz"))
924 (sha256
925 (base32 "1dzv60q1dhi666ajh218smkp3ybh5vl2mxyvlbyc9zwvhgx3f0d1"))))
926 (build-system cmake-build-system)
927 (native-inputs
928 `(("lxqt-build-tools" ,lxqt-build-tools)))
929 (arguments
930 `(#:tests? #f ; no tests
931 #:phases
932 (modify-phases %standard-phases
933 (add-after 'unpack 'patch-source
934 (lambda _
935 (substitute* '("CMakeLists.txt")
936 (("DESTINATION \"\\$\\{LXQT_GRAPHICS_DIR\\}")
937 "DESTINATION \"share/lxqt/graphics"))
938 (substitute* '("themes/CMakeLists.txt")
939 (("DESTINATION \"\\$\\{LXQT_SHARE_DIR\\}")
940 "DESTINATION \"share/lxqt"))
941 #t)))))
942 (home-page "https://lxqt.github.io")
943 (synopsis "Themes, graphics and icons for LXQt")
944 (description "This package comprises a number of graphic files and themes
945 for LXQt.")
946 ;; The whole package is released under LGPL 2.1+, while the LXQt logo is
947 ;; licensed under CC-BY-SA 3.0.
948 (license license:lgpl2.1+)))
949
950
951 ;; File Manager
952
953 (define-public libfm-qt
954 (package
955 (name "libfm-qt")
956 (version "0.15.1")
957 (source
958 (origin
959 (method url-fetch)
960 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
961 version "/" name "-" version ".tar.xz"))
962 (sha256
963 (base32 "034kc8i571m31fksprih6iiykxj85j98fmm6nrkmlwql45kr6rvs"))))
964 (build-system cmake-build-system)
965 (arguments
966 '(#:tests? #f)) ; no tests
967 (inputs
968 `(("glib" ,glib)
969 ("libexif" ,libexif)
970 ("libfm" ,libfm)
971 ("libxcb" ,libxcb)
972 ("menu-cache" ,menu-cache)
973 ("pcre" ,pcre)
974 ("qtbase" ,qtbase)
975 ("qtx11extras" ,qtx11extras)))
976 (native-inputs
977 `(("pkg-config" ,pkg-config)
978 ("lxqt-build-tools" ,lxqt-build-tools)
979 ("qttools" ,qttools)))
980 (home-page "https://lxqt.github.io")
981 (synopsis "Qt binding for libfm")
982 (description "libfm-qt is the Qt port of libfm, a library providing
983 components to build desktop file managers which belongs to LXDE.")
984 (license license:lgpl2.1+)))
985
986 (define-public pcmanfm-qt
987 (package
988 (name "pcmanfm-qt")
989 (version "0.15.1")
990 (source
991 (origin
992 (method url-fetch)
993 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
994 version "/" name "-" version ".tar.xz"))
995 (sha256
996 (base32 "1izc60hrc16sv2ig9psr3br9iq8nln6a2ycfspzycgpk8rh0f6jd"))))
997 (build-system cmake-build-system)
998 (inputs
999 `(("libfm-qt" ,libfm-qt)
1000 ("qtbase" ,qtbase)
1001 ("qtx11extras" ,qtx11extras)))
1002 (native-inputs
1003 `(("pkg-config" ,pkg-config)
1004 ("qttools" ,qttools)
1005 ("lxqt-build-tools" ,lxqt-build-tools)))
1006 (arguments
1007 '(#:tests? #f ; no tests
1008 #:phases
1009 (modify-phases %standard-phases
1010 (add-after 'unpack 'patch-source
1011 (lambda _
1012 (substitute* '("autostart/CMakeLists.txt")
1013 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1014 "DESTINATION \"etc/xdg"))
1015 #t)))))
1016 (home-page "https://lxqt.github.io")
1017 (synopsis "File manager and desktop icon manager")
1018 (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of
1019 LXDE.")
1020 (license license:gpl2+)))
1021
1022
1023 ;; Extra
1024
1025 (define-public compton-conf
1026 (package
1027 (name "compton-conf")
1028 (version "0.15.0")
1029 (source
1030 (origin
1031 (method url-fetch)
1032 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1033 version "/" name "-" version ".tar.xz"))
1034 (sha256
1035 (base32 "1ii1bans7wdafm9rmxvsdqp3ad4cj0pa8kf92plbmbm3nycpf1q9"))))
1036 (build-system cmake-build-system)
1037 (inputs
1038 `(("libconfig" ,libconfig)
1039 ("qtbase" ,qtbase)))
1040 (native-inputs
1041 `(("lxqt-build-tools" ,lxqt-build-tools)
1042 ("pkg-config" ,pkg-config)
1043 ("qttools" ,qttools)))
1044 (arguments
1045 '(#:tests? #f ; no tests
1046 #:phases
1047 (modify-phases %standard-phases
1048 (add-after 'unpack 'patch-source
1049 (lambda _
1050 (substitute* '("autostart/CMakeLists.txt")
1051 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1052 "DESTINATION \"etc/xdg"))
1053 #t)))))
1054 (home-page "https://lxqt.github.io")
1055 (synopsis "GUI configuration tool for compton X composite manager")
1056 (description "@code{compton-conf} is a configuration tool for X composite
1057 manager Compton.")
1058 (license license:lgpl2.1+)))
1059
1060 (define-public lximage-qt
1061 (package
1062 (name "lximage-qt")
1063 (version "0.15.0")
1064 (source
1065 (origin
1066 (method url-fetch)
1067 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1068 version "/" name "-" version ".tar.xz"))
1069 (sha256
1070 (base32 "02iyymb8ywlzvv69lga5a86b7kh4v78zw6qzq5kcnjp1rpj2rjrk"))))
1071 (build-system cmake-build-system)
1072 (inputs
1073 `(("libexif" ,libexif)
1074 ("libfm-qt" ,libfm-qt)
1075 ("qtbase" ,qtbase)
1076 ("qtsvg" ,qtsvg)
1077 ("qtx11extras" ,qtx11extras)))
1078 (native-inputs
1079 `(("pkg-config" ,pkg-config)
1080 ("lxqt-build-tools" ,lxqt-build-tools)
1081 ("qttools" ,qttools)))
1082 (arguments
1083 '(#:tests? #f)) ; no tests
1084 (home-page "https://lxqt.github.io")
1085 (synopsis "The image viewer and screenshot tool for lxqt")
1086 (description "LXImage-Qt is the Qt port of LXImage, a simple and fast
1087 image viewer.")
1088 (license license:gpl2+)))
1089
1090 (define-public obconf-qt
1091 (package
1092 (name "obconf-qt")
1093 (version "0.15.0")
1094 (source
1095 (origin
1096 (method url-fetch)
1097 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1098 version "/" name "-" version ".tar.xz"))
1099 (sha256
1100 (base32 "1vcv2y54hgxcf76cr775632kajmvz3v4x1q3r6p1lzs9s7lmrh6q"))))
1101 (build-system cmake-build-system)
1102 (inputs
1103 `(("imlib2" ,imlib2)
1104 ("libsm" ,libsm)
1105 ("librsvg" ,librsvg)
1106 ("libxft" ,libxft)
1107 ("libxml2" ,libxml2)
1108 ("openbox" ,openbox)
1109 ("pango" ,pango)
1110 ("pcre" ,pcre)
1111 ("qtbase" ,qtbase)
1112 ("qtx11extras" ,qtx11extras)))
1113 (native-inputs
1114 `(("lxqt-build-tools" ,lxqt-build-tools)
1115 ("pkg-config" ,pkg-config)
1116 ("qttools" ,qttools)))
1117 (arguments
1118 '(#:tests? #f)) ; no tests
1119 (home-page "https://lxqt.github.io")
1120 (synopsis "Openbox configuration tool")
1121 (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for
1122 window manager OpenBox.")
1123 (license license:gpl2+)))
1124
1125 (define-public pavucontrol-qt
1126 (package
1127 (name "pavucontrol-qt")
1128 (version "0.15.0")
1129 (source
1130 (origin
1131 (method url-fetch)
1132 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1133 version "/" name "-" version ".tar.xz"))
1134 (sha256
1135 (base32 "15wknwmb4640r5fm4wiq6xa70qa2djay2806wyvajh11xjmqy566"))))
1136 (build-system cmake-build-system)
1137 (inputs
1138 `(("glib" ,glib)
1139 ("pcre" ,pcre)
1140 ("pulseaudio" ,pulseaudio)
1141 ("qtbase" ,qtbase)
1142 ("qtx11extras" ,qtx11extras)))
1143 (native-inputs
1144 `(("pkg-config" ,pkg-config)
1145 ("lxqt-build-tools" ,lxqt-build-tools)
1146 ("qttools" ,qttools)))
1147 (arguments
1148 '(#:tests? #f)) ; no tests
1149 (home-page "https://lxqt.github.io")
1150 (synopsis "Pulseaudio mixer in Qt")
1151 (description "@code{pavucontrol-qt} is the Qt port of volume control
1152 @code{pavucontrol} of sound server @code{PulseAudio}.")
1153 (license license:gpl2+)))
1154
1155 (define-public qps
1156 (package
1157 (name "qps")
1158 (version "2.1.0")
1159 (source
1160 (origin
1161 (method url-fetch)
1162 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1163 version "/" name "-" version ".tar.xz"))
1164 (sha256
1165 (base32 "0yym1bpglz8vha28x7k21fxx1vlsq19m3fyhk2cq3pwq3nqijwp7"))))
1166 (build-system cmake-build-system)
1167 (inputs
1168 `(("kwindowsystem" ,kwindowsystem)
1169 ("libxrender" ,libxrender)
1170 ("liblxqt" ,liblxqt)
1171 ("libqtxdg" ,libqtxdg)
1172 ("qtbase" ,qtbase)
1173 ("qtx11extras" ,qtx11extras)))
1174 (native-inputs
1175 `(("lxqt-build-tools" ,lxqt-build-tools)
1176 ("qttools" ,qttools)))
1177 (arguments
1178 '(#:tests? #f)) ; no tests
1179 (home-page "https://lxqt.github.io")
1180 (synopsis "Qt-based visual process status monitor")
1181 (description "@code{qps} is a monitor that displays the status of the
1182 processes currently in existence, much like code{top} or code{ps}.")
1183 (license license:gpl2+)))
1184
1185 (define-public qtermwidget
1186 (package
1187 (name "qtermwidget")
1188 (version "0.15.0")
1189 (source
1190 (origin
1191 (method url-fetch)
1192 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1193 version "/" name "-" version ".tar.xz"))
1194 (sha256
1195 (base32 "1vn3bbc99py0ak7z9s6p71n9cacpckz57a1p97iwb0p23g4zgjkf"))))
1196 (build-system cmake-build-system)
1197 (inputs
1198 `(("qtbase" ,qtbase)
1199 ("utf8proc" ,utf8proc)))
1200 (native-inputs
1201 `(("lxqt-build-tools" ,lxqt-build-tools)
1202 ("qttools" ,qttools)))
1203 (arguments
1204 '(#:tests? #f)) ; no tests
1205 (home-page "https://lxqt.github.io")
1206 (synopsis "The terminal widget for QTerminal")
1207 (description "QTermWidget is a terminal emulator widget for Qt 5.")
1208 (license license:gpl2+)))
1209
1210 (define-public qterminal
1211 (package
1212 (name "qterminal")
1213 (version "0.15.0")
1214 (source
1215 (origin
1216 (method url-fetch)
1217 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1218 version "/" name "-" version ".tar.xz"))
1219 (sha256
1220 (base32 "0r7xmwjpak47ayj7cj37bwrdlv1mx5nhqpccb5pbn2fh8slp8zsm"))))
1221 (build-system cmake-build-system)
1222 (inputs
1223 `(("qtbase" ,qtbase)
1224 ("qtx11extras" ,qtx11extras)
1225 ("qtermwidget" ,qtermwidget)))
1226 (native-inputs
1227 `(("lxqt-build-tools" ,lxqt-build-tools)
1228 ("qttools" ,qttools)))
1229 (arguments
1230 '(#:tests? #f)) ; no tests
1231 (home-page "https://lxqt.github.io")
1232 (synopsis "Lightweight Qt-based terminal emulator")
1233 (description "QTerminal is a lightweight Qt terminal emulator based on
1234 QTermWidget.")
1235 (license license:gpl2+)))
1236
1237 (define-public screengrab
1238 (package
1239 (name "screengrab")
1240 (version "2.0.1")
1241 (source
1242 (origin
1243 (method url-fetch)
1244 (uri (string-append "https://github.com/lxqt/screengrab/releases/download/"
1245 version "/screengrab-" version ".tar.xz"))
1246 (sha256
1247 (base32 "14znjw3d3gw02fsmhrjcj86l173m2ypl1x8hhba9ld23icr1gqwf"))))
1248 (build-system cmake-build-system)
1249 (inputs
1250 `(("kwindowsystem" ,kwindowsystem)
1251 ("libqtxdg" ,libqtxdg)
1252 ("qtbase" ,qtbase)
1253 ("qtsvg" ,qtsvg)
1254 ("qtx11extras" ,qtx11extras)))
1255 (native-inputs
1256 `(("pkg-config" ,pkg-config)
1257 ("qttools" ,qttools)))
1258 (arguments
1259 '(#:tests? #f)) ; no tests
1260 (home-page "https://lxqt.github.io")
1261 (synopsis "Crossplatform tool for fast making screenshots")
1262 (description "ScreenGrab is a program for fast creating screenshots, and
1263 easily publishing them on internet image hosting services.")
1264 (license license:gpl2+)))
1265
1266
1267 (define-public lxqt-archiver
1268 (package
1269 (name "lxqt-archiver")
1270 (version "0.2.0")
1271 (source
1272 (origin
1273 (method url-fetch)
1274 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1275 version "/" name "-" version ".tar.xz"))
1276 (sha256
1277 (base32 "1i725zaah0wv18j5fchg6isbh4b601filx549cq2hkzf2sylh9ff"))))
1278 (build-system cmake-build-system)
1279 (inputs
1280 `(("glib" ,glib)
1281 ("json-glib" ,json-glib)
1282 ("libfm-qt" ,libfm-qt)
1283 ("qtbase" ,qtbase)
1284 ("qtx11extras" ,qtx11extras)))
1285 (native-inputs
1286 `(("pkg-config" ,pkg-config)
1287 ("lxqt-build-tools" ,lxqt-build-tools)
1288 ("qttools" ,qttools)))
1289 (arguments
1290 '(#:tests? #f))
1291 (home-page "https://lxqt.github.io")
1292 (synopsis "Simple & lightweight desktop-agnostic Qt file archiver")
1293 (description
1294 "This package provides a Qt graphical interface to archiving programs
1295 like @command{tar} and @command{zip}.")
1296 (license license:gpl2+)))
1297
1298 (define-public lxqt-connman-applet
1299 ;; since the main developers didn't release any version yet, their
1300 ;; latest commit on `master` branch at the moment used for this version.
1301 (let ((commit "8a6cc14371a2f18f963e6a2996446082bb60f17d")
1302 (revision "0"))
1303 (package
1304 (name "lxqt-connman-applet")
1305 (version (git-version "0.15.0" revision commit))
1306 (source
1307 (origin
1308 (method git-fetch)
1309 (uri (git-reference
1310 (url (string-append "https://github.com/lxqt/" name ".git"))
1311 (commit commit)))
1312 (file-name (git-file-name name version))
1313 (sha256 (base32 "0br4bxfrl8k7lq84aq4grznlk8xzzjgkmd19bf9mwjr0a87gg72v"))))
1314 (build-system cmake-build-system)
1315 (inputs
1316 `(("kwindowsystem" ,kwindowsystem)
1317 ("qtbase" ,qtbase)
1318 ("qtsvg" ,qtsvg)
1319 ("liblxqt" ,liblxqt)
1320 ("qtx11extras" ,qtx11extras)
1321 ("libqtxdg" ,libqtxdg)))
1322 (native-inputs
1323 `(("lxqt-build-tools" ,lxqt-build-tools)
1324 ("qtlinguist" ,qttools)))
1325 (arguments
1326 `(#:tests? #f ; no tests
1327 #:phases
1328 (modify-phases %standard-phases
1329 (add-after 'unpack 'patch-translations-dir
1330 (lambda* (#:key outputs #:allow-other-keys)
1331 (substitute* "CMakeLists.txt"
1332 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
1333 (string-append (assoc-ref outputs "out")
1334 "/share/lxqt/translations"))
1335 (("\\$\\{LXQT_ETC_XDG_DIR\\}") "etc/xdg"))
1336 #t))
1337 (add-after 'unpack 'remove-definitions
1338 (lambda _
1339 (substitute* "CMakeLists.txt"
1340 (("include\\(LXQtCompilerSettings NO_POLICY_SCOPE\\)")
1341 "include(LXQtCompilerSettings NO_POLICY_SCOPE)
1342 remove_definitions(-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII)"))
1343 #t)))))
1344 (home-page "https://github.com/lxqt/lxqt-connman-applet")
1345 (synopsis "System-tray applet for connman")
1346 (description "This package provides a Qt-based system-tray applet for
1347 the network management tool Connman, originally developed for the LXQT
1348 desktop.")
1349 (license license:lgpl2.1+))))
1350
1351 ;; The LXQt Desktop Environment
1352
1353 (define-public lxqt
1354 (package
1355 (name "lxqt")
1356 (version (package-version lxqt-session))
1357 (source #f)
1358 (build-system trivial-build-system)
1359 (arguments '(#:builder (begin (mkdir %output) #t)))
1360 (propagated-inputs
1361 `(;; XDG
1362 ("desktop-file-utils" ,desktop-file-utils)
1363 ("hicolor-icon-theme" ,hicolor-icon-theme)
1364 ("xdg-user-dirs" ,xdg-user-dirs)
1365 ("xdg-utils" ,xdg-utils)
1366 ;; Base
1367 ;; TODO: qtsvg is needed for lxqt apps to display icons. Maybe it
1368 ;; should be added to their propagated-inputs?
1369 ("qtsvg" ,qtsvg)
1370 ;; Core
1371 ("lxqt-about" ,lxqt-about)
1372 ("lxqt-admin" ,lxqt-admin)
1373 ("lxqt-config" ,lxqt-config)
1374 ("lxqt-globalkeys" ,lxqt-globalkeys)
1375 ("lxqt-notificationd" ,lxqt-notificationd)
1376 ("lxqt-openssh-askpass" ,lxqt-openssh-askpass)
1377 ("lxqt-panel" ,lxqt-panel)
1378 ("lxqt-policykit" ,lxqt-policykit)
1379 ("lxqt-powermanagement" ,lxqt-powermanagement)
1380 ("lxqt-qtplugin" ,lxqt-qtplugin)
1381 ("lxqt-runner" ,lxqt-runner)
1382 ("lxqt-session" ,lxqt-session)
1383 ("lxqt-sudo" ,lxqt-sudo)
1384 ("lxqt-themes" ,lxqt-themes)
1385 ("pcmanfm-qt" ,pcmanfm-qt)
1386 ;; Extra
1387 ("compton" ,compton)
1388 ("compton-conf" ,compton-conf)
1389 ("font-dejavu" ,font-dejavu)
1390 ("lximage-qt" ,lximage-qt)
1391 ("obconf-qt" ,obconf-qt)
1392 ("openbox" ,openbox)
1393 ("oxygen-icons" ,oxygen-icons)
1394 ("pavucontrol-qt" ,pavucontrol-qt)
1395 ("qps" ,qps)
1396 ("qterminal" ,qterminal)))
1397 (synopsis "The Lightweight Qt Desktop Environment")
1398 (description "LXQt is a lightweight Qt desktop environment.")
1399 (home-page "https://lxqt.github.io")
1400 (license license:gpl2+)))