gnu: Add qtwayland, version 6.3.1.
[jackhill/guix/guix.git] / gnu / packages / lxqt.scm
CommitLineData
e5e06930
AE
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
6072d025 3;;; Copyright © 2015, 2022 Sou Bunnbu <iyzsong@gmail.com>
b042bdc8 4;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
3282442b 5;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
3c986a7d 6;;; Copyright © 2017 Nikita <nikita@n0.is>
063bc5f8 7;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
5b7a354d 8;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net>
86caf997 9;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
13efb248 10;;; Copyright © 2019, 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
6cd07787 11;;; Copyright © 2020 Fakhri Sajadi <f.sajadi@pantherx.org>
0b7c5400 12;;; Copyright © 2020 André Batista <nandre@riseup.net>
8e6af98f 13;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot>
e5e06930
AE
14;;;
15;;; This file is part of GNU Guix.
16;;;
17;;; GNU Guix is free software; you can redistribute it and/or modify it
18;;; under the terms of the GNU General Public License as published by
19;;; the Free Software Foundation; either version 3 of the License, or (at
20;;; your option) any later version.
21;;;
22;;; GNU Guix is distributed in the hope that it will be useful, but
23;;; WITHOUT ANY WARRANTY; without even the implied warranty of
24;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25;;; GNU General Public License for more details.
26;;;
27;;; You should have received a copy of the GNU General Public License
28;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
29
30(define-module (gnu packages lxqt)
31 #:use-module (guix download)
86caf997 32 #:use-module (guix git-download)
a6b941dd 33 #:use-module ((guix licenses) #:prefix license:)
6072d025 34 #:use-module (guix gexp)
e5e06930
AE
35 #:use-module (guix packages)
36 #:use-module (guix utils)
37 #:use-module (guix build-system cmake)
bf076d8b 38 #:use-module (guix build-system gnu)
1fdcee02 39 #:use-module (guix build-system trivial)
44a477e1 40 #:use-module (gnu packages)
dbb4f7d0 41 #:use-module (gnu packages admin)
35bfe41a 42 #:use-module (gnu packages compression)
64fac507 43 #:use-module (gnu packages documentation)
1fdcee02
MP
44 #:use-module (gnu packages compton)
45 #:use-module (gnu packages fonts)
70c488f8 46 #:use-module (gnu packages freedesktop)
b36524c1 47 #:use-module (gnu packages glib)
31fd62c8
MP
48 #:use-module (gnu packages gnome)
49 #:use-module (gnu packages gtk)
50 #:use-module (gnu packages image)
6bb5a8a1 51 #:use-module (gnu packages kde-frameworks)
df4b9dd1 52 #:use-module (gnu packages kde-plasma)
70c488f8 53 #:use-module (gnu packages linux)
bf076d8b 54 #:use-module (gnu packages perl)
af291d1c 55 #:use-module (gnu packages lxde)
cc7f4175 56 #:use-module (gnu packages maths)
31fd62c8 57 #:use-module (gnu packages openbox)
af291d1c 58 #:use-module (gnu packages pcre)
79f9e4e0 59 #:use-module (gnu packages photo)
e5e06930 60 #:use-module (gnu packages pkg-config)
9861bcd1 61 #:use-module (gnu packages polkit)
af291d1c 62 #:use-module (gnu packages pulseaudio)
9861bcd1 63 #:use-module (gnu packages qt)
32b74b70 64 #:use-module (gnu packages textutils)
af291d1c 65 #:use-module (gnu packages xdisorg)
31fd62c8 66 #:use-module (gnu packages xml)
9861bcd1 67 #:use-module (gnu packages xorg))
e5e06930 68
26127ebb
MP
69
70;; Third party libraries
71
26127ebb 72(define-public libstatgrab
79f9e4e0 73 (package
26127ebb 74 (name "libstatgrab")
bf8e753a 75 (version "0.92.1")
79f9e4e0
MP
76 (source
77 (origin
78 (method url-fetch)
26127ebb
MP
79 (uri (string-append "https://ftp.i-scream.org/pub/i-scream/libstatgrab/"
80 name "-" version ".tar.gz"))
79f9e4e0 81 (sha256
bf8e753a 82 (base32 "04bcbln3qlilxsyh5hrwdrv7x4pfv2lkwdwa98bxfismd15am22n"))))
26127ebb 83 (build-system gnu-build-system)
79f9e4e0 84 (arguments
220424a7
TGR
85 '(#:configure-flags '("--enable-tests"
86 "--disable-static")))
79f9e4e0 87 (native-inputs
26127ebb 88 ;; For testing.
8394619b 89 (list perl))
26127ebb
MP
90 (home-page "https://www.i-scream.org/libstatgrab/")
91 (synopsis "Provides access to statistics about the system")
92 (description "libstatgrab is a library that provides cross platform access
93to statistics about the system on which it's run.")
94 ;; Libraries are under LGPL2.1+, and programs under GPLv2+.
95 (license license:gpl2+)))
79f9e4e0 96
26127ebb
MP
97
98;; Base
99
100(define-public lxqt-build-tools
d58aefdf 101 (package
26127ebb 102 (name "lxqt-build-tools")
6072d025 103 (version "0.11.0")
d58aefdf
MP
104 (source
105 (origin
106 (method url-fetch)
769921fe
TGR
107 (uri (string-append "https://github.com/lxqt/lxqt-build-tools/releases"
108 "/download/" version
109 "/lxqt-build-tools-" version ".tar.xz"))
d58aefdf 110 (sha256
6072d025 111 (base32 "1ff1pkrlxd8h0j8v49p6wrfhnqrz8s5b53hi835m41cvkzjljpfx"))))
d58aefdf
MP
112 (build-system cmake-build-system)
113 (arguments
6072d025
SB
114 (list
115 #:tests? #f ; no tests
116 #:modules `((ice-9 regex)
117 (guix build cmake-build-system)
118 (guix build utils))
119 ;; In phases and configure-flags: Set LXQT_TRANSLATIONS_DIR,
120 ;; LXQT_DATA_DIR, etc. to relative paths, so that packages using
121 ;; LXQtConfigVars.cmake from lxqt-build-tools will install translations
122 ;; and data files into their outputs, remove the need to patch their
123 ;; cmake files.
124 #:phases
125 #~(modify-phases %standard-phases
126 (add-after 'install 'patch-LXQtConfigVars.cmake
127 (lambda _
128 (substitute* (string-append #$output
129 "/share/cmake/lxqt-build-tools"
130 "/modules/LXQtConfigVars.cmake")
131 (((regexp-quote (string-append #$output "/"))) "")))))
132 #:configure-flags
133 #~(list "-DLXQT_ETC_XDG_DIR=etc/xdg")))
d58aefdf 134 (native-inputs
8394619b 135 (list pkg-config glib))
26127ebb 136 (inputs
8394619b 137 (list qtbase-5))
64f28a62
BT
138 (propagated-inputs
139 ;; Dependent projects require Perl via the CMake files.
8394619b 140 (list perl))
26127ebb
MP
141 (synopsis "LXQt Build tools")
142 (description
143 "Lxqt-build-tools is providing several tools needed to build LXQt
144itself as well as other components maintained by the LXQt project.")
f8adff1e 145 (home-page "https://lxqt-project.org")
a6b941dd 146 (license license:lgpl2.1+)))
d58aefdf 147
e5e06930
AE
148(define-public libqtxdg
149 (package
150 (name "libqtxdg")
e1415070 151 (version "3.9.1")
e5e06930
AE
152 (source
153 (origin
154 (method url-fetch)
50401c2a 155 (uri (string-append
63b9834d
TGR
156 "https://github.com/lxqt/libqtxdg/releases/download/"
157 version "/libqtxdg-" version ".tar.xz"))
e5e06930 158 (sha256
e1415070 159 (base32 "1kh4hv59bkjifq20ksh1mizf9mp7x30v6fpwccr45mi7hasqvvfi"))))
e5e06930
AE
160 (build-system cmake-build-system)
161 (arguments
a457e3f6
MP
162 '(#:configure-flags
163 '("-DBUILD_TESTS=ON"
164 "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=lib/qt5/plugins/iconengines")
50401c2a
MP
165 #:phases
166 (modify-phases %standard-phases
167 (add-before 'check 'pre-check
168 (lambda _
169 ;; Run the tests offscreen.
170 (setenv "QT_QPA_PLATFORM" "offscreen")
171 #t)))))
02559739 172 (propagated-inputs
50401c2a 173 ;; required by Qt5XdgIconLoader.pc
1ef04fb2 174 (list glib qtbase-5 qtsvg-5))
c1105c4b 175 (native-inputs
8394619b 176 (list lxqt-build-tools pkg-config))
50401c2a 177 (home-page "https://github.com/lxqt/libqtxdg")
e5e06930
AE
178 (synopsis "Qt implementation of freedesktop.org xdg specifications")
179 (description "Libqtxdg implements the freedesktop.org xdg specifications
180in Qt.")
a6b941dd 181 (license license:lgpl2.1+)))
6bb5a8a1 182
2472cec2
SB
183(define-public qtxdg-tools
184 (package
185 (name "qtxdg-tools")
186 (version "3.9.1")
187 (source
188 (origin
189 (method url-fetch)
190 (uri (string-append
191 "https://github.com/lxqt/qtxdg-tools/releases/download/"
192 version "/qtxdg-tools-" version ".tar.xz"))
193 (sha256
194 (base32 "0qn35v4dv71g0a4cqkbikppwmihxmfa560q9kw5pwk2y0xiwpncr"))))
195 (build-system cmake-build-system)
196 (arguments '(#:tests? #f)) ; no tests
197 (propagated-inputs (list libqtxdg))
198 (native-inputs (list lxqt-build-tools))
199 (home-page "https://github.com/lxqt/qtxdg-tools")
200 (synopsis "User tools for libqtxdg")
201 (description "This package contains a CLI MIME tool, @command{qtxdg-mat},
202for handling file associations and opening files with their default
203applications.")
204 (license license:lgpl2.1+)))
205
26127ebb 206(define-public liblxqt
bf076d8b 207 (package
26127ebb 208 (name "liblxqt")
9914671a 209 (version "1.1.0")
bf076d8b
MP
210 (source
211 (origin
212 (method url-fetch)
26127ebb
MP
213 (uri (string-append
214 "https://github.com/lxqt/" name "/releases/download/"
215 version "/" name "-" version ".tar.xz"))
bf076d8b 216 (sha256
9914671a 217 (base32 "1fickg1q54pcb8bv3x0ydg4xx02cqykibnjcq09as2kws6xbhk9n"))))
26127ebb 218 (build-system cmake-build-system)
bf076d8b 219 (arguments
26127ebb 220 `(#:tests? #f ; no tests
26127ebb
MP
221 #:phases
222 (modify-phases %standard-phases
223 (add-after 'unpack 'patch-source
224 (lambda _
225 (substitute* "CMakeLists.txt"
226 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
097166df 227 "DESTINATION \"share/polkit-1/actions"))
26127ebb
MP
228 #t)))))
229 (inputs
8394619b
LC
230 (list kwindowsystem
231 libqtxdg
232 libxscrnsaver
233 polkit-qt
1ef04fb2 234 qtsvg-5
8394619b 235 qtx11extras))
bf076d8b 236 (native-inputs
eef8e2ec 237 (list lxqt-build-tools qttools-5))
f8adff1e 238 (home-page "https://lxqt-project.org")
26127ebb
MP
239 (synopsis "Core utility library for all LXQt components")
240 (description "liblxqt provides the basic libraries shared by the
241components of the LXQt desktop environment.")
242 (license license:lgpl2.1+)))
bf076d8b 243
fbe645ea
MP
244(define-public libsysstat
245 (package
246 (name "libsysstat")
c4a19dd7 247 (version "0.4.6")
fbe645ea
MP
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
c4a19dd7 254 (base32 "1ghkzgz3ypjii08f00g26pnmw0s5naf344p83dwnf3kfdlykiip6"))))
fbe645ea
MP
255 (build-system cmake-build-system)
256 (arguments '(#:tests? #f)) ; no tests
257 (inputs
8394619b 258 (list qtbase-5))
fbe645ea 259 (native-inputs
8394619b 260 (list lxqt-build-tools))
f8adff1e 261 (home-page "https://lxqt-project.org")
fbe645ea
MP
262 (synopsis "Library used to query system info and statistics")
263 (description "libsysstat is a library to query system information like CPU
264and memory usage or network traffic.")
a6b941dd 265 (license license:lgpl2.1+)))
fbe645ea 266
26127ebb
MP
267
268;; Core
269
2bdab26f
MP
270(define-public lxqt-about
271 (package
272 (name "lxqt-about")
8ba91eaf 273 (version "1.1.0")
2bdab26f
MP
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
8ba91eaf 280 (base32 "03bqhbpdnfpan3l4snzzz6j0054m4r9zcgygcg21znslwicbqnw3"))))
2bdab26f
MP
281 (build-system cmake-build-system)
282 (inputs
8394619b
LC
283 (list kwindowsystem
284 liblxqt
285 libqtxdg
286 qtbase-5
1ef04fb2 287 qtsvg-5
8394619b 288 qtx11extras))
2bdab26f 289 (native-inputs
eef8e2ec 290 (list lxqt-build-tools qttools-5))
2bdab26f
MP
291 (arguments
292 '(#:tests? #f ; no tests
f42b4080
MP
293 #:phases
294 (modify-phases %standard-phases
625697ea
DM
295 (add-before 'build 'setenv
296 (lambda _
297 (setenv "QT_RCC_SOURCE_DATE_OVERRIDE" "1")
f42b4080 298 #t)))))
f8adff1e 299 (home-page "https://lxqt-project.org")
2bdab26f
MP
300 (synopsis "Provides information about LXQt and the system")
301 (description "lxqt-about is a dialogue window providing information about
302LXQt and the system it's running on.")
a6b941dd 303 (license license:lgpl2.1+)))
34e08de3
MP
304
305(define-public lxqt-admin
306 (package
307 (name "lxqt-admin")
240d202a 308 (version "1.1.0")
34e08de3
MP
309 (source
310 (origin
311 (method url-fetch)
312 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
313 version "/" name "-" version ".tar.xz"))
314 (sha256
240d202a 315 (base32 "1zah3xdnif9miaq52mmfbbzvqjhca7w7h81ngrn25j9pvd2bflm8"))))
34e08de3
MP
316 (build-system cmake-build-system)
317 (inputs
8394619b
LC
318 (list kwindowsystem
319 liblxqt
320 libqtxdg
321 polkit-qt
1ef04fb2 322 qtsvg-5
8394619b 323 qtx11extras))
34e08de3 324 (native-inputs
eef8e2ec 325 (list lxqt-build-tools qttools-5))
34e08de3
MP
326 (arguments
327 '(#:tests? #f ; no tests
34e08de3
MP
328 #:phases
329 (modify-phases %standard-phases
330 (add-after 'unpack 'patch-source
331 (lambda _
a5fe5200
BT
332 (substitute* '("lxqt-admin-user/CMakeLists.txt"
333 "lxqt-admin-time/CMakeLists.txt")
34e08de3 334 (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
097166df 335 "DESTINATION \"share/polkit-1/actions"))
34e08de3 336 #t)))))
f8adff1e 337 (home-page "https://lxqt-project.org")
34e08de3
MP
338 (synopsis "LXQt system administration tool")
339 (description "lxqt-admin is providing two GUI tools to adjust settings of
340the operating system LXQt is running on.")
a6b941dd 341 (license license:lgpl2.1+)))
2bdab26f 342
35bfe41a
MP
343(define-public lxqt-config
344 (package
345 (name "lxqt-config")
90d5792e 346 (version "1.1.0")
35bfe41a
MP
347 (source
348 (origin
349 (method url-fetch)
350 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
351 version "/" name "-" version ".tar.xz"))
352 (sha256
90d5792e 353 (base32 "0f0x82qma86kjdvn08qlg0ydxh9fnqikijfhnicynxdqfnp50ia5"))))
35bfe41a
MP
354 (build-system cmake-build-system)
355 (inputs
8394619b
LC
356 (list eudev
357 kwindowsystem
358 liblxqt
359 libqtxdg
360 libxcursor
361 libxi
362 qtbase-5
1ef04fb2 363 qtsvg-5
8394619b
LC
364 qtx11extras
365 solid
366 xf86-input-libinput
367 xkeyboard-config
368 zlib))
35bfe41a 369 (native-inputs
eef8e2ec 370 (list pkg-config lxqt-build-tools qttools-5))
6d5ff521
BT
371 ;; XXX: This is a workaround so libkscreen can find the backends as we
372 ;; dont have a way specify them. We may want to patch like Nix does.
373 (propagated-inputs
8394619b 374 (list libkscreen))
35bfe41a
MP
375 (arguments
376 '(#:tests? #f ; no tests
35bfe41a
MP
377 #:phases
378 (modify-phases %standard-phases
6cd07787
FS
379 (add-after 'unpack 'set-xkeyboard-config-file-name
380 (lambda* (#:key inputs #:allow-other-keys)
381 ;; Set the file name to xkeyboard-config.
382 (let ((xkb (assoc-ref inputs "xkeyboard-config")))
383 (substitute* "lxqt-config-input/keyboardlayoutconfig.h"
384 (("/usr/share/X11/xkb/rules/base.lst")
385 (string-append xkb "/share/X11/xkb/rules/base.lst")))
90d5792e 386 #t))))))
f8adff1e 387 (home-page "https://lxqt-project.org")
35bfe41a
MP
388 (synopsis "Tools to configure LXQt and the underlying operating system")
389 (description "lxqt-config is providing several tools involved in the
390configuration of both LXQt and the underlying operating system.")
391 (license license:lgpl2.1+)))
392
fab34846
MP
393(define-public lxqt-globalkeys
394 (package
395 (name "lxqt-globalkeys")
e8b4c9af 396 (version "1.1.0")
fab34846
MP
397 (source
398 (origin
399 (method url-fetch)
7bed07fc
TGR
400 (uri (string-append "https://github.com/lxqt/lxqt-globalkeys/"
401 "releases/download/" version "/"
402 "lxqt-globalkeys-" version ".tar.xz"))
fab34846 403 (sha256
e8b4c9af 404 (base32 "0bbw85aa59w0qnvkdggm3hbacps6yfcvcrs32d34mvvhc7d6g04l"))))
fab34846
MP
405 (build-system cmake-build-system)
406 (inputs
8394619b
LC
407 (list kwindowsystem
408 liblxqt
409 libqtxdg
410 qtbase-5
1ef04fb2 411 qtsvg-5
8394619b 412 qtx11extras))
fab34846 413 (native-inputs
eef8e2ec 414 (list pkg-config qttools-5 lxqt-build-tools))
e8b4c9af 415 (arguments '(#:tests? #f)) ; no tests
f8adff1e 416 (home-page "https://lxqt-project.org")
fab34846
MP
417 (synopsis "Daemon used to register global keyboard shortcuts")
418 (description "lxqt-globalkeys is providing tools to set global keyboard
419shortcuts in LXQt sessions, that is shortcuts which apply to the LXQt session
420as a whole and are not limited to distinct applications.")
a6b941dd 421 (license license:lgpl2.1+)))
fab34846 422
a98000a4
MP
423(define-public lxqt-notificationd
424 (package
425 (name "lxqt-notificationd")
826f188d 426 (version "1.1.0")
a98000a4
MP
427 (source
428 (origin
429 (method url-fetch)
430 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
431 version "/" name "-" version ".tar.xz"))
432 (sha256
826f188d 433 (base32 "0bz3qdvv591zvpkxqzqqmh1yq5icc3iinmjr13qzws3ajlj19z44"))))
a98000a4
MP
434 (build-system cmake-build-system)
435 (inputs
8394619b
LC
436 (list kwindowsystem
437 liblxqt
438 libqtxdg
439 qtbase-5
1ef04fb2 440 qtsvg-5
8394619b 441 qtx11extras))
a98000a4 442 (native-inputs
eef8e2ec 443 (list lxqt-build-tools qttools-5))
826f188d 444 (arguments '(#:tests? #f)) ; no test target
f8adff1e 445 (home-page "https://lxqt-project.org")
a98000a4
MP
446 (synopsis "The LXQt notification daemon")
447 (description "lxqt-notificationd is LXQt's implementation of a daemon
448according to the Desktop Notifications Specification.")
449 (license license:lgpl2.1+)))
ca302c3e
MP
450
451(define-public lxqt-openssh-askpass
452 (package
453 (name "lxqt-openssh-askpass")
fddf8dfa 454 (version "1.1.0")
ca302c3e
MP
455 (source
456 (origin
457 (method url-fetch)
458 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
459 version "/" name "-" version ".tar.xz"))
460 (sha256
fddf8dfa 461 (base32 "1hxix513z2sanmygfzq1fgx30kaxw5rjmmklbyyzl8bv1xzjcwk7"))))
ca302c3e
MP
462 (build-system cmake-build-system)
463 (inputs
8394619b
LC
464 (list kwindowsystem
465 liblxqt
466 libqtxdg
467 qtbase-5
1ef04fb2 468 qtsvg-5
8394619b 469 qtx11extras))
ca302c3e 470 (native-inputs
eef8e2ec 471 (list lxqt-build-tools qttools-5))
fddf8dfa 472 (arguments '(#:tests? #f)) ; no tests
f8adff1e 473 (home-page "https://lxqt-project.org")
ca302c3e
MP
474 (synopsis "GUI to query passwords on behalf of SSH agents")
475 (description "lxqt-openssh-askpass is a GUI to query credentials on behalf
476of other programs.")
477 (license license:lgpl2.1+)))
a98000a4 478
af291d1c
MP
479(define-public lxqt-panel
480 (package
481 (name "lxqt-panel")
bc89baef 482 (version "1.1.0")
af291d1c
MP
483 (source
484 (origin
485 (method url-fetch)
486 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
487 version "/" name "-" version ".tar.xz"))
488 (sha256
bc89baef 489 (base32 "11dg18ac6kj8qkkrg940bzpykjih6nnw8y3hfww3wiyg6dka9gd7"))))
af291d1c
MP
490 (build-system cmake-build-system)
491 (inputs
8394619b
LC
492 (list alsa-lib
493 kguiaddons
494 libdbusmenu-qt
495 liblxqt
496 libqtxdg
497 libstatgrab
498 libsysstat
499 libxcomposite
500 libxdamage
501 libxkbcommon
502 libxrender
bc89baef 503 libxtst
8394619b
LC
504 `(,lm-sensors "lib")
505 lxqt-globalkeys
506 pcre
507 pulseaudio
508 qtbase-5
1ef04fb2 509 qtsvg-5
8394619b
LC
510 qtx11extras
511 solid
512 xcb-util
bc89baef 513 xcb-util-image
8394619b 514 xkeyboard-config))
af291d1c 515 (native-inputs
eef8e2ec 516 (list pkg-config lxqt-build-tools qttools-5))
8f5371d0
RAM
517 (propagated-inputs
518 ;; Propagating KWINDOWSYSTEM so that the list of opened applications
519 ;; shows up in lxqt-panel's taskbar plugin.
8394619b 520 (list kwindowsystem lxmenu-data))
af291d1c
MP
521 (arguments
522 '(#:tests? #f ; no tests
af291d1c
MP
523 #:phases
524 (modify-phases %standard-phases
10ba62ec
HN
525 (add-after 'unpack 'set-xkeyboard-config-file-path
526 (lambda* (#:key inputs #:allow-other-keys)
527 ;; Set the path to xkeyboard-config.
528 (let ((xkb (assoc-ref inputs "xkeyboard-config")))
529 (substitute* "plugin-kbindicator/src/x11/kbdlayout.cpp"
530 (("/usr/share/X11/xkb/rules/evdev.xml")
531 (string-append xkb "/share/X11/xkb/rules/evdev.xml")))
532 #t))))))
f8adff1e 533 (home-page "https://lxqt-project.org")
af291d1c
MP
534 (synopsis "The LXQt desktop panel")
535 (description "lxqt-panel represents the taskbar of LXQt.")
a6b941dd 536 (license license:lgpl2.1+)))
af291d1c 537
bf0da63a
MP
538(define-public lxqt-policykit
539 (package
540 (name "lxqt-policykit")
0dc25538 541 (version "1.1.0")
bf0da63a
MP
542 (source
543 (origin
544 (method url-fetch)
545 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
546 version "/" name "-" version ".tar.xz"))
547 (sha256
0dc25538 548 (base32 "150ggcfprascnwgsz721vnmay9cbar9annlhp6h2yzkl69iyc49r"))))
bf0da63a
MP
549 (build-system cmake-build-system)
550 (inputs
8394619b
LC
551 (list kwindowsystem
552 liblxqt
553 libqtxdg
554 pcre
555 polkit-qt
556 qtbase-5
1ef04fb2 557 qtsvg-5
8394619b 558 qtx11extras))
bf0da63a 559 (native-inputs
eef8e2ec 560 (list pkg-config polkit lxqt-build-tools qttools-5))
0dc25538 561 (arguments '(#:tests? #f)) ; no test target
f8adff1e 562 (home-page "https://lxqt-project.org")
bf0da63a 563 (synopsis "The LXQt PolicyKit agent")
245289f8 564 (description "lxqt-policykit is the polkit authentication agent of
bf0da63a
MP
565LXQt.")
566 (license license:lgpl2.1+)))
567
643961bb
MP
568(define-public lxqt-powermanagement
569 (package
570 (name "lxqt-powermanagement")
f739b5f4 571 (version "1.1.0")
643961bb
MP
572 (source
573 (origin
574 (method url-fetch)
575 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
576 version "/" name "-" version ".tar.xz"))
577 (sha256
f739b5f4 578 (base32 "0zy6abbf3iwrxsr18gbxidb4m5spsigpa2778xg7y9r7fwgmqqkk"))))
643961bb
MP
579 (build-system cmake-build-system)
580 (inputs
8394619b
LC
581 (list kidletime
582 kwindowsystem
583 liblxqt
584 libqtxdg
585 lxqt-globalkeys
586 qtbase-5
1ef04fb2 587 qtsvg-5
8394619b
LC
588 qtx11extras
589 solid))
643961bb 590 (native-inputs
eef8e2ec 591 (list lxqt-build-tools qttools-5))
f739b5f4 592 (arguments '(#:tests? #f)) ; no tests
f8adff1e 593 (home-page "https://lxqt-project.org")
643961bb
MP
594 (synopsis "Power management module for LXQt")
595 (description "lxqt-powermanagement is providing tools to monitor power
596management events and optionally trigger actions like e. g. shut down a system
597when laptop batteries are low on power.")
598 (license license:lgpl2.1+)))
599
5663b5b0
MP
600(define-public lxqt-qtplugin
601 (package
602 (name "lxqt-qtplugin")
2d6a5066 603 (version "1.1.0")
5663b5b0
MP
604 (source
605 (origin
606 (method url-fetch)
607 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
608 version "/" name "-" version ".tar.xz"))
609 (sha256
2d6a5066 610 (base32 "1zw79lnm35gj3dyd4vlnk08n1lnr8391n36nbn81d0fgmvs21yx4"))))
5663b5b0
MP
611 (build-system cmake-build-system)
612 (inputs
8394619b
LC
613 (list libdbusmenu-qt
614 libfm-qt
615 libqtxdg
616 qtbase-5
1ef04fb2 617 qtsvg-5
8394619b 618 qtx11extras))
5663b5b0 619 (native-inputs
eef8e2ec 620 (list lxqt-build-tools qttools-5))
5663b5b0
MP
621 (arguments
622 '(#:tests? #f ; no tests
623 #:phases
624 (modify-phases %standard-phases
625 (add-after 'unpack 'patch-source
626 (lambda _
627 (substitute* '("src/CMakeLists.txt")
628 (("DESTINATION \"\\$\\{QT_PLUGINS_DIR\\}")
097166df 629 "DESTINATION \"lib/qt5/plugins"))
5663b5b0 630 #t)))))
f8adff1e 631 (home-page "https://lxqt-project.org")
5663b5b0
MP
632 (synopsis "LXQt Qt platform integration plugin")
633 (description "lxqt-qtplugin is providing a library libqtlxqt to integrate
634Qt with LXQt.")
635 (license license:lgpl2.1+)))
636
cc7f4175
MP
637(define-public lxqt-runner
638 (package
639 (name "lxqt-runner")
850cc1cc 640 (version "1.1.0")
cc7f4175
MP
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
850cc1cc 647 (base32 "1wfng8g28mq97ibrgpfbj353i15vdimmjp83pfqrmkddx0yvzcdv"))))
cc7f4175
MP
648 (build-system cmake-build-system)
649 (inputs
8394619b
LC
650 (list kwindowsystem
651 liblxqt
652 libqtxdg
653 lxqt-globalkeys
654 muparser
655 pcre
656 qtbase-5
1ef04fb2 657 qtsvg-5
8394619b 658 qtx11extras))
cc7f4175 659 (native-inputs
eef8e2ec 660 (list pkg-config qttools-5 lxqt-build-tools))
850cc1cc 661 (arguments '(#:tests? #f)) ; no tests
f8adff1e 662 (home-page "https://lxqt-project.org")
cc7f4175
MP
663 (synopsis "Tool used to launch programs quickly by typing their names")
664 (description "lxqt-runner provides a GUI that comes up on the desktop and
665allows for launching applications or shutting down the system.")
a6b941dd 666 (license license:lgpl2.1+)))
cc7f4175 667
54033a4d
AE
668(define-public lxqt-session
669 (package
670 (name "lxqt-session")
64678c72 671 (version "1.1.1")
54033a4d
AE
672 (source
673 (origin
674 (method url-fetch)
70c488f8
MP
675 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
676 version "/" name "-" version ".tar.xz"))
54033a4d 677 (sha256
64678c72 678 (base32 "0j8q5jfpb2l0vvji3xs8y0jcr792z6sxzj111qqvmdrbpxrkwxnw"))))
54033a4d 679 (build-system cmake-build-system)
54033a4d 680 (inputs
8394619b
LC
681 (list eudev
682 kwindowsystem
683 liblxqt
64678c72 684 qtxdg-tools
8394619b
LC
685 procps
686 qtbase-5
1ef04fb2 687 qtsvg-5
8394619b
LC
688 qtx11extras
689 xdg-user-dirs))
70c488f8 690 (native-inputs
eef8e2ec 691 (list pkg-config lxqt-build-tools qttools-5))
54033a4d 692 (arguments
70c488f8 693 `(#:tests? #f
54033a4d 694 #:phases
70c488f8
MP
695 (modify-phases %standard-phases
696 (add-after 'unpack 'patch-source
9aa35795 697 (lambda* (#:key outputs #:allow-other-keys)
9aa35795
RAM
698 (let ((out (assoc-ref outputs "out")))
699 (substitute* '("xsession/lxqt.desktop.in")
700 (("Exec=startlxqt") (string-append "Exec=" out "/bin/startlxqt"))
64678c72
SB
701 (("TryExec=lxqt-session") (string-append "TryExec=" out "/bin/startlxqt"))))))
702
42f3eb2e
RAM
703 (add-after 'unpack 'patch-openbox-permission
704 (lambda _
705 (substitute* "startlxqt.in"
64678c72
SB
706 ;; Don't add 'etc/xdg' to XDG_CONFIG_DIRS, and 'share' to XDG_DATA_DIRS.
707 (("! contains .*;") "false;")
708 ;; Add write permission to lxqt-rc.xml file which is stored as
709 ;; read-only in store.
42f3eb2e
RAM
710 (("cp \"\\$LXQT_DEFAULT_OPENBOX_CONFIG\" \"\\$XDG_CONFIG_HOME/openbox\"")
711 (string-append "cp \"$LXQT_DEFAULT_OPENBOX_CONFIG\" \"$XDG_CONFIG_HOME/openbox\"\n"
712 " # fix openbox permission issue\n"
64678c72
SB
713 " chmod u+w \"$XDG_CONFIG_HOME/openbox\"/*"))))))))
714 (native-search-paths
715 (list (search-path-specification
716 ;; LXQt applications install their default config files into
717 ;; 'share/lxqt' and search them from XDG_CONFIG_DIRS/lxqt.
718 (variable "XDG_CONFIG_DIRS")
719 (files '("share")))))
f8adff1e 720 (home-page "https://lxqt-project.org")
54033a4d
AE
721 (synopsis "Session manager for LXQt")
722 (description "lxqt-session provides the standard session manager
723for the LXQt desktop environment.")
a6b941dd 724 (license license:lgpl2.1+)))
dbb4f7d0
MP
725
726(define-public lxqt-sudo
727 (package
728 (name "lxqt-sudo")
da546ff3 729 (version "1.1.0")
dbb4f7d0
MP
730 (source
731 (origin
732 (method url-fetch)
733 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
734 version "/" name "-" version ".tar.xz"))
735 (sha256
da546ff3 736 (base32 "064w40v43m91y9aywxxf2pj5rpcl4gbsgj7dv97pg4vhj9s790b8"))))
dbb4f7d0
MP
737 (build-system cmake-build-system)
738 (inputs
8394619b
LC
739 (list kwindowsystem
740 liblxqt
741 libqtxdg
742 qtbase-5
1ef04fb2 743 qtsvg-5
8394619b
LC
744 qtx11extras
745 sudo))
dbb4f7d0 746 (native-inputs
eef8e2ec 747 (list pkg-config qttools-5 lxqt-build-tools))
da546ff3 748 (arguments '(#:tests? #f)) ; no tests
f8adff1e 749 (home-page "https://lxqt-project.org")
dbb4f7d0
MP
750 (synopsis "GUI frontend for sudo/su")
751 (description "lxqt-sudo is a graphical front-end of commands sudo and su
752respectively. As such it enables regular users to launch applications with
753permissions of other users including root.")
a6b941dd 754 (license license:lgpl2.1+)))
d6fd4a76 755
26127ebb 756(define-public lxqt-themes
84f6a990 757 (package
26127ebb 758 (name "lxqt-themes")
a79afa8d 759 (version "1.1.0")
84f6a990
MP
760 (source
761 (origin
762 (method url-fetch)
763 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
764 version "/" name "-" version ".tar.xz"))
765 (sha256
a79afa8d 766 (base32 "18zrp2j0xpsrzy6m2dw8k55zczcc9jzavncasrp5j1dxscnzwrcr"))))
26127ebb
MP
767 (build-system cmake-build-system)
768 (native-inputs
8394619b 769 (list lxqt-build-tools))
a79afa8d 770 (arguments '(#:tests? #f)) ; no tests
f8adff1e 771 (home-page "https://lxqt-project.org")
26127ebb
MP
772 (synopsis "Themes, graphics and icons for LXQt")
773 (description "This package comprises a number of graphic files and themes
774for LXQt.")
775 ;; The whole package is released under LGPL 2.1+, while the LXQt logo is
776 ;; licensed under CC-BY-SA 3.0.
777 (license license:lgpl2.1+)))
778
779
780;; File Manager
781
782(define-public libfm-qt
783 (package
784 (name "libfm-qt")
892d8995 785 (version "1.1.0")
26127ebb
MP
786 (source
787 (origin
788 (method url-fetch)
789 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
790 version "/" name "-" version ".tar.xz"))
791 (sha256
892d8995 792 (base32 "0m2fq1wh553yqi64a5nrdvm57fk3jnc3kxgaf0ja7h95jw6czvm5"))))
84f6a990 793 (build-system cmake-build-system)
26127ebb 794 (arguments
b3f56292 795 '(#:tests? #f)) ; no tests
84f6a990 796 (inputs
8394619b
LC
797 (list glib
798 libexif
799 libfm
800 libxcb
801 menu-cache
802 pcre
803 qtbase-5
804 qtx11extras))
84f6a990 805 (native-inputs
eef8e2ec 806 (list pkg-config lxqt-build-tools qttools-5))
f8adff1e 807 (home-page "https://lxqt-project.org")
26127ebb
MP
808 (synopsis "Qt binding for libfm")
809 (description "libfm-qt is the Qt port of libfm, a library providing
810components to build desktop file managers which belongs to LXDE.")
84f6a990
MP
811 (license license:lgpl2.1+)))
812
d6fd4a76
MP
813(define-public pcmanfm-qt
814 (package
815 (name "pcmanfm-qt")
50fb051d 816 (version "1.1.0")
d6fd4a76
MP
817 (source
818 (origin
819 (method url-fetch)
820 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
821 version "/" name "-" version ".tar.xz"))
822 (sha256
50fb051d 823 (base32 "0pwl2j5kbs86vmq86phavq89bl2i82ic839bjk0v8kmxm9q2mrh9"))))
d6fd4a76 824 (build-system cmake-build-system)
50fb051d
SB
825 (arguments
826 (list
827 #:tests? #f ; no tests
828 #:phases
829 #~(modify-phases %standard-phases
830 (add-before 'configure 'patch-settings.conf.in
831 (lambda* (#:key inputs #:allow-other-keys)
832 (let ((wallpaper (search-input-file inputs
833 "share/lxqt/wallpapers/waves-logo.png")))
834 (substitute* "config/pcmanfm-qt/lxqt/settings.conf.in"
835 (("Wallpaper=.*")
836 (string-append "Wallpaper=" wallpaper "\n")))))))))
d6fd4a76 837 (inputs
50fb051d 838 (list libfm-qt qtbase-5 qtx11extras lxqt-themes))
d6fd4a76 839 (native-inputs
eef8e2ec 840 (list pkg-config qttools-5 lxqt-build-tools))
f8adff1e 841 (home-page "https://lxqt-project.org")
d6fd4a76
MP
842 (synopsis "File manager and desktop icon manager")
843 (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of
844LXDE.")
6f00fb75 845 (license license:gpl2+)))
0aab2349 846
26127ebb
MP
847
848;; Extra
849
32b74b70
MP
850(define-public compton-conf
851 (package
852 (name "compton-conf")
223b40b7 853 (version "0.16.0")
32b74b70
MP
854 (source
855 (origin
856 (method url-fetch)
857 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
858 version "/" name "-" version ".tar.xz"))
859 (sha256
223b40b7 860 (base32 "0haarzhndjp0wndfhcdy6zl2whpdn3w0qzr3rr137kfqibc58lvx"))))
32b74b70
MP
861 (build-system cmake-build-system)
862 (inputs
8394619b 863 (list libconfig qtbase-5))
32b74b70 864 (native-inputs
eef8e2ec 865 (list lxqt-build-tools pkg-config qttools-5))
eae4a0a2 866 (arguments '(#:tests? #f)) ; no tests
f8adff1e 867 (home-page "https://lxqt-project.org")
32b74b70
MP
868 (synopsis "GUI configuration tool for compton X composite manager")
869 (description "@code{compton-conf} is a configuration tool for X composite
870manager Compton.")
871 (license license:lgpl2.1+)))
872
604bdae7
MP
873(define-public lximage-qt
874 (package
875 (name "lximage-qt")
5ea35545 876 (version "1.1.0")
604bdae7
MP
877 (source
878 (origin
879 (method url-fetch)
880 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
881 version "/" name "-" version ".tar.xz"))
882 (sha256
5ea35545 883 (base32 "0nal8n7nmkafapdbcs9c8rk313md2fak4xjl9m56n10dxcjpi2wb"))))
604bdae7
MP
884 (build-system cmake-build-system)
885 (inputs
1ef04fb2 886 (list libexif libfm-qt qtbase-5 qtsvg-5 qtx11extras))
604bdae7 887 (native-inputs
eef8e2ec 888 (list pkg-config lxqt-build-tools qttools-5))
604bdae7 889 (arguments
f2a8c02c 890 '(#:tests? #f)) ; no tests
f8adff1e 891 (home-page "https://lxqt-project.org")
604bdae7
MP
892 (synopsis "The image viewer and screenshot tool for lxqt")
893 (description "LXImage-Qt is the Qt port of LXImage, a simple and fast
894image viewer.")
6f00fb75 895 (license license:gpl2+)))
604bdae7 896
31fd62c8
MP
897(define-public obconf-qt
898 (package
899 (name "obconf-qt")
e1a9bae3 900 (version "0.16.2")
31fd62c8
MP
901 (source
902 (origin
903 (method url-fetch)
904 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
905 version "/" name "-" version ".tar.xz"))
906 (sha256
e1a9bae3 907 (base32 "0q29f77dkwy005gzrmn2wj2ga1hdnfd2gwp05h72i2dj0qbdla3k"))))
31fd62c8
MP
908 (build-system cmake-build-system)
909 (inputs
8394619b
LC
910 (list imlib2
911 libsm
912 librsvg
913 libxft
914 libxml2
915 openbox
916 pango
917 pcre
918 qtbase-5
919 qtx11extras))
31fd62c8 920 (native-inputs
eef8e2ec 921 (list lxqt-build-tools pkg-config qttools-5))
31fd62c8 922 (arguments
b42bd22e 923 '(#:tests? #f)) ; no tests
f8adff1e 924 (home-page "https://lxqt-project.org")
31fd62c8
MP
925 (synopsis "Openbox configuration tool")
926 (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for
927window manager OpenBox.")
928 (license license:gpl2+)))
929
26127ebb
MP
930(define-public pavucontrol-qt
931 (package
932 (name "pavucontrol-qt")
1c0677e3 933 (version "1.1.0")
26127ebb
MP
934 (source
935 (origin
936 (method url-fetch)
937 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
938 version "/" name "-" version ".tar.xz"))
939 (sha256
1c0677e3 940 (base32 "0y3ql25cmg1cmzjvadf7zcb58hh69gcslvr944sxxhaqp4daz10v"))))
26127ebb
MP
941 (build-system cmake-build-system)
942 (inputs
8394619b 943 (list glib pcre pulseaudio qtbase-5 qtx11extras))
26127ebb 944 (native-inputs
eef8e2ec 945 (list pkg-config lxqt-build-tools qttools-5))
26127ebb 946 (arguments
f376b325 947 '(#:tests? #f)) ; no tests
f8adff1e 948 (home-page "https://lxqt-project.org")
26127ebb
MP
949 (synopsis "Pulseaudio mixer in Qt")
950 (description "@code{pavucontrol-qt} is the Qt port of volume control
951@code{pavucontrol} of sound server @code{PulseAudio}.")
6f00fb75 952 (license license:gpl2+)))
26127ebb 953
9886134c
MP
954(define-public qps
955 (package
956 (name "qps")
f024a6de 957 (version "2.5.0")
9886134c
MP
958 (source
959 (origin
960 (method url-fetch)
961 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
962 version "/" name "-" version ".tar.xz"))
963 (sha256
f024a6de 964 (base32 "16ybq07xpkl22mszakc1175xlqcayyj21i2h6wlxb8bmb7csg30n"))))
9886134c
MP
965 (build-system cmake-build-system)
966 (inputs
8394619b
LC
967 (list kwindowsystem
968 libxrender
969 liblxqt
970 libqtxdg
971 qtbase-5
972 qtx11extras))
9886134c 973 (native-inputs
eef8e2ec 974 (list lxqt-build-tools qttools-5))
9886134c
MP
975 (arguments
976 '(#:tests? #f)) ; no tests
f8adff1e 977 (home-page "https://lxqt-project.org")
9886134c
MP
978 (synopsis "Qt-based visual process status monitor")
979 (description "@code{qps} is a monitor that displays the status of the
980processes currently in existence, much like code{top} or code{ps}.")
981 (license license:gpl2+)))
982
0aab2349
MP
983(define-public qtermwidget
984 (package
985 (name "qtermwidget")
83ba42f0 986 (version "1.1.0")
0aab2349
MP
987 (source
988 (origin
989 (method url-fetch)
990 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
991 version "/" name "-" version ".tar.xz"))
992 (sha256
83ba42f0 993 (base32 "1m64c1m8dkb06fgfk09da2anjspphph6qdk41rqhds2qymh090v4"))))
0aab2349
MP
994 (build-system cmake-build-system)
995 (inputs
8394619b 996 (list qtbase-5 utf8proc))
0aab2349 997 (native-inputs
eef8e2ec 998 (list lxqt-build-tools qttools-5))
0aab2349 999 (arguments
238e42a3 1000 '(#:tests? #f)) ; no tests
f8adff1e 1001 (home-page "https://lxqt-project.org")
0aab2349
MP
1002 (synopsis "The terminal widget for QTerminal")
1003 (description "QTermWidget is a terminal emulator widget for Qt 5.")
6f00fb75 1004 (license license:gpl2+)))
7e9e775f
MP
1005
1006(define-public qterminal
1007 (package
1008 (name "qterminal")
f2ec964b 1009 (version "1.1.0")
7e9e775f
MP
1010 (source
1011 (origin
1012 (method url-fetch)
1013 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1014 version "/" name "-" version ".tar.xz"))
1015 (sha256
f2ec964b 1016 (base32 "1b9568y5xyxymk8r7pkz878ba24dyaxql2sfiy6blr8szf308c5l"))))
7e9e775f
MP
1017 (build-system cmake-build-system)
1018 (inputs
8394619b 1019 (list qtbase-5 qtx11extras qtermwidget))
7e9e775f 1020 (native-inputs
eef8e2ec 1021 (list lxqt-build-tools qttools-5))
7e9e775f 1022 (arguments
d30cd1a5 1023 '(#:tests? #f)) ; no tests
f8adff1e 1024 (home-page "https://lxqt-project.org")
7e9e775f
MP
1025 (synopsis "Lightweight Qt-based terminal emulator")
1026 (description "QTerminal is a lightweight Qt terminal emulator based on
1027QTermWidget.")
6f00fb75 1028 (license license:gpl2+)))
4b88ab55
MP
1029
1030(define-public screengrab
1031 (package
1032 (name "screengrab")
33c1d2e5 1033 (version "2.4.0")
4b88ab55
MP
1034 (source
1035 (origin
1036 (method url-fetch)
063bc5f8
TGR
1037 (uri (string-append "https://github.com/lxqt/screengrab/releases/download/"
1038 version "/screengrab-" version ".tar.xz"))
4b88ab55 1039 (sha256
33c1d2e5 1040 (base32 "14kh287d70v1lpd5w8pji88nmw3jd44q4h927vnszrkv6bwplzx7"))))
4b88ab55
MP
1041 (build-system cmake-build-system)
1042 (inputs
1ef04fb2 1043 (list kwindowsystem libqtxdg qtbase-5 qtsvg-5 qtx11extras))
4b88ab55 1044 (native-inputs
eef8e2ec 1045 (list pkg-config perl qttools-5))
4b88ab55
MP
1046 (arguments
1047 '(#:tests? #f)) ; no tests
f8adff1e 1048 (home-page "https://lxqt-project.org")
4b88ab55
MP
1049 (synopsis "Crossplatform tool for fast making screenshots")
1050 (description "ScreenGrab is a program for fast creating screenshots, and
1051easily publishing them on internet image hosting services.")
6f00fb75 1052 (license license:gpl2+)))
1fdcee02
MP
1053
1054
403b4e06
RAM
1055(define-public lxqt-archiver
1056 (package
1057 (name "lxqt-archiver")
bc334d4a 1058 (version "0.6.0")
403b4e06
RAM
1059 (source
1060 (origin
0b7c5400
AB
1061 (method url-fetch)
1062 (uri (string-append "https://github.com/lxqt/" name "/releases/download/"
1063 version "/" name "-" version ".tar.xz"))
403b4e06 1064 (sha256
bc334d4a 1065 (base32 "1cxxr7rpflh2ki272pac927gzcw2w1lp3qz8vplflf148laigwc0"))))
403b4e06
RAM
1066 (build-system cmake-build-system)
1067 (inputs
8394619b 1068 (list glib json-glib libfm-qt qtbase-5 qtx11extras))
403b4e06 1069 (native-inputs
eef8e2ec 1070 (list pkg-config lxqt-build-tools qttools-5))
403b4e06
RAM
1071 (arguments
1072 '(#:tests? #f))
f8adff1e 1073 (home-page "https://lxqt-project.org")
403b4e06
RAM
1074 (synopsis "Simple & lightweight desktop-agnostic Qt file archiver")
1075 (description
1076 "This package provides a Qt graphical interface to archiving programs
1077like @command{tar} and @command{zip}.")
1078 (license license:gpl2+)))
1079
c10c77a7
RAM
1080(define-public lxqt-connman-applet
1081 ;; since the main developers didn't release any version yet, their
1082 ;; latest commit on `master` branch at the moment used for this version.
3e294125 1083 (let ((commit "db1618d58fd3439142c4e44b24cba0dbb68b7141")
c10c77a7
RAM
1084 (revision "0"))
1085 (package
1086 (name "lxqt-connman-applet")
0b7c5400 1087 (version (git-version "0.15.0" revision commit))
c10c77a7
RAM
1088 (source
1089 (origin
1090 (method git-fetch)
1091 (uri (git-reference
8ed4c468 1092 (url (string-append "https://github.com/lxqt/" name))
c10c77a7
RAM
1093 (commit commit)))
1094 (file-name (git-file-name name version))
3e294125
BT
1095 (sha256
1096 (base32 "087641idpg7n8yhh5biis4wv52ayw3rddirwqb34bf5fwj664pw9"))))
c10c77a7
RAM
1097 (build-system cmake-build-system)
1098 (inputs
8394619b
LC
1099 (list kwindowsystem
1100 qtbase-5
1ef04fb2 1101 qtsvg-5
8394619b
LC
1102 liblxqt
1103 qtx11extras
1104 libqtxdg))
c10c77a7
RAM
1105 (native-inputs
1106 `(("lxqt-build-tools" ,lxqt-build-tools)
eef8e2ec 1107 ("qtlinguist" ,qttools-5)))
c10c77a7
RAM
1108 (arguments
1109 `(#:tests? #f ; no tests
1110 #:phases
1111 (modify-phases %standard-phases
3e294125
BT
1112 (add-after 'unpack 'remove-definitions
1113 (lambda _
1114 (substitute* "CMakeLists.txt"
1115 (("include\\(LXQtCompilerSettings NO_POLICY_SCOPE\\)")
1116 "include(LXQtCompilerSettings NO_POLICY_SCOPE)
0b7c5400 1117remove_definitions(-DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII)"))
3e294125 1118 #t)))))
c10c77a7
RAM
1119 (home-page "https://github.com/lxqt/lxqt-connman-applet")
1120 (synopsis "System-tray applet for connman")
1121 (description "This package provides a Qt-based system-tray applet for
1122the network management tool Connman, originally developed for the LXQT
1123desktop.")
1124 (license license:lgpl2.1+))))
1125
1fdcee02
MP
1126;; The LXQt Desktop Environment
1127
1128(define-public lxqt
1129 (package
1130 (name "lxqt")
c03908fe 1131 (version "17.0")
1fdcee02
MP
1132 (source #f)
1133 (build-system trivial-build-system)
1134 (arguments '(#:builder (begin (mkdir %output) #t)))
1135 (propagated-inputs
8394619b
LC
1136 (list ;; XDG
1137 desktop-file-utils
1138 hicolor-icon-theme
1139 xdg-user-dirs
1140 xdg-utils
1141 ;; Base
1ef04fb2 1142 ;; TODO: qtsvg-5 is needed for lxqt apps to display icons. Maybe it
8394619b 1143 ;; should be added to their propagated-inputs?
1ef04fb2 1144 qtsvg-5
8394619b
LC
1145 ;; Core
1146 lxqt-about
1147 lxqt-admin
1148 lxqt-config
1149 lxqt-globalkeys
1150 lxqt-notificationd
1151 lxqt-openssh-askpass
1152 lxqt-panel
1153 lxqt-policykit
1154 lxqt-powermanagement
1155 lxqt-qtplugin
1156 lxqt-runner
1157 lxqt-session
1158 lxqt-sudo
1159 lxqt-themes
1160 pcmanfm-qt
1161 ;; Extra
1162 picom
1163 font-dejavu
1164 lximage-qt
1165 obconf-qt
1166 openbox
fc4ff8c3 1167 breeze-icons ; default by <lxqt-session>/share/lxqt/lxqt.conf
8394619b
LC
1168 pavucontrol-qt
1169 qps
1170 qterminal))
1fdcee02
MP
1171 (synopsis "The Lightweight Qt Desktop Environment")
1172 (description "LXQt is a lightweight Qt desktop environment.")
f8adff1e 1173 (home-page "https://lxqt-project.org")
6f00fb75 1174 (license license:gpl2+)))