gnu: nnn: Don't use NAME in source URI.
[jackhill/guix/guix.git] / gnu / packages / xfce.scm
CommitLineData
62ac2ed9 1;;; GNU Guix --- Functional package management for GNU
b2836799 2;;; Copyright © 2014, 2015 Sou Bunnbu <iyzsong@gmail.com>
e013220e 3;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
5a179844 4;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
c29e5fda 5;;; Copyright © 2016 Florian Paul Schmidt <mista.tapas@gmx.net>
3c8ba11a 6;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
215ccb99 7;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
b6310608 8;;; Copyright © 2017 Petter <petter@mykolab.ch>
4a78fd46 9;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
ea4eed68 10;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
62ac2ed9
SB
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 xfce)
305bc4cc 28 #:use-module ((guix licenses) #:hide (freetype))
62ac2ed9
SB
29 #:use-module (guix packages)
30 #:use-module (guix download)
79c2528f 31 #:use-module (guix utils)
b6310608 32 #:use-module (guix build-system glib-or-gtk)
62ac2ed9 33 #:use-module (guix build-system gnu)
6150b5c7 34 #:use-module (guix build-system trivial)
d814f921 35 #:use-module (gnu packages)
aea7d1d5 36 #:use-module (gnu packages calendar)
53e1b30e 37 #:use-module (gnu packages cdrom)
62ac2ed9
SB
38 #:use-module (gnu packages pkg-config)
39 #:use-module (gnu packages glib)
6cec9818
SB
40 #:use-module (gnu packages gtk)
41 #:use-module (gnu packages xorg)
2eb7d77d 42 #:use-module (gnu packages xdisorg)
305bc4cc
SB
43 #:use-module (gnu packages web)
44 #:use-module (gnu packages fontutils)
324b0040 45 #:use-module (gnu packages freedesktop)
305bc4cc
SB
46 #:use-module (gnu packages image)
47 #:use-module (gnu packages gnome)
48 #:use-module (gnu packages pdf)
25a21c7f 49 #:use-module (gnu packages polkit)
5c776d27
SB
50 #:use-module (gnu packages gstreamer)
51 #:use-module (gnu packages linux)
52 #:use-module (gnu packages photo)
0f0c586a 53 #:use-module (gnu packages pcre)
aea7d1d5 54 #:use-module (gnu packages popt)
0f0c586a 55 #:use-module (gnu packages pulseaudio))
62ac2ed9
SB
56
57(define-public gtk-xfce-engine
58 (package
59 (name "gtk-xfce-engine")
221d4572 60 (version "2.10.1")
62ac2ed9
SB
61 (source (origin
62 (method url-fetch)
221d4572
SB
63 (uri (string-append "http://archive.xfce.org/src/xfce/"
64 name "/" (version-major+minor version) "/"
62ac2ed9
SB
65 name "-" version ".tar.bz2"))
66 (sha256
67 (base32
221d4572 68 "0g86ywkx0ghzhhn96k88p67bbzlm1aqckly85izp07w80l1934ja"))))
62ac2ed9
SB
69 (build-system gnu-build-system)
70 (native-inputs
71 `(("pkg-config" ,pkg-config)
72 ("intltool" ,intltool)))
73 (inputs `(("gtk+" ,gtk+-2)))
08429f39 74 (home-page "https://www.xfce.org/")
62ac2ed9
SB
75 (synopsis "GTK+ theme engine for Xfce")
76 (description
77 "Default GTK+ engine and themes for Xfce Desktop Environment.")
78 (license gpl2+)))
79c2528f
SB
79
80(define-public libxfce4util
81 (package
82 (name "libxfce4util")
96fffede 83 (version "4.12.1")
79c2528f
SB
84 (source (origin
85 (method url-fetch)
86 (uri (string-append "http://archive.xfce.org/xfce/"
87 (version-major+minor version)
88 "/src/" name "-" version ".tar.bz2"))
89 (sha256
90 (base32
96fffede 91 "07c8r3xwx5is298zk77m3r784gmr5y4mh8bbca5zdjqk5vxdwsw7"))))
79c2528f
SB
92 (build-system gnu-build-system)
93 (native-inputs
94 `(("pkg-config" ,pkg-config)
95 ("intltool" ,intltool)))
96 (propagated-inputs `(("glib" ,glib))) ; required by libxfce4util-1.0.pc
08429f39 97 (home-page "https://www.xfce.org/")
79c2528f
SB
98 (synopsis "Basic utility library for Xfce")
99 (description
100 "A general-purpose utility library with core application support for the
101Xfce Desktop Environment.")
102 (license lgpl2.0+)))
471dbb70
SB
103
104(define-public xfconf
105 (package
106 (name "xfconf")
e013220e 107 (version "4.12.0")
471dbb70
SB
108 (source (origin
109 (method url-fetch)
110 (uri (string-append "http://archive.xfce.org/xfce/"
111 (version-major+minor version)
112 "/src/" name "-" version ".tar.bz2"))
113 (sha256
114 (base32
e013220e 115 "0mmi0g30aln3x98y5p507g17pipq0dj0bwypshan8cq5hkmfl44r"))))
471dbb70 116 (build-system gnu-build-system)
b2836799
SB
117 (arguments
118 '(#:phases
119 ;; Run check after install phase to test dbus activation.
dc1d3cde
KK
120 (modify-phases %standard-phases
121 (add-after 'install 'check
122 (lambda _
123 (setenv "HOME" (getenv "TMPDIR")) ; xfconfd requires a writable HOME
124 ;; Run test-suite under a dbus session.
125 (setenv "XDG_DATA_DIRS" ; for finding org.xfce.Xfconf.service
126 (string-append %output "/share"))
127 ;; For the missing '/etc/machine-id'.
128 (setenv "DBUS_FATAL_WARNINGS" "0");
215ccb99 129 (invoke "dbus-launch" "make" "check")))
dc1d3cde 130 (delete 'check))))
471dbb70
SB
131 (native-inputs
132 `(("pkg-config" ,pkg-config)
133 ("intltool" ,intltool)))
134 (propagated-inputs
135 ;; libxfconf-0.pc refers to all these.
136 `(("glib" ,glib)
137 ("dbus" ,dbus)
138 ("dbus-glib" ,dbus-glib)))
139 (inputs
140 `(("libxfce4util" ,libxfce4util)))
08429f39 141 (home-page "https://www.xfce.org/")
471dbb70
SB
142 (synopsis "Configuration storage and query system for Xfce")
143 (description
144 "Settings daemon for Xfce, implemented as a D-Bus-based configuration
145storage system.")
146 (license lgpl2.0+)))
6cec9818
SB
147
148(define-public libxfce4ui
149 (package
150 (name "libxfce4ui")
7379ffc1 151 (version "4.12.0")
6cec9818
SB
152 (source (origin
153 (method url-fetch)
154 (uri (string-append "http://archive.xfce.org/xfce/"
155 (version-major+minor version)
156 "/src/" name "-" version ".tar.bz2"))
157 (sha256
158 (base32
7379ffc1 159 "11rrhqxnfwx5jls3nlg9s2x8saag9f2zqk9cdm6hr3bs6cr9a781"))))
6cec9818
SB
160 (build-system gnu-build-system)
161 (native-inputs
162 `(("pkg-config" ,pkg-config)
163 ("intltool" ,intltool)))
164 (propagated-inputs
b8d3a000 165 `(("gtk+-3" ,gtk+) ; required by libxfce4ui-2.pc
75beb7e1 166 ;; libxfce4kbd-private-2.pc refers to all these.
6cec9818
SB
167 ("libxfce4util" ,libxfce4util)
168 ("xfconf" ,xfconf)))
169 (inputs `(("libsm" ,libsm)
170 ("libice" ,libice)
b8d3a000
RW
171 ;; FIXME: required by libxfce4ui-1.pc, so should be propagated,
172 ;; but will lead to a conflict with gtk+.
173 ("gtk+-2" ,gtk+-2)
6cec9818 174 ("startup-notification" ,startup-notification)))
08429f39 175 (home-page "https://www.xfce.org/")
6cec9818
SB
176 (synopsis "Widgets library for Xfce")
177 (description
178 "Libxfce4ui is the replacement of the old libxfcegui4 library. It is used
e881752c 179to share commonly used Xfce widgets among the Xfce applications.")
6cec9818 180 (license lgpl2.0+)))
2eb7d77d
SB
181
182(define-public exo
183 (package
184 (name "exo")
9ade90ae 185 (version "0.10.3")
2eb7d77d
SB
186 (source (origin
187 (method url-fetch)
9ade90ae 188 (uri (string-append "http://archive.xfce.org/xfce/4.12/src/"
2eb7d77d
SB
189 name "-" version ".tar.bz2"))
190 (sha256
191 (base32
9ade90ae 192 "1g9651ra395v2fmzb943l68b9pg0rfxc19x97a62crchxwa4nw4m"))))
2eb7d77d
SB
193 (build-system gnu-build-system)
194 (native-inputs
195 `(("pkg-config" ,pkg-config)
196 ("intltool" ,intltool)))
197 (propagated-inputs
198 ;; exo-1.pc refers to all these.
199 `(("gtk+" ,gtk+-2)
200 ("libxfce4util" ,libxfce4util)))
201 (inputs
202 `(("libxfce4ui" ,libxfce4ui)
203 ("perl-uri" ,perl-uri)))
08429f39 204 (home-page "https://www.xfce.org/")
2eb7d77d
SB
205 (synopsis "Extension library for Xfce")
206 (description
207 "An extension library to Xfce. While Xfce comes with quite a few libraries
208that are targeted at desktop development, libexo is targeted at application
209development.")
210 ;; Libraries are under LGPLv2+, and programs under GPLv2+.
211 (license (list gpl2+ lgpl2.1+))))
7fc3d5f3
SB
212
213(define-public garcon
214 (package
215 (name "garcon")
ea3fb8f1 216 (version "0.4.0")
7fc3d5f3
SB
217 (source (origin
218 (method url-fetch)
ea3fb8f1 219 (uri (string-append "http://archive.xfce.org/xfce/4.12/src/"
7fc3d5f3
SB
220 name "-" version ".tar.bz2"))
221 (sha256
222 (base32
ea3fb8f1 223 "0wm9pjbwq53s3n3nwvsyf0q8lbmhiy2ln3bn5ncihr9vf5cwhzbq"))))
7fc3d5f3
SB
224 (build-system gnu-build-system)
225 (native-inputs
226 `(("pkg-config" ,pkg-config)
227 ("intltool" ,intltool)
228 ("glib:bin" ,glib "bin")))
b8d3a000
RW
229 (inputs
230 `(("gtk+" ,gtk+-2)))
ea3fb8f1
SB
231 (propagated-inputs
232 `(("libxfce4ui" ,libxfce4ui))) ; required by garcon-gtk2-1.pc
08429f39 233 (home-page "https://www.xfce.org/")
7fc3d5f3
SB
234 (synopsis "Implementation of the freedesktop.org menu specification")
235 (description
236 "Garcon is a freedesktop.org compliant menu implementation based on
237GLib and GIO. It was started as a complete rewrite of the former Xfce menu
238library called libxfce4menu, which, in contrast to garcon, was lacking menu
239merging features essential for loading menus modified with menu editors.")
240 (license lgpl2.0+)))
305bc4cc
SB
241
242(define-public tumbler
243 (package
244 (name "tumbler")
3786be08 245 (version "0.1.31")
305bc4cc
SB
246 (source (origin
247 (method url-fetch)
710f3ce4 248 (uri (string-append "http://archive.xfce.org/src/xfce/tumbler/0.1/"
305bc4cc
SB
249 name "-" version ".tar.bz2"))
250 (sha256
251 (base32
3786be08 252 "0wvip28gm2w061hn84zp2q4dv947ihylrppahn4cjspzff935zfh"))))
305bc4cc
SB
253 (build-system gnu-build-system)
254 (native-inputs
255 `(("pkg-config" ,pkg-config)
256 ("intltool" ,intltool)
257 ("glib:bin" ,glib "bin") ; need glib-genmarshal
258 ("dbus-glib" ,dbus-glib))) ; need dbus-binding-tool
259 (propagated-inputs
260 `(("glib" ,glib))) ; required by tumbler-1.pc
261 (inputs
262 `(("dbus" ,dbus)
263 ("gdk-pixbuf" ,gdk-pixbuf)
264 ("freetype" ,freetype)
265 ("libjpeg" ,libjpeg)
266 ("libgsf" ,libgsf)
267 ("poppler" ,poppler)
710f3ce4 268 ("gstreamer" ,gstreamer)))
08429f39 269 (home-page "https://www.xfce.org/")
305bc4cc
SB
270 (synopsis "D-Bus service for applications to request thumbnails")
271 (description
272 "Tumbler is a D-Bus service for applications to request thumbnails for
273various URI schemes and MIME types. It is an implementation of the thumbnail
274management D-Bus specification.")
275 (license gpl2+)))
3b3a7fe7
SB
276
277(define-public xfce4-panel
278 (package
279 (name "xfce4-panel")
bcd54994 280 (version "4.12.0")
3b3a7fe7
SB
281 (source (origin
282 (method url-fetch)
283 (uri (string-append "http://archive.xfce.org/xfce/"
284 (version-major+minor version)
285 "/src/" name "-" version ".tar.bz2"))
286 (sha256
287 (base32
bcd54994 288 "1c4p3ckghvsad1sj5v8wmar5mh9cbhail9mmhad2f9pwwb10z4ih"))
fc1adab1 289 (patches (search-patches "xfce4-panel-plugins.patch"))))
3b3a7fe7 290 (build-system gnu-build-system)
7ee2005e
SB
291 (arguments
292 '(#:configure-flags '("--enable-gtk3")))
3b3a7fe7
SB
293 (native-inputs
294 `(("pkg-config" ,pkg-config)
295 ("intltool" ,intltool)))
296 (propagated-inputs
297 `(("libxfce4util" ,libxfce4util))) ; required by libxfce4panel-1.0.pc
298 (inputs
299 `(("exo" ,exo)
b3546174 300 ("garcon" ,garcon)
dbb7a081 301 ("libwnck" ,libwnck-2)
3b3a7fe7 302 ("libxfce4ui" ,libxfce4ui)))
d814f921
MW
303 (native-search-paths
304 (list (search-path-specification
305 (variable "X_XFCE4_LIB_DIRS")
af070955 306 (files '("lib/xfce4")))))
08429f39 307 (home-page "https://www.xfce.org/")
3b3a7fe7
SB
308 (synopsis "Xfce desktop panel")
309 (description
310 "Desktop panel for Xfce, which contains program launchers, window buttons,
311applications menu, workspace switcher and more.")
312 ;; Libraries are under LGPLv2.1+, and programs under GPLv2+.
313 (license (list gpl2+ lgpl2.1+))))
c5c2f9bb 314
bfb84869
MW
315(define-public xfce4-battery-plugin
316 (package
317 (name "xfce4-battery-plugin")
318 (version "1.0.5")
319 (source (origin
320 (method url-fetch)
321 (uri (string-append "http://archive.xfce.org/src/panel-plugins/"
322 name "/" (version-major+minor version) "/"
323 name "-" version ".tar.bz2"))
324 (sha256
325 (base32
326 "04gbplcj8z4vg5xbks8cc2jjf62mmf9sdymg90scjwmb82pv2ngn"))))
327 (build-system gnu-build-system)
328 (native-inputs `(("pkg-config" ,pkg-config)
329 ("intltool" ,intltool)))
330 (inputs `(("glib" ,glib)
331 ("gtk+" ,gtk+-2)
332 ("libxfce4util" ,libxfce4util)
333 ("libxfce4ui" ,libxfce4ui)
334 ("xfce4-panel" ,xfce4-panel)))
335 (home-page
08429f39 336 "https://goodies.xfce.org/projects/panel-plugins/xfce4-battery-plugin")
bfb84869
MW
337 (synopsis "Battery monitor panel plugin for Xfce4")
338 (description
339 "A battery monitor panel plugin for Xfce4, compatible with APM and ACPI.")
340 ;; The main plugin code is covered by gpl2+, but the files containing code
341 ;; to read the battery state via ACPI or APM are covered by lgpl2.0+.
342 (license (list gpl2+ lgpl2.0+))))
343
d692678f
SB
344(define-public xfce4-clipman-plugin
345 (package
346 (name "xfce4-clipman-plugin")
347 (version "1.2.6")
348 (source (origin
349 (method url-fetch)
350 (uri (string-append "http://archive.xfce.org/src/panel-plugins/"
351 name "/" (version-major+minor version) "/"
352 name "-" version ".tar.bz2"))
353 (sha256
354 (base32
355 "19a8gwcqc0r5qqi8w28dc8arqip34m8yxdb87lgps9g5qfcky113"))))
356 (build-system gnu-build-system)
357 (native-inputs
358 `(("intltool" ,intltool)
359 ("pkg-config" ,pkg-config)))
360 (inputs
361 `(("exo" ,exo)
362 ("libxfce4ui" ,libxfce4ui)
363 ("libxtst" ,libxtst)
364 ("xfce4-panel" ,xfce4-panel)))
365 (home-page
08429f39 366 "https://goodies.xfce.org/projects/panel-plugins/xfce4-clipman-plugin")
d692678f
SB
367 (synopsis "Clipboard manager for Xfce")
368 (description
369 "Clipman is a clipboard manager for Xfce. It keeps the clipboard contents
370around while it is usually lost when you close an application. It is able to
371handle text and images, and has a feature to execute actions on specific text by
372matching them against regular expressions.")
373 (license (list gpl2+))))
374
0f0c586a
SB
375(define-public xfce4-pulseaudio-plugin
376 (package
377 (name "xfce4-pulseaudio-plugin")
378 (version "0.2.3")
379 (source (origin
380 (method url-fetch)
381 (uri (string-append "http://archive.xfce.org/src/panel-plugins/"
382 name "/" (version-major+minor version) "/"
383 name "-" version ".tar.bz2"))
384 (sha256
385 (base32
386 "0crvb2gyxbnlf46712arg3m2vqx81dixqhqdwss0bngpijy3ca78"))))
387 (build-system gnu-build-system)
388 (native-inputs
389 `(("intltool" ,intltool)
390 ("pkg-config" ,pkg-config)))
391 (inputs
392 `(("exo" ,exo)
393 ("libnotify" ,libnotify)
394 ("libxfce4ui" ,libxfce4ui)
395 ("pulseaudio" ,pulseaudio)
396 ("xfce4-panel" ,xfce4-panel)))
08429f39 397 (home-page "https://git.xfce.org/panel-plugins/xfce4-pulseaudio-plugin/")
0f0c586a
SB
398 (synopsis "PulseAudio panel plugin for Xfce")
399 (description
400 "Xfce PulseAudio plugin is a plugin for the Xfce panel which provides a
401convenient way to adjust the audio volume of the PulseAudio sound system and
402to an auto mixer tool like pavucontrol. It can optionally handle multimedia
403keys for controlling the audio volume.")
404 (license gpl2+)))
405
5a179844
AE
406(define-public xfce4-xkb-plugin
407 (package
408 (name "xfce4-xkb-plugin")
409 (version "0.7.1")
410 (source (origin
411 (method url-fetch)
412 (uri (string-append "http://archive.xfce.org/src/panel-plugins/"
413 name "/" (version-major+minor version) "/"
414 name "-" version ".tar.bz2"))
415 (sha256
416 (base32
417 "10g65j5ia389ahhn3b9hr52ghpp0817fk0m60rfrv4wrzqrjxzk1"))))
418 (build-system gnu-build-system)
419 (native-inputs
420 `(("intltool" ,intltool)
421 ("pkg-config" ,pkg-config)))
422 (inputs
423 `(("garcon" ,garcon)
424 ("librsvg" ,librsvg)
dbb7a081 425 ("libwnck" ,libwnck-2)
5a179844
AE
426 ("libx11" ,libx11)
427 ("libxfce4ui" ,libxfce4ui)
428 ("libxklavier" ,libxklavier)
429 ("xfce4-panel" ,xfce4-panel)))
08429f39 430 (home-page "https://git.xfce.org/panel-plugins/xfce4-xkb-plugin/")
5a179844
AE
431 (synopsis "XKB layout switching panel plug-in for Xfce")
432 (description
433 "Xfce XKB plugin makes it possible to set up and use multiple
434keyboard layouts.
435
436One can choose the keyboard model, what key combination to
437use to switch between the layouts, the actual keyboard layouts,
438the way in which the current layout is being displayed (country
439flag image or text) and the layout policy, which is whether to
440store the layout globally (for all windows), per application or
441per window.")
442 (license bsd-2)))
443
c5c2f9bb
SB
444(define-public xfce4-appfinder
445 (package
446 (name "xfce4-appfinder")
be3db25a 447 (version "4.12.0")
c5c2f9bb
SB
448 (source (origin
449 (method url-fetch)
450 (uri (string-append "http://archive.xfce.org/xfce/"
451 (version-major+minor version)
452 "/src/" name "-" version ".tar.bz2"))
453 (sha256
454 (base32
be3db25a 455 "0ry5hin8xhgnkmm9vs7jq8blk1cnbyr0s18nm1j6nsm7360abm1a"))))
c5c2f9bb
SB
456 (build-system gnu-build-system)
457 (native-inputs
458 `(("pkg-config" ,pkg-config)
459 ("intltool" ,intltool)))
460 (inputs
461 `(("garcon" ,garcon)
b8d3a000 462 ("gtk+" ,gtk+-2)
c5c2f9bb 463 ("libxfce4ui" ,libxfce4ui)))
08429f39 464 (home-page "https://www.xfce.org/")
c5c2f9bb
SB
465 (synopsis "Xfce application finder")
466 (description
467 "Application finder for Xfce, it will show the applications installed on
468your system in categories, so you can quickly find and launch them.")
469 (license gpl2+)))
9a8a040d
SB
470
471(define-public xfce4-session
472 (package
473 (name "xfce4-session")
3d75c320 474 (version "4.12.0")
9a8a040d
SB
475 (source (origin
476 (method url-fetch)
477 (uri (string-append "http://archive.xfce.org/xfce/"
478 (version-major+minor version)
479 "/src/" name "-" version ".tar.bz2"))
480 (sha256
481 (base32
b90e7e5d
DT
482 "01kvbd09c06j20n155hracsgrq06rlmfgdywffjsvlwpn19m9j38"))
483 (patches
484 ;; See: https://bugzilla.xfce.org/show_bug.cgi?id=12282
fc1adab1 485 (search-patches "xfce4-session-fix-xflock4.patch"))
25a21c7f
RW
486 (modules '((guix build utils)))
487 (snippet
488 '(begin
489 (substitute* "xfsm-shutdown-helper/main.c"
490 (("/sbin/shutdown -h now") "halt")
491 (("/sbin/shutdown -r now") "restart")
492 (("/usr/sbin/pm-suspend") "pm-suspend")
493 (("/usr/sbin/pm-hibernate") "pm-hibernate"))
494 #t))))
9a8a040d
SB
495 (build-system gnu-build-system)
496 (arguments
497 '(#:configure-flags
68f1869c
DM
498 (list (string-append "--with-xsession-prefix=" %output))
499 ;; Disable icon cache update.
500 #:make-flags
501 '("gtk_update_icon_cache=true")))
9a8a040d
SB
502 (native-inputs
503 `(("pkg-config" ,pkg-config)
504 ("intltool" ,intltool)))
505 (inputs
506 `(("iceauth" ,iceauth)
25a21c7f
RW
507 ("upower" ,upower)
508 ("polkit" ,polkit)
9a8a040d 509 ("libsm" ,libsm)
dbb7a081 510 ("libwnck" ,libwnck-2)
9a8a040d 511 ("libxfce4ui" ,libxfce4ui)))
08429f39 512 (home-page "https://www.xfce.org/")
9a8a040d
SB
513 (synopsis "Xfce session manager")
514 (description
515 "Session manager for Xfce, it will restore your session on startup and
516allows you to shutdown the computer from Xfce.")
517 (license gpl2+)))
55613927
SB
518
519(define-public xfce4-settings
520 (package
521 (name "xfce4-settings")
2998f718 522 (version "4.12.0")
55613927
SB
523 (source (origin
524 (method url-fetch)
525 (uri (string-append "http://archive.xfce.org/xfce/"
526 (version-major+minor version)
527 "/src/" name "-" version ".tar.bz2"))
528 (sha256
529 (base32
363ccf9f 530 "108za1cmjslwzkdl76x9kwxkq8z734kg9nz8rxk057f10pqwxgh4"))
fc1adab1 531 (patches (search-patches "xfce4-settings-defaults.patch"))))
55613927
SB
532 (build-system gnu-build-system)
533 (native-inputs
534 `(("pkg-config" ,pkg-config)
535 ("intltool" ,intltool)))
536 (inputs
537 `(("exo" ,exo)
538 ("garcon" ,garcon)
539 ("libnotify" ,libnotify)
b3546174 540 ("libxcursor" ,libxcursor)
55613927 541 ("libxi" ,libxi)
2f8339c8 542 ("libxklavier" ,libxklavier)
55613927 543 ("libxrandr" ,libxrandr)
2f8339c8
SB
544 ("libxfce4ui" ,libxfce4ui)
545 ("upower" ,upower)
546 ("xf86-input-libinput" ,xf86-input-libinput)))
08429f39 547 (home-page "https://www.xfce.org/")
55613927
SB
548 (synopsis "Xfce settings manager")
549 (description
550 "Settings manager for Xfce, it can control various aspects of the desktop
551like appearance, display, keyboard and mouse settings.")
552 (license gpl2+)))
5c776d27
SB
553
554(define-public thunar
555 (package
556 (name "thunar")
78daf79b 557 (version "1.6.6")
5c776d27
SB
558 (source (origin
559 (method url-fetch)
78daf79b 560 (uri (string-append "http://archive.xfce.org/xfce/4.12/src/"
5c776d27
SB
561 "Thunar-" version ".tar.bz2"))
562 (sha256
563 (base32
78daf79b 564 "1cl9v3rdzipyyxml3pyrzspxfmmssz5h5snpj18irq4an42539dr"))))
5c776d27
SB
565 (build-system gnu-build-system)
566 (native-inputs
567 `(("pkg-config" ,pkg-config)
568 ("intltool" ,intltool)))
569 (inputs
570 `(("exo" ,exo)
5c776d27 571 ("libexif" ,libexif)
ea226291 572 ("libgudev" ,libgudev)
5c776d27
SB
573 ("libnotify" ,libnotify)
574 ("libxfce4ui" ,libxfce4ui)
575 ("pcre" ,pcre)
576 ("xfce4-panel" ,xfce4-panel)
577 ("startup-notification" ,startup-notification)))
08429f39 578 (home-page "https://www.xfce.org/")
5c776d27
SB
579 (synopsis "Xfce file manager")
580 (description
581 "A modern file manager for graphical desktop, aiming to be easy-to-use and
582fast.")
583 (license gpl2+)))
aac03800
SB
584
585(define-public thunar-volman
586 (package
587 (name "thunar-volman")
ad154006 588 (version "0.8.1")
aac03800
SB
589 (source (origin
590 (method url-fetch)
ad154006 591 (uri (string-append "http://archive.xfce.org/xfce/4.12/src/"
aac03800
SB
592 name "-" version ".tar.bz2"))
593 (sha256
594 (base32
ad154006 595 "1gf259n1v3y23n1zlkhyr6r0i8j59rnl1cmxvxj6la9cwdfbn22s"))))
aac03800
SB
596 (build-system gnu-build-system)
597 (native-inputs
598 `(("pkg-config" ,pkg-config)
599 ("intltool" ,intltool)))
600 (inputs
601 `(("exo" ,exo)
ea226291 602 ("libgudev" ,libgudev)
aac03800
SB
603 ("libnotify" ,libnotify)
604 ("libxfce4ui" ,libxfce4ui)))
08429f39 605 (home-page "https://www.xfce.org/")
aac03800
SB
606 (synopsis "Removable media manager for Thunar")
607 (description
608 "Thunar-volman is an extension for the Thunar File Manager, which enables
609automatic management of removable drives and media. For example, if
610thunar-volman is installed and configured properly, and you plug in your
e881752c 611digital camera, it will automatically spawn your preferred photo application
aac03800
SB
612and import the new pictures from your camera.")
613 (license gpl2+)))
3a4bfdde
SB
614
615(define-public xfwm4
616 (package
617 (name "xfwm4")
39a4d761 618 (version "4.12.0")
3a4bfdde
SB
619 (source (origin
620 (method url-fetch)
621 (uri (string-append "http://archive.xfce.org/xfce/"
622 (version-major+minor version)
623 "/src/" name "-" version ".tar.bz2"))
624 (sha256
625 (base32
39a4d761 626 "0fnc2ps4k733n9qfpxrz047h1myyqjzxczl7fmkjmqwshvicpx19"))))
3a4bfdde
SB
627 (build-system gnu-build-system)
628 (native-inputs
629 `(("pkg-config" ,pkg-config)
630 ("intltool" ,intltool)))
631 (inputs
8ccf68f9 632 `(("libdrm" ,libdrm)
dbb7a081 633 ("libwnck" ,libwnck-2)
8ccf68f9
SB
634 ("libxcomposite" ,libxcomposite)
635 ("libxdamage" ,libxdamage)
3a4bfdde 636 ("libxfce4ui" ,libxfce4ui)
8ccf68f9 637 ("libxrandr" ,libxrandr)))
08429f39 638 (home-page "https://www.xfce.org/")
3a4bfdde
SB
639 (synopsis "Xfce window manager")
640 (description
641 "Window manager for Xfce, it handles the placement of windows
642on the screen.")
643 (license gpl2+)))
8a3c54e0
SB
644
645(define-public xfdesktop
646 (package
647 (name "xfdesktop")
046bcf29 648 (version "4.12.0")
8a3c54e0
SB
649 (source (origin
650 (method url-fetch)
651 (uri (string-append "http://archive.xfce.org/xfce/"
652 (version-major+minor version)
653 "/src/" name "-" version ".tar.bz2"))
654 (sha256
655 (base32
046bcf29 656 "1ivzgg4792nid6wcgd1nq5vc3z0y5ip6ymq7ci5j2qkp663qnykf"))))
8a3c54e0
SB
657 (build-system gnu-build-system)
658 (native-inputs
659 `(("pkg-config" ,pkg-config)
660 ("intltool" ,intltool)))
661 (inputs
662 `(("exo" ,exo)
663 ("garcon" ,garcon)
664 ("libnotify" ,libnotify)
dbb7a081 665 ("libwnck" ,libwnck-2)
8a3c54e0
SB
666 ("libxfce4ui" ,libxfce4ui)
667 ("thunar" ,thunar)))
08429f39 668 (home-page "https://www.xfce.org/")
8a3c54e0
SB
669 (synopsis "Xfce desktop manager")
670 (description
671 "Desktop manager for Xfce, it sets the background color or image with
672optional application menu or icons for minimized applications or launchers,
673devices and folders.")
674 (license gpl2+)))
eea3e54c
SB
675
676(define-public xfce4-terminal
677 (package
678 (name "xfce4-terminal")
ea4eed68 679 (version "0.8.6")
eea3e54c
SB
680 (source (origin
681 (method url-fetch)
682 (uri (string-append "http://archive.xfce.org/src/apps/" name "/"
683 (version-major+minor version) "/"
684 name "-" version ".tar.bz2"))
685 (sha256
686 (base32
ea4eed68 687 "1mw1v20a9r8figl5m93jfp16x64bfj8yjmy5s5kbdw501425camw"))))
eea3e54c
SB
688 (build-system gnu-build-system)
689 (native-inputs
690 `(("pkg-config" ,pkg-config)
691 ("intltool" ,intltool)))
692 (inputs
693 `(("libxfce4ui" ,libxfce4ui)
415dd1f6 694 ("vte" ,vte)))
08429f39 695 (home-page "https://www.xfce.org/")
eea3e54c
SB
696 (synopsis "Xfce terminal emulator")
697 (description
698 "A lightweight and easy to use terminal emulator for Xfce. Features
699include a simple configuration interface, the ability to use multiple tabs
700with terminals within a single window, the possibility to have a
701pseudo-transparent terminal background, and a compact mode (where both the
702menubar and the window decorations are hidden) that helps you to save space
703on your desktop.")
704 (license gpl2+)))
0ca0ce53
SB
705
706(define-public xfce
707 (package
708 (name "xfce")
709 (version (package-version xfce4-session))
710 (source #f)
6150b5c7 711 (build-system trivial-build-system)
c860d6ef
RW
712 (arguments
713 '(#:modules ((guix build union))
714 #:builder
715 (begin
716 (use-modules (ice-9 match)
717 (guix build union))
718 (match %build-inputs
719 (((names . directories) ...)
720 (union-build (assoc-ref %outputs "out")
e3cfef22
MW
721 directories)
722 #t)))))
c860d6ef 723 (inputs
0ca0ce53
SB
724 `(("exo" ,exo)
725 ("garcon" ,garcon)
726 ("gnome-icon-theme" ,gnome-icon-theme)
727 ("gtk-xfce-engine" ,gtk-xfce-engine)
728 ("hicolor-icon-theme" ,hicolor-icon-theme)
85f09459 729 ("ristretto" ,ristretto)
0ca0ce53
SB
730 ("shared-mime-info" ,shared-mime-info)
731 ("thunar" ,thunar)
732 ("thunar-volman" ,thunar-volman)
733 ("tumlber" ,tumbler)
734 ("xfce4-appfinder" ,xfce4-appfinder)
0ca0ce53 735 ("xfce4-panel" ,xfce4-panel)
20095cc5 736 ("xfce4-power-manager" ,xfce4-power-manager)
0ca0ce53
SB
737 ("xfce4-session" ,xfce4-session)
738 ("xfce4-settings" ,xfce4-settings)
739 ("xfce4-terminal" ,xfce4-terminal)
740 ("xfconf" ,xfconf)
741 ("xfdesktop" ,xfdesktop)
35557712
SB
742 ("xfwm4" ,xfwm4)
743 ;; Panel plugins.
744 ("xfce4-battery-plugin" ,xfce4-battery-plugin)
745 ("xfce4-clipman-plugin" ,xfce4-clipman-plugin)
5a179844
AE
746 ("xfce4-pulseaudio-plugin" ,xfce4-pulseaudio-plugin)
747 ("xfce4-xkb-plugin" ,xfce4-xkb-plugin)))
1ec0c1f3
SB
748 (native-search-paths
749 ;; For finding panel plugins.
750 (package-native-search-paths xfce4-panel))
08429f39 751 (home-page "https://www.xfce.org/")
0ca0ce53
SB
752 (synopsis "Desktop environment (meta-package)")
753 (description
754 "Xfce is a lightweight desktop environment. It aims to be fast and low on
755system resources, while still being visually appealing and user friendly.")
756 (license gpl2+)))
c29e5fda
FPS
757
758(define-public xfce4-power-manager
759 (package
760 (name "xfce4-power-manager")
761 (version "1.4.3")
762 (source (origin
763 (method url-fetch)
764 (uri (string-append "http://archive.xfce.org/xfce/4.12"
765 "/src/" name "-" version ".tar.bz2"))
766 (sha256
767 (base32
768 "04909sfc2nrj2wg9cw6y9y2r9yrp3l3vc201sy1gaiap67fi33h1"))))
769 (build-system gnu-build-system)
770 (arguments
771 '(#:configure-flags '("--enable-gtk3")))
772 (native-inputs
773 `(("pkg-config" ,pkg-config)
774 ("intltool" ,intltool)))
775 (inputs
776 `(("lbxrandr" ,libxrandr)
b8d3a000 777 ("gtk+" ,gtk+-2)
c29e5fda
FPS
778 ("upower" ,upower)
779 ("libnotify" ,libnotify)
780 ("libxfce4ui" ,libxfce4ui)))
08429f39 781 (home-page "https://www.xfce.org/")
c29e5fda
FPS
782 (synopsis "Xfce Power Manager")
783 (description
784 "This is a power manager for the Xfce desktop. It manages the power
785sources on the computer and the devices that can be controlled to reduce their
786power consumption (such as LCD brightness level, monitor sleep, CPU frequency
787scaling, etc). In addition, xfce4-power-manager provides a set of
788freedesktop-compliant DBus interfaces to inform other applications about current
789power level so that they can adjust their power consumption, and it provides the
790inhibit interface which allows applications to prevent automatic sleep.")
791 (license gpl2+)))
8e635287
KY
792
793(define-public ristretto
794 (package
795 (name "ristretto")
e0ca1afc 796 (version "0.8.3")
8e635287
KY
797 (source (origin
798 (method url-fetch)
799 (uri (string-append "http://archive.xfce.org/src/apps/ristretto/"
800 (version-major+minor version) "/"
801 name "-" version ".tar.bz2"))
802 (sha256
803 (base32
e0ca1afc 804 "0r96r8r1qslr6cqvwldm99ha563adkw9v2zvaznxkpqn11v1374c"))))
8e635287
KY
805 (build-system gnu-build-system)
806 (native-inputs
807 `(("intltool" ,intltool)
808 ("pkg-config" ,pkg-config)))
809 (inputs
810 `(("desktop-file-utils" ,desktop-file-utils)
b8d3a000 811 ("gtk+" ,gtk+-2)
8e635287
KY
812 ("libexif" ,libexif)
813 ("libxfce4ui" ,libxfce4ui)
814 ("librsvg" ,librsvg)
815 ("tumbler" ,tumbler)))
08429f39 816 (home-page "https://docs.xfce.org/apps/ristretto/start")
8e635287
KY
817 (synopsis "Fast and lightweight picture-viewer")
818 (description
819 "The Ristretto Image Viewer is an application that can be used to view,
820and scroll through images. It can be used to run a slideshow of images, open
821images with other applications like an image-editor or configure an image as
822the desktop wallpaper.")
823 (license gpl2+)))
f6744394
KY
824
825(define-public xfce4-taskmanager
826 (package
827 (name "xfce4-taskmanager")
828 (version "1.1.0")
829 (source (origin
830 (method url-fetch)
831 (uri (string-append "http://archive.xfce.org/src/apps/"
832 name "/" (version-major+minor version) "/"
833 name "-" version ".tar.bz2"))
834 (sha256
835 (base32
836 "1jwywmkkkmz7406m1jq40w6apiav25cznafhigbgpjv6z5hv27if"))))
837 (build-system gnu-build-system)
838 (native-inputs
839 `(("intltool" ,intltool)
840 ("pkg-config" ,pkg-config)))
841 (inputs
842 `(("libwnck" ,libwnck-2)
843 ("gtk+" ,gtk+-2)))
08429f39 844 (home-page "https://goodies.xfce.org/projects/applications/xfce4-taskmanager")
f6744394
KY
845 (synopsis "Easy to use task manager")
846 (description
847 "This is a task manager for the Xfce desktop. It displays the CPU and
848memory usage graphically, and it can display processes as a tree.")
849 (license gpl2+)))
aea7d1d5
KK
850
851(define-public orage
852 (package
853 (name "orage")
854 (version "4.12.1")
855 (source (origin
856 (method url-fetch)
857 (uri (string-append "http://archive.xfce.org/src/apps/"
858 name "/" (version-major+minor version) "/"
859 name "-" version ".tar.bz2"))
860 (sha256
861 (base32
862 "0qlhvnl2m33vfxqlbkic2nmfpwyd4mq230jzhs48cg78392amy9w"))))
863 (build-system gnu-build-system)
864 (native-inputs
865 `(("intltool" ,intltool)
866 ("pkg-config" ,pkg-config)))
867 (inputs
868 `(("gtk+" ,gtk+-2)
869 ("libical" ,libical)
870 ("libnotify" ,libnotify)
871 ("popt" ,popt)
872 ("xfce4-panel" ,xfce4-panel)))
08429f39 873 (home-page "https://www.xfce.org/projects/")
aea7d1d5
KK
874 (synopsis "Simple calendar application with reminders")
875 (description
876 "This is a simple calendar application for the Xfce desktop. Orage has
877alarms and uses the iCalendar format, making it compatible with many other
878calendar applications. It also includes a panel clock plugin and an
879international clock application capable of simultaneously showing clocks from
880several different time zones.")
881 (license gpl2+)))
b6310608
P
882
883(define-public xfce4-notifyd
884 (package
885 (name "xfce4-notifyd")
886 (version "0.3.6")
887 (source (origin
888 (method url-fetch)
889 (uri (string-append "http://archive.xfce.org/src/apps/"
890 name "/" (version-major+minor version) "/"
891 name "-" version ".tar.bz2"))
892 (sha256
893 (base32
894 "1ybcfqfynr33g5hp2lgq17s8qyx7rq6fd2iwrpwcvm6kml6prjpl"))))
895 (build-system glib-or-gtk-build-system)
896 (native-inputs
897 `(("intltool" ,intltool)
898 ("pkg-config" ,pkg-config)))
899 (inputs
900 `(("libxfce4ui" ,libxfce4ui)
901 ("libnotify" ,libnotify)))
902 (home-page "https://goodies.xfce.org/projects/applications/xfce4-notifyd")
903 (synopsis "Show notification bubbles on Xfce")
904 (description
905 "The Xfce Notify Daemon (xfce4-notifyd for short) is a smallish program
906that implements the “server-side” portion of the Freedesktop desktop
907notifications specification. Applications that wish to pop up a notification
908bubble in a standard way can implicitly make use of xfce4-notifyd to do so by
909sending standard messages over D-Bus using the
910@code{org.freedesktop.Notifications} interface.")
911 (license gpl2)))
53e1b30e 912
913(define-public xfburn
914 (package
915 (name "xfburn")
2504fd37 916 (version "0.5.5")
53e1b30e 917 (source (origin
918 (method url-fetch)
919 (uri (string-append "http://archive.xfce.org/src/apps/xfburn/"
920 (version-major+minor version) "/"
921 name "-" version ".tar.bz2"))
922 (sha256
923 (base32
2504fd37 924 "1qdd8prnsfilsprg36p95cz3z50ffr9kgvka4d5pm260lsl3l5xa"))))
53e1b30e 925 (build-system gnu-build-system)
926 (native-inputs
927 `(("intltool" ,intltool)
928 ("pkg-config" ,pkg-config)))
929 (inputs
930 `(("exo" ,exo)
931 ("gstreamer" ,gstreamer)
932 ("gst-plugins-base" ,gst-plugins-base)
933 ("gst-plugins-good" ,gst-plugins-good)
934 ("gst-plugins-ugly" ,gst-plugins-ugly)
935 ("glib" ,glib)
936 ("gtk+" ,gtk+-2)
937 ("libburn" ,libburn)
938 ("libisofs" ,libisofs)
939 ("libxfce4ui" ,libxfce4ui)))
940 (home-page "https://goodies.xfce.org/projects/applications/xfburn")
941 (synopsis "GTK+ based CD, DVD and Blu-ray burning application")
942 (description
943 "Xfburn is a simple CD, DVD, and Blu-ray burning tool based on
944the libburnia libraries. It can blank CD/DVD/BD(-RW)s, burn and
945create iso images, audio CDs, as well as burn personal compositions
946of data to either CD/DVD/BD.")
947 (license gpl2+)))