Merge branch 'wip-lisp' 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 ("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 _
853 (substitute* '("autostart/CMakeLists.txt"
854 "config/CMakeLists.txt")
855 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
856 "DESTINATION \"etc/xdg"))
857 #t))
858 ;; add write permission to lxqt-rc.xml file which is stored as read-only in store
859 (add-after 'unpack 'patch-openbox-permission
860 (lambda _
861 (substitute* "startlxqt.in"
862 (("cp \"\\$LXQT_DEFAULT_OPENBOX_CONFIG\" \"\\$XDG_CONFIG_HOME/openbox\"")
863 (string-append "cp \"$LXQT_DEFAULT_OPENBOX_CONFIG\" \"$XDG_CONFIG_HOME/openbox\"\n"
864 " # fix openbox permission issue\n"
865 " chmod u+w \"$XDG_CONFIG_HOME/openbox\"/*")))
866 #t))
867 (add-after 'unpack 'patch-translations-dir
868 (lambda* (#:key outputs #:allow-other-keys)
869 (substitute* '("lxqt-config-session/CMakeLists.txt"
870 "lxqt-leave/CMakeLists.txt"
871 "lxqt-session/CMakeLists.txt")
872 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
873 (string-append (assoc-ref outputs "out")
874 "/share/lxqt/translations")))
875 #t)))))
876 (home-page "https://lxqt.github.io")
877 (synopsis "Session manager for LXQt")
878 (description "lxqt-session provides the standard session manager
879 for the LXQt desktop environment.")
880 (license license:lgpl2.1+)))
881
882 (define-public lxqt-sudo
883 (package
884 (name "lxqt-sudo")
885 (version "0.15.0")
886 (source
887 (origin
888 (method url-fetch)
889 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
890 version "/" name "-" version ".tar.xz"))
891 (sha256
892 (base32 "1v4gzmld3zqi3y9pdy3hb8lq81jwbgi4ia00lbzccg8cm0m8n55w"))))
893 (build-system cmake-build-system)
894 (inputs
895 `(("kwindowsystem" ,kwindowsystem)
896 ("liblxqt" ,liblxqt)
897 ("libqtxdg" ,libqtxdg)
898 ("qtbase" ,qtbase)
899 ("qtsvg" ,qtsvg)
900 ("qtx11extras" ,qtx11extras)
901 ("sudo" ,sudo)))
902 (native-inputs
903 `(("pkg-config" ,pkg-config)
904 ("qttools" ,qttools)
905 ("lxqt-build-tools" ,lxqt-build-tools)))
906 (arguments
907 '(#:tests? #f ; no tests
908 #:phases
909 (modify-phases %standard-phases
910 (add-after 'unpack 'patch-translations-dir
911 (lambda* (#:key outputs #:allow-other-keys)
912 (substitute* "CMakeLists.txt"
913 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
914 (string-append (assoc-ref outputs "out")
915 "/share/lxqt/translations")))
916 #t)))))
917 (home-page "https://lxqt.github.io")
918 (synopsis "GUI frontend for sudo/su")
919 (description "lxqt-sudo is a graphical front-end of commands sudo and su
920 respectively. As such it enables regular users to launch applications with
921 permissions of other users including root.")
922 (license license:lgpl2.1+)))
923
924 (define-public lxqt-themes
925 (package
926 (name "lxqt-themes")
927 (version "0.15.0")
928 (source
929 (origin
930 (method url-fetch)
931 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
932 version "/" name "-" version ".tar.xz"))
933 (sha256
934 (base32 "1dzv60q1dhi666ajh218smkp3ybh5vl2mxyvlbyc9zwvhgx3f0d1"))))
935 (build-system cmake-build-system)
936 (native-inputs
937 `(("lxqt-build-tools" ,lxqt-build-tools)))
938 (arguments
939 `(#:tests? #f ; no tests
940 #:phases
941 (modify-phases %standard-phases
942 (add-after 'unpack 'patch-source
943 (lambda _
944 (substitute* '("CMakeLists.txt")
945 (("DESTINATION \"\\$\\{LXQT_GRAPHICS_DIR\\}")
946 "DESTINATION \"share/lxqt/graphics"))
947 (substitute* '("themes/CMakeLists.txt")
948 (("DESTINATION \"\\$\\{LXQT_SHARE_DIR\\}")
949 "DESTINATION \"share/lxqt"))
950 #t)))))
951 (home-page "https://lxqt.github.io")
952 (synopsis "Themes, graphics and icons for LXQt")
953 (description "This package comprises a number of graphic files and themes
954 for LXQt.")
955 ;; The whole package is released under LGPL 2.1+, while the LXQt logo is
956 ;; licensed under CC-BY-SA 3.0.
957 (license license:lgpl2.1+)))
958
959
960 ;; File Manager
961
962 (define-public libfm-qt
963 (package
964 (name "libfm-qt")
965 (version "0.15.1")
966 (source
967 (origin
968 (method url-fetch)
969 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
970 version "/" name "-" version ".tar.xz"))
971 (sha256
972 (base32 "034kc8i571m31fksprih6iiykxj85j98fmm6nrkmlwql45kr6rvs"))))
973 (build-system cmake-build-system)
974 (arguments
975 '(#:tests? #f)) ; no tests
976 (inputs
977 `(("glib" ,glib)
978 ("libexif" ,libexif)
979 ("libfm" ,libfm)
980 ("libxcb" ,libxcb)
981 ("menu-cache" ,menu-cache)
982 ("pcre" ,pcre)
983 ("qtbase" ,qtbase)
984 ("qtx11extras" ,qtx11extras)))
985 (native-inputs
986 `(("pkg-config" ,pkg-config)
987 ("lxqt-build-tools" ,lxqt-build-tools)
988 ("qttools" ,qttools)))
989 (home-page "https://lxqt.github.io")
990 (synopsis "Qt binding for libfm")
991 (description "libfm-qt is the Qt port of libfm, a library providing
992 components to build desktop file managers which belongs to LXDE.")
993 (license license:lgpl2.1+)))
994
995 (define-public pcmanfm-qt
996 (package
997 (name "pcmanfm-qt")
998 (version "0.15.1")
999 (source
1000 (origin
1001 (method url-fetch)
1002 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1003 version "/" name "-" version ".tar.xz"))
1004 (sha256
1005 (base32 "1izc60hrc16sv2ig9psr3br9iq8nln6a2ycfspzycgpk8rh0f6jd"))))
1006 (build-system cmake-build-system)
1007 (inputs
1008 `(("libfm-qt" ,libfm-qt)
1009 ("qtbase" ,qtbase)
1010 ("qtx11extras" ,qtx11extras)))
1011 (native-inputs
1012 `(("pkg-config" ,pkg-config)
1013 ("qttools" ,qttools)
1014 ("lxqt-build-tools" ,lxqt-build-tools)))
1015 (arguments
1016 '(#:tests? #f ; no tests
1017 #:phases
1018 (modify-phases %standard-phases
1019 (add-after 'unpack 'patch-source
1020 (lambda _
1021 (substitute* '("autostart/CMakeLists.txt")
1022 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1023 "DESTINATION \"etc/xdg"))
1024 #t)))))
1025 (home-page "https://lxqt.github.io")
1026 (synopsis "File manager and desktop icon manager")
1027 (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of
1028 LXDE.")
1029 (license license:gpl2+)))
1030
1031
1032 ;; Extra
1033
1034 (define-public compton-conf
1035 (package
1036 (name "compton-conf")
1037 (version "0.15.0")
1038 (source
1039 (origin
1040 (method url-fetch)
1041 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1042 version "/" name "-" version ".tar.xz"))
1043 (sha256
1044 (base32 "1ii1bans7wdafm9rmxvsdqp3ad4cj0pa8kf92plbmbm3nycpf1q9"))))
1045 (build-system cmake-build-system)
1046 (inputs
1047 `(("libconfig" ,libconfig)
1048 ("qtbase" ,qtbase)))
1049 (native-inputs
1050 `(("lxqt-build-tools" ,lxqt-build-tools)
1051 ("pkg-config" ,pkg-config)
1052 ("qttools" ,qttools)))
1053 (arguments
1054 '(#:tests? #f ; no tests
1055 #:phases
1056 (modify-phases %standard-phases
1057 (add-after 'unpack 'patch-source
1058 (lambda _
1059 (substitute* '("autostart/CMakeLists.txt")
1060 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
1061 "DESTINATION \"etc/xdg"))
1062 #t)))))
1063 (home-page "https://lxqt.github.io")
1064 (synopsis "GUI configuration tool for compton X composite manager")
1065 (description "@code{compton-conf} is a configuration tool for X composite
1066 manager Compton.")
1067 (license license:lgpl2.1+)))
1068
1069 (define-public lximage-qt
1070 (package
1071 (name "lximage-qt")
1072 (version "0.15.0")
1073 (source
1074 (origin
1075 (method url-fetch)
1076 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1077 version "/" name "-" version ".tar.xz"))
1078 (sha256
1079 (base32 "02iyymb8ywlzvv69lga5a86b7kh4v78zw6qzq5kcnjp1rpj2rjrk"))))
1080 (build-system cmake-build-system)
1081 (inputs
1082 `(("libexif" ,libexif)
1083 ("libfm-qt" ,libfm-qt)
1084 ("qtbase" ,qtbase)
1085 ("qtsvg" ,qtsvg)
1086 ("qtx11extras" ,qtx11extras)))
1087 (native-inputs
1088 `(("pkg-config" ,pkg-config)
1089 ("lxqt-build-tools" ,lxqt-build-tools)
1090 ("qttools" ,qttools)))
1091 (arguments
1092 '(#:tests? #f)) ; no tests
1093 (home-page "https://lxqt.github.io")
1094 (synopsis "The image viewer and screenshot tool for lxqt")
1095 (description "LXImage-Qt is the Qt port of LXImage, a simple and fast
1096 image viewer.")
1097 (license license:gpl2+)))
1098
1099 (define-public obconf-qt
1100 (package
1101 (name "obconf-qt")
1102 (version "0.15.0")
1103 (source
1104 (origin
1105 (method url-fetch)
1106 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1107 version "/" name "-" version ".tar.xz"))
1108 (sha256
1109 (base32 "1vcv2y54hgxcf76cr775632kajmvz3v4x1q3r6p1lzs9s7lmrh6q"))))
1110 (build-system cmake-build-system)
1111 (inputs
1112 `(("imlib2" ,imlib2)
1113 ("libsm" ,libsm)
1114 ("librsvg" ,librsvg)
1115 ("libxft" ,libxft)
1116 ("libxml2" ,libxml2)
1117 ("openbox" ,openbox)
1118 ("pango" ,pango)
1119 ("pcre" ,pcre)
1120 ("qtbase" ,qtbase)
1121 ("qtx11extras" ,qtx11extras)))
1122 (native-inputs
1123 `(("lxqt-build-tools" ,lxqt-build-tools)
1124 ("pkg-config" ,pkg-config)
1125 ("qttools" ,qttools)))
1126 (arguments
1127 '(#:tests? #f)) ; no tests
1128 (home-page "https://lxqt.github.io")
1129 (synopsis "Openbox configuration tool")
1130 (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for
1131 window manager OpenBox.")
1132 (license license:gpl2+)))
1133
1134 (define-public pavucontrol-qt
1135 (package
1136 (name "pavucontrol-qt")
1137 (version "0.15.0")
1138 (source
1139 (origin
1140 (method url-fetch)
1141 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1142 version "/" name "-" version ".tar.xz"))
1143 (sha256
1144 (base32 "15wknwmb4640r5fm4wiq6xa70qa2djay2806wyvajh11xjmqy566"))))
1145 (build-system cmake-build-system)
1146 (inputs
1147 `(("glib" ,glib)
1148 ("pcre" ,pcre)
1149 ("pulseaudio" ,pulseaudio)
1150 ("qtbase" ,qtbase)
1151 ("qtx11extras" ,qtx11extras)))
1152 (native-inputs
1153 `(("pkg-config" ,pkg-config)
1154 ("lxqt-build-tools" ,lxqt-build-tools)
1155 ("qttools" ,qttools)))
1156 (arguments
1157 '(#:tests? #f)) ; no tests
1158 (home-page "https://lxqt.github.io")
1159 (synopsis "Pulseaudio mixer in Qt")
1160 (description "@code{pavucontrol-qt} is the Qt port of volume control
1161 @code{pavucontrol} of sound server @code{PulseAudio}.")
1162 (license license:gpl2+)))
1163
1164 (define-public qps
1165 (package
1166 (name "qps")
1167 (version "2.1.0")
1168 (source
1169 (origin
1170 (method url-fetch)
1171 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1172 version "/" name "-" version ".tar.xz"))
1173 (sha256
1174 (base32 "0yym1bpglz8vha28x7k21fxx1vlsq19m3fyhk2cq3pwq3nqijwp7"))))
1175 (build-system cmake-build-system)
1176 (inputs
1177 `(("kwindowsystem" ,kwindowsystem)
1178 ("libxrender" ,libxrender)
1179 ("liblxqt" ,liblxqt)
1180 ("libqtxdg" ,libqtxdg)
1181 ("qtbase" ,qtbase)
1182 ("qtx11extras" ,qtx11extras)))
1183 (native-inputs
1184 `(("lxqt-build-tools" ,lxqt-build-tools)
1185 ("qttools" ,qttools)))
1186 (arguments
1187 '(#:tests? #f)) ; no tests
1188 (home-page "https://lxqt.github.io")
1189 (synopsis "Qt-based visual process status monitor")
1190 (description "@code{qps} is a monitor that displays the status of the
1191 processes currently in existence, much like code{top} or code{ps}.")
1192 (license license:gpl2+)))
1193
1194 (define-public qtermwidget
1195 (package
1196 (name "qtermwidget")
1197 (version "0.15.0")
1198 (source
1199 (origin
1200 (method url-fetch)
1201 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1202 version "/" name "-" version ".tar.xz"))
1203 (sha256
1204 (base32 "1vn3bbc99py0ak7z9s6p71n9cacpckz57a1p97iwb0p23g4zgjkf"))))
1205 (build-system cmake-build-system)
1206 (inputs
1207 `(("qtbase" ,qtbase)
1208 ("utf8proc" ,utf8proc)))
1209 (native-inputs
1210 `(("lxqt-build-tools" ,lxqt-build-tools)
1211 ("qttools" ,qttools)))
1212 (arguments
1213 '(#:tests? #f)) ; no tests
1214 (home-page "https://lxqt.github.io")
1215 (synopsis "The terminal widget for QTerminal")
1216 (description "QTermWidget is a terminal emulator widget for Qt 5.")
1217 (license license:gpl2+)))
1218
1219 (define-public qterminal
1220 (package
1221 (name "qterminal")
1222 (version "0.15.0")
1223 (source
1224 (origin
1225 (method url-fetch)
1226 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1227 version "/" name "-" version ".tar.xz"))
1228 (sha256
1229 (base32 "0r7xmwjpak47ayj7cj37bwrdlv1mx5nhqpccb5pbn2fh8slp8zsm"))))
1230 (build-system cmake-build-system)
1231 (inputs
1232 `(("qtbase" ,qtbase)
1233 ("qtx11extras" ,qtx11extras)
1234 ("qtermwidget" ,qtermwidget)))
1235 (native-inputs
1236 `(("lxqt-build-tools" ,lxqt-build-tools)
1237 ("qttools" ,qttools)))
1238 (arguments
1239 '(#:tests? #f)) ; no tests
1240 (home-page "https://lxqt.github.io")
1241 (synopsis "Lightweight Qt-based terminal emulator")
1242 (description "QTerminal is a lightweight Qt terminal emulator based on
1243 QTermWidget.")
1244 (license license:gpl2+)))
1245
1246 (define-public screengrab
1247 (package
1248 (name "screengrab")
1249 (version "2.0.1")
1250 (source
1251 (origin
1252 (method url-fetch)
1253 (uri (string-append "https://github.com/lxqt/screengrab/releases/download/"
1254 version "/screengrab-" version ".tar.xz"))
1255 (sha256
1256 (base32 "14znjw3d3gw02fsmhrjcj86l173m2ypl1x8hhba9ld23icr1gqwf"))))
1257 (build-system cmake-build-system)
1258 (inputs
1259 `(("kwindowsystem" ,kwindowsystem)
1260 ("libqtxdg" ,libqtxdg)
1261 ("qtbase" ,qtbase)
1262 ("qtsvg" ,qtsvg)
1263 ("qtx11extras" ,qtx11extras)))
1264 (native-inputs
1265 `(("pkg-config" ,pkg-config)
1266 ("qttools" ,qttools)))
1267 (arguments
1268 '(#:tests? #f)) ; no tests
1269 (home-page "https://lxqt.github.io")
1270 (synopsis "Crossplatform tool for fast making screenshots")
1271 (description "ScreenGrab is a program for fast creating screenshots, and
1272 easily publishing them on internet image hosting services.")
1273 (license license:gpl2+)))
1274
1275
1276 (define-public lxqt-archiver
1277 (package
1278 (name "lxqt-archiver")
1279 (version "0.2.0")
1280 (source
1281 (origin
1282 (method url-fetch)
1283 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1284 version "/" name "-" version ".tar.xz"))
1285 (sha256
1286 (base32 "1i725zaah0wv18j5fchg6isbh4b601filx549cq2hkzf2sylh9ff"))))
1287 (build-system cmake-build-system)
1288 (inputs
1289 `(("glib" ,glib)
1290 ("json-glib" ,json-glib)
1291 ("libfm-qt" ,libfm-qt)
1292 ("qtbase" ,qtbase)
1293 ("qtx11extras" ,qtx11extras)))
1294 (native-inputs
1295 `(("pkg-config" ,pkg-config)
1296 ("lxqt-build-tools" ,lxqt-build-tools)
1297 ("qttools" ,qttools)))
1298 (arguments
1299 '(#:tests? #f))
1300 (home-page "https://lxqt.github.io")
1301 (synopsis "Simple & lightweight desktop-agnostic Qt file archiver")
1302 (description
1303 "This package provides a Qt graphical interface to archiving programs
1304 like @command{tar} and @command{zip}.")
1305 (license license:gpl2+)))
1306
1307 (define-public lxqt-connman-applet
1308 ;; since the main developers didn't release any version yet, their
1309 ;; latest commit on `master` branch at the moment used for this version.
1310 (let ((commit "8a6cc14371a2f18f963e6a2996446082bb60f17d")
1311 (revision "0"))
1312 (package
1313 (name "lxqt-connman-applet")
1314 (version (git-version "0.15.0" revision commit))
1315 (source
1316 (origin
1317 (method git-fetch)
1318 (uri (git-reference
1319 (url (string-append "https://github.com/lxqt/" name ".git"))
1320 (commit commit)))
1321 (file-name (git-file-name name version))
1322 (sha256 (base32 "0br4bxfrl8k7lq84aq4grznlk8xzzjgkmd19bf9mwjr0a87gg72v"))))
1323 (build-system cmake-build-system)
1324 (inputs
1325 `(("kwindowsystem" ,kwindowsystem)
1326 ("qtbase" ,qtbase)
1327 ("qtsvg" ,qtsvg)
1328 ("liblxqt" ,liblxqt)
1329 ("qtx11extras" ,qtx11extras)
1330 ("libqtxdg" ,libqtxdg)))
1331 (native-inputs
1332 `(("lxqt-build-tools" ,lxqt-build-tools)
1333 ("qtlinguist" ,qttools)))
1334 (arguments
1335 `(#:tests? #f ; no tests
1336 #:phases
1337 (modify-phases %standard-phases
1338 (add-after 'unpack 'patch-translations-dir
1339 (lambda* (#:key outputs #:allow-other-keys)
1340 (substitute* "CMakeLists.txt"
1341 (("\\$\\{LXQT_TRANSLATIONS_DIR\\}")
1342 (string-append (assoc-ref outputs "out")
1343 "/share/lxqt/translations"))
1344 (("\\$\\{LXQT_ETC_XDG_DIR\\}") "etc/xdg"))
1345 #t))
1346 (add-after 'unpack 'remove-definitions
1347 (lambda _
1348 (substitute* "CMakeLists.txt"
1349 (("include\\(LXQtCompilerSettings NO_POLICY_SCOPE\\)")
1350 "include(LXQtCompilerSettings NO_POLICY_SCOPE)
1351 remove_definitions(-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII)"))
1352 #t)))))
1353 (home-page "https://github.com/lxqt/lxqt-connman-applet")
1354 (synopsis "System-tray applet for connman")
1355 (description "This package provides a Qt-based system-tray applet for
1356 the network management tool Connman, originally developed for the LXQT
1357 desktop.")
1358 (license license:lgpl2.1+))))
1359
1360 ;; The LXQt Desktop Environment
1361
1362 (define-public lxqt
1363 (package
1364 (name "lxqt")
1365 (version (package-version lxqt-session))
1366 (source #f)
1367 (build-system trivial-build-system)
1368 (arguments '(#:builder (begin (mkdir %output) #t)))
1369 (propagated-inputs
1370 `(;; XDG
1371 ("desktop-file-utils" ,desktop-file-utils)
1372 ("hicolor-icon-theme" ,hicolor-icon-theme)
1373 ("xdg-user-dirs" ,xdg-user-dirs)
1374 ("xdg-utils" ,xdg-utils)
1375 ;; Base
1376 ;; TODO: qtsvg is needed for lxqt apps to display icons. Maybe it
1377 ;; should be added to their propagated-inputs?
1378 ("qtsvg" ,qtsvg)
1379 ;; Core
1380 ("lxqt-about" ,lxqt-about)
1381 ("lxqt-admin" ,lxqt-admin)
1382 ("lxqt-config" ,lxqt-config)
1383 ("lxqt-globalkeys" ,lxqt-globalkeys)
1384 ("lxqt-notificationd" ,lxqt-notificationd)
1385 ("lxqt-openssh-askpass" ,lxqt-openssh-askpass)
1386 ("lxqt-panel" ,lxqt-panel)
1387 ("lxqt-policykit" ,lxqt-policykit)
1388 ("lxqt-powermanagement" ,lxqt-powermanagement)
1389 ("lxqt-qtplugin" ,lxqt-qtplugin)
1390 ("lxqt-runner" ,lxqt-runner)
1391 ("lxqt-session" ,lxqt-session)
1392 ("lxqt-sudo" ,lxqt-sudo)
1393 ("lxqt-themes" ,lxqt-themes)
1394 ("pcmanfm-qt" ,pcmanfm-qt)
1395 ;; Extra
1396 ("compton" ,compton)
1397 ("compton-conf" ,compton-conf)
1398 ("font-dejavu" ,font-dejavu)
1399 ("lximage-qt" ,lximage-qt)
1400 ("obconf-qt" ,obconf-qt)
1401 ("openbox" ,openbox)
1402 ("oxygen-icons" ,oxygen-icons)
1403 ("pavucontrol-qt" ,pavucontrol-qt)
1404 ("qps" ,qps)
1405 ("qterminal" ,qterminal)))
1406 (synopsis "The Lightweight Qt Desktop Environment")
1407 (description "LXQt is a lightweight Qt desktop environment.")
1408 (home-page "https://lxqt.github.io")
1409 (license license:gpl2+)))