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