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 Nils Gillmann <ng0@n0.is>
7 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
8 ;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
10 ;;; This file is part of GNU Guix.
12 ;;; GNU Guix is free software; you can redistribute it and/or modify it
13 ;;; under the terms of the GNU General Public License as published by
14 ;;; the Free Software Foundation; either version 3 of the License, or (at
15 ;;; your option) any later version.
17 ;;; GNU Guix is distributed in the hope that it will be useful, but
18 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
19 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 ;;; GNU General Public License for more details.
22 ;;; You should have received a copy of the GNU General Public License
23 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
25 (define-module (gnu packages lxqt)
26 #:use-module (guix download)
27 #:use-module ((guix licenses) #:prefix license:)
28 #:use-module (guix packages)
29 #:use-module (guix utils)
30 #:use-module (guix build-system cmake)
31 #:use-module (guix build-system gnu)
32 #:use-module (guix build-system trivial)
33 #:use-module (gnu packages)
34 #:use-module (gnu packages admin)
35 #:use-module (gnu packages compression)
36 #:use-module (gnu packages documentation)
37 #:use-module (gnu packages compton)
38 #:use-module (gnu packages fonts)
39 #:use-module (gnu packages freedesktop)
40 #:use-module (gnu packages glib)
41 #:use-module (gnu packages gnome)
42 #:use-module (gnu packages gtk)
43 #:use-module (gnu packages image)
44 #:use-module (gnu packages kde)
45 #:use-module (gnu packages kde-frameworks)
46 #:use-module (gnu packages linux)
47 #:use-module (gnu packages perl)
48 #:use-module (gnu packages lxde)
49 #:use-module (gnu packages maths)
50 #:use-module (gnu packages openbox)
51 #:use-module (gnu packages pcre)
52 #:use-module (gnu packages photo)
53 #:use-module (gnu packages pkg-config)
54 #:use-module (gnu packages polkit)
55 #:use-module (gnu packages pulseaudio)
56 #:use-module (gnu packages qt)
57 #:use-module (gnu packages textutils)
58 #:use-module (gnu packages xdisorg)
59 #:use-module (gnu packages xml)
60 #:use-module (gnu packages xorg))
63 ;; Third party libraries
65 (define-public libdbusmenu-qt
67 (name "libdbusmenu-qt")
68 (version "0.9.3+16.04.20160218-0ubuntu1")
72 ;; Download from github rather than launchpad beacuse launchpad trunk
73 ;; tarball hash is not deterministic.
74 (uri (string-append "https://github.com/unity8-team/" name
75 "/archive/" version ".tar.gz"))
77 (base32 "0abwyggnpg50sa9cxphscp5zdkv9nxqnlav55vj21df6q1h3jb5w"))
78 (file-name (string-append name "-" version ".tar.gz"))))
79 (build-system cmake-build-system)
81 ;; XXX: Tests require a dbus session and some icons.
84 `(("doxygen" ,doxygen)))
86 `(("qtbase" ,qtbase)))
87 (home-page "https://launchpad.net/libdbusmenu-qt")
88 (synopsis "Qt implementation of the DBusMenu spec")
89 (description "This library provides a Qt implementation of the DBusMenu
90 protocol. The DBusMenu protocol makes it possible for applications to export
91 and import their menus over DBus.")
92 (license license:lgpl2.1+)))
94 (define-public libstatgrab
101 (uri (string-append "https://ftp.i-scream.org/pub/i-scream/libstatgrab/"
102 name "-" version ".tar.gz"))
104 (base32 "1azinx2yzs442ycwq6p15skl3mscmqj7fd5hq7fckhjp92735s83"))))
105 (build-system gnu-build-system)
107 '(#:configure-flags '("--enable-tests")))
111 (home-page "https://www.i-scream.org/libstatgrab/")
112 (synopsis "Provides access to statistics about the system")
113 (description "libstatgrab is a library that provides cross platform access
114 to statistics about the system on which it's run.")
115 ;; Libraries are under LGPL2.1+, and programs under GPLv2+.
116 (license license:gpl2+)))
121 (define-public lxqt-build-tools
123 (name "lxqt-build-tools")
128 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
129 version "/" name "-" version ".tar.xz"))
131 (base32 "13b5x26p6ycnwzlgg1cgvlc88wjrjmlb3snrrmzh0xgh9h6hhvd6"))))
132 (build-system cmake-build-system)
134 `(#:tests? #f ; no tests
136 ;; 'startlxqt' will add LXQT_DATA_DIR to XDG_DATA_DIRS,
137 ;; LXQT_ETC_XDG_DIR to XDG_CONFIG_DIRS, and 'lxqt-about' will report
138 ;; LXQT_ETC_XDG_DIR in its "Technical Info".
139 '("-DLXQT_DATA_DIR=/run/current-system/profile/share"
140 "-DLXQT_ETC_XDG_DIR=/run/current-system/profile/etc/xdg")))
142 `(("pkg-config" ,pkg-config)
145 `(("qtbase" ,qtbase)))
146 (synopsis "LXQt Build tools")
148 "Lxqt-build-tools is providing several tools needed to build LXQt
149 itself as well as other components maintained by the LXQt project.")
150 (home-page "https://lxqt.org")
151 (license license:lgpl2.1+)))
153 (define-public libqtxdg
161 "https://github.com/lxqt/" name "/releases/download/"
162 version "/" name "-" version ".tar.xz"))
164 (base32 "0lq548pa69hfvnbj2ypba5ygm8n6v6g7bqqm8p5g538l1l3394cl"))))
165 (build-system cmake-build-system)
169 "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=lib/qt5/plugins/iconengines")
171 (modify-phases %standard-phases
172 (add-before 'check 'pre-check
174 ;; Run the tests offscreen.
175 (setenv "QT_QPA_PLATFORM" "offscreen")
178 ;; required by Qt5XdgIconLoader.pc
181 (home-page "https://github.com/lxqt/libqtxdg")
182 (synopsis "Qt implementation of freedesktop.org xdg specifications")
183 (description "Libqtxdg implements the freedesktop.org xdg specifications
185 (license license:lgpl2.1+)))
187 (define-public liblxqt
195 "https://github.com/lxqt/" name "/releases/download/"
196 version "/" name "-" version ".tar.xz"))
198 (base32 "0fba0nq5b9fvvmklcikcd4nwhzlp5d6k1q1f80r34kncdzfvj7dl"))))
199 (build-system cmake-build-system)
201 `(#:tests? #f ; no tests
203 ;; TODO: prefetch translations files from 'lxqt-l10n'.
204 '("-DPULL_TRANSLATIONS=NO")
206 (modify-phases %standard-phases
207 (add-after 'unpack 'patch-source
209 (substitute* "CMakeLists.txt"
210 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
211 "DESTINATION \"share/polkit-1/actions"))
214 `(("kwindowsystem" ,kwindowsystem)
215 ("libqtxdg" ,libqtxdg)
216 ("libxscrnsaver" ,libxscrnsaver)
217 ("polkit-qt" ,polkit-qt)
219 ("qtx11extras" ,qtx11extras)))
221 `(("lxqt-build-tools" ,lxqt-build-tools)
222 ("qttools" ,qttools)))
223 (home-page "https://lxqt.org/")
224 (synopsis "Core utility library for all LXQt components")
225 (description "liblxqt provides the basic libraries shared by the
226 components of the LXQt desktop environment.")
227 (license license:lgpl2.1+)))
229 (define-public libsysstat
236 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
237 version "/" name "-" version ".tar.xz"))
239 (base32 "0ngz8v3bixsdg96d5ipcyxd6nsrg52974xdxy9rnimahlv1yaxn3"))))
240 (build-system cmake-build-system)
241 (arguments '(#:tests? #f)) ; no tests
243 `(("qtbase" ,qtbase)))
245 `(("lxqt-build-tools" ,lxqt-build-tools)))
246 (home-page "https://lxqt.org/")
247 (synopsis "Library used to query system info and statistics")
248 (description "libsysstat is a library to query system information like CPU
249 and memory usage or network traffic.")
250 (license license:lgpl2.1+)))
255 (define-public lxqt-about
262 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
263 version "/" name "-" version ".tar.xz"))
265 (base32 "08imj7p77ifzfxnn8c482mhrvfx9gi0rb43ab5rw1rkmfvax2n5w"))))
266 (build-system cmake-build-system)
268 `(("kwindowsystem" ,kwindowsystem)
270 ("libqtxdg" ,libqtxdg)
273 ("qtx11extras" ,qtx11extras)))
275 `(("lxqt-build-tools" ,lxqt-build-tools)
276 ("qttools" ,qttools)))
278 '(#:tests? #f ; no tests
280 ;; TODO: prefetch translations files from 'lxqt-l10n'.
281 '("-DPULL_TRANSLATIONS=NO")))
282 (home-page "https://lxqt.org")
283 (synopsis "Provides information about LXQt and the system")
284 (description "lxqt-about is a dialogue window providing information about
285 LXQt and the system it's running on.")
286 (license license:lgpl2.1+)))
288 (define-public lxqt-admin
295 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
296 version "/" name "-" version ".tar.xz"))
298 (base32 "0qvpv668ja83ydbdrlal1596xhag3xlkbd6qlh9xwdpb7nysvns1"))))
299 (build-system cmake-build-system)
301 `(("kwindowsystem" ,kwindowsystem)
303 ("libqtxdg" ,libqtxdg)
304 ("polkit-qt" ,polkit-qt)
306 ("qtx11extras" ,qtx11extras)))
308 `(("lxqt-build-tools" ,lxqt-build-tools)
309 ("qttools" ,qttools)))
311 '(#:tests? #f ; no tests
313 ;; TODO: prefetch translations files from 'lxqt-l10n'.
314 '("-DPULL_TRANSLATIONS=NO")
316 (modify-phases %standard-phases
317 (add-after 'unpack 'patch-source
319 (substitute* "lxqt-admin-user/CMakeLists.txt"
320 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
321 "DESTINATION \"share/polkit-1/actions"))
323 (home-page "https://lxqt.org")
324 (synopsis "LXQt system administration tool")
325 (description "lxqt-admin is providing two GUI tools to adjust settings of
326 the operating system LXQt is running on.")
327 (license license:lgpl2.1+)))
329 (define-public lxqt-config
336 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
337 version "/" name "-" version ".tar.xz"))
339 (base32 "0rizhl2v41kpgp57a61r6nmwcdw8nh9hprrrf33nfrdw8hpwxb95"))))
340 (build-system cmake-build-system)
342 `(("kwindowsystem" ,kwindowsystem)
343 ("libkscreen" ,libkscreen)
345 ("libqtxdg" ,libqtxdg)
346 ("libxcursor" ,libxcursor)
349 ("qtx11extras" ,qtx11extras)
353 `(("pkg-config" ,pkg-config)
354 ("lxqt-build-tools" ,lxqt-build-tools)
355 ("qttools" ,qttools)))
357 '(#:tests? #f ; no tests
359 ;; TODO: prefetch translations files from 'lxqt-l10n'.
360 '("-DPULL_TRANSLATIONS=NO")
362 (modify-phases %standard-phases
363 (add-after 'unpack 'patch-source
365 (substitute* '("src/CMakeLists.txt")
366 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
367 "DESTINATION \"etc/xdg"))
369 (home-page "https://lxqt.org")
370 (synopsis "Tools to configure LXQt and the underlying operating system")
371 (description "lxqt-config is providing several tools involved in the
372 configuration of both LXQt and the underlying operating system.")
373 (license license:lgpl2.1+)))
375 (define-public lxqt-globalkeys
377 (name "lxqt-globalkeys")
382 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
383 version "/" name "-" version ".tar.xz"))
385 (base32 "1gyvcjbhi7zpvgz1sf773dv9gc35hx5fz023njp9r4vl0dpcavgd"))))
386 (build-system cmake-build-system)
388 `(("kwindowsystem" ,kwindowsystem)
390 ("libqtxdg" ,libqtxdg)
393 ("qtx11extras" ,qtx11extras)))
395 `(("pkg-config" ,pkg-config)
397 ("lxqt-build-tools" ,lxqt-build-tools)))
399 '(#:tests? #f ; no tests
401 ;; TODO: prefetch translations files from 'lxqt-l10n'.
402 '("-DPULL_TRANSLATIONS=NO")
404 (modify-phases %standard-phases
405 (add-after 'unpack 'patch-source
407 (substitute* '("autostart/CMakeLists.txt"
408 "xdg/CMakeLists.txt")
409 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
410 "DESTINATION \"etc/xdg"))
412 (home-page "https://lxqt.org/")
413 (synopsis "Daemon used to register global keyboard shortcuts")
414 (description "lxqt-globalkeys is providing tools to set global keyboard
415 shortcuts in LXQt sessions, that is shortcuts which apply to the LXQt session
416 as a whole and are not limited to distinct applications.")
417 (license license:lgpl2.1+)))
419 (define-public lxqt-notificationd
421 (name "lxqt-notificationd")
426 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
427 version "/" name "-" version ".tar.xz"))
429 (base32 "1l0hdbvghyhqgvy4pih7rvz26bc6yc8a3l1bdj11hnkw62h1i7d6"))))
430 (build-system cmake-build-system)
432 `(("kwindowsystem" ,kwindowsystem)
434 ("libqtxdg" ,libqtxdg)
437 ("qtx11extras" ,qtx11extras)))
439 `(("lxqt-build-tools" ,lxqt-build-tools)
440 ("qttools" ,qttools)))
442 '(#:tests? #f ; no test target
444 ;; TODO: prefetch translations files from 'lxqt-l10n'.
445 '("-DPULL_TRANSLATIONS=NO")
447 (modify-phases %standard-phases
448 (add-after 'unpack 'patch-source
450 (substitute* '("autostart/CMakeLists.txt")
451 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
452 "DESTINATION \"etc/xdg"))
454 (home-page "https://lxqt.org/")
455 (synopsis "The LXQt notification daemon")
456 (description "lxqt-notificationd is LXQt's implementation of a daemon
457 according to the Desktop Notifications Specification.")
458 (license license:lgpl2.1+)))
460 (define-public lxqt-openssh-askpass
462 (name "lxqt-openssh-askpass")
467 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
468 version "/" name "-" version ".tar.xz"))
470 (base32 "0l2272gya8jgv71bvg2hz37lnhiznv4ng3j0p6j79f99hwb5ygpk"))))
471 (build-system cmake-build-system)
473 `(("kwindowsystem" ,kwindowsystem)
475 ("libqtxdg" ,libqtxdg)
478 ("qtx11extras" ,qtx11extras)))
480 `(("lxqt-build-tools" ,lxqt-build-tools)
481 ("qttools" ,qttools)))
483 '(#:tests? #f ; no tests
485 ;; TODO: prefetch translations files from 'lxqt-l10n'.
486 '("-DPULL_TRANSLATIONS=NO")))
487 (home-page "https://lxqt.org/")
488 (synopsis "GUI to query passwords on behalf of SSH agents")
489 (description "lxqt-openssh-askpass is a GUI to query credentials on behalf
491 (license license:lgpl2.1+)))
493 (define-public lxqt-panel
500 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
501 version "/" name "-" version ".tar.xz"))
503 (base32 "1qraigzq7nc5a2q6f5ybxwx07gxffa3m3bg7fiv6ppwss51xqfd1"))))
504 (build-system cmake-build-system)
506 `(("alsa-lib" ,alsa-lib)
507 ("kguiaddons" ,kguiaddons)
508 ("kwindowsystem" ,kwindowsystem)
509 ("libdbusmenu-qt" ,libdbusmenu-qt)
511 ("libqtxdg" ,libqtxdg)
512 ("libstatgrab" ,libstatgrab)
513 ("libsysstat", libsysstat)
514 ("libxcomposite" ,libxcomposite)
515 ("libxdamage" ,libxdamage)
516 ("libxkbcommon" ,libxkbcommon)
517 ("libxrender" ,libxrender)
518 ("lm-sensors" ,lm-sensors "lib")
519 ("lxqt-globalkeys" ,lxqt-globalkeys)
521 ("pulseaudio" ,pulseaudio)
524 ("qtx11extras" ,qtx11extras)
526 ("xcb-util" ,xcb-util)))
528 `(("pkg-config" ,pkg-config)
529 ("lxqt-build-tools" ,lxqt-build-tools)
530 ("qttools" ,qttools)))
532 '(#:tests? #f ; no tests
534 ;; TODO: prefetch translations files from 'lxqt-l10n'.
535 '("-DPULL_TRANSLATIONS=NO")
537 (modify-phases %standard-phases
538 (add-after 'unpack 'patch-source
540 (substitute* '("autostart/CMakeLists.txt"
541 "menu/CMakeLists.txt")
542 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
543 "DESTINATION \"etc/xdg"))
545 (home-page "https://lxqt.org/")
546 (synopsis "The LXQt desktop panel")
547 (description "lxqt-panel represents the taskbar of LXQt.")
548 (license license:lgpl2.1+)))
550 (define-public lxqt-policykit
552 (name "lxqt-policykit")
557 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
558 version "/" name "-" version ".tar.xz"))
560 (base32 "1d97fys6625nk4q6irp0jhsbk30xi7idnii1f3vrrrdcl2cahagp"))))
561 (build-system cmake-build-system)
563 `(("kwindowsystem" ,kwindowsystem)
565 ("libqtxdg" ,libqtxdg)
567 ("polkit-qt" ,polkit-qt)
570 ("qtx11extras" ,qtx11extras)))
572 `(("pkg-config" ,pkg-config)
574 ("lxqt-build-tools" ,lxqt-build-tools)
575 ("qttools" ,qttools)))
577 '(#:tests? #f ; no test target
579 '("-DPULL_TRANSLATIONS=NO")
581 (modify-phases %standard-phases
582 (add-after 'unpack 'patch-source
584 (substitute* '("autostart/CMakeLists.txt")
585 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
586 "DESTINATION \"etc/xdg"))
588 (home-page "https://lxqt.org/")
589 (synopsis "The LXQt PolicyKit agent")
590 (description "lxqt-policykit is the polkit authentification agent of
592 (license license:lgpl2.1+)))
594 (define-public lxqt-powermanagement
596 (name "lxqt-powermanagement")
601 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
602 version "/" name "-" version ".tar.xz"))
604 (base32 "15nvdypyjwnp7k3d2pkhdbmaqb3ccacmh95rbdbc5mr7yrjy9613"))))
605 (build-system cmake-build-system)
607 `(("kidletime" ,kidletime)
608 ("kwindowsystem" ,kwindowsystem)
610 ("libqtxdg" ,libqtxdg)
613 ("qtx11extras" ,qtx11extras)
616 `(("lxqt-build-tools" ,lxqt-build-tools)
617 ("qttools" ,qttools)))
619 '(#:tests? #f ; no tests
621 ;; TODO: prefetch translations files from 'lxqt-l10n'.
622 '("-DPULL_TRANSLATIONS=NO")
624 (modify-phases %standard-phases
625 (add-after 'unpack 'patch-source
627 (substitute* '("autostart/CMakeLists.txt")
628 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
629 "DESTINATION \"etc/xdg"))
631 (home-page "https://lxqt.org/")
632 (synopsis "Power management module for LXQt")
633 (description "lxqt-powermanagement is providing tools to monitor power
634 management events and optionally trigger actions like e. g. shut down a system
635 when laptop batteries are low on power.")
636 (license license:lgpl2.1+)))
638 (define-public lxqt-qtplugin
640 (name "lxqt-qtplugin")
645 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
646 version "/" name "-" version ".tar.xz"))
648 (base32 "0nnwbc99njpsyqb0cy3x0srcgwa7qrnq0qwcyx7fbvwsq1l8cz56"))))
649 (build-system cmake-build-system)
651 `(("libdbusmenu-qt" ,libdbusmenu-qt)
652 ("libfm-qt" ,libfm-qt)
653 ("libqtxdg" ,libqtxdg)
656 ("qtx11extras" ,qtx11extras)))
658 `(("lxqt-build-tools" ,lxqt-build-tools)
659 ("qttools" ,qttools)))
661 '(#:tests? #f ; no tests
663 (modify-phases %standard-phases
664 (add-after 'unpack 'patch-source
666 (substitute* '("src/CMakeLists.txt")
667 (("DESTINATION \"\\$\\{QT_PLUGINS_DIR\\}")
668 "DESTINATION \"lib/qt5/plugins"))
670 (home-page "https://lxqt.org/")
671 (synopsis "LXQt Qt platform integration plugin")
672 (description "lxqt-qtplugin is providing a library libqtlxqt to integrate
674 (license license:lgpl2.1+)))
676 (define-public lxqt-runner
683 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
684 version "/" name "-" version ".tar.xz"))
686 (base32 "0dsg6fdcqbl7gza0sg1pb49zn5x31q7zx77jp7mkf6wc2lv8lali"))))
687 (build-system cmake-build-system)
689 `(("kwindowsystem" ,kwindowsystem)
691 ("libqtxdg" ,libqtxdg)
692 ("lxqt-globalkeys" ,lxqt-globalkeys)
693 ("muparser" ,muparser)
697 ("qtx11extras" ,qtx11extras)))
699 `(("pkg-config" ,pkg-config)
701 ("lxqt-build-tools" ,lxqt-build-tools)))
703 '(#:tests? #f ; no tests
705 ;; TODO: prefetch translations files from 'lxqt-l10n'.
706 '("-DPULL_TRANSLATIONS=NO")
708 (modify-phases %standard-phases
709 (add-after 'unpack 'patch-source
711 (substitute* '("autostart/CMakeLists.txt")
712 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
713 "DESTINATION \"etc/xdg"))
715 (home-page "https://lxqt.org/")
716 (synopsis "Tool used to launch programs quickly by typing their names")
717 (description "lxqt-runner provides a GUI that comes up on the desktop and
718 allows for launching applications or shutting down the system.")
719 (license license:lgpl2.1+)))
721 (define-public lxqt-session
723 (name "lxqt-session")
728 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
729 version "/" name "-" version ".tar.xz"))
731 (base32 "1aibppppmg46ybbajx2qc395l0yp9rqlp2am01fqjxadsf8vci5z"))))
732 (build-system cmake-build-system)
735 ("kwindowsystem" ,kwindowsystem)
737 ("libqtxdg" ,libqtxdg)
740 ("qtx11extras" ,qtx11extras)
741 ("xdg-user-dirs" ,xdg-user-dirs)))
743 `(("pkg-config" ,pkg-config)
744 ("lxqt-build-tools" ,lxqt-build-tools)
745 ("qttools" ,qttools)))
749 `("-DPULL_TRANSLATIONS=NO")
751 (modify-phases %standard-phases
752 (add-after 'unpack 'patch-source
754 (substitute* '("autostart/CMakeLists.txt"
755 "config/CMakeLists.txt")
756 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
757 "DESTINATION \"etc/xdg"))
759 (home-page "https://lxqt.org/")
760 (synopsis "Session manager for LXQt")
761 (description "lxqt-session provides the standard session manager
762 for the LXQt desktop environment.")
763 (license license:lgpl2.1+)))
765 (define-public lxqt-sudo
772 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
773 version "/" name "-" version ".tar.xz"))
775 (base32 "1j28wlw4rkzvr85yl78fqkvz7sv7dykm9ghm63xdkskfjbsas1cf"))))
776 (build-system cmake-build-system)
778 `(("kwindowsystem" ,kwindowsystem)
780 ("libqtxdg" ,libqtxdg)
783 ("qtx11extras" ,qtx11extras)
786 `(("pkg-config" ,pkg-config)
788 ("lxqt-build-tools" ,lxqt-build-tools)))
790 '(#:tests? #f ; no tests
792 ;; TODO: prefetch translations files from 'lxqt-l10n'.
793 '("-DPULL_TRANSLATIONS=NO")))
794 (home-page "https://lxqt.org/")
795 (synopsis "GUI frontend for sudo/su")
796 (description "lxqt-sudo is a graphical front-end of commands sudo and su
797 respectively. As such it enables regular users to launch applications with
798 permissions of other users including root.")
799 (license license:lgpl2.1+)))
801 (define-public lxqt-themes
808 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
809 version "/" name "-" version ".tar.xz"))
811 (base32 "13kkkzjx8bgnwckz79j273azvm4za66i4cp2qhxwdpxh0fwziklf"))))
812 (build-system cmake-build-system)
814 `(("lxqt-build-tools" ,lxqt-build-tools)))
816 `(#:tests? #f ; no tests
818 (modify-phases %standard-phases
819 (add-after 'unpack 'patch-source
821 (substitute* '("CMakeLists.txt")
822 (("DESTINATION \"\\$\\{LXQT_GRAPHICS_DIR\\}")
823 "DESTINATION \"share/lxqt/graphics"))
824 (substitute* '("themes/CMakeLists.txt")
825 (("DESTINATION \"\\$\\{LXQT_SHARE_DIR\\}")
826 "DESTINATION \"share/lxqt"))
828 (home-page "https://lxqt.org/")
829 (synopsis "Themes, graphics and icons for LXQt")
830 (description "This package comprises a number of graphic files and themes
832 ;; The whole package is released under LGPL 2.1+, while the LXQt logo is
833 ;; licensed under CC-BY-SA 3.0.
834 (license license:lgpl2.1+)))
839 (define-public libfm-qt
846 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
847 version "/" name "-" version ".tar.xz"))
849 (base32 "0p0lbz7dh5c38zq3yp1v1mm99ymg7mqr3h7yzniif2hipmgvxsv9"))))
850 (build-system cmake-build-system)
852 '(#:tests? #f ; no tests
854 ;; TODO : prefetch translations files from 'lxqt-l10n'.
855 '("-DPULL_TRANSLATIONS=NO")))
861 ("menu-cache" ,menu-cache)
864 ("qtx11extras" ,qtx11extras)))
866 `(("pkg-config" ,pkg-config)
867 ("lxqt-build-tools" ,lxqt-build-tools)
868 ("qttools" ,qttools)))
869 (home-page "https://lxqt.org/")
870 (synopsis "Qt binding for libfm")
871 (description "libfm-qt is the Qt port of libfm, a library providing
872 components to build desktop file managers which belongs to LXDE.")
873 (license license:lgpl2.1+)))
875 (define-public pcmanfm-qt
882 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
883 version "/" name "-" version ".tar.xz"))
885 (base32 "08jprkkk62pk34q9lxa207bh27xi86fj8jxfd5z3w2m5j5nim5mz"))))
886 (build-system cmake-build-system)
888 `(("libfm-qt" ,libfm-qt)
890 ("qtx11extras" ,qtx11extras)))
892 `(("pkg-config" ,pkg-config)
894 ("lxqt-build-tools" ,lxqt-build-tools)))
896 '(#:tests? #f ; no tests
898 ;; TODO: prefetch translations files from 'lxqt-l10n'.
899 '("-DPULL_TRANSLATIONS=NO")
901 (modify-phases %standard-phases
902 (add-after 'unpack 'patch-source
904 (substitute* '("autostart/CMakeLists.txt")
905 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
906 "DESTINATION \"etc/xdg"))
908 (home-page "https://lxqt.org/")
909 (synopsis "File manager and desktop icon manager")
910 (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of
912 (license license:gpl2+)))
917 (define-public compton-conf
919 (name "compton-conf")
924 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
925 version "/" name "-" version ".tar.xz"))
927 (base32 "0q3yx2a6wf8yahrwgvhmv9sd7gmrhid528vrqy04dg8m5cx1bjci"))))
928 (build-system cmake-build-system)
930 `(("libconfig" ,libconfig)
933 `(("lxqt-build-tools" ,lxqt-build-tools)
934 ("pkg-config" ,pkg-config)
935 ("qttools" ,qttools)))
937 '(#:tests? #f ; no tests
939 ;; TODO: prefetch translations files from 'lxqt-l10n'.
940 '("-DPULL_TRANSLATIONS=NO")
942 (modify-phases %standard-phases
943 (add-after 'unpack 'patch-source
945 (substitute* '("autostart/CMakeLists.txt")
946 (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}")
947 "DESTINATION \"etc/xdg"))
949 (home-page "https://lxqt.org/")
950 (synopsis "GUI configuration tool for compton X composite manager")
951 (description "@code{compton-conf} is a configuration tool for X composite
953 (license license:lgpl2.1+)))
955 (define-public lximage-qt
962 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
963 version "/" name "-" version ".tar.xz"))
965 (base32 "1mwjh6lrjayr9snsmabkl5qs4xm6d27mfz8k3jxfm5dk3pjj1b0w"))))
966 (build-system cmake-build-system)
968 `(("libexif" ,libexif)
969 ("libfm-qt" ,libfm-qt)
972 ("qtx11extras" ,qtx11extras)))
974 `(("pkg-config" ,pkg-config)
975 ("lxqt-build-tools" ,lxqt-build-tools)
976 ("qttools" ,qttools)))
978 '(#:tests? #f ; no tests
980 ;; TODO: prefetch translations files from 'lxqt-l10n'.
981 '("-DPULL_TRANSLATIONS=NO")))
982 (home-page "https://lxqt.org/")
983 (synopsis "The image viewer and screenshot tool for lxqt")
984 (description "LXImage-Qt is the Qt port of LXImage, a simple and fast
986 (license license:gpl2+)))
988 (define-public obconf-qt
995 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
996 version "/" name "-" version ".tar.xz"))
998 (base32 "1fbzn1p2mdvn8dcbavmd1imrvkph2jfssrlw8l26qz6qk8qlmhnf"))))
999 (build-system cmake-build-system)
1001 `(("imlib2" ,imlib2)
1003 ("librsvg" ,librsvg)
1005 ("libxml2" ,libxml2)
1006 ("openbox" ,openbox)
1010 ("qtx11extras" ,qtx11extras)))
1012 `(("lxqt-build-tools" ,lxqt-build-tools)
1013 ("pkg-config" ,pkg-config)
1014 ("qttools" ,qttools)))
1016 '(#:tests? #f ; no tests
1018 ;; TODO: prefetch translations files from 'lxqt-l10n'.
1019 '("-DPULL_TRANSLATIONS=NO")))
1020 (home-page "https://lxqt.org/")
1021 (synopsis "Openbox configuration tool")
1022 (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for
1023 window manager OpenBox.")
1024 (license license:gpl2+)))
1026 (define-public pavucontrol-qt
1028 (name "pavucontrol-qt")
1033 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1034 version "/" name "-" version ".tar.xz"))
1036 (base32 "0pqvhhgw7d00wqw5v3ghm4l8250zy7bqpvhff6l7y1lw0z2fvcp6"))))
1037 (build-system cmake-build-system)
1041 ("pulseaudio" ,pulseaudio)
1043 ("qtx11extras" ,qtx11extras)))
1045 `(("pkg-config" ,pkg-config)
1046 ("lxqt-build-tools" ,lxqt-build-tools)
1047 ("qttools" ,qttools)))
1049 '(#:tests? #f ; no tests
1051 ;; TODO: prefetch translations files from 'lxqt-l10n'.
1052 '("-DPULL_TRANSLATIONS=NO")))
1053 (home-page "https://lxqt.org/")
1054 (synopsis "Pulseaudio mixer in Qt")
1055 (description "@code{pavucontrol-qt} is the Qt port of volume control
1056 @code{pavucontrol} of sound server @code{PulseAudio}.")
1057 (license license:gpl2+)))
1066 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1067 version "/" name "-" version ".tar.xz"))
1069 (base32 "0pzk83p7a9ax0893s9hp2qkmiilzrf8iqry5a0x1g73hdwm5hm44"))))
1070 (build-system cmake-build-system)
1072 `(("libxrender" ,libxrender)
1074 ("qtx11extras" ,qtx11extras)))
1076 `(("qttools" ,qttools)))
1078 '(#:tests? #f)) ; no tests
1079 (home-page "https://lxqt.org/")
1080 (synopsis "Qt-based visual process status monitor")
1081 (description "@code{qps} is a monitor that displays the status of the
1082 processes currently in existence, much like code{top} or code{ps}.")
1083 (license license:gpl2+)))
1085 (define-public qtermwidget
1087 (name "qtermwidget")
1092 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1093 version "/" name "-" version ".tar.xz"))
1095 (base32 "1c1qzbysxjbikp4bpgphphw4dgpl10gz8m06ccs2c48qxhpyd773"))))
1096 (build-system cmake-build-system)
1098 `(("qtbase" ,qtbase)))
1100 `(("lxqt-build-tools" ,lxqt-build-tools)
1101 ("qttools" ,qttools)))
1103 '(#:tests? #f ; no tests
1105 ;; TODO: prefetch translations files from 'lxqt-l10n'.
1106 '("-DPULL_TRANSLATIONS=NO")))
1107 (home-page "https://lxqt.org/")
1108 (synopsis "The terminal widget for QTerminal")
1109 (description "QTermWidget is a terminal emulator widget for Qt 5.")
1110 (license license:gpl2+)))
1112 (define-public qterminal
1119 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1120 version "/" name "-" version ".tar.xz"))
1122 (base32 "1vlza75br1ys62lgkdz26md729bfpbnasfzswp7hakmgaq1rhms1"))))
1123 (build-system cmake-build-system)
1125 `(("qtbase" ,qtbase)
1126 ("qtx11extras" ,qtx11extras)
1127 ("qtermwidget" ,qtermwidget)))
1129 `(("lxqt-build-tools" ,lxqt-build-tools)
1130 ("qttools" ,qttools)))
1132 '(#:tests? #f ; no tests
1134 ;; TODO: prefetch translations files from 'lxqt-l10n'.
1135 '("-DPULL_TRANSLATIONS=NO")))
1136 (home-page "https://lxqt.org/")
1137 (synopsis "Lightweight Qt-based terminal emulator")
1138 (description "QTerminal is a lightweight Qt terminal emulator based on
1140 (license license:gpl2+)))
1142 (define-public screengrab
1149 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1150 version "/" name "-" version ".tar.xz"))
1152 (base32 "17y8rsx9fixvxv2byq8d6c01vry10nv07f8jy85vz7zp4f0rgzz3"))))
1153 (build-system cmake-build-system)
1155 `(("kwindowsystem" ,kwindowsystem)
1156 ("libqtxdg" ,libqtxdg)
1159 ("qtx11extras" ,qtx11extras)))
1161 `(("pkg-config" ,pkg-config)
1162 ("qttools" ,qttools)))
1164 '(#:tests? #f)) ; no tests
1165 (home-page "https://lxqt.org/")
1166 (synopsis "Crossplatform tool for fast making screenshots")
1167 (description "ScreenGrab is a program for fast creating screenshots, and
1168 easily publishing them on internet image hosting services.")
1169 (license license:gpl2+)))
1172 ;; The LXQt Desktop Environment
1177 (version (package-version lxqt-session))
1179 (build-system trivial-build-system)
1180 (arguments '(#:builder (begin (mkdir %output) #t)))
1183 ("desktop-file-utils" ,desktop-file-utils)
1184 ("hicolor-icon-theme" ,hicolor-icon-theme)
1185 ("xdg-user-dirs" ,xdg-user-dirs)
1186 ("xdg-utils" ,xdg-utils)
1188 ;; TODO: qtsvg is needed for lxqt apps to display icons. Maybe it
1189 ;; should be added to their propagated-inputs?
1192 ("lxqt-about" ,lxqt-about)
1193 ("lxqt-admin" ,lxqt-admin)
1194 ("lxqt-config" ,lxqt-config)
1195 ("lxqt-notificationd" ,lxqt-notificationd)
1196 ("lxqt-openssh-askpass" ,lxqt-openssh-askpass)
1197 ("lxqt-panel" ,lxqt-panel)
1198 ("lxqt-policykit" ,lxqt-policykit)
1199 ("lxqt-powermanagement" ,lxqt-powermanagement)
1200 ("lxqt-qtplugin" ,lxqt-qtplugin)
1201 ("lxqt-runner" ,lxqt-runner)
1202 ("lxqt-session" ,lxqt-session)
1203 ("lxqt-sudo" ,lxqt-sudo)
1204 ("lxqt-themes" ,lxqt-themes)
1205 ("pcmanfm-qt" ,pcmanfm-qt)
1207 ("compton" ,compton)
1208 ("compton-conf" ,compton-conf)
1209 ("font-dejavu" ,font-dejavu)
1210 ("lximage-qt" ,lximage-qt)
1211 ("obconf-qt" ,obconf-qt)
1212 ("openbox" ,openbox)
1213 ("oxygen-icons" ,oxygen-icons)
1214 ("pavucontrol-qt" ,pavucontrol-qt)
1216 ("qterminal" ,qterminal)))
1217 (synopsis "The Lightweight Qt Desktop Environment")
1218 (description "LXQt is a lightweight Qt desktop environment.")
1219 (home-page "https://lxde.org")
1220 (license license:gpl2+)))