gnu: gnome-system-monitor: Update to 3.24.0.
[jackhill/guix/guix.git] / gnu / packages / gnome.scm
CommitLineData
995b7261 1;;; GNU Guix --- Functional package management for GNU
109da1c0 2;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
89e34644 3;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
29a7c98a 4;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
7108425c 5;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org>
58d32305 6;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
8b877545 7;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
7aab13f1 8;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
88f70665 9;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
1e7464a9 10;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
49586905 11;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
8344a85e 12;;; Copyright © 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
293ff8b2 13;;; Copyright © 2015 David Thompson <davet@gnu.org>
e2674357 14;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
cc3bc027 15;;; Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
3c697ffd 16;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
21f05134 17;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
277a7d82 18;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
a56be436 19;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
6064a4e8 20;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
71d9b980 21;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
3920868c 22;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
e5e1df4d 23;;; Copyright © 2016 David Craven <david@craven.ch>
d1e4ad1b 24;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
cce0da5e 25;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
d04687dc 26;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
995b7261
AE
27;;;
28;;; This file is part of GNU Guix.
29;;;
30;;; GNU Guix is free software; you can redistribute it and/or modify it
31;;; under the terms of the GNU General Public License as published by
32;;; the Free Software Foundation; either version 3 of the License, or (at
33;;; your option) any later version.
34;;;
35;;; GNU Guix is distributed in the hope that it will be useful, but
36;;; WITHOUT ANY WARRANTY; without even the implied warranty of
37;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
38;;; GNU General Public License for more details.
39;;;
40;;; You should have received a copy of the GNU General Public License
41;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
42
43(define-module (gnu packages gnome)
b5b73a82 44 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
45 #:use-module (guix packages)
46 #:use-module (guix download)
4a526711 47 #:use-module (guix git-download)
29a7c98a 48 #:use-module (guix utils)
995b7261 49 #:use-module (guix build-system gnu)
121de2e1 50 #:use-module (guix build-system glib-or-gtk)
dc050251 51 #:use-module (guix build-system trivial)
ed19903d 52 #:use-module (gnu packages)
ba5dd105 53 #:use-module (gnu packages admin)
411ba511 54 #:use-module (gnu packages aspell)
75016d07 55 #:use-module (gnu packages autotools)
7b212526 56 #:use-module (gnu packages avahi)
6a180f6f 57 #:use-module (gnu packages base)
5698b8b8 58 #:use-module (gnu packages bison)
df217748 59 #:use-module (gnu packages calendar)
df12f04a 60 #:use-module (gnu packages check)
23a22af6 61 #:use-module (gnu packages cups)
6e1bb642 62 #:use-module (gnu packages curl)
c3f29bc9 63 #:use-module (gnu packages cyrus-sasl)
6e1bb642 64 #:use-module (gnu packages databases)
c769cf9f 65 #:use-module (gnu packages djvu)
ba5dd105 66 #:use-module (gnu packages dns)
121de2e1 67 #:use-module (gnu packages flex)
b4ce6300 68 #:use-module (gnu packages docbook)
329d731b 69 #:use-module (gnu packages enchant)
a56be436 70 #:use-module (gnu packages fontutils)
dfc407f3 71 #:use-module (gnu packages game-development)
fed5a689 72 #:use-module (gnu packages gettext)
995b7261 73 #:use-module (gnu packages glib)
c1354b90 74 #:use-module (gnu packages gnupg)
23a22af6 75 #:use-module (gnu packages gnuzilla)
85f5dc19 76 #:use-module (gnu packages gstreamer)
d9c1a22b 77 #:use-module (gnu packages gtk)
df217748 78 #:use-module (gnu packages gperf)
6b888eff 79 #:use-module (gnu packages guile)
34b979b9 80 #:use-module (gnu packages openldap)
c1354b90 81 #:use-module (gnu packages pdf)
75016d07 82 #:use-module (gnu packages polkit)
5698b8b8 83 #:use-module (gnu packages popt)
c1354b90 84 #:use-module (gnu packages ghostscript)
b645146f 85 #:use-module (gnu packages ibus)
9cc98f8a 86 #:use-module (gnu packages iso-codes)
85f5dc19 87 #:use-module (gnu packages libcanberra)
b64e217f 88 #:use-module (gnu packages libunistring)
88f70665 89 #:use-module (gnu packages linux)
75016d07 90 #:use-module (gnu packages libusb)
4e3fc547 91 #:use-module (gnu packages lirc)
7b212526 92 #:use-module (gnu packages lua)
e55354b8 93 #:use-module (gnu packages image)
ae792dba 94 #:use-module (gnu packages imagemagick)
ba5dd105 95 #:use-module (gnu packages networking)
b645146f 96 #:use-module (gnu packages password-utils)
de1215e2 97 #:use-module (gnu packages pcre)
27477d2d 98 #:use-module (gnu packages perl)
f70d8383 99 #:use-module (gnu packages photo)
995b7261 100 #:use-module (gnu packages pkg-config)
23a22af6 101 #:use-module (gnu packages pulseaudio)
995b7261 102 #:use-module (gnu packages python)
cce0da5e 103 #:use-module (gnu packages rdesktop)
75016d07 104 #:use-module (gnu packages scanner)
4a1bf090 105 #:use-module (gnu packages ssh)
85f5dc19 106 #:use-module (gnu packages xml)
200726ed 107 #:use-module (gnu packages gl)
1dd26275 108 #:use-module (gnu packages compression)
cce0da5e 109 #:use-module (gnu packages spice)
8f9ac901 110 #:use-module (gnu packages tex)
a7fd7b68 111 #:use-module (gnu packages tls)
6e1bb642 112 #:use-module (gnu packages web)
4a79e256 113 #:use-module (gnu packages webkit)
b64e217f 114 #:use-module (gnu packages xiph)
fecbf86e 115 #:use-module (gnu packages xorg)
ea57378f 116 #:use-module (gnu packages xdisorg)
ba421ab7 117 #:use-module (gnu packages freedesktop)
1e7464a9 118 #:use-module (gnu packages mail)
89e34644 119 #:use-module (gnu packages kerberos)
54021cd8 120 #:use-module (gnu packages multiprecision)
1e7464a9
DH
121 #:use-module (gnu packages backup)
122 #:use-module (gnu packages nettle)
c024ae36 123 #:use-module (gnu packages ncurses)
3dc8828f
SB
124 #:use-module (gnu packages video)
125 #:use-module (gnu packages cdrom)
126 #:use-module (gnu packages samba)
f47ba77e 127 #:use-module (gnu packages readline)
0bd3597b 128 #:use-module (gnu packages fonts)
b64e217f
MW
129 #:use-module (gnu packages qemu)
130 #:use-module (gnu packages zip)
53201c0d 131 #:use-module (gnu packages speech)
c024ae36 132 #:use-module (srfi srfi-1))
85f5dc19
AE
133
134(define-public brasero
135 (package
136 (name "brasero")
e8627cd9 137 (version "3.12.1")
85f5dc19
AE
138 (source (origin
139 (method url-fetch)
e8627cd9
DH
140 (uri (string-append "mirror://gnome/sources/" name "/"
141 (version-major+minor version) "/"
142 name "-" version ".tar.xz"))
85f5dc19
AE
143 (sha256
144 (base32
e8627cd9 145 "09vi2hyhl0bz7imv3ky6h7x5m3d546n968wcghydwrkvwm9ylpls"))))
1c40e3b7 146 (build-system glib-or-gtk-build-system)
e8627cd9
DH
147 (arguments
148 `(#:configure-flags (list
149 (string-append "--with-girdir="
150 (assoc-ref %outputs "out")
151 "/share/gir-1.0")
152 (string-append "--with-typelibdir="
153 (assoc-ref %outputs "out")
ce426deb
TD
154 "/lib/girepository-1.0"))
155 #:phases
156 (modify-phases %standard-phases
157 (add-before 'configure 'embed-growisofs
158 (lambda* (#:key inputs #:allow-other-keys)
159 (substitute* "plugins/growisofs/burn-growisofs.c"
160 (("\"growisofs") (string-append "\"" (which "growisofs"))))
161 #t )))))
85f5dc19
AE
162 (propagated-inputs
163 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
164 (native-inputs
165 `(("intltool" ,intltool)
426adbe8 166 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
e8627cd9 167 ("gobject-introspection" ,gobject-introspection)
9cc98f8a 168 ("pkg-config" ,pkg-config)))
85f5dc19 169 (inputs
ce426deb
TD
170 `(("dvd+rw-tools" ,dvd+rw-tools)
171 ("glib" ,glib)
85f5dc19
AE
172 ("gnome-doc-utils" ,gnome-doc-utils)
173 ("gstreamer" ,gstreamer)
174 ("gst-plugins-base" ,gst-plugins-base)
175 ("gtk+" ,gtk+)
85f5dc19
AE
176 ("itstool" ,itstool)
177 ("libcanberra" ,libcanberra)
178 ("libice" ,libice)
179 ("libnotify" ,libnotify)
180 ("libsm" ,libsm)
e8627cd9
DH
181 ("libxml2" ,libxml2)
182 ("nettle" ,nettle)
183 ("totem-pl-parser" ,totem-pl-parser)))
85f5dc19
AE
184 (home-page "https://projects.gnome.org/brasero/")
185 (synopsis "CD/DVD burning tool for Gnome")
186 (description "Brasero is an application to burn CD/DVD for the Gnome
187Desktop. It is designed to be as simple as possible and has some unique
188features to enable users to create their discs easily and quickly.")
1dd26275 189 (license license:gpl2+)))
995b7261 190
a56be436
RJ
191(define-public dia
192 ;; This version from GNOME's repository includes fixes for compiling with
193 ;; recent versions of the build tools. The latest activity on the
194 ;; pre-GNOME version has been in 2014, while GNOME has continued applying
195 ;; fixes in 2016.
196 (let ((commit "fbc306168edab63db80b904956117cbbdc514ee4"))
197 (package
198 (name "dia")
199 (version (string-append "0.97.2-" (string-take commit 7)))
200 (source (origin
201 (method git-fetch)
202 (uri (git-reference
203 (url "https://git.gnome.org/browse/dia")
204 (commit commit)))
205 (file-name (string-append name "-" version "-checkout"))
206 (sha256
207 (base32
208 "1b4bba0k8ph4cwgw8xjglss0p6n111bpd5app67lrq79mp0ad06l"))))
209 (build-system gnu-build-system)
210 (inputs
211 `(("glib" ,glib "bin")
212 ("pango" ,pango)
213 ("gdk-pixbuf" ,gdk-pixbuf)
214 ("gtk+" ,gtk+-2)
215 ("libxml2" ,libxml2)
216 ("freetype" ,freetype)
217 ("libart-lgpl" ,libart-lgpl)))
218 (native-inputs
219 `(("intltool" ,intltool)
220 ("pkg-config" ,pkg-config)
221 ("automake" ,automake)
222 ("autoconf" ,autoconf)
223 ("libtool" ,libtool)
224 ("perl" ,perl)
225 ("python-wrapper" ,python-wrapper)))
226 (arguments
227 `(#:phases
228 (modify-phases %standard-phases
229 (add-before 'configure 'run-autogen
230 (lambda _
231 (system* "sh" "autogen.sh"))))))
232 (home-page "https://wiki.gnome.org/Apps/Dia")
233 (synopsis "Diagram creation for GNOME")
234 (description "Dia can be used to draw different types of diagrams, and
235includes support for UML static structure diagrams (class diagrams), entity
236relationship modeling, and network diagrams. The program supports various file
237formats like PNG, SVG, PDF and EPS.")
238 (license license:gpl2+))))
239
7aab13f1
ML
240(define-public gnome-common
241 (package
242 (name "gnome-common")
af83490d 243 (version "3.18.0")
7aab13f1
ML
244 (source
245 (origin
246 (method url-fetch)
247 (uri (string-append "mirror://gnome/sources/" name "/"
248 (version-major+minor version) "/"
249 name "-" version ".tar.xz"))
250 (sha256
251 (base32
af83490d 252 "1kzqi8qvh5p1zncj8msazlmvcwsczjz2hqxp4x2y0mg718vrwmi2"))))
7aab13f1
ML
253 (build-system gnu-build-system)
254 (home-page "https://www.gnome.org/")
255 (synopsis "Bootstrap GNOME modules built from Git")
256 (description "gnome-common contains various files needed to bootstrap
257GNOME modules built from Git. It contains a common \"autogen.sh\" script that
258can be used to configure a source directory checked out from Git and some
259commonly used macros.")
260 (license license:gpl2+)))
261
9cc98f8a
CR
262(define-public gnome-desktop
263 (package
264 (name "gnome-desktop")
521cdb4b 265 (version "3.24.1")
9cc98f8a
CR
266 (source
267 (origin
268 (method url-fetch)
b38e45d8
EB
269 (uri (string-append "mirror://gnome/sources/" name "/"
270 (version-major+minor version) "/"
9cc98f8a
CR
271 name "-" version ".tar.xz"))
272 (sha256
273 (base32
521cdb4b 274 "1as5ri52n6wphvhqnxa813q15jri0x47hxsjikjcmb2big9vf2fy"))))
9cc98f8a
CR
275 (build-system gnu-build-system)
276 (native-inputs
a8340482
SB
277 `(("gobject-introspection" ,gobject-introspection)
278 ("itstool" ,itstool)
bcb354ad
SB
279 ("intltool" ,intltool)
280 ("pkg-config" ,pkg-config)
281 ("xmllint" ,libxml2)))
a8340482
SB
282 (propagated-inputs
283 ;; Required by gnome-desktop-3.0.pc.
284 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
285 ("gtk+" ,gtk+)))
9cc98f8a
CR
286 (inputs
287 `(("gdk-pixbuf" ,gdk-pixbuf)
288 ("glib" ,glib)
9cc98f8a 289 ("iso-codes" ,iso-codes)
9cc98f8a
CR
290 ("libx11" ,libx11)
291 ("libxext" ,libxext)
292 ("libxkbfile" ,libxkbfile)
293 ("libxrandr" ,libxrandr)
294 ("xkeyboard-config" ,xkeyboard-config)))
295 (home-page "https://www.gnome.org/")
296 (synopsis
35b9e423 297 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
298 (description
299 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
300on the desktop, but that cannot live in the platform for various reasons.
301There is no API or ABI guarantee, although we are doing our best to provide
302stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
303
304The gnome-about program helps find which version of GNOME is installed.")
305 ; Some bits under the LGPL.
1dd26275 306 (license license:gpl2+)))
9cc98f8a 307
995b7261
AE
308(define-public gnome-doc-utils
309 (package
310 (name "gnome-doc-utils")
311 (version "0.20.10")
312 (source
313 (origin
314 (method url-fetch)
b38e45d8
EB
315 (uri (string-append "mirror://gnome/sources/" name "/"
316 (version-major+minor version) "/"
995b7261
AE
317 name "-" version ".tar.xz"))
318 (sha256
319 (base32
320 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
321 (build-system gnu-build-system)
c4c4cc05 322 (native-inputs
995b7261 323 `(("intltool" ,intltool)
b4ce6300 324 ("docbook-xml" ,docbook-xml-4.4)
d80b0d4a 325 ("python2-libxml2" ,python2-libxml2)
995b7261
AE
326 ("libxml2" ,libxml2)
327 ("libxslt" ,libxslt)
328 ("pkg-config" ,pkg-config)
329 ("python-2" ,python-2)))
995b7261
AE
330 (home-page "https://wiki.gnome.org/GnomeDocUtils")
331 (synopsis
332 "Documentation utilities for the Gnome project")
333 (description
334 "Gnome-doc-utils is a collection of documentation utilities for the
335Gnome project. It includes xml2po tool which makes it easier to translate
336and keep up to date translations of documentation.")
1dd26275 337 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 338
6c4f7022
DC
339(define-public gnome-disk-utility
340 (package
341 (name "gnome-disk-utility")
342 (version "3.22.1")
343 (source (origin
344 (method url-fetch)
345 (uri (string-append "mirror://gnome/sources/" name "/"
346 (version-major+minor version) "/"
347 name "-" version ".tar.xz"))
348 (sha256
349 (base32
350 "1hqynlcgwm72il2rdml98gcarz0alsgxs5xf6ww2x0czaj3s3953"))))
351 (build-system gnu-build-system)
352 (native-inputs
353 `(("glib:bin" ,glib "bin")
354 ("intltool" ,intltool)
355 ("pkg-config" ,pkg-config)
356 ("docbook-xml" ,docbook-xml)
357 ("docbook-xsl" ,docbook-xsl)
358 ("libxml2" ,libxml2)
359 ("libxslt" ,libxslt)))
360 (inputs
361 `(("glib" ,glib)
362 ("appstream-glib" ,appstream-glib)
363 ("gnome-settings-daemon" ,gnome-settings-daemon)
364 ("gtk+" ,gtk+)
365 ("libcanberra" ,libcanberra)
366 ("libdvdread" ,libdvdread)
367 ("libnotify" ,libnotify)
368 ("libpwquality" ,libpwquality)
369 ("libsecret" ,libsecret)
370 ("udisks" ,udisks)))
371 (home-page "https://git.gnome.org/browse/gnome-disk-utility")
372 (synopsis "Disk management utility for GNOME")
373 (description "Disk management utility for GNOME.")
374 (license license:gpl2+)))
375
8ff49011
RW
376(define-public gcr
377 (package
378 (name "gcr")
6983ba56 379 (version "3.20.0")
8ff49011
RW
380 (source (origin
381 (method url-fetch)
382 (uri (string-append "mirror://gnome/sources/" name "/"
383 (version-major+minor version) "/"
384 name "-" version ".tar.xz"))
385 (sha256
386 (base32
6983ba56 387 "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))))
8ff49011
RW
388 (build-system gnu-build-system)
389 (arguments
390 '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
391 ;not exist
392 #:phases (modify-phases %standard-phases
393 (add-before
394 'check 'pre-check
395 (lambda* (#:key inputs #:allow-other-keys)
396 (substitute* "build/tap-driver"
397 (("/usr/bin/env python") (which "python"))))))))
398 (inputs
399 `(("dbus" ,dbus)
400 ("gnupg" ,gnupg) ;called as a child process during tests
401 ("libgcrypt" ,libgcrypt)))
402 (native-inputs
403 `(("python" ,python-2) ;for tests
404 ("pkg-config" ,pkg-config)
405 ("glib" ,glib "bin")
2af4f5b0
SB
406 ("gobject-introspection" ,gobject-introspection)
407 ("intltool" ,intltool)
408 ("xsltproc" ,libxslt)))
8ff49011
RW
409 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
410 (propagated-inputs
411 `(("p11-kit" ,p11-kit)
412 ("glib" ,glib)
413 ("gtk+" ,gtk+)))
414 (home-page "http://www.gnome.org")
415 (synopsis "Libraries for displaying certificates and accessing key stores")
416 (description
417 "The GCR package contains libraries used for displaying certificates and
418accessing key stores. It also provides the viewer for crypto files on the
419GNOME Desktop.")
420 (license license:lgpl2.1+)))
421
c1354b90
LC
422(define-public libgnome-keyring
423 (package
424 (name "libgnome-keyring")
5e8aec2c 425 (version "3.12.0")
c1354b90
LC
426 (source (origin
427 (method url-fetch)
b38e45d8
EB
428 (uri (string-append "mirror://gnome/sources/" name "/"
429 (version-major+minor version) "/"
430 name "-" version ".tar.xz"))
c1354b90
LC
431 (sha256
432 (base32
5e8aec2c 433 "10vpjhgbjm7z2djy04qakd02qlzpd02xnbfjhk2aqwjzn3xpihf4"))))
c1354b90 434 (build-system gnu-build-system)
c1354b90 435 (inputs
c4c4cc05 436 `(("libgcrypt" ,libgcrypt)
c1354b90 437 ("dbus" ,dbus)))
c4c4cc05
JD
438 (native-inputs
439 `(("pkg-config" ,pkg-config)
426adbe8 440 ("glib" ,glib "bin")
c4c4cc05 441 ("intltool" ,intltool)))
c1354b90
LC
442 (propagated-inputs
443 ;; Referred to in .h files and .pc.
444 `(("glib" ,glib)))
445 (home-page "http://www.gnome.org")
446 (synopsis "Accessing passwords from the GNOME keyring")
447 (description
448 "Client library to access passwords from the GNOME keyring.")
449
450 ;; Though a couple of files are LGPLv2.1+.
1dd26275 451 (license license:lgpl2.0+)))
c1354b90 452
e99a3d6f
RW
453(define-public gnome-keyring
454 (package
455 (name "gnome-keyring")
6983ba56 456 (version "3.20.0")
e99a3d6f
RW
457 (source (origin
458 (method url-fetch)
459 (uri (string-append "mirror://gnome/sources/" name "/"
460 (version-major+minor version) "/"
461 name "-" version ".tar.xz"))
462 (sha256
463 (base32
6983ba56 464 "16gcwwcg91ipxjmiyi4c4njvnxixmv1i278p0bilc3lafk6ww5xw"))))
e99a3d6f
RW
465 (build-system gnu-build-system)
466 (arguments
467 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
468 ;not exist
469 #:configure-flags
470 (list
471 (string-append "--with-pkcs11-config="
472 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
473 (string-append "--with-pkcs11-modules="
474 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
475 #:phases
476 (modify-phases %standard-phases
477 (add-before
478 'check 'pre-check
479 (lambda* (#:key inputs #:allow-other-keys)
480 (substitute* "build/tap-driver"
481 (("/usr/bin/env python") (which "python")))))
482 (add-before
483 'configure 'fix-docbook
484 (lambda* (#:key inputs #:allow-other-keys)
485 (substitute* "docs/Makefile.am"
486 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
487 (string-append (assoc-ref inputs "docbook-xsl")
488 "/xml/xsl/docbook-xsl-"
489 ,(package-version docbook-xsl)
490 "/manpages/docbook.xsl")))
491 (setenv "XML_CATALOG_FILES"
492 (string-append (assoc-ref inputs "docbook-xml")
493 "/xml/dtd/docbook/catalog.xml")))))))
494 (inputs
495 `(("libgcrypt" ,libgcrypt)
1a0b2d82 496 ("linux-pam" ,linux-pam)
e99a3d6f
RW
497 ("dbus" ,dbus)
498 ("gcr" ,gcr)))
499 (native-inputs
500 `(("pkg-config" ,pkg-config)
501 ("glib" ,glib "bin")
502 ("python" ,python-2) ;for tests
503 ("intltool" ,intltool)
504 ("autoconf" ,autoconf)
505 ("automake" ,automake)
506 ("libxslt" ,libxslt) ;for documentation
507 ("docbook-xml" ,docbook-xml-4.2)
508 ("docbook-xsl" ,docbook-xsl)))
509 (home-page "http://www.gnome.org")
510 (synopsis "Daemon to store passwords and encryption keys")
511 (description
512 "gnome-keyring is a program that keeps passwords and other secrets for
513users. It is run as a daemon in the session, similar to ssh-agent, and other
514applications locate it via an environment variable or D-Bus.
515
516The program can manage several keyrings, each with its own master password,
517and there is also a session keyring which is never stored to disk, but
518forgotten when the session ends.")
519 (license license:lgpl2.1+)))
520
c1354b90
LC
521(define-public evince
522 (package
523 (name "evince")
a5d8c786 524 (version "3.24.0")
c1354b90
LC
525 (source (origin
526 (method url-fetch)
b38e45d8
EB
527 (uri (string-append "mirror://gnome/sources/" name "/"
528 (version-major+minor version) "/"
529 name "-" version ".tar.xz"))
c1354b90
LC
530 (sha256
531 (base32
a5d8c786 532 "13yw0i68dgqp9alyliy3zifszh7rikkpi1xbz5binvxxgfpraf04"))))
121de2e1 533 (build-system glib-or-gtk-build-system)
c1354b90
LC
534 (arguments
535 `(#:configure-flags '("--disable-nautilus")
554b2dac
SB
536 #:phases
537 (modify-phases %standard-phases
538 (add-before 'install 'skip-gtk-update-icon-cache
539 ;; Don't create 'icon-theme.cache'.
540 (lambda _
541 (substitute* "data/Makefile"
542 (("gtk-update-icon-cache") "true"))
543 #t)))))
c1354b90
LC
544 (inputs
545 `(("libspectre" ,libspectre)
c769cf9f 546 ("djvulibre" ,djvulibre)
c1354b90
LC
547 ("ghostscript" ,ghostscript)
548 ("poppler" ,poppler)
c769cf9f
SB
549 ("libtiff" ,libtiff)
550 ;; TODO:
551 ;; Add libgxps for XPS support.
552 ;; Build libkpathsea as a shared library for DVI support.
553 ;; ("libkpathsea" ,texlive-bin)
554 ("gnome-desktop" ,gnome-desktop)
c1354b90
LC
555 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
556 ("libgnome-keyring" ,libgnome-keyring)
c769cf9f 557 ("adwaita-icon-theme" ,adwaita-icon-theme)
c1354b90
LC
558 ("gdk-pixbuf" ,gdk-pixbuf)
559 ("atk" ,atk)
560 ("pango" ,pango)
561 ("gtk+" ,gtk+)
562 ("glib" ,glib)
563 ("libxml2" ,libxml2)
c1354b90
LC
564 ("libsm" ,libsm)
565 ("libice" ,libice)
96e42467 566 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
567 ("dconf" ,dconf)
568 ("libcanberra" ,libcanberra)
c769cf9f 569 ("libsecret" ,libsecret)
c1354b90
LC
570 ;; For tests.
571 ("dogtail" ,python2-dogtail)))
96e42467 572 (native-inputs
bcb354ad
SB
573 `(("itstool" ,itstool)
574 ("intltool" ,intltool)
426adbe8 575 ("glib" ,glib "bin")
bcb354ad
SB
576 ("pkg-config" ,pkg-config)
577 ("xmllint" ,libxml2)))
c1354b90
LC
578 (home-page
579 "http://www.gnome.org/projects/evince/")
580 (synopsis "GNOME's document viewer")
581 (description
582 "Evince is a document viewer for multiple document formats. It
583currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
584of Evince is to replace the multiple document viewers that exist
96e42467 585on the GNOME Desktop with a single simple application.")
1dd26275 586 (license license:gpl2+)))
c1354b90 587
22e32e69
AE
588(define-public gsettings-desktop-schemas
589 (package
590 (name "gsettings-desktop-schemas")
796a0c03 591 (version "3.24.0")
22e32e69
AE
592 (source
593 (origin
594 (method url-fetch)
595 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 596 (version-major+minor version) "/"
22e32e69
AE
597 name "-" version ".tar.xz"))
598 (sha256
599 (base32
796a0c03 600 "145vpcljy4660cnk8zk91qf7ywa7hqfl5hhw025gy8hxcqzklmzn"))))
22e32e69
AE
601 (build-system gnu-build-system)
602 (inputs
c4c4cc05
JD
603 `(("glib" ,glib)))
604 (native-inputs
605 `(("intltool" ,intltool)
426adbe8 606 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 607 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
608 ("pkg-config" ,pkg-config)))
609 (home-page "https://launchpad.net/gsettings-desktop-schemas")
610 (synopsis
611 "GNOME settings for various desktop components")
612 (description
613 "Gsettings-desktop-schemas contains a collection of GSettings schemas
614for settings shared by various components of the GNOME desktop.")
1dd26275 615 (license license:lgpl2.1+)))
22e32e69 616
27477d2d
AE
617(define-public icon-naming-utils
618 (package
619 (name "icon-naming-utils")
620 (version "0.8.90")
621 (source
622 (origin
623 (method url-fetch)
5cc3096c 624 (uri (string-append "https://tango.freedesktop.org/releases/icon-naming-utils-"
27477d2d
AE
625 version ".tar.bz2"))
626 (sha256
627 (base32
628 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
629 (build-system gnu-build-system)
630 (inputs
631 `(("perl" ,perl)
632 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
633 (arguments
634 '(#:phases
635 (alist-cons-after
636 'install 'set-load-paths
637 ;; Tell 'icon-name-mapping' where XML::Simple is.
638 (lambda* (#:key outputs #:allow-other-keys)
639 (let* ((out (assoc-ref outputs "out"))
640 (prog (string-append out "/libexec/icon-name-mapping")))
641 (wrap-program
642 prog
643 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
644 %standard-phases)))
27477d2d
AE
645 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
646 (synopsis
647 "Utility to implement the Freedesktop Icon Naming Specification")
648 (description
649 "To help with the transition to the Freedesktop Icon Naming
650Specification, the icon naming utility maps the icon names used by the
651GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 652 (license license:lgpl2.1+)))
27477d2d 653
686e025d
SB
654(define-public desktop-file-utils
655 (package
656 (name "desktop-file-utils")
562a79de 657 (version "0.23")
686e025d
SB
658 (source (origin
659 (method url-fetch)
5cc3096c 660 (uri (string-append "https://www.freedesktop.org/software/" name
686e025d
SB
661 "/releases/" name "-" version ".tar.xz"))
662 (sha256
663 (base32
562a79de 664 "119kj2w0rrxkhg4f9cf5waa55jz1hj8933vh47vcjipcplql02bc"))))
686e025d
SB
665 (build-system gnu-build-system)
666 (native-inputs
667 `(("pkg-config" ,pkg-config)))
668 (inputs
669 `(("glib" ,glib)))
670 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
671 (synopsis "Utilities for working with desktop entries")
672 (description
673 "This package contains a few command line utilities for working with
674desktop entries:
675
676desktop-file-validate: validates a desktop file and prints warnings/errors
677 about desktop entry specification violations.
678
679desktop-file-install: installs a desktop file to the applications directory,
680 optionally munging it a bit in transit.
681
682update-desktop-database: updates the database containing a cache of MIME types
683 handled by desktop files.")
684 (license license:gpl2+)))
685
7d3f3651
AE
686(define-public gnome-icon-theme
687 (package
688 (name "gnome-icon-theme")
b32f58dd 689 (version "3.12.0")
7d3f3651
AE
690 (source
691 (origin
692 (method url-fetch)
693 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 694 (version-major+minor version) "/"
7d3f3651
AE
695 name "-" version ".tar.xz"))
696 (sha256
697 (base32
b32f58dd 698 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
7d3f3651 699 (build-system gnu-build-system)
5613c27d
SB
700 (arguments
701 '(#:configure-flags
702 ;; Don't create 'icon-theme.cache'.
703 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
704 (true (string-append coreutils "/bin/true")))
705 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
c4c4cc05 706 (native-inputs
5613c27d 707 `(("icon-naming-utils" ,icon-naming-utils)
73b6cf42
SB
708 ("intltool" ,intltool)
709 ("pkg-config" ,pkg-config)))
7d3f3651
AE
710 (home-page "http://art.gnome.org/")
711 (synopsis
712 "GNOME icon theme")
713 (description
714 "Icons for the GNOME desktop.")
1dd26275 715 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 716
14eeefa2
SB
717;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
718(define-public adwaita-icon-theme
719 (package (inherit gnome-icon-theme)
720 (name "adwaita-icon-theme")
29548d26 721 (version "3.24.0")
14eeefa2
SB
722 (source (origin
723 (method url-fetch)
724 (uri (string-append "mirror://gnome/sources/" name "/"
725 (version-major+minor version) "/"
726 name "-" version ".tar.xz"))
727 (sha256
728 (base32
29548d26 729 "0ai73gs44yyw276xag6db0rlpvncy23qplp4girm80ilpprrzxyc"))))
5613c27d
SB
730 (native-inputs
731 `(("gtk-encode-symbolic-svg" ,gtk+ "bin")))))
14eeefa2 732
ae792dba
RW
733(define-public tango-icon-theme
734 (package
735 (name "tango-icon-theme")
736 (version "0.8.90")
737 (source (origin
738 (method url-fetch)
739 (uri (string-append "http://tango.freedesktop.org/releases/"
740 "tango-icon-theme-" version ".tar.bz2"))
741 (sha256
742 (base32
743 "034r9s944b4yikyfgn602yv7s54wdzlq0qfvqh52b9x6kbx08h79"))))
744 (build-system gnu-build-system)
745 (native-inputs
746 `(("icon-naming-utils" ,icon-naming-utils)
747 ("intltool" ,intltool)
748 ("imagemagick" ,imagemagick)
749 ("pkg-config" ,pkg-config)))
750 (home-page "http://tango-project.org/")
751 (synopsis "Tango icon theme")
752 (description "This is an icon theme that follows the Tango visual
753guidelines.")
754 (license license:public-domain)))
755
9167f8e6
LC
756(define-public shared-mime-info
757 (package
758 (name "shared-mime-info")
b43b584f 759 (version "1.8")
9167f8e6
LC
760 (source (origin
761 (method url-fetch)
5cc3096c 762 (uri (string-append "https://freedesktop.org/~hadess/"
b38e45d8 763 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
764 (sha256
765 (base32
b43b584f 766 "1sc96lv9dp1lkvs8dh3ngm3hbjb274d363dl9avhb61il3qmxx9a"))))
9167f8e6
LC
767 (build-system gnu-build-system)
768 (arguments
769 ;; The build system appears not to be parallel-safe.
770 '(#:parallel-build? #f))
771 (inputs
772 `(("glib" ,glib)
c4c4cc05 773 ("libxml2" ,libxml2)))
9167f8e6 774 (native-inputs
c4c4cc05
JD
775 `(("intltool" ,intltool)
776 ("pkg-config" ,pkg-config)))
9167f8e6
LC
777 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
778 (synopsis "Database of common MIME types")
779 (description
780 "The shared-mime-info package contains the core database of common types
781and the update-mime-database command used to extend it. It requires glib2 to
782be installed for building the update command. Additionally, it uses intltool
783for translations, though this is only a dependency for the maintainers. This
784database is translated at Transifex.")
1dd26275 785 (license license:gpl2+)))
9167f8e6 786
bef4dd92
AE
787(define-public hicolor-icon-theme
788 (package
789 (name "hicolor-icon-theme")
b62a0070 790 (version "0.15")
bef4dd92
AE
791 (source
792 (origin
793 (method url-fetch)
5cc3096c 794 (uri (string-append "https://icon-theme.freedesktop.org/releases/"
b62a0070 795 "hicolor-icon-theme-" version ".tar.xz"))
bef4dd92
AE
796 (sha256
797 (base32
b62a0070 798 "1k1kf2c5zbqh31nglc3nxs9j6wr083k9kjyql8p22ccc671mmi4w"))))
bef4dd92
AE
799 (build-system gnu-build-system)
800 (arguments
801 `(#:tests? #f)) ; no check target
802 (home-page "http://icon-theme.freedesktop.org/releases/")
803 (synopsis
804 "Freedesktop icon theme")
805 (description
806 "Freedesktop icon theme.")
1dd26275 807 (license license:gpl2)))
bef4dd92 808
d9c1a22b
AE
809(define-public libnotify
810 (package
811 (name "libnotify")
195bfa68 812 (version "0.7.7")
d9c1a22b
AE
813 (source
814 (origin
815 (method url-fetch)
816 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 817 (version-major+minor version) "/"
d9c1a22b
AE
818 name "-" version ".tar.xz"))
819 (sha256
820 (base32
195bfa68 821 "017wgq9n00hx39n0hm784zn18hl721hbaijda868cm96bcqwxd4w"))))
d9c1a22b
AE
822 (build-system gnu-build-system)
823 (inputs
824 `(("gdk-pixbuf" ,gdk-pixbuf)
825 ("glib" ,glib)
826 ("gtk+" ,gtk+)
c4c4cc05
JD
827 ("libpng" ,libpng)))
828 (native-inputs
426adbe8 829 `(("pkg-config" ,pkg-config)
277a7d82
JN
830 ("glib" ,glib "bin")
831 ("gobject-introspection" ,gobject-introspection)))
d9c1a22b
AE
832 (home-page "https://developer-next.gnome.org/libnotify/")
833 (synopsis
834 "GNOME desktop notification library")
835 (description
836 "Libnotify is a library that sends desktop notifications to a
35b9e423 837notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
838notifications can be used to inform the user about an event or display
839some form of information without getting in the user's way.")
1dd26275 840 (license license:lgpl2.1+)))
7a8605ce
CR
841
842(define-public libpeas
843 (package
844 (name "libpeas")
0dd6aed9 845 (version "1.20.0")
7a8605ce
CR
846 (source
847 (origin
848 (method url-fetch)
849 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 850 (version-major+minor version) "/"
7a8605ce
CR
851 name "-" version ".tar.xz"))
852 (sha256
853 (base32
0dd6aed9 854 "0m6k6fcrx40n92nc1cy3z72vs1ja49sb58dj3fjp40605pzgz4pk"))))
7a8605ce 855 (build-system gnu-build-system)
7a8605ce 856 (inputs
2ed6522a
SB
857 `(("gtk+" ,gtk+)
858 ("glade" ,glade3)
859 ("libxml2" ,libxml2) ; XXX: required by gladeui-2.0.pc
860 ("python" ,python)
861 ("python-pygobject" ,python-pygobject)))
141aed80
LC
862 (native-inputs
863 `(("pkg-config" ,pkg-config)
93622993 864 ("glib:bin" ,glib "bin")
141aed80
LC
865 ("gobject-introspection" ,gobject-introspection)
866 ("intltool" ,intltool)))
7a8605ce
CR
867 (home-page "https://wiki.gnome.org/Libpeas")
868 (synopsis "GObject plugin system")
869 (description
d1e4ad1b
TGR
870 "Libpeas is a gobject-based plugin engine, targeted at giving every
871application the chance to assume its own extensibility. It also has a set of
872features including, but not limited to: multiple extension points; on-demand
873(lazy) programming language support for C, Python and JS; simplicity of the
874API.")
1dd26275 875 (license license:lgpl2.0+)))
ed19903d
JD
876
877(define-public gtkglext
878 (package
879 (name "gtkglext")
880 (version "1.2.0")
881 (source (origin
882 (method url-fetch)
0f971a04 883 (uri (string-append "mirror://sourceforge/gtkglext/gtkglext/"
ed19903d
JD
884 version "/gtkglext-" version ".tar.gz"))
885 (sha256
886 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
fc1adab1
AK
887 (patches (search-patches
888 "gtkglext-disable-disable-deprecated.patch"))))
ed19903d
JD
889 (build-system gnu-build-system)
890 (inputs `(("gtk+" ,gtk+-2)
891 ("mesa" ,mesa)
cc8b02f4 892 ("glu" ,glu)
ed19903d
JD
893 ("libx11" ,libx11)
894 ("libxt" ,libxt)))
426adbe8
LC
895 (native-inputs `(("pkg-config" ,pkg-config)
896 ("glib" ,glib "bin")))
a83b6a06 897 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 898 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 899 (synopsis "OpenGL extension to GTK+")
35b9e423 900 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
901additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
902API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 903 (license license:lgpl2.1+)))
3600420e
JD
904
905(define-public glade3
906 (package
907 (name "glade")
6983ba56 908 (version "3.20.0")
b38e45d8
EB
909 (source (origin
910 (method url-fetch)
911 (uri (string-append "mirror://gnome/sources/" name "/"
912 (version-major+minor version) "/"
f5ca44b8 913 name "-" version ".tar.xz"))
3600420e 914 (sha256
f714d9fe 915 (base32
6983ba56
SB
916 "1zhqvhagy0m85p54jfiayfl0v9af7g0lj7glw8sfwh7cbp56vnc2"))))
917 (build-system glib-or-gtk-build-system)
f5ca44b8
RW
918 (arguments
919 `(#:tests? #f ; needs X, GL, and software rendering
920 #:phases
921 (modify-phases %standard-phases
922 (add-before 'configure 'fix-docbook
923 (lambda* (#:key inputs #:allow-other-keys)
924 (substitute* "man/Makefile.in"
925 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
926 (string-append (assoc-ref inputs "docbook-xsl")
927 "/xml/xsl/docbook-xsl-"
928 ,(package-version docbook-xsl)
929 "/manpages/docbook.xsl")))
930 #t)))))
3600420e 931 (inputs
f5ca44b8 932 `(("gtk+" ,gtk+)
3600420e
JD
933 ("libxml2" ,libxml2)))
934 (native-inputs
935 `(("intltool" ,intltool)
f5ca44b8
RW
936 ("itstool" ,itstool)
937 ("libxslt" ,libxslt) ;for xsltproc
938 ("docbook-xml" ,docbook-xml-4.2)
939 ("docbook-xsl" ,docbook-xsl)
940 ("python" ,python-2)
3600420e
JD
941 ("pkg-config" ,pkg-config)))
942 (home-page "https://glade.gnome.org")
943 (synopsis "GTK+ rapid application development tool")
944 (description "Glade is a rapid application development (RAD) tool to
945enable quick & easy development of user interfaces for the GTK+ toolkit and
946the GNOME desktop environment.")
1dd26275
LC
947 (license license:lgpl2.0+)))
948
949(define-public libcroco
950 (package
951 (name "libcroco")
15d34a18 952 (version "0.6.12")
1dd26275
LC
953 (source (origin
954 (method url-fetch)
b38e45d8
EB
955 (uri (string-append "mirror://gnome/sources/" name "/"
956 (version-major+minor version) "/"
957 name "-" version ".tar.xz"))
15d34a18
MB
958 (patches
959 (search-patches "libcroco-CVE-2017-7960.patch"
960 "libcroco-CVE-2017-7961.patch"))
1dd26275
LC
961 (sha256
962 (base32
15d34a18 963 "0q7qhi7z64i26zabg9dbs5706fa8pmzp1qhpa052id4zdiabbi6x"))))
1dd26275
LC
964 (build-system gnu-build-system)
965 (native-inputs
966 `(("pkg-config" ,pkg-config)))
967 (inputs
968 `(("glib" ,glib)
969 ("libxml2" ,libxml2)
970 ("zlib" ,zlib)))
971 (home-page "https://github.com/GNOME/libcroco")
972 (synopsis "CSS2 parsing and manipulation library")
973 (description
974 "Libcroco is a standalone CSS2 parsing and manipulation library.
975The parser provides a low level event driven SAC-like API and a CSS object
976model like API. Libcroco provides a CSS2 selection engine and an experimental
977XML/CSS rendering engine.")
978
979 ;; LGPLv2.1-only.
980 (license license:lgpl2.1)))
25178594
LC
981
982(define-public libgsf
983 (package
984 (name "libgsf")
ef51eb99 985 (version "1.14.41")
25178594
LC
986 (source (origin
987 (method url-fetch)
b38e45d8
EB
988 (uri (string-append "mirror://gnome/sources/" name "/"
989 (version-major+minor version) "/"
990 name "-" version ".tar.xz"))
25178594
LC
991 (sha256
992 (base32
ef51eb99 993 "1lq87wnrsjbjafpk3c8xwd56gqx319fhck9xkg2da88hd9c9h2qm"))))
25178594
LC
994 (build-system gnu-build-system)
995 (native-inputs
996 `(("intltool" ,intltool)
997 ("pkg-config" ,pkg-config)))
998 (inputs
999 `(("python" ,python)
1000 ("zlib" ,zlib)
1001 ("bzip2" ,bzip2)))
1002 (propagated-inputs
1003 `(("gdk-pixbuf" ,gdk-pixbuf)
1004 ("glib" ,glib)
1005 ("libxml2" ,libxml2)))
1006 (home-page "http://www.gnome.org/projects/libgsf")
1007 (synopsis "GNOME's Structured File Library")
1008 (description
1009 "Libgsf aims to provide an efficient extensible I/O abstraction for
1010dealing with different structured file formats.")
1011
1012 ;; LGPLv2.1-only.
1013 (license license:lgpl2.1)))
63016e7c
LC
1014
1015(define-public librsvg
1016 (package
1017 (name "librsvg")
27880b5e 1018 (version "2.40.16")
63016e7c
LC
1019 (source (origin
1020 (method url-fetch)
b38e45d8
EB
1021 (uri (string-append "mirror://gnome/sources/" name "/"
1022 (version-major+minor version) "/"
1023 name "-" version ".tar.xz"))
63016e7c
LC
1024 (sha256
1025 (base32
27880b5e 1026 "0bpz6gsq8xi1pb5k9ax6vinph460v14znch3y5yz167s0dmwz2yl"))))
63016e7c
LC
1027 (build-system gnu-build-system)
1028 (arguments
ce2df078 1029 `(#:phases
63016e7c 1030 (alist-cons-before
f3045a5b 1031 'configure 'pre-configure
63016e7c 1032 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
1033 (substitute* "gdk-pixbuf-loader/Makefile.in"
1034 ;; By default the gdk-pixbuf loader is installed under
1035 ;; gdk-pixbuf's prefix. Work around that.
1036 (("gdk_pixbuf_moduledir = .*$")
1037 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 1038 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c 1039 "loaders\n"))
f3045a5b 1040 ;; Drop the 'loaders.cache' file, it's in gdk-pixbuf+svg.
63016e7c 1041 (("gdk_pixbuf_cache_file = .*$")
f3045a5b
SB
1042 "gdk_pixbuf_cache_file = $(TMPDIR)/loaders.cache\n")))
1043 %standard-phases)))
63016e7c
LC
1044 (native-inputs
1045 `(("pkg-config" ,pkg-config)
44add1ce 1046 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
1047 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
1048 (inputs
1049 `(("pango" ,pango)
1050 ("libcroco" ,libcroco)
1051 ("bzip2" ,bzip2)
1052 ("libgsf" ,libgsf)
1053 ("libxml2" ,libxml2)))
1054 (propagated-inputs
1055 ;; librsvg-2.0.pc refers to all of that.
1056 `(("cairo" ,cairo)
1057 ("gdk-pixbuf" ,gdk-pixbuf)
1058 ("glib" ,glib)))
1059 (home-page "https://wiki.gnome.org/LibRsvg")
1060 (synopsis "Render SVG files using Cairo")
1061 (description
35b9e423 1062 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
1063library.")
1064 (license license:lgpl2.0+)))
5698b8b8
JD
1065
1066(define-public libidl
1067 (package
1068 (name "libidl")
1069 (version "0.8.14")
1070 (source (origin
1071 (method url-fetch)
1072 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
1073 (string-append "mirror://gnome/sources/" upstream-name "/"
1074 (version-major+minor version) "/"
1075 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1076 (sha256
1077 (base32
1078 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
1079 (build-system gnu-build-system)
1080 (inputs `(("glib" ,glib)))
1081 (native-inputs
1082 `(("pkg-config" ,pkg-config)
b3546174 1083 ("flex" ,flex)
5698b8b8
JD
1084 ("bison" ,bison)))
1085 (home-page "http://freecode.com/projects/libidl")
1086 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 1087 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
1088Definition Language (idl) files, which is a specification for defining
1089portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 1090GNOME project, and the primary means of libidl distribution). However, the
2e6ecc5c 1091functionality was designed to be as reusable and portable as possible.")
5698b8b8
JD
1092 (license license:lgpl2.0+)))
1093
1094
1095(define-public orbit2
1096 (package
1097 (name "orbit2")
1098 (version "2.14.19")
1099 (source (origin
1100 (method url-fetch)
2e6ecc5c 1101 (uri (let ((upstream-name "ORBit2"))
a124bbd2 1102 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1103 (version-major+minor version) "/"
1104 upstream-name "-" version ".tar.bz2")))
5698b8b8 1105 (sha256
a124bbd2
SB
1106 (base32
1107 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
5698b8b8
JD
1108 (build-system gnu-build-system)
1109 (arguments
a124bbd2
SB
1110 `(#:configure-flags
1111 ;; The programmer kindly gives us a hook to turn off deprecation
1112 ;; warnings ...
1113 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1114 ;; ... which they then completly ignore !!
1115 #:phases
1116 (alist-cons-before
1117 'configure 'ignore-deprecations
1118 (lambda _
1119 (substitute* "linc2/src/Makefile.in"
1120 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1121 %standard-phases)))
5698b8b8
JD
1122 (inputs `(("glib" ,glib)
1123 ("libidl" ,libidl)))
1124 (native-inputs
1125 `(("pkg-config" ,pkg-config)))
1126 (home-page "https://projects.gnome.org/orbit2/")
1127 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 1128 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
2e6ecc5c 1129featuring mature C, C++ and Python bindings.")
a124bbd2
SB
1130 ;; Licence notice is unclear. The Web page simply say "GPL" without giving
1131 ;; a version. SOME of the code files have licence notices for GPLv2+.
1132 ;; The tarball contains files of the text of GPLv2 and LGPLv2.
2e6ecc5c 1133 (license license:gpl2+)))
5698b8b8
JD
1134
1135
1136(define-public libbonobo
1137 (package
1138 (name "libbonobo")
1139 (version "2.32.1")
1140 (source (origin
1141 (method url-fetch)
5becd025 1142 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 1143 (version-major+minor version)
5becd025 1144 "/" name "-" version ".tar.bz2"))
5698b8b8 1145 (sha256
f1fc45a9 1146 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
fc1adab1
AK
1147 (patches (search-patches
1148 "libbonobo-activation-test-race.patch"))))
5698b8b8
JD
1149 (build-system gnu-build-system)
1150 (arguments
1151 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
1152 `(#:configure-flags
1153 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1154 ;; ... which they then completly ignore !!
1155 #:phases
1156 (alist-cons-before
1157 'configure 'ignore-deprecations
1158 (lambda _
1159 (substitute* "activation-server/Makefile.in"
1160 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1161 %standard-phases)))
5698b8b8
JD
1162 (inputs `(("popt" ,popt)
1163 ("libxml2" ,libxml2)))
1164 ;; The following are Required by the .pc file
44add1ce 1165 (propagated-inputs
5698b8b8
JD
1166 `(("glib" ,glib)
1167 ("orbit2" ,orbit2)))
1168 (native-inputs
1169 `(("intltool" ,intltool)
1170 ("pkg-config" ,pkg-config)
221ed17a 1171 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1172 ("flex" ,flex)
1173 ("bison" ,bison)))
1174 (home-page "https://developer.gnome.org/libbonobo/")
1175 (synopsis "Framework for creating reusable components for use in GNOME applications")
1176 (description "Bonobo is a framework for creating reusable components for
2e6ecc5c 1177use in GNOME applications, built on top of CORBA.")
5698b8b8
JD
1178 ;; Licence not explicitly stated. Source files contain no licence notices.
1179 ;; Tarball contains text of both GPLv2 and LGPLv2
1180 ;; GPLv2 covers both conditions
1181 (license license:gpl2+)))
1182
1183
1184(define-public gconf
1185 (package
1186 (name "gconf")
1187 (version "3.2.6")
1188 (source (origin
1189 (method url-fetch)
a124bbd2
SB
1190 (uri
1191 (let ((upstream-name "GConf"))
1192 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1193 (version-major+minor version) "/"
1194 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
1195 (sha256
1196 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
1197 (build-system gnu-build-system)
2e88d113 1198 (inputs `(("dbus-glib" ,dbus-glib)
5698b8b8 1199 ("libxml2" ,libxml2)))
2e6ecc5c
AE
1200 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
1201 ("orbit2" ,orbit2)))
5698b8b8
JD
1202 (native-inputs
1203 `(("intltool" ,intltool)
221ed17a 1204 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1205 ("pkg-config" ,pkg-config)))
1206 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
1207 (synopsis "Store application preferences")
1208 (description "Gconf is a system for storing application preferences. It
1209is intended for user preferences; not arbitrary data storage.")
29d2f451
LC
1210 (license license:lgpl2.0+)
1211 (properties '((upstream-name . "GConf")))))
5698b8b8
JD
1212
1213
1214(define-public gnome-mime-data
1215 (package
1216 (name "gnome-mime-data")
1217 (version "2.18.0")
1218 (source (origin
1219 (method url-fetch)
b38e45d8
EB
1220 (uri (string-append "mirror://gnome/sources/" name "/"
1221 (version-major+minor version) "/"
1222 name "-" version ".tar.bz2"))
5698b8b8
JD
1223 (sha256
1224 (base32
1225 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
1226 (build-system gnu-build-system)
1227 (native-inputs
1228 `(("perl" ,perl)
1229 ("intltool" ,intltool)))
1230 (home-page "http://www.gnome.org")
35b9e423 1231 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
1232 (description "GNOME Mime Data is a module which contains the base MIME
1233and Application database for GNOME. The data stored by this module is
1234designed to be accessed through the MIME functions in GnomeVFS.")
1235 (license license:gpl2+)))
1236
1237
1238(define-public gnome-vfs
1239 (package
1240 (name "gnome-vfs")
1241 (version "2.24.4")
1242 (source (origin
1243 (method url-fetch)
b38e45d8
EB
1244 (uri (string-append "mirror://gnome/sources/" name "/"
1245 (version-major+minor version) "/"
1246 name "-" version ".tar.bz2"))
5698b8b8 1247 (sha256
9e12bc34
MW
1248 (base32
1249 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
5698b8b8
JD
1250 (build-system gnu-build-system)
1251 (arguments
db5127d8 1252 `(#:phases
9e12bc34
MW
1253 (alist-cons-before
1254 'configure 'ignore-deprecations
1255 (lambda _
1256 (substitute* '("libgnomevfs/Makefile.in"
1257 "daemon/Makefile.in")
1258 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1259 #t)
db5127d8
MW
1260 (alist-cons-before
1261 'configure 'patch-test-async-cancel-to-never-fail
1262 (lambda _
1263 (substitute* "test/test-async-cancel.c"
1264 (("EXIT_FAILURE") "77")))
1265 %standard-phases))))
2e6ecc5c 1266 (inputs `(("libxml2" ,libxml2)
5698b8b8 1267 ("dbus-glib" ,dbus-glib)
5698b8b8
JD
1268 ("gconf" ,gconf)
1269 ("gnome-mime-data" ,gnome-mime-data)
1270 ("zlib" ,zlib)))
1271 (native-inputs
221ed17a
EB
1272 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1273 ("intltool" ,intltool)
5698b8b8
JD
1274 ("pkg-config" ,pkg-config)))
1275 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 1276 (synopsis "Access files and folders in GNOME applications")
9e12bc34
MW
1277 (description
1278 "GnomeVFS is the core library used to access files and folders in GNOME
1279applications. It provides a file system abstraction which allows applications
1280to access local and remote files with a single consistent API.")
5698b8b8
JD
1281 (license license:lgpl2.0+)))
1282
1283
1284
1285(define-public libgnome
1286 (package
1287 (name "libgnome")
1288 (version "2.32.1")
1289 (source (origin
1290 (method url-fetch)
b38e45d8
EB
1291 (uri (string-append "mirror://gnome/sources/" name "/"
1292 (version-major+minor version) "/"
1293 name "-" version ".tar.bz2"))
5698b8b8
JD
1294 (sha256
1295 (base32
1296 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1297 (build-system gnu-build-system)
1298 (arguments
1299 `(#:phases
1300 (alist-cons-before
1301 'configure 'enable-deprecated
2e6ecc5c 1302 (lambda _
5698b8b8
JD
1303 (substitute* "libgnome/Makefile.in"
1304 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1305 %standard-phases)))
25338e9f 1306 (inputs `(("libxml2" ,libxml2)))
5698b8b8 1307 (native-inputs
221ed17a
EB
1308 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1309 ("intltool" ,intltool)
5698b8b8
JD
1310 ("pkg-config" ,pkg-config)))
1311 ;; The following are listed as Required in the .pc file
1312 ;; (except for libcanberra -- which seems to be oversight on the part
1313 ;; of the upstream developers -- anything that links against libgnome,
1314 ;; must also link against libcanberra
1315 (propagated-inputs
1316 `(("libcanberra" ,libcanberra)
1317 ("libbonobo" ,libbonobo)
1318 ("gconf" ,gconf)
a640d3d5
LC
1319 ("gnome-vfs" ,gnome-vfs)
1320 ("popt" ,popt))) ;gnome-program.h includes popt.h
5698b8b8
JD
1321 (home-page "https://developer.gnome.org/libgnome/")
1322 (synopsis "Useful routines for building applications")
1323 (description "The libgnome library provides a number of useful routines
1324for building modern applications, including session management, activation of
1325files and URIs, and displaying help.")
1326 (license license:lgpl2.0+)))
1327
1328
1329(define-public libart-lgpl
1330 (package
1331 (name "libart-lgpl")
76c9b6aa 1332 (version "2.3.21")
5698b8b8
JD
1333 (source (origin
1334 (method url-fetch)
1335 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
1336 (string-append "mirror://gnome/sources/" upstream-name "/"
1337 (version-major+minor version) "/"
1338 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1339 (sha256
1340 (base32
76c9b6aa 1341 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
1342 (build-system gnu-build-system)
1343 (native-inputs
1344 `(("pkg-config" ,pkg-config)))
1345 (home-page "https://people.gnome.org/~mathieu/libart")
1346 (synopsis "2D drawing library")
2e6ecc5c 1347 (description "Libart is a 2D drawing library intended as a
5698b8b8
JD
1348high-quality vector-based 2D library with antialiasing and alpha composition.")
1349 (license license:lgpl2.0+)))
1350
1351
1352
1353(define-public libgnomecanvas
1354 (package
1355 (name "libgnomecanvas")
1356 (version "2.30.3")
1357 (source (origin
1358 (method url-fetch)
b38e45d8
EB
1359 (uri (string-append "mirror://gnome/sources/" name "/"
1360 (version-major+minor version) "/"
1361 name "-" version ".tar.gz"))
5698b8b8
JD
1362 (sha256
1363 (base32
1364 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1365 (build-system gnu-build-system)
1366 ;; Mentioned as Required in the .pc file
1367 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1368 ("gtk+" ,gtk+-2)))
1369 (native-inputs
1370 `(("intltool" ,intltool)
221ed17a 1371 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1372 ("pkg-config" ,pkg-config)))
1373 (home-page "https://developer.gnome.org/libgnomecanvas/")
1374 (synopsis "Flexible widget for creating interactive structured graphics")
1375 (description "The GnomeCanvas widget provides a flexible widget for
1376creating interactive structured graphics.")
1377 (license license:lgpl2.0+)))
1378
eadc734e
RW
1379(define-public libgnomecanvasmm
1380 (package
1381 (name "libgnomecanvasmm")
1382 (version "2.26.0")
1383 (source (origin
1384 (method url-fetch)
1385 (uri (string-append "mirror://gnome/sources/" name "/"
1386 (version-major+minor version) "/"
1387 name "-" version ".tar.bz2"))
1388 (sha256
1389 (base32
1390 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1391 (build-system gnu-build-system)
6e4512c4
SB
1392 (arguments
1393 '(#:configure-flags '("CXXFLAGS=-std=c++11"))) ; required by gtkmm
eadc734e
RW
1394 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1395 (native-inputs
1396 `(("gtkmm-2" ,gtkmm-2)
1397 ("pkg-config" ,pkg-config)))
1398 (home-page "http://gtkmm.org")
1399 (synopsis "C++ bindings to the GNOME Canvas library")
1400 (description "C++ bindings to the GNOME Canvas library.")
1401 (license license:lgpl2.0+)))
1402
5698b8b8
JD
1403(define-public libgnomeui
1404 (package
1405 (name "libgnomeui")
1406 (version "2.24.5")
1407 (source (origin
1408 (method url-fetch)
b38e45d8
EB
1409 (uri (string-append "mirror://gnome/sources/" name "/"
1410 (version-major+minor version) "/"
1411 name "-" version ".tar.bz2"))
5698b8b8
JD
1412 (sha256
1413 (base32
1414 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1415 (build-system gnu-build-system)
1416 ;; Mentioned as Required in the .pc file
0a38a497
AE
1417 (propagated-inputs `(("libbonoboui" ,libbonoboui)
1418 ("libgnome" ,libgnome)
1419 ("libgnomecanvas" ,libgnomecanvas)
5698b8b8 1420 ("libgnome-keyring" ,libgnome-keyring)))
0a38a497 1421 (inputs `(("libjpeg" ,libjpeg)
5698b8b8
JD
1422 ("popt" ,popt)
1423 ("libbonobo" ,libbonobo)
1424 ("libxml2" ,libxml2)
1425 ("libglade" ,libglade)))
1426 (native-inputs
221ed17a
EB
1427 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1428 ("intltool" ,intltool)
5698b8b8
JD
1429 ("pkg-config" ,pkg-config)))
1430 (home-page "https://developer.gnome.org/libgnomeui/")
1431 (synopsis "Additional widgets for applications")
35b9e423 1432 (description "The libgnomeui library provides additional widgets for
e881752c
AK
1433applications. Many of the widgets from libgnomeui have already been
1434ported to GTK+.")
5698b8b8
JD
1435 (license license:lgpl2.0+)))
1436
1437(define-public libglade
1438 (package
1439 (name "libglade")
1440 (version "2.6.4")
1441 (source (origin
1442 (method url-fetch)
b38e45d8
EB
1443 (uri (string-append "mirror://gnome/sources/" name "/"
1444 (version-major+minor version) "/"
1445 name "-" version ".tar.bz2"))
5698b8b8
JD
1446 (sha256
1447 (base32
1448 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1449 (build-system gnu-build-system)
1450 (inputs
92dcc23d
AE
1451 `(("python" ,python))) ;; needed for the optional libglade-convert program
1452 (propagated-inputs
5698b8b8 1453 `(("gtk+-2" ,gtk+-2)
92dcc23d 1454 ("libxml2" ,libxml2))) ; required by libglade-2.0.pc
5698b8b8
JD
1455 (native-inputs
1456 `(("pkg-config" ,pkg-config)))
1457 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1458 (synopsis "Load glade interfaces and access the glade built widgets")
1459 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1460graphical interfaces described in glade files and for accessing the
1461widgets built in the loading process.")
1462 (license license:gpl2+))) ; This is correct. GPL not LGPL
1463
1464(define-public libgnomeprint
eb497b66
LC
1465 ;; This library has been deprecated since 2006; see
1466 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1467 (package
1468 (name "libgnomeprint")
1469 (version "2.8.2")
1470 (source (origin
1471 (method url-fetch)
b38e45d8
EB
1472 (uri (string-append "mirror://gnome/sources/" name "/"
1473 (version-major+minor version) "/"
1474 name "-" version ".tar.bz2"))
5698b8b8
JD
1475 (sha256
1476 (base32
6983ba56 1477 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))))
5698b8b8
JD
1478 (build-system gnu-build-system)
1479 (inputs
1480 `(("popt" ,popt)
1481 ("libart-lgpl" ,libart-lgpl)
1482 ("gtk+" ,gtk+-2)
44add1ce 1483 ("libxml2" ,libxml2)))
5698b8b8
JD
1484 (native-inputs
1485 `(("intltool" ,intltool)
221ed17a 1486 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1487 ("pkg-config" ,pkg-config)))
1488 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1489 (synopsis "Printing framework for GNOME")
eb497b66
LC
1490 (description
1491 "GNOME-print was a printing framework for GNOME. It has been deprecated
1492since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1493 (license license:lgpl2.0+)))
1494
1495
1496(define-public libgnomeprintui
eb497b66 1497 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1498 (package
1499 (name "libgnomeprintui")
1500 (version "2.8.2")
1501 (source (origin
1502 (method url-fetch)
b38e45d8
EB
1503 (uri (string-append "mirror://gnome/sources/" name "/"
1504 (version-major+minor version) "/"
1505 name "-" version ".tar.bz2"))
5698b8b8
JD
1506 (sha256
1507 (base32
1508 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1509 (build-system gnu-build-system)
1510 ;; Mentioned as Required in the .pc file
1511 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1512 (inputs `(("gtk+" ,gtk+-2)
1513 ("glib" ,glib)
1514 ("gnome-icon-theme" ,gnome-icon-theme)
1515 ("libgnomecanvas" ,libgnomecanvas)
2e6ecc5c 1516 ("libxml2" ,libxml2)))
5698b8b8
JD
1517 (native-inputs
1518 `(("intltool" ,intltool)
1519 ("pkg-config" ,pkg-config)))
1520 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1521 (synopsis "Printing framework for GNOME")
eb497b66 1522 (description (package-description libgnomeprint))
5698b8b8
JD
1523 (license license:lgpl2.0+)))
1524
5698b8b8
JD
1525(define-public libbonoboui
1526 (package
1527 (name "libbonoboui")
1528 (version "2.24.5")
1529 (source (origin
1530 (method url-fetch)
b38e45d8
EB
1531 (uri (string-append "mirror://gnome/sources/" name "/"
1532 (version-major+minor version) "/"
1533 name "-" version ".tar.bz2"))
5698b8b8
JD
1534 (sha256
1535 (base32
1536 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1537 (build-system gnu-build-system)
1538 (arguments
1539 `(#:phases
1540 (alist-cons-before
1541 'check 'start-xserver
1542 (lambda* (#:key inputs #:allow-other-keys)
1543 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1544 (disp ":1"))
2e6ecc5c 1545
5698b8b8
JD
1546 (setenv "HOME" (getcwd))
1547 (setenv "DISPLAY" disp)
1548 ;; There must be a running X server and make check doesn't start one.
1549 ;; Therefore we must do it.
1550 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1551 %standard-phases)))
1552 ;; Mentioned as Required by the .pc file
1553 (propagated-inputs `(("libxml2" ,libxml2)))
1554 (inputs
1555 `(("popt" ,popt)
1556 ("pangox-compat" ,pangox-compat)
1557 ("libgnome" ,libgnome)
1558 ("libgnomecanvas" ,libgnomecanvas)
1559 ("libglade" ,libglade)))
1560 (native-inputs
221ed17a
EB
1561 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1562 ("intltool" ,intltool)
5698b8b8
JD
1563 ("xorg-server" ,xorg-server) ; For running the tests
1564 ("pkg-config" ,pkg-config)))
1565 (home-page "https://developer.gnome.org/libbonoboui/")
1566 (synopsis "Some user interface controls using Bonobo")
1567 (description "The Bonobo UI library provides a number of user interface
1568controls using the Bonobo component framework.")
1569 (license license:lgpl2.0+)))
1570
fecbf86e
SB
1571(define-public libwnck
1572 (package
1573 (name "libwnck")
cf047019 1574 (version "3.20.1")
fecbf86e
SB
1575 (source (origin
1576 (method url-fetch)
1577 (uri (string-append "mirror://gnome/sources/" name "/"
1578 (version-major+minor version) "/"
1579 name "-" version ".tar.xz"))
1580 (sha256
cf047019 1581 (base32 "0wms3hli6y0b9l3cszq6maqi6fyy6kss9gryvzgmhw27phb3gc0w"))))
fecbf86e
SB
1582 (build-system gnu-build-system)
1583 (native-inputs
1584 `(("pkg-config" ,pkg-config)
1585 ("intltool" ,intltool)))
1586 (propagated-inputs
427476d5
SB
1587 `(("gtk+" ,gtk+)
1588 ("libxres" ,libxres)
1589 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1590 (home-page "https://developer.gnome.org/libwnck/")
1591 (synopsis "Window Navigator Construction Kit")
1592 (description
1593 "Libwnck is the Window Navigator Construction Kit, a library for use in
1594writing pagers, tasklists, and more generally applications that are dealing
1595with window management. It tries hard to respect the Extended Window Manager
1596Hints specification (EWMH).")
1597 (license license:lgpl2.0+)))
1598
1599;; stable version for gtk2, required by xfwm4.
dbb7a081 1600(define-public libwnck-2
fecbf86e
SB
1601 (package (inherit libwnck)
1602 (name "libwnck")
1603 (version "2.30.7")
1604 (source (origin
1605 (method url-fetch)
1606 (uri (string-append "mirror://gnome/sources/" name "/"
1607 (version-major+minor version) "/"
1608 name "-" version ".tar.xz"))
1609 (sha256
1610 (base32
1611 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1612 (propagated-inputs
427476d5
SB
1613 `(("gtk+" ,gtk+-2)
1614 ("libxres" ,libxres)
1615 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1616
1617(define-public goffice
1618 (package
1619 (name "goffice")
8e320dea 1620 (version "0.10.34")
b804c61e
JD
1621 (source (origin
1622 (method url-fetch)
b38e45d8
EB
1623 (uri (string-append "mirror://gnome/sources/" name "/"
1624 (version-major+minor version) "/"
1625 name "-" version ".tar.xz"))
b804c61e 1626 (sha256
8e320dea 1627 (base32 "00yn5ly1x50ynrwgl783pwnjy4k2ckp8n54mfnqv6qsq5fi7ajjm"))))
b804c61e 1628 (build-system gnu-build-system)
72a06d3e
LC
1629 (outputs '("out"
1630 "doc")) ;4.1 MiB of gtk-doc
1631 (arguments
1632 '(#:configure-flags (list (string-append "--with-html-dir="
1633 (assoc-ref %outputs "doc")
1634 "/share/gtk-doc/html"))))
b804c61e
JD
1635 (inputs
1636 `(("gtk+" ,gtk+)
1637 ("libgsf" ,libgsf)
1638 ("librsvg" ,librsvg)
1639 ("libxslt" ,libxslt)
1640 ("libxml2" ,libxml2)))
1641 (native-inputs
1642 `(("intltool" ,intltool)
f280cdb1 1643 ("glib" ,glib "bin")
b804c61e
JD
1644 ("pkg-config" ,pkg-config)))
1645 (home-page "https://developer.gnome.org/goffice/")
1646 (synopsis "Document-centric objects and utilities")
1647 (description "A GLib/GTK+ set of document-centric objects and utilities.")
2e6ecc5c 1648 (license
b804c61e
JD
1649 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1650 ;; Note: NOT LGPL
1651 (list license:gpl2 license:gpl3))))
1652
c024ae36
RW
1653(define-public goffice-0.8
1654 (package (inherit goffice)
1655 (version "0.8.17")
1656 (source (origin
1657 (method url-fetch)
1658 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1659 (version-major+minor version) "/"
1660 (package-name goffice) "-" version ".tar.xz"))
1661 (sha256
1662 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1663 (arguments
1664 `(#:phases
1665 (alist-cons-after
1666 'unpack 'fix-pcre-check
1667 (lambda _
1668 ;; Only glib.h can be included directly. See
1669 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1670 (substitute* "configure"
1671 (("glib/gregex\\.h") "glib.h")) #t)
72a06d3e
LC
1672 %standard-phases)
1673
1674 ,@(package-arguments goffice)))
c024ae36
RW
1675 (propagated-inputs
1676 ;; libgoffice-0.8.pc mentions libgsf-1
1677 `(("libgsf" ,libgsf)))
1678 (inputs
1679 `(("gtk" ,gtk+-2)
1680 ,@(alist-delete "gtk" (package-inputs goffice))))))
1681
b804c61e
JD
1682(define-public gnumeric
1683 (package
1684 (name "gnumeric")
24c91e2f 1685 (version "1.12.32")
b804c61e
JD
1686 (source (origin
1687 (method url-fetch)
b38e45d8
EB
1688 (uri (string-append "mirror://gnome/sources/" name "/"
1689 (version-major+minor version) "/"
1690 name "-" version ".tar.xz"))
b804c61e
JD
1691 (sha256
1692 (base32
24c91e2f 1693 "1s3dxvdwzmppsp2dfg90rccilf4hknhwjdy7lazr9sys58zchyx0"))))
bd1b1e05 1694 (build-system glib-or-gtk-build-system)
b804c61e
JD
1695 (arguments
1696 `(;; The gnumeric developers don't worry much about failing tests.
1697 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
2e6ecc5c 1698 #:tests? #f
b804c61e 1699 #:phases
7bcbd40d
EF
1700 (modify-phases %standard-phases
1701 (add-before
1702 'configure 'pre-conf
1703 (lambda* (#:key outputs #:allow-other-keys)
1704 ;; Make install tries to write into the directory of goffice
1705 ;; I am informed that this only affects the possibility to embed a
1706 ;; spreadsheet inside an Abiword document. So presumably when we
1707 ;; package Abiword we'll have to refer it to this directory.
1708 (substitute* "configure"
1709 (("^GOFFICE_PLUGINS_DIR=.*")
1710 (string-append "GOFFICE_PLUGINS_DIR="
1711 (assoc-ref outputs "out")
1712 "/goffice/plugins"))))))))
b804c61e
JD
1713 (inputs
1714 `(("glib" ,glib)
1715 ("gtk+" ,gtk+)
1716 ("goffice" ,goffice)
1717 ("libgsf" ,libgsf)
7bcbd40d 1718 ("librsvg" ,librsvg)
b804c61e 1719 ("libxml2" ,libxml2)
7bcbd40d 1720 ("libxslt" ,libxslt)
2e4c5457 1721 ("python" ,python-2)
6983ba56 1722 ("python2-pygobject" ,python2-pygobject)
b804c61e
JD
1723 ("zlib" ,zlib)))
1724 (native-inputs
6983ba56
SB
1725 `(("bison" ,bison)
1726 ("intltool" ,intltool)
b9663471 1727 ("glib:bin" ,glib "bin")
b804c61e
JD
1728 ("pkg-config" ,pkg-config)))
1729 (home-page "http://www.gnumeric.org")
66672a45
LC
1730 (synopsis "Spreadsheet application")
1731 (description
1732 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1733interoperable with other spreadsheet applications. It has a vast array of
1734features beyond typical spreadsheet functionality, such as support for linear
1735and non-linear solvers, statistical analysis, and telecommunication
1736engineering.")
1737 (license
b804c61e
JD
1738 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1739 (list license:gpl2 license:gpl3))))
6f885c05
FB
1740
1741(define-public gnome-themes-standard
1742 (package
1743 (name "gnome-themes-standard")
0b7b8fb0 1744 (version "3.22.3")
6f885c05
FB
1745 (source
1746 (origin
1747 (method url-fetch)
2e6ecc5c 1748 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1749 (version-major+minor version) "/" name "-"
1750 version ".tar.xz"))
1751 (sha256
1752 (base32
0b7b8fb0 1753 "0smmiamrgcgf5sa88bsn8hwmvsyx4gczzs359nwxbkv14b2qgp31"))))
6f885c05 1754 (build-system gnu-build-system)
8ac70c7f
SB
1755 (arguments
1756 '(#:configure-flags
1757 ;; Don't create 'icon-theme.cache'.
1758 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
1759 (true (string-append coreutils "/bin/true")))
1760 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
6f885c05
FB
1761 (inputs
1762 `(("gtk+" ,gtk+)
1763 ("gtk+-2" ,gtk+-2)
1764 ("librsvg" ,librsvg)
1765 ("libxml2" ,libxml2)
1766 ("glib" ,glib)))
1767 (native-inputs
1768 `(("intltool" ,intltool)
1769 ("glib:bin" ,glib "bin")
1770 ("pkg-config" ,pkg-config)))
6f885c05
FB
1771 (home-page "https://launchpad.net/gnome-themes-standard")
1772 (synopsis "Default GNOME 3 themes")
1773 (description
1774 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1775 (license license:lgpl2.1+)))
5a659a48 1776
df90c701
RW
1777(define-public seahorse
1778 (package
1779 (name "seahorse")
6983ba56 1780 (version "3.20.0")
df90c701
RW
1781 (source
1782 (origin
1783 (method url-fetch)
1784 (uri (string-append "mirror://gnome/sources/" name "/"
1785 (version-major+minor version) "/" name "-"
1786 version ".tar.xz"))
1787 (sha256
1788 (base32
6983ba56 1789 "1py6fj19kb8aaxvg6yrpd0876azc2zjvis98aqz37a2lxmhp9c72"))))
df90c701
RW
1790 (build-system glib-or-gtk-build-system)
1791 (inputs
1792 `(("gtk+" ,gtk+)
1793 ("gcr" ,gcr)
34b979b9 1794 ("gnupg" ,gnupg)
df90c701 1795 ("gpgme" ,gpgme)
34b979b9 1796 ("openldap" ,openldap)
4a1bf090 1797 ("openssh" ,openssh)
34b979b9
EF
1798 ("libsecret" ,libsecret)
1799 ("libsoup" ,libsoup)))
df90c701
RW
1800 (native-inputs
1801 `(("intltool" ,intltool)
1802 ("glib:bin" ,glib "bin")
1803 ("itstool" ,itstool)
bcb354ad
SB
1804 ("pkg-config" ,pkg-config)
1805 ("xmllint" ,libxml2)))
df90c701
RW
1806 (home-page "https://launchpad.net/gnome-themes-standard")
1807 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1808 (description
1809 "Seahorse is a GNOME application for managing encryption keys and
1810passwords in the GNOME keyring.")
1811 (license license:gpl2+)))
1812
5a659a48
SB
1813(define-public vala
1814 (package
1815 (name "vala")
6d836f4d 1816 (version "0.36.3")
5a659a48
SB
1817 (source (origin
1818 (method url-fetch)
1819 (uri (string-append "mirror://gnome/sources/" name "/"
1820 (version-major+minor version) "/"
1821 name "-" version ".tar.xz"))
1822 (sha256
1823 (base32
6d836f4d 1824 "0706izk9prxqclm7gv4f63diwnlc1llvfl5sc9ghqbgn076lx2mc"))))
5a659a48 1825 (build-system gnu-build-system)
1ea90625
SB
1826 (arguments
1827 '(#:phases
1828 (modify-phases %standard-phases
f4925a4f 1829 (add-before 'check 'pre-check
1ea90625
SB
1830 (lambda _
1831 (setenv "CC" "gcc")
f4925a4f
SB
1832 ;; For missing '/etc/machine-id'.
1833 (setenv "DBUS_FATAL_WARNINGS" "0")
0a387b14
LF
1834 #t)))
1835 ;; Build the Vala API generator
1836 #:configure-flags '("--enable-vapigen")))
5a659a48
SB
1837 (native-inputs
1838 `(("pkg-config" ,pkg-config)
1839 ("flex" ,flex)
1840 ("bison" ,bison)
1841 ("xsltproc" ,libxslt)
1842 ("dbus" ,dbus) ; for dbus tests
1843 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1844 (propagated-inputs
1845 `(("glib" ,glib))) ; required by libvala-0.26.pc
1846 (home-page "http://live.gnome.org/Vala/")
1847 (synopsis "Compiler for the GObject type system")
1848 (description
1849 "Vala is a programming language that aims to bring modern programming
1850language features to GNOME developers without imposing any additional runtime
1851requirements and without using a different ABI compared to applications and
1852libraries written in C.")
1853 (license license:lgpl2.1+)))
ea57378f
SB
1854
1855(define-public vte
1856 (package
1857 (name "vte")
f2da7c86 1858 (version "0.48.3")
ea57378f
SB
1859 (source (origin
1860 (method url-fetch)
1861 (uri (string-append "mirror://gnome/sources/" name "/"
1862 (version-major+minor version) "/"
1863 name "-" version ".tar.xz"))
1864 (sha256
1865 (base32
f2da7c86 1866 "1hsqc7238862mqnva5qqdfxnhpwq3ak6zx6kbjj95cs04wcgpad3"))))
ea57378f
SB
1867 (build-system gnu-build-system)
1868 (native-inputs
1869 `(("pkg-config" ,pkg-config)
1870 ("intltool" ,intltool)
1871 ("vala" ,vala)
1872 ("gobject-introspection" ,gobject-introspection)
1873 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
73f0e1ab 1874 ("gperf" ,gperf)
ea57378f
SB
1875 ("xmllint" ,libxml2)))
1876 (propagated-inputs
302393bc 1877 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
de1215e2
MW
1878 ("gnutls" ,gnutls) ;ditto
1879 ("pcre2" ,pcre2))) ;ditto
ea57378f
SB
1880 (home-page "http://www.gnome.org/")
1881 (synopsis "Virtual Terminal Emulator")
1882 (description
1883 "VTE is a library (libvte) implementing a terminal emulator widget for
1884GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1885gnome-terminal, but can also be used to embed a console/terminal in games,
1886editors, IDEs, etc.")
1887 (license license:lgpl2.1+)))
1888
c44fb4df
MO
1889(define-public vte-ng
1890 (package
1891 (inherit vte)
1892 (name "vte-ng")
52d2a2be 1893 (version "0.48.3.a")
c44fb4df
MO
1894 (native-inputs
1895 `(("gtk-doc" ,gtk-doc)
011b858b 1896 ("gperf" ,gperf)
c44fb4df
MO
1897 ("autoconf" ,autoconf)
1898 ("automake" ,automake)
1899 ("libtool" ,libtool)
1900 ,@(package-native-inputs vte)))
1901 (source (origin
1902 (method url-fetch)
1903 (uri (string-append "https://github.com/thestinger/"
1904 name "/archive/" version ".tar.gz"))
1905 (file-name (string-append name "-" version ".tar.gz"))
1906 (sha256
1907 (base32
52d2a2be 1908 "1wdkf090zclqy11hxdjgy8f6fgzajl0xzzirajikhbaiill7f8zh"))))
c44fb4df
MO
1909 (arguments
1910 `(#:configure-flags '("CXXFLAGS=-Wformat=0")
1911 #:phases (modify-phases %standard-phases
1912 (add-after 'unpack 'bootstrap
1913 (lambda _
1914 (setenv "NOCONFIGURE" "true")
1915 (zero? (system* "sh" "autogen.sh")))))))
1916 (synopsis "Enhanced VTE terminal widget")
1917 (description
1918 "VTE is a library (libvte) implementing a terminal emulator widget for
1919GTK+, this fork provides additional functions exposed for keyboard text
1920selection and URL hints.")))
1921
2776d72c
EF
1922;; provides vte 2.90, required for some terminal emulators
1923;; tilda bug: https://github.com/lanoxx/tilda/issues/94
1924;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
1925;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
1926;; pantheon-terminal, roxterm are not currently packaged
1927(define-public vte-0.36
1928 (package (inherit vte)
1929 (name "vte")
1930 (version "0.36.5")
1931 (source (origin
1932 (method url-fetch)
1933 (uri (string-append "mirror://gnome/sources/" name "/"
1934 (version-major+minor version) "/"
1935 name "-" version ".tar.xz"))
1936 (sha256
1937 (base32
1938 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
1939 (propagated-inputs
1940 `(("gtk" ,gtk+)
1941 ("ncurses" ,ncurses)))))
1942
ea57378f
SB
1943;; stable version for gtk2, required by xfce4-terminal.
1944(define-public vte/gtk+-2
1945 (package (inherit vte)
1946 (name "vte")
1947 (version "0.28.2")
1948 (source (origin
1949 (method url-fetch)
1950 (uri (string-append "mirror://gnome/sources/" name "/"
1951 (version-major+minor version) "/"
1952 name "-" version ".tar.xz"))
1953 (sha256
1954 (base32
7d48938a
EF
1955 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))
1956 (patches (search-patches
1957 "vte-CVE-2012-2738-pt1.patch"
1958 "vte-CVE-2012-2738-pt2.patch"))))
ea57378f
SB
1959 (arguments
1960 '(#:configure-flags '("--disable-python")))
1961 (native-inputs
1962 `(("pkg-config" ,pkg-config)
1963 ("intltool" ,intltool)
1964 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1965 (propagated-inputs
1966 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1967 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20 1968
cce0da5e
TD
1969(define-public vinagre
1970 (package
1971 (name "vinagre")
1972 (version "3.22.0")
1973 (source (origin
1974 (method url-fetch)
1975 (uri (string-append "mirror://gnome/sources/" name "/"
1976 (version-major+minor version) "/"
1977 name "-" version ".tar.xz"))
1978 (sha256
1979 (base32
1980 "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d"))))
1981 (build-system glib-or-gtk-build-system)
1982 (native-inputs
1983 `(("pkg-config" ,pkg-config)
1984 ("intltool" ,intltool)
1985 ("itstool" ,itstool)
1986 ("glib-bin" ,glib "bin") ;for glib-compile-schemas
1987 ("gtk+-bin" ,gtk+ "bin"))) ;for gtk-update-icon-cache
1988 (inputs
1989 `(("libxml2" ,libxml2)
1990 ("gtk-vnc" ,gtk-vnc)
1991 ("gnome-keyring" ,gnome-keyring)
1992 ("libsecret" ,libsecret)
1993 ("freerdp" ,freerdp)
1994 ("spice" ,spice)
1995 ("spice-gtk" ,spice-gtk)
1996 ("telepathy-glib" ,telepathy-glib)
1997 ("vte" ,vte)))
1998 (arguments
1999 `(#:configure-flags '("--enable-rdp")))
2000 (home-page "https://wiki.gnome.org/Apps/Vinagre")
2001 (synopsis "Remote desktop viewer for GNOME")
2002 (description "Vinagre is a remote display client supporting the VNC, SPICE
2003and RDP protocols.")
2004 (license license:gpl3+)))
2005
b47e1b20
FB
2006(define-public dconf
2007 (package
2008 (name "dconf")
6983ba56 2009 (version "0.26.0")
b47e1b20
FB
2010 (source (origin
2011 (method url-fetch)
2012 (uri (string-append
2e6ecc5c 2013 "mirror://gnome/sources/" name "/"
b47e1b20
FB
2014 (version-major+minor version) "/"
2015 name "-" version ".tar.xz"))
2016 (sha256
f05c809f 2017 (base32
6983ba56 2018 "1jaqsr1r0grpd25rbsc2v3vb0sc51lia9w31wlqswgqsncp2k0w6"))))
b47e1b20
FB
2019 (build-system glib-or-gtk-build-system)
2020 (inputs
2021 `(("gtk+" ,gtk+)
2022 ("glib" ,glib)
2023 ("dbus" ,dbus)
2024 ("libxml2" ,libxml2)))
2025 (native-inputs
2026 `(("libxslt" ,libxslt)
2027 ("docbook-xml" ,docbook-xml-4.2)
2028 ("docbook-xsl" ,docbook-xsl)
2029 ("intltool" ,intltool)
2030 ("pkg-config" ,pkg-config)))
2031 (arguments
2032 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
2033 ; or /etc/machine-id.
2034 #:configure-flags
2035 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 2036 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
2037 (assoc-ref %outputs "out") "/lib")
2038 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
2039 #:phases
2040 (alist-cons-before
2041 'configure 'fix-docbook
2042 (lambda* (#:key inputs #:allow-other-keys)
2043 (substitute* "docs/Makefile.in"
2044 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 2045 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
2046 "/xml/xsl/docbook-xsl-"
2047 ,(package-version docbook-xsl)
2048 "/manpages/docbook.xsl")))
2e6ecc5c
AE
2049 (setenv "XML_CATALOG_FILES"
2050 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
2051 "/xml/dtd/docbook/catalog.xml")))
2052 %standard-phases)))
2053 (home-page "https://developer.gnome.org/dconf")
2054 (synopsis "Low-level GNOME configuration system")
2055 (description "Dconf is a low-level configuration system. Its main purpose
2056is to provide a backend to GSettings on platforms that don't already have
2057configuration storage systems.")
2058 (license license:lgpl2.1)))
109da1c0
AE
2059
2060(define-public json-glib
2061 (package
2062 (name "json-glib")
dbf0424d 2063 (version "1.2.8")
109da1c0
AE
2064 (source (origin
2065 (method url-fetch)
2066 (uri (string-append "mirror://gnome/sources/" name "/"
2067 (version-major+minor version) "/"
2068 name "-" version ".tar.xz"))
2069 (sha256
2070 (base32
dbf0424d 2071 "02pl0wl3mf47c038bgv2r4pa6pr6y3shjhxn1l7s3rrrgl1sjmgx"))))
109da1c0
AE
2072 (build-system gnu-build-system)
2073 (native-inputs
88c6b580 2074 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
2075 ("gobject-introspection" ,gobject-introspection)
2076 ("pkg-config" ,pkg-config)))
2077 (propagated-inputs
88c6b580 2078 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
2079 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
2080 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
2081 (description
2082 "JSON-GLib is a C library based on GLib providing serialization and
2083deserialization support for the JavaScript Object Notation (JSON) format
2084described by RFC 4627. It provides parser and generator GObject classes and
2085various wrappers for the complex data types employed by JSON, such as arrays
2086and objects.")
109da1c0 2087 (license license:lgpl2.1+)))
6f96a359
SB
2088
2089(define-public libxklavier
2090 (package
2091 (name "libxklavier")
2092 (version "5.3")
2093 (source (origin
2094 (method url-fetch)
2095 (uri (string-append "mirror://gnome/sources/" name "/"
2096 version "/" name "-" version ".tar.xz"))
2097 (sha256
2098 (base32
2099 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
2100 (build-system gnu-build-system)
2101 (arguments
2102 '(#:configure-flags
2103 (list (string-append "--with-xkb-base="
2104 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 2105 "/share/X11/xkb"))))
6f96a359
SB
2106 (native-inputs
2107 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
2108 ("gobject-introspection" ,gobject-introspection)
2109 ("pkg-config" ,pkg-config)))
2110 (propagated-inputs
2111 ;; Required by libxklavier.pc.
2112 `(("glib" ,glib)
2113 ("libxml2" ,libxml2)))
2114 (inputs
2115 `(("iso-codes" ,iso-codes)
2116 ("libxi" ,libxi)
2117 ("libxkbfile" ,libxkbfile)
2118 ("xkbcomp" ,xkbcomp)
2119 ("xkeyboard-config" ,xkeyboard-config)))
2120 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
2121 (synopsis "High-level API for X Keyboard Extension")
2122 (description
2123 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
2124Extension known as XKB. This library is intended to support XFree86 and other
2125commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
2126indicators etc).")
2127 (license license:lgpl2.0+)))
619936a4
LC
2128
2129(define-public python2-rsvg
2130 ;; XXX: This is actually a subset of gnome-python-desktop.
2131 (package
2132 (name "python2-rsvg")
2133 (version "2.32.0")
2134 (source
2135 (origin
2136 (method url-fetch)
2137 (uri (string-append
2138 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
2139 version ".tar.bz2"))
2140 (sha256
2141 (base32
2142 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
2143 (build-system gnu-build-system)
2144 (native-inputs
2145 `(("pkg-config" ,pkg-config)))
2146 (inputs
2147 `(("python" ,python-2)
2148 ("python2-pygtk" ,python2-pygtk)
2149 ("librsvg" ,librsvg)))
2150 (home-page "http://www.gnome.org")
2151 (synopsis "Python bindings to librsvg")
2152 (description
2153 "This packages provides Python bindings to librsvg, the SVG rendering
2154library.")
2155
2156 ;; This is the license of the rsvg bindings. The license of each module
2157 ;; of gnome-python-desktop is given in 'COPYING'.
2158 (license license:lgpl2.1+)))
a31a6d22 2159
f2ca414a
SB
2160(define-public glib-networking
2161 (package
2162 (name "glib-networking")
532cbe22 2163 (version "2.50.0")
f2ca414a
SB
2164 (source (origin
2165 (method url-fetch)
2166 (uri (string-append "mirror://gnome/sources/glib-networking/"
2167 (version-major+minor version) "/"
2168 name "-" version ".tar.xz"))
2169 (sha256
2170 (base32
532cbe22 2171 "1vkb53jxawy38y29635izlch64j9xmcwwcimk134jwra7hpl86iz"))
907f939b 2172 (patches
fc1adab1 2173 (search-patches "glib-networking-ssl-cert-file.patch"))))
f2ca414a
SB
2174 (build-system gnu-build-system)
2175 (arguments
2176 `(#:configure-flags
907f939b 2177 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
2178 #:phases
2179 (modify-phases %standard-phases
3a4de6b2 2180 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
2181 ;; Install GIO modules into $out/lib/gio/modules.
2182 (lambda _
2183 (substitute* "configure"
2184 (("GIO_MODULE_DIR=.*")
2185 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
2186 "/lib/gio/modules\n")))))
2187 (add-before 'check 'use-empty-ssl-cert-file
2188 (lambda _
2189 ;; The ca-certificates.crt is not available in the build
2190 ;; environment.
2191 (setenv "SSL_CERT_FILE" "/dev/null")
2192 #t)))))
f2ca414a
SB
2193 (native-inputs
2194 `(("pkg-config" ,pkg-config)
2195 ("intltool" ,intltool)))
2196 (inputs
2197 `(("glib" ,glib)
2198 ("gnutls" ,gnutls)
2199 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2200 ("p11-kit" ,p11-kit)))
2201 (home-page "http://www.gnome.org")
2202 (synopsis "Network-related GIO modules")
2203 (description
2204 "This package contains various network related extensions for the GIO
2205library.")
2206 (license license:lgpl2.0+)))
2207
ca649680 2208(define-public rest
4510b2da 2209 (package
ca649680 2210 (name "rest")
90000d4b 2211 (version "0.8.0")
4510b2da
SB
2212 (source (origin
2213 (method url-fetch)
2214 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
2215 (version-major+minor version) "/"
2216 name "-" version ".tar.xz"))
4510b2da
SB
2217 (sha256
2218 (base32
90000d4b 2219 "0iznvzhab1jq9z3nwy97dh2pid9azwkqm7kkxwx0f5ql1hh9pf77"))))
4510b2da
SB
2220 (build-system gnu-build-system)
2221 (arguments
2222 '(#:tests? #f ; tests require internet connection
2223 #:configure-flags
2224 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
2225 (native-inputs
2226 `(("glib-mkenums" ,glib "bin")
2227 ("gobject-introspection" ,gobject-introspection)
2228 ("pkg-config" ,pkg-config)))
2229 (propagated-inputs
2230 ;; rest-0.7.pc refers to all these.
2231 `(("glib" ,glib)
2232 ("libsoup" ,libsoup)
2233 ("libxml2" ,libxml2)))
2234 (home-page "http://www.gtk.org/")
2235 (synopsis "RESTful web api query library")
2236 (description
2237 "This library was designed to make it easier to access web services that
2238claim to be \"RESTful\". It includes convenience wrappers for libsoup and
2239libxml to ease remote use of the RESTful API.")
2240 (license license:lgpl2.1+)))
2241
6e1bb642
SB
2242(define-public libsoup
2243 (package
2244 (name "libsoup")
ffaf5cbd 2245 (version "2.58.1")
6e1bb642
SB
2246 (source (origin
2247 (method url-fetch)
2248 (uri (string-append "mirror://gnome/sources/libsoup/"
2249 (version-major+minor version) "/"
2250 name "-" version ".tar.xz"))
2251 (sha256
2252 (base32
ffaf5cbd 2253 "1fggmshk2mfsyfvml6paki65xj9rv1s5p7ds41xmnx6yazsnkik2"))))
6e1bb642
SB
2254 (build-system gnu-build-system)
2255 (outputs '("out" "doc"))
2256 (arguments
b19d6805 2257 `(#:configure-flags
6e1bb642
SB
2258 (list (string-append "--with-html-dir="
2259 (assoc-ref %outputs "doc")
ffaf5cbd
MB
2260 "/share/gtk-doc/html")
2261 (string-append "--with-apache-module-dir="
2262 (assoc-ref %build-inputs "httpd")
2263 "/modules"))
6e1bb642
SB
2264 #:phases
2265 (modify-phases %standard-phases
3a4de6b2 2266 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2267 ;; This test fails due to missing /etc/nsswitch.conf
2268 ;; in the build environment.
2269 (lambda _
2270 (substitute* "tests/socket-test.c"
2271 ((".*/sockets/unconnected.*") ""))
2272 #t))
907f939b 2273 (add-before 'check 'pre-check
6e1bb642 2274 (lambda _
907f939b
SB
2275 ;; The 'check-local' target runs 'env LANG=C sort -u',
2276 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2277 (unsetenv "LC_ALL")
907f939b
SB
2278 ;; The ca-certificates.crt is not available in the build
2279 ;; environment.
2280 (setenv "SSL_CERT_FILE" "/dev/null")
ffaf5cbd
MB
2281 ;; HTTPD in Guix uses mod_event and does not build prefork.
2282 (substitute* "tests/httpd.conf"
2283 (("^LoadModule mpm_prefork_module.*$") "\n"))
fd730590
SB
2284 #t))
2285 (replace 'install
2286 (lambda _
2287 (zero?
2288 (system* "make"
2289 ;; Install vala bindings into $out.
2290 (string-append "vapidir=" %output
2291 "/share/vala/vapi")
2292 "install")))))))
6e1bb642
SB
2293 (native-inputs
2294 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2295 ("gobject-introspection" ,gobject-introspection)
2296 ("intltool" ,intltool)
2297 ("pkg-config" ,pkg-config)
2298 ("python" ,python-wrapper)
fd730590 2299 ("vala" ,vala)
6e1bb642
SB
2300 ;; These are needed for the tests.
2301 ;; FIXME: Add PHP once available.
2302 ("curl" ,curl)
2303 ("httpd" ,httpd)))
2304 (propagated-inputs
2305 ;; libsoup-2.4.pc refers to all these.
2306 `(("glib" ,glib)
2307 ("libxml2" ,libxml2)))
2308 (inputs
2309 `(("glib-networking" ,glib-networking)
2310 ("sqlite" ,sqlite)))
2311 (home-page "https://live.gnome.org/LibSoup/")
2312 (synopsis "GLib-based HTTP Library")
2313 (description
2314 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2315and the GLib main loop, to integrate well with GNOME applications.")
2316 (license license:lgpl2.0+)))
2317
bba229a3
SB
2318(define-public libsecret
2319 (package
2320 (name "libsecret")
6983ba56 2321 (version "0.18.5")
bba229a3
SB
2322 (source (origin
2323 (method url-fetch)
2324 (uri (string-append
896dcbc7
EF
2325 "mirror://gnome/sources/libsecret/"
2326 (version-major+minor version) "/"
bba229a3
SB
2327 name "-" version ".tar.xz"))
2328 (sha256
2329 (base32
6983ba56 2330 "1cychxc3ff8fp857iikw0n2s13s2mhw2dn1mr632f7w3sn6vvrww"))))
bba229a3
SB
2331 (build-system gnu-build-system)
2332 (outputs '("out" "doc"))
2333 (arguments
2334 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2335 #:configure-flags
2336 (list (string-append "--with-html-dir="
2337 (assoc-ref %outputs "doc")
2338 "/share/gtk-doc/html"))))
2339 (native-inputs
2340 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2341 ("gobject-introspection" ,gobject-introspection)
2342 ("intltool" ,intltool)
2343 ("pkg-config" ,pkg-config)
2344 ("vala" ,vala)
2345 ("xsltproc" ,libxslt)))
2346 ;; These are needed for the tests.
2347 ;; FIXME: Add gjs once available.
2348 ;("dbus" ,dbus)
2349 ;("python2" ,python-2)
2350 ;("python2-dbus" ,python2-dbus)
2351 ;("python2-pygobject" ,python2-pygobject)
2352 ;("python2-pygobject-2" ,python2-pygobject-2)))
2353 (propagated-inputs
2354 `(("glib" ,glib))) ; required by libsecret-1.pc
2355 (inputs
2356 `(("docbook-xsl" ,docbook-xsl)
2357 ("libgcrypt" ,libgcrypt)
2358 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2359 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2360 (synopsis "GObject bindings for \"Secret Service\" API")
2361 (description
2362 "Libsecret is a GObject based library for storing and retrieving passwords
2363and other secrets. It communicates with the \"Secret Service\" using DBus.")
2364 (license license:lgpl2.1+)))
2365
a31a6d22
SB
2366(define-public gnome-mines
2367 (package
2368 (name "gnome-mines")
73992962 2369 (version "3.22.2")
a31a6d22
SB
2370 (source
2371 (origin
2372 (method url-fetch)
2373 (uri (string-append "mirror://gnome/sources/" name "/"
2374 (version-major+minor version) "/"
2375 name "-" version ".tar.xz"))
2376 (sha256
2377 (base32
73992962 2378 "1wia0nj5i244m6pq3lridvk3vx9yipsa9l921nsskd97115mnyza"))))
a31a6d22
SB
2379 (build-system glib-or-gtk-build-system)
2380 (arguments
2381 '(#:phases
2382 (modify-phases %standard-phases
f8503e2b 2383 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2384 (lambda _
2385 (substitute* "configure"
6983ba56 2386 (("/bin/true") (which "true"))))))))
a31a6d22
SB
2387 (native-inputs
2388 `(("pkg-config" ,pkg-config)
2389 ("desktop-file-utils" ,desktop-file-utils)
2390 ("intltool" ,intltool)
bcb354ad
SB
2391 ("itstool" ,itstool)
2392 ("xmllint" ,libxml2)))
a31a6d22
SB
2393 (inputs
2394 `(("gtk+" ,gtk+)
73992962 2395 ("libgnome-games-support" ,libgnome-games-support)
a31a6d22
SB
2396 ("librsvg" ,librsvg)))
2397 (home-page "https://wiki.gnome.org/Apps/Mines")
2398 (synopsis "Minesweeper game")
2399 (description
2400 "Mines (previously gnomine) is a puzzle game where you locate mines
2401floating in an ocean using only your brain and a little bit of luck.")
2402 (license license:gpl2+)))
88f70665 2403
dfc407f3
KY
2404(define-public gnome-sudoku
2405 (package
2406 (name "gnome-sudoku")
d56bea89 2407 (version "3.22.2")
dfc407f3
KY
2408 (source
2409 (origin
2410 (method url-fetch)
2411 (uri (string-append "mirror://gnome/sources/" name "/"
2412 (version-major+minor version) "/"
2413 name "-" version ".tar.xz"))
2414 (sha256
2415 (base32
d56bea89 2416 "1sz2ln2nc9ff7zigghil32vbmr2qhb98dc0rbrz755rlrsh8pi08"))))
dfc407f3
KY
2417 (build-system glib-or-gtk-build-system)
2418 (native-inputs
2419 `(("pkg-config" ,pkg-config)
2420 ("desktop-file-utils" ,desktop-file-utils)
2421 ("intltool" ,intltool)
2422 ("itstool" ,itstool)
2423 ("xmllint" ,libxml2)))
2424 (inputs
2425 `(("gtk+" ,gtk+)
2426 ("json-glib" ,json-glib)
2427 ("libgee" ,libgee)
2428 ("librsvg" ,librsvg)
2429 ("qqwing" ,qqwing)))
2430 (home-page "https://wiki.gnome.org/Apps/Sudoku")
2431 (synopsis "Japanese logic game")
2432 (description
2433 "Sudoku is a Japanese logic game that exploded in popularity in 2005.
2434GNOME Sudoku is meant to have an interface as simple and unobstrusive as
2435possible while still providing features that make playing difficult Sudoku
2436more fun.")
2437 (license license:gpl2+)))
2438
88f70665
AW
2439(define-public gnome-terminal
2440 (package
2441 (name "gnome-terminal")
274b7fd0 2442 (version "3.24.1")
88f70665
AW
2443 (source
2444 (origin
2445 (method url-fetch)
2446 (uri (string-append "mirror://gnome/sources/" name "/"
2447 (version-major+minor version) "/"
2448 name "-" version ".tar.xz"))
2449 (sha256
2450 (base32
274b7fd0 2451 "1q303bljcr06w3ra737kq1hpjda45wk16kmrixxwldf3zkk2dgx7"))))
88f70665
AW
2452 (build-system glib-or-gtk-build-system)
2453 (arguments
2454 '(#:configure-flags
2455 (list "--disable-migration" "--disable-search-provider"
2456 "--without-nautilus-extension")
2457 #:phases
2458 (modify-phases %standard-phases
3a4de6b2 2459 (add-before 'configure 'patch-/bin/true
88f70665
AW
2460 (lambda _
2461 (substitute* "configure"
2462 (("/bin/true") (which "true"))))))))
2463 (native-inputs
2464 `(("pkg-config" ,pkg-config)
2465 ("desktop-file-utils" ,desktop-file-utils)
2466 ("intltool" ,intltool)
bcb354ad
SB
2467 ("itstool" ,itstool)
2468 ("xmllint" ,libxml2)))
68702167
MW
2469 (propagated-inputs
2470 `(("dconf" ,dconf)))
88f70665
AW
2471 (inputs
2472 `(("gtk+" ,gtk+)
2473 ("vte" ,vte)
2474 ("gnutls" ,gnutls)
88f70665
AW
2475 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2476 ("util-linux" ,util-linux)
2477 ("vala" ,vala)))
2478 (home-page "https://wiki.gnome.org/Apps/Terminal")
2479 (synopsis "Terminal emulator")
2480 (description
2481 "GNOME Terminal is a terminal emulator application for accessing a
2482UNIX shell environment which can be used to run programs available on
2483your system.
2484
2485It supports several profiles, multiple tabs and implements several
2486keyboard shortcuts.")
2487 (license license:gpl3+)))
75016d07
AW
2488
2489(define-public colord
2490 (package
2491 (name "colord")
2492 (version "1.1.8")
2493 (source
2494 (origin
2495 (method url-fetch)
5cc3096c 2496 (uri (string-append "https://www.freedesktop.org/software/colord/releases/"
75016d07
AW
2497 name "-" version ".tar.xz"))
2498 (sha256
2499 (base32
2500 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2501 (build-system glib-or-gtk-build-system)
2502 (arguments
2503 '(;; The tests want to run valgrind. Punt for now.
2504 #:tests? #f
2505 #:configure-flags (list "--localstatedir=/var"
2506 ;; GUSB not packaged yet.
2507 "--disable-gusb"
2508 ;; No dep on systemd.
2509 "--disable-systemd-login"
2510 ;; Wants to install to global completion dir;
2511 ;; punt.
2512 "--disable-bash-completion"
2513 ;; colord-gtk not packaged yet.
2514 "--disable-session-example"
2515 "--with-daemon-user=colord"
2516 "--enable-sane"
2517 (string-append "--with-udevrulesdir="
2518 (assoc-ref %outputs "out")
2519 "/lib/udev/rules.d"))
2520 #:phases
2521 (modify-phases %standard-phases
3a4de6b2 2522 (add-before 'configure 'patch-/bin/true
75016d07
AW
2523 (lambda _
2524 (substitute* "configure"
2525 (("/bin/true") (which "true")))
2526 (substitute* "src/Makefile.in"
2527 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2528 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2529 (native-inputs
2530 `(("pkg-config" ,pkg-config)
2531 ("gobject-introspection" ,gobject-introspection)
2532 ("libtool" ,libtool)
2533 ("intltool" ,intltool)))
65cb2d61
SB
2534 (propagated-inputs
2535 ;; colord.pc refers to all these.
2536 `(("glib" ,glib)
2537 ("udev" ,eudev)
2538 ("lcms" ,lcms)))
75016d07 2539 (inputs
65cb2d61 2540 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2541 ("libgudev" ,libgudev)
75016d07 2542 ("libusb" ,libusb)
75016d07
AW
2543 ("sqlite" ,sqlite)
2544 ("polkit" ,polkit)
4c928743 2545 ("sane-backends" ,sane-backends)))
75016d07
AW
2546 (home-page "http://www.freedesktop.org/software/colord/")
2547 (synopsis "Color management service")
2548 (description "Colord is a system service that makes it easy to manage,
2549install and generate color profiles to accurately color manage input and
2550output devices.")
2551 (license license:gpl2+)))
7b2abd00
AW
2552
2553(define-public geoclue
2554 (package
2555 (name "geoclue")
ccfac09c 2556 (version "2.4.6")
7b2abd00
AW
2557 (source
2558 (origin
2559 (method url-fetch)
5cc3096c 2560 (uri (string-append "https://www.freedesktop.org/software/" name
7b2abd00
AW
2561 "/releases/" (version-major+minor version) "/"
2562 name "-" version ".tar.xz"))
2563 (sha256
2564 (base32
ccfac09c 2565 "1dnknrwln159dj7pdprnfa4zjprgslabxngmn11jyjwvbi2zfzf5"))
fc1adab1 2566 (patches (search-patches "geoclue-config.patch"))))
7b2abd00
AW
2567 (build-system glib-or-gtk-build-system)
2568 (arguments
2569 '(;; The tests want to run the system bus.
2570 #:tests? #f
2571 #:configure-flags (list ;; Disable bits requiring ModemManager.
2572 "--disable-3g-source"
2573 "--disable-cdma-source"
2574 "--disable-modem-gps-source"
2575 "--with-dbus-service-user=geoclue")
2576 #:phases
2577 (modify-phases %standard-phases
3a4de6b2 2578 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2579 (lambda _
2580 (substitute* "configure"
2581 (("/bin/true") (which "true"))))))))
2582 (native-inputs
2583 `(("pkg-config" ,pkg-config)
2584 ("intltool" ,intltool)))
2585 (inputs
54e911bc
SB
2586 `(("avahi" ,avahi)
2587 ("glib" ,glib)
7b2abd00
AW
2588 ("json-glib" ,json-glib)
2589 ("libsoup" ,libsoup)))
2590 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2591 (synopsis "Geolocation service")
2592 (description "Geoclue is a D-Bus service that provides location
2593information. The primary goal of the Geoclue project is to make creating
2594location-aware applications as simple as possible, while the secondary goal is
2595to ensure that no application can access location information without explicit
e881752c 2596permission from user.")
7b2abd00 2597 (license license:gpl2+)))
2bfe7437
AW
2598
2599(define-public geocode-glib
2600 (package
2601 (name "geocode-glib")
3ffd46bd 2602 (version "3.20.1")
2bfe7437
AW
2603 (source (origin
2604 (method url-fetch)
2605 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2606 (version-major+minor version) "/"
2607 name "-" version ".tar.xz"))
2608 (sha256
2609 (base32
3ffd46bd 2610 "18iphsx3bybw7lssbb7rxc1rrnsc8vxai521zkqc535zr8rci7v6"))))
2bfe7437
AW
2611 (build-system gnu-build-system)
2612 (arguments
2613 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2614 ;; work for the builder. Punt.
a124bbd2 2615 #:tests? #f))
2bfe7437
AW
2616 (native-inputs
2617 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2618 ("gobject-introspection" ,gobject-introspection)
2619 ("pkg-config" ,pkg-config)
2620 ("json-glib" ,json-glib)))
2621 (propagated-inputs
2622 ;; geocode-glib-1.0.pc refers to GIO.
2623 `(("glib" ,glib)))
2624 (inputs
2625 `(("libsoup" ,libsoup)))
2626 (home-page "https://github.com/GNOME/geocode-glib/")
2627 (synopsis "Geocoding and reverse-geocoding library")
2628 (description
2629 "geocode-glib is a convenience library for geocoding (finding longitude,
2630and latitude from an address) and reverse geocoding (finding an address from
2631coordinates) using the Nominatim service. geocode-glib caches requests for
2632faster results and to avoid unnecessary server load.")
2633 (license license:lgpl2.0+)))
a1d5bb0e
AW
2634
2635(define-public upower
2636 (package
2637 (name "upower")
5e503e73 2638 (version "0.99.4")
a1d5bb0e
AW
2639 (source (origin
2640 (method url-fetch)
5cc3096c 2641 (uri (string-append "https://upower.freedesktop.org/releases/"
a1d5bb0e
AW
2642 name "-" version ".tar.xz"))
2643 (sha256
2644 (base32
5e503e73 2645 "1c1ph1j1fnrf3vipxb7ncmdfc36dpvcvpsv8n8lmal7grjk2b8ww"))
fc1adab1 2646 (patches (search-patches "upower-builddir.patch"))))
a1d5bb0e
AW
2647 (build-system glib-or-gtk-build-system)
2648 (arguments
2649 '( ;; The tests want to contact the system bus, which can't be done in the
2650 ;; build environment. The integration test can run, but the last of
2651 ;; the up-self-tests doesn't. Disable tests for now.
2652 #:tests? #f
2653 #:configure-flags (list "--localstatedir=/var"
2654 (string-append "--with-udevrulesdir="
2655 (assoc-ref %outputs "out")
2656 "/lib/udev/rules.d"))
2657 #:phases
2658 (modify-phases %standard-phases
2659 (add-before 'configure 'patch-/bin/true
2660 (lambda _
2661 (substitute* "configure"
2662 (("/bin/true") (which "true")))))
2663 (add-before 'configure 'patch-integration-test
2664 (lambda _
2665 (substitute* "src/linux/integration-test"
2666 (("/usr/bin/python3") (which "python3"))))))))
2667 (native-inputs
ebeabe2d
SB
2668 `(("gobject-introspection" ,gobject-introspection)
2669 ("pkg-config" ,pkg-config)
a1d5bb0e 2670 ("intltool" ,intltool)
55409295
LC
2671 ("python" ,python)
2672
2673 ;; For man pages.
2674 ("libxslt" ,libxslt) ;for 'xsltproc'
2675 ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES'
2676 ("docbook-xsl" ,docbook-xsl)))
a1d5bb0e 2677 (inputs
ea226291
SB
2678 `(("dbus-glib" ,dbus-glib)
2679 ("libgudev" ,libgudev)
a1d5bb0e
AW
2680 ("libusb" ,libusb)))
2681 (home-page "http://upower.freedesktop.org/")
2682 (synopsis "System daemon for managing power devices")
2683 (description
2684 "UPower is an abstraction for enumerating power devices,
2685listening to device events and querying history and statistics. Any
2686application or service on the system can access the org.freedesktop.UPower
2687service via the system message bus.")
2688 (license license:gpl2+)))
6a180f6f
AW
2689
2690(define-public libgweather
2691 (package
2692 (name "libgweather")
bd03f9db 2693 (version "3.20.4")
6a180f6f
AW
2694 (source (origin
2695 (method url-fetch)
2696 (uri (string-append "mirror://gnome/sources/" name "/"
2697 (version-major+minor version) "/"
2698 name "-" version ".tar.xz"))
2699 (sha256
2700 (base32
bd03f9db 2701 "1higj4nmn3srqjbzl4iva7c0b4fkdq74xi4b35xd0qc4qiawbkbx"))))
6a180f6f
AW
2702 (build-system gnu-build-system)
2703 (arguments
b6072e6b
SB
2704 `(#:configure-flags
2705 `(,(string-append "--with-zoneinfo-dir="
2706 (assoc-ref %build-inputs "tzdata")
2707 "/share/zoneinfo"))
2708 #:phases
2709 (modify-phases %standard-phases
8b8dfa7f
LC
2710 (add-before 'check 'pre-check
2711 (lambda* (#:key inputs #:allow-other-keys)
2712 (substitute* "data/check-timezones.sh"
2713 (("/usr/share/zoneinfo/zone.tab")
2714 (string-append (assoc-ref inputs "tzdata")
2715 "/share/zoneinfo/zone.tab")))
2716
2717 ;; 'Asia/Rangoon' was renamed in tzdata-2016:
2718 ;; <https://github.com/eggert/tz/commit/4368251ebf11310a4aadccd1910daeac9080c501>.
2719 (substitute* "data/Locations.xml"
2720 (("Asia/Rangoon")
2721 "Asia/Yangon"))
b6072e6b 2722 #t)))))
6a180f6f
AW
2723 (native-inputs
2724 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2725 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2726 ("pkg-config" ,pkg-config)
2727 ("intltool" ,intltool)))
2728 (propagated-inputs
2729 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2730 ;; libsoup.
2731 `(("gtk+" ,gtk+)
2732 ("gdk-pixbuf" ,gdk-pixbuf)
2733 ("libxml2" ,libxml2)
2734 ("libsoup" ,libsoup)))
2735 (inputs
2736 `(("tzdata" ,tzdata)
2737 ("geocode-glib" ,geocode-glib)))
2738 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2739 (synopsis "Location, time zone, and weather library for GNOME")
2740 (description
2741 "libgweather is a library to access weather information from online
2742services for numerous locations.")
2743 (license license:gpl2+)))
23a22af6
AW
2744
2745(define-public gnome-settings-daemon
2746 (package
2747 (name "gnome-settings-daemon")
28ee4d41 2748 (version "3.24.1")
23a22af6
AW
2749 (source
2750 (origin
2751 (method url-fetch)
2752 (uri (string-append "mirror://gnome/sources/" name "/"
2753 (version-major+minor version) "/"
2754 name "-" version ".tar.xz"))
2755 (sha256
2756 (base32
28ee4d41 2757 "02vm0jwhs9rdi3dphxw7dxharx7ng0l12j6hfdmn3vjc7v3ds50v"))))
23a22af6
AW
2758 (build-system glib-or-gtk-build-system)
2759 (arguments
eee7878f 2760 `(;; Color management test can't reach the colord system service.
23a22af6
AW
2761 #:tests? #f))
2762 (native-inputs
2763 `(("pkg-config" ,pkg-config)
2764 ("intltool" ,intltool)
2765 ("xsltproc" ,libxslt)
2766 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2767 ("docbook-xml" ,docbook-xml-4.2)
2768 ("docbook-xsl" ,docbook-xsl)))
2769 (inputs
2770 `(("colord" ,colord)
ea226291 2771 ("libgudev" ,libgudev)
23a22af6
AW
2772 ("upower" ,upower)
2773 ("polkit" ,polkit)
2774 ("pulseaudio" ,pulseaudio)
2775 ("libcanberra" ,libcanberra)
2776 ("libx11" ,libx11)
2777 ("libxtst" ,libxtst)
2778 ("lcms" ,lcms)
2779 ("libnotify" ,libnotify)
2780 ("geoclue" ,geoclue)
2781 ("geocode-glib" ,geocode-glib)
2782 ("libgweather" ,libgweather)
2783 ("gnome-desktop" ,gnome-desktop)
2784 ("nss" ,nss)
2785 ("cups" ,cups)
ec2b1921
AW
2786 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2787 ("libwacom" ,libwacom)
2788 ("librsvg" ,librsvg)
eee7878f
CM
2789 ("xf86-input-wacom" ,xf86-input-wacom)
2790 ("network-manager" ,network-manager)))
23a22af6
AW
2791 (home-page "http://www.gnome.org")
2792 (synopsis "GNOME settings daemon")
2793 (description
2794 "This package contains the daemon responsible for setting the various
2795parameters of a GNOME session and the applications that run under it. It
2796handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2797settings, themes, mouse settings, and startup of other daemons.")
2798 (license license:gpl2+)))
1e7464a9
DH
2799
2800(define-public totem-pl-parser
2801 (package
2802 (name "totem-pl-parser")
e980cbe9 2803 (version "3.10.7")
1e7464a9
DH
2804 (source (origin
2805 (method url-fetch)
e980cbe9
MW
2806 (uri (string-append "mirror://gnome/sources/totem-pl-parser/"
2807 (version-major+minor version) "/"
1e7464a9
DH
2808 "totem-pl-parser-" version ".tar.xz"))
2809 (sha256
2810 (base32
e980cbe9 2811 "17089sqyh6w6zr8ci865ihmvqshnslcsk9fbsl4s7yii66y8b0lw"))))
1e7464a9
DH
2812 (build-system gnu-build-system)
2813 (arguments
2814 ;; FIXME: Tests require gvfs.
2815 `(#:tests? #f))
2816 (native-inputs
2817 `(("intltool" ,intltool)
2818 ("glib" ,glib "bin")
4d6d8281 2819 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2820 ("pkg-config" ,pkg-config)))
22a6ad6a 2821 (propagated-inputs
1e7464a9
DH
2822 `(("glib" ,glib)
2823 ("gmime" ,gmime)
22a6ad6a
MW
2824 ("libxml2" ,libxml2)))
2825 (inputs
2826 `(("libarchive" ,libarchive)
1e7464a9
DH
2827 ("libgcrypt" ,libgcrypt)
2828 ("nettle" ,nettle)
22a6ad6a 2829 ("libsoup" ,libsoup)))
1e7464a9
DH
2830 (home-page "https://projects.gnome.org/totem")
2831 (synopsis "Library to parse and save media playlists for GNOME")
2832 (description "Totem-pl-parser is a GObjects-based library to parse and save
2833playlists in a variety of formats.")
2834 (license license:lgpl2.0+)))
2835
6b888eff
SB
2836(define-public aisleriot
2837 (package
2838 (name "aisleriot")
e6a36cf2 2839 (version "3.22.2")
6b888eff
SB
2840 (source (origin
2841 (method url-fetch)
2842 (uri (string-append "mirror://gnome/sources/" name "/"
2843 (version-major+minor version) "/"
2844 name "-" version ".tar.xz"))
2845 (sha256
2846 (base32
e6a36cf2 2847 "0a8cir7vgi67sncl0m7cypq11amardm7r68gr3q52a11l8ajycdx"))))
6b888eff
SB
2848 (build-system glib-or-gtk-build-system)
2849 (arguments
2850 '(#:configure-flags
2851 '("--with-platform=gtk-only"
2852 "--with-card-theme-formats=svg")))
2853 (native-inputs
2854 `(("desktop-file-utils" ,desktop-file-utils)
2855 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2856 ("intltool" ,intltool)
2857 ("itstool" ,itstool)
2858 ("pkg-config" ,pkg-config)
2859 ("xmllint" ,libxml2)))
2860 (inputs
2861 `(("gtk+" ,gtk+)
2862 ("guile" ,guile-2.0)
2863 ("libcanberra" ,libcanberra)
2864 ("librsvg" ,librsvg)))
2865 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2866 (synopsis "Solitaire card games")
2867 (description
2868 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2869which are easy to play with the aid of a mouse.")
2870 (license license:gpl3+)))
4a79e256
SB
2871
2872(define-public devhelp
2873 (package
2874 (name "devhelp")
76aea80d 2875 (version "3.22.0")
4a79e256
SB
2876 (source (origin
2877 (method url-fetch)
2878 (uri (string-append "mirror://gnome/sources/" name "/"
2879 (version-major+minor version) "/"
2880 name "-" version ".tar.xz"))
2881 (sha256
2882 (base32
76aea80d 2883 "1c7zqn8apm1lnpsp74bd880rga2vi5wxfjghqdgwqf6j28pf1jjr"))))
4a79e256
SB
2884 (build-system glib-or-gtk-build-system)
2885 (native-inputs
2886 `(("intltool" ,intltool)
2887 ("pkg-config" ,pkg-config)))
2888 (inputs
2889 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2890 ("webkitgtk" ,webkitgtk)))
2891 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2892 (synopsis "API documentation browser for GNOME")
2893 (description
2894 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2895natively with GTK-Doc (the API reference system developed for GTK+ and used
2896throughout GNOME for API documentation).")
2897 (license license:gpl2+)))
ba421ab7
MW
2898
2899(define-public cogl
2900 (package
2901 (name "cogl")
6a55accc 2902 (version "1.22.2")
ba421ab7
MW
2903 (source
2904 (origin
2905 (method url-fetch)
2906 (uri (string-append "mirror://gnome/sources/" name "/"
2907 (version-major+minor version) "/"
2908 name "-" version ".tar.xz"))
2909 (sha256
2910 (base32
6a55accc 2911 "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr"))))
a88d5a0c
MW
2912 ;; NOTE: mutter exports a bundled fork of cogl, so when making changes to
2913 ;; cogl, corresponding changes may be appropriate in mutter as well.
ba421ab7
MW
2914 (build-system gnu-build-system)
2915 (native-inputs
2916 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2917 ("gobject-introspection" ,gobject-introspection)
2918 ;;("xorg-server" ,xorg-server) ; for the test suite
2919 ("pkg-config" ,pkg-config)))
2920 (propagated-inputs
2921 `(("glib" ,glib)
2922 ("gdk-pixbuf" ,gdk-pixbuf)
2923 ("libx11" ,libx11)
2924 ("libxext" ,libxext)
2925 ("libxfixes" ,libxfixes)
2926 ("libxdamage" ,libxdamage)
2927 ("libxcomposite" ,libxcomposite)
2928 ("libxrandr" ,libxrandr)))
2929 (inputs
2930 `(("mesa" ,mesa)
2931 ("cairo" ,cairo)
2932 ("pango" ,pango)
2933 ("gstreamer" ,gstreamer)
31860852
KK
2934 ("gst-plugins-base" ,gst-plugins-base)
2935 ("wayland" ,wayland)))
ba421ab7
MW
2936 (arguments
2937 `(#:configure-flags (list "--enable-cogl-gst"
31860852
KK
2938 "--enable-wayland-egl-platform"
2939 "--enable-wayland-egl-server"
2940
ba421ab7
MW
2941 ;; Arrange to pass an absolute file name to
2942 ;; dlopen for libGL.so.
2943 (string-append "--with-gl-libname="
2944 (assoc-ref %build-inputs "mesa")
2945 "/lib/libGL.so"))
2946 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2947 ;; _FontTransOpen: Unable to Parse address
2948 ;; ${prefix}/share/fonts/X11/misc/
2949 #:tests? #f
2950 #; #:phases
2951 #;
2952 (modify-phases %standard-phases
2953 (add-before 'check 'start-xorg-server
2954 (lambda* (#:key inputs #:allow-other-keys)
2955 ;; The test suite requires a running X server.
2956 (system (format #f "~a/bin/Xvfb :1 &"
2957 (assoc-ref inputs "xorg-server")))
2958 (setenv "DISPLAY" ":1")
2959 #t)))))
2960 (home-page "http://www.cogl3d.org")
2961 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2962 (description
2963 "Cogl is a small library for using 3D graphics hardware to draw pretty
2964pictures. The API departs from the flat state machine style of OpenGL and is
2965designed to make it easy to write orthogonal components that can render
2966without stepping on each others toes.")
2967 (license (list license:expat ; most of the code
2968 license:bsd-3 ; cogl/cogl-point-in-poly.c
2969 license:sgifreeb2.0 ; cogl-path/tesselator/
2970 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2971
2972(define-public clutter
2973 (package
2974 (name "clutter")
6a88e4ee 2975 (version "1.26.2")
fb182b8a
MW
2976 (source
2977 (origin
2978 (method url-fetch)
2979 (uri (string-append "mirror://gnome/sources/" name "/"
2980 (version-major+minor version) "/"
2981 name "-" version ".tar.xz"))
2982 (sha256
2983 (base32
6a88e4ee 2984 "0mif1qnrpkgxi43h7pimim6w6zwywa16ixcliw0yjm9hk0a368z7"))))
a88d5a0c
MW
2985 ;; NOTE: mutter exports a bundled fork of clutter, so when making changes
2986 ;; to clutter, corresponding changes may be appropriate in mutter as well.
fb182b8a 2987 (build-system gnu-build-system)
600233bd
LC
2988 (outputs '("out"
2989 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2990 (native-inputs
2991 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2992 ("gobject-introspection" ,gobject-introspection)
2993 ("pkg-config" ,pkg-config)
2994 ("xsltproc" ,libxslt)))
2995 (propagated-inputs
2996 `(("cogl" ,cogl)
2997 ("cairo" ,cairo)
2998 ("atk" ,atk)
2999 ("gtk+" ,gtk+)
3000 ("json-glib" ,json-glib)
3001 ("glib" ,glib)
3002 ("libxcomposite" ,libxcomposite)
3003 ("libxdamage" ,libxdamage)
3004 ("libxext" ,libxext)
3005 ("xinput" ,xinput)))
3006 (inputs
3007 `(("libxkbcommon" ,libxkbcommon)
3008 ("udev" ,eudev)))
3009 (arguments
600233bd
LC
3010 `(#:configure-flags (list "--enable-x11-backend=yes"
3011
3012 ;; This produces share/doc/{clutter,cally}.
3013 (string-append "--with-html-dir="
3014 (assoc-ref %outputs "doc")
3015 "/share/doc"))
fb182b8a
MW
3016 ;; XXX FIXME: Get test suite working. It would probably fail in the
3017 ;; same way the cogl tests fail, since clutter is based on cogl.
3018 #:tests? #f))
3019 (home-page "http://www.clutter-project.org")
3020 (synopsis "Open GL based interactive canvas library")
3021 (description
3022 "Clutter is an Open GL based interactive canvas library, designed for
3023creating fast, mainly 2D single window applications such as media box UIs,
3024presentations, kiosk style applications and so on.")
3025 (license license:lgpl2.0+)))
bf7f17ba
MW
3026
3027(define-public clutter-gtk
3028 (package
3029 (name "clutter-gtk")
a6e44835 3030 (version "1.8.2")
bf7f17ba
MW
3031 (source
3032 (origin
3033 (method url-fetch)
3034 (uri (string-append "mirror://gnome/sources/" name "/"
3035 (version-major+minor version) "/"
3036 name "-" version ".tar.xz"))
3037 (sha256
3038 (base32
a6e44835 3039 "153bl9256yjnfcplp7jmgf7lm2zb790zkayjclzsv42l6a3d89ys"))))
bf7f17ba
MW
3040 (build-system gnu-build-system)
3041 (native-inputs
3042 `(("pkg-config" ,pkg-config)
3043 ("gobject-introspection" ,gobject-introspection)))
9a3a8b8e
SB
3044 (propagated-inputs
3045 ;; clutter-gtk.pc refers to all these.
bf7f17ba
MW
3046 `(("clutter" ,clutter)
3047 ("gtk+" ,gtk+)))
3048 (home-page "http://www.clutter-project.org")
3049 (synopsis "Open GL based interactive canvas library GTK+ widget")
3050 (description
3051 "Clutter is an Open GL based interactive canvas library, designed for
3052creating fast, mainly 2D single window applications such as media box UIs,
3053presentations, kiosk style applications and so on.")
3054 (license license:lgpl2.0+)))
86d6a893
MW
3055
3056(define-public clutter-gst
3057 (package
3058 (name "clutter-gst")
87736005 3059 (version "3.0.24")
86d6a893
MW
3060 (source
3061 (origin
3062 (method url-fetch)
3063 (uri (string-append "mirror://gnome/sources/" name "/"
3064 (version-major+minor version) "/"
3065 name "-" version ".tar.xz"))
3066 (sha256
3067 (base32
87736005 3068 "0v6cg0syh4vx7y7ni47jsvr2r57q0j3h1f1gjlp0ciscixywiwg9"))))
86d6a893
MW
3069 (build-system gnu-build-system)
3070 (native-inputs
3071 `(("glib:bin" ,glib "bin") ; for glib-mkenums
3072 ("pkg-config" ,pkg-config)
3073 ("gobject-introspection" ,gobject-introspection)))
3074 (inputs
3075 `(("clutter" ,clutter)
3076 ("gstreamer" ,gstreamer)
3077 ("gst-plugins-base" ,gst-plugins-base)))
3078 (home-page "http://www.clutter-project.org")
3079 (synopsis "Integration library for using GStreamer with Clutter")
3080 (description
3081 "Clutter-Gst is an integration library for using GStreamer with Clutter.
3082It provides a GStreamer sink to upload frames to GL and an actor that
3083implements the ClutterGstPlayer interface using playbin. Clutter is an Open
3084GL based interactive canvas library.")
3085 (license license:lgpl2.0+)))
607a04ae 3086
30dc88d9
LC
3087(define-public libchamplain
3088 (package
3089 (name "libchamplain")
356f0cef 3090 (version "0.12.15")
30dc88d9
LC
3091 (source (origin
3092 (method url-fetch)
3093 (uri (string-append
3094 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
3095 version ".tar.xz"))
3096 (sha256
3097 (base32
356f0cef 3098 "0x5qa1aw1y59lzkmf4j4szspn49341a87vcja4ydgxny1chilwjl"))))
30dc88d9 3099 (build-system gnu-build-system)
f7c6833f
LF
3100 (arguments '(#:configure-flags '("--enable-vala")))
3101 (native-inputs
3102 `(("gobject-introspection" ,gobject-introspection)
3103 ("pkg-config" ,pkg-config)
3104 ("vala" ,vala)))
30dc88d9
LC
3105 (propagated-inputs
3106 `(("libsoup" ,libsoup)
3107 ("sqlite" ,sqlite)
3108 ("clutter" ,clutter)
3109 ("clutter-gtk" ,clutter-gtk)
3110 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
3111 ("cairo" ,cairo)
3112 ("gtk+3" ,gtk+)
3113 ("glib" ,glib)))
3114 (home-page "http://projects.gnome.org/libchamplain/")
3115 (synopsis "C library providing a ClutterActor to display maps")
3116 (description
3117 "libchamplain is a C library providing a ClutterActor to display maps.
3118It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
3119and Perl bindings are also available. It supports numerous free map sources
3120such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
3121 (license license:lgpl2.1+)))
3122
607a04ae
MW
3123(define-public gom
3124 (package
3125 (name "gom")
0510440b 3126 (version "0.3.2")
607a04ae
MW
3127 (source
3128 (origin
3129 (method url-fetch)
3130 (uri (string-append "mirror://gnome/sources/" name "/"
3131 (version-major+minor version) "/"
3132 name "-" version ".tar.xz"))
3133 (sha256
3134 (base32
0510440b 3135 "1zaqqwwkyiswib3v1v8wafpbifpbpak0nn2kp13pizzn9bwz1s5w"))))
607a04ae
MW
3136 (build-system gnu-build-system)
3137 (native-inputs
3138 `(("intltool" ,intltool)
3139 ("pkg-config" ,pkg-config)
3140 ("gobject-introspection" ,gobject-introspection)))
3141 (inputs
3142 `(("glib" ,glib)
3143 ("gdk-pixbuf" ,gdk-pixbuf)
3144 ("sqlite" ,sqlite)))
3145 ;; XXX TODO: Figure out how to run the test suite.
3146 (arguments `(#:tests? #f))
3147 (home-page "https://wiki.gnome.org/Projects/Gom")
3148 (synopsis "Object mapper from GObjects to SQLite")
3149 (description
3150 "Gom provides an object mapper from GObjects to SQLite. It helps you
3151write applications that need to store structured data as well as make complex
3152queries upon that data.")
3153 (license license:lgpl2.1+)))
b7a3cf11 3154
f09520db
SB
3155(define-public libgames-support
3156 (package
3157 (name "libgames-support")
3158 (version "1.0.2")
3159 (source (origin
3160 (method url-fetch)
3161 (uri (string-append "mirror://gnome/sources/" name "/"
3162 (version-major+minor version) "/"
3163 name "-" version ".tar.xz"))
3164 (sha256
3165 (base32
3166 "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh"))))
3167 (build-system gnu-build-system)
3168 (arguments
3169 '(#:phases
3170 (modify-phases %standard-phases
3171 (add-before 'check 'pre-check
3172 (lambda _
3173 ;; tests require a writable HOME.
3174 (setenv "HOME" (getcwd))
3175 #t)))))
3176 (native-inputs
3177 `(("intltool" ,intltool)
3178 ("pkg-config" ,pkg-config)
3179 ("vala" ,vala)))
3180 (propagated-inputs
3181 ;; Required by libgames-support-1.0.pc
3182 `(("gtk+" ,gtk+)
3183 ("libgee" ,libgee)))
3184 (home-page "https://www.gnome.org/")
3185 (synopsis "Useful functionality shared among GNOME games")
3186 (description
3187 "libgames-support is a small library intended for internal use by
3188GNOME Games, but it may be used by others.")
3189 (license license:lgpl3+)))
3190
43ec2604
MW
3191(define-public libgnome-games-support
3192 (package
3193 (inherit libgames-support)
3194 (name "libgnome-games-support")
3195 (version "1.2.1")
3196 (source (origin
3197 (method url-fetch)
3198 (uri (string-append "mirror://gnome/sources/" name "/"
3199 (version-major+minor version) "/"
3200 name "-" version ".tar.xz"))
3201 (sha256
3202 (base32
3203 "1rsyf5hbjim7zpk1yar3gv65g1nmw6zbbc0smrmxsfk0f9n3j9m6"))))))
3204
b7a3cf11
SB
3205(define-public gnome-klotski
3206 (package
3207 (name "gnome-klotski")
f4eae76f 3208 (version "3.22.1")
b7a3cf11
SB
3209 (source (origin
3210 (method url-fetch)
3211 (uri (string-append "mirror://gnome/sources/" name "/"
3212 (version-major+minor version) "/"
3213 name "-" version ".tar.xz"))
3214 (sha256
3215 (base32
f4eae76f 3216 "04ragvrz29sydi2kf1zk2aimi3b3hn34jrndfd2lx6h8l45anq3q"))))
b7a3cf11
SB
3217 (build-system glib-or-gtk-build-system)
3218 (native-inputs
3219 `(("desktop-file-utils" ,desktop-file-utils)
3220 ("intltool" ,intltool)
3221 ("itstool" ,itstool)
bcb354ad
SB
3222 ("pkg-config" ,pkg-config)
3223 ("xmllint" ,libxml2)))
b7a3cf11
SB
3224 (inputs
3225 `(("gtk+" ,gtk+)
f4eae76f 3226 ("libgnome-games-support" ,libgnome-games-support)
b7a3cf11
SB
3227 ("librsvg" ,librsvg)))
3228 (home-page "https://wiki.gnome.org/Apps/Klotski")
3229 (synopsis "Sliding block puzzles")
3230 (description
3231 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
3232the patterned block to the area bordered by green markers. To do so, you will
3233need to slide other blocks out of the way. Complete each puzzle in as few moves
3234as possible!")
3235 (license license:gpl2+)))
8d4791bf
MW
3236
3237(define-public grilo
3238 (package
3239 (name "grilo")
e7305878 3240 (version "0.3.2")
8d4791bf
MW
3241 (source
3242 (origin
3243 (method url-fetch)
3244 (uri (string-append "mirror://gnome/sources/" name "/"
3245 (version-major+minor version) "/"
3246 name "-" version ".tar.xz"))
3247 (sha256
3248 (base32
e7305878 3249 "0nvzr2gfk2mpzf99442zawv0n5yjcyy50rqkrvdsibknbm56hvzj"))))
8d4791bf
MW
3250 (build-system gnu-build-system)
3251 (native-inputs
3252 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3253 ("intltool" ,intltool)
3254 ("pkg-config" ,pkg-config)
3255 ("gobject-introspection" ,gobject-introspection)))
3256 (inputs
3257 `(("glib" ,glib)
3258 ("gtk+" ,gtk+)
3259 ("libxml2" ,libxml2)
3260 ;; XXX TODO: Add oauth
3261 ("libsoup" ,libsoup)
e7305878 3262 ("nettle" ,nettle)
8d4791bf
MW
3263 ("totem-pl-parser" ,totem-pl-parser)))
3264 (arguments
3265 `(#:phases
3266 (modify-phases %standard-phases
3267 (add-after 'unpack 'fix-introspection-install-dir
3268 (lambda* (#:key outputs #:allow-other-keys)
3269 (let ((out (assoc-ref outputs "out")))
3270 (substitute* '("src/Makefile.in"
3271 "libs/pls/Makefile.in"
3272 "libs/net/Makefile.in")
3273 (("@INTROSPECTION_GIRDIR@")
3274 (string-append out "/share/gir-1.0/"))
3275 (("@INTROSPECTION_TYPELIBDIR@")
3276 (string-append out "/lib/girepository-1.0/")))))))))
3277 (native-search-paths
3278 (list (search-path-specification
3279 (variable "GRL_PLUGIN_PATH")
3280 (files (list (string-append "lib/grilo-"
3281 (version-major+minor version)))))))
3282 (home-page "http://live.gnome.org/Grilo")
3283 (synopsis "Framework for discovering and browsing media")
3284 (description
3285 "Grilo is a framework focused on making media discovery and browsing easy
3286for application developers.")
3287 (license license:lgpl2.1+)))
7b212526
MW
3288
3289(define-public grilo-plugins
3290 (package
3291 (name "grilo-plugins")
22753632 3292 (version "0.3.3")
7b212526
MW
3293 (source
3294 (origin
3295 (method url-fetch)
3296 (uri (string-append "mirror://gnome/sources/" name "/"
3297 (version-major+minor version) "/"
3298 name "-" version ".tar.xz"))
3299 (sha256
3300 (base32
22753632 3301 "172vr1y98d2mzlmg5akjn4ibrcj3gh22cwnb3cv9rvvzhj3yhrpy"))))
7b212526
MW
3302 (build-system gnu-build-system)
3303 (native-inputs
3304 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3305 ("intltool" ,intltool)
3306 ("itstool" ,itstool)
3307 ("pkg-config" ,pkg-config)))
3308 (inputs
3309 `(("grilo" ,grilo)
924ae80f 3310 ("nettle" ,nettle) ; XXX: required by libgrlpls-0.3.la
7b212526
MW
3311 ("glib" ,glib)
3312 ("libxml2" ,libxml2)
3313 ("sqlite" ,sqlite)
3314 ("gom" ,gom)
3315 ;; XXX TODO: Add oauth
3316 ;; XXX TODO: Add goa
3317 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
3318 ;; XXX TODO: Add lua (needs help finding it)
3319 ("json-glib" ,json-glib)
3320 ("avahi" ,avahi)
3321 ("gmime" ,gmime)
3322 ("libsoup" ,libsoup)
3323 ("libarchive" ,libarchive)
3324 ("totem-pl-parser" ,totem-pl-parser)))
3325 (arguments
3326 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
3327 %output
3328 "/lib/grilo-"
3329 ,(version-major+minor version)))
3330 ;; XXX FIXME: Try to get the test suite working. It appears to require
3331 ;; a working system dbus. Inside the build container, all tests fail
3332 ;; with: "assertion failed: (source)". Outside of the build container,
3333 ;; most tests succeed.
3334 #:tests? #f))
3335 (home-page "http://live.gnome.org/Grilo")
3336 (synopsis "Plugins for the Grilo media discovery library")
3337 (description
3338 "Grilo is a framework focused on making media discovery and browsing easy
3339for application developers.")
3340 (license license:lgpl2.1+)))
4e3fc547
MW
3341
3342(define-public totem
3343 (package
3344 (name "totem")
7f760a84 3345 (version "3.22.0")
4e3fc547
MW
3346 (source
3347 (origin
3348 (method url-fetch)
3349 (uri (string-append "mirror://gnome/sources/" name "/"
3350 (version-major+minor version) "/"
3351 name "-" version ".tar.xz"))
3352 (sha256
3353 (base32
7f760a84 3354 "1sjgjqhpsh3kipnbc8y31xz64s61xjayxq98pi0vkgbl2rdmnsh2"))))
4e3fc547
MW
3355 (build-system glib-or-gtk-build-system)
3356 (native-inputs
3357 `(("pkg-config" ,pkg-config)
3358 ("desktop-file-utils" ,desktop-file-utils)
3359 ("gobject-introspection" ,gobject-introspection)
3360 ("intltool" ,intltool)
bcb354ad
SB
3361 ("itstool" ,itstool)
3362 ("xmllint" ,libxml2)))
4e3fc547
MW
3363 (propagated-inputs
3364 `(("dconf" ,dconf)))
3365 (inputs
3366 `(("gtk+" ,gtk+)
3367 ("gdk-pixbuf" ,gdk-pixbuf)
3368 ("atk" ,atk)
3369 ("cairo" ,cairo)
3370 ("dbus-glib" ,dbus-glib)
3371 ("clutter" ,clutter)
3372 ("clutter-gtk" ,clutter-gtk)
3373 ("clutter-gst" ,clutter-gst)
3374 ("xproto" ,xproto)
3375 ("libxxf86vm" ,libxxf86vm)
3376 ("libxtst" ,libxtst)
3377 ("libxrandr" ,libxrandr)
3378 ("libxml2" ,libxml2)
3379 ("libsoup" ,libsoup)
3380 ("libpeas" ,libpeas)
3381 ("librsvg" ,librsvg)
3382 ("lirc" ,lirc)
3383 ("gnome-desktop" ,gnome-desktop)
3384 ("gstreamer" ,gstreamer)
3385 ("gst-plugins-base" ,gst-plugins-base)
3386 ("gst-plugins-good" ,gst-plugins-good)
3387 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3388 ("adwaita-icon-theme" ,adwaita-icon-theme)
3389 ;; XXX We use python-2 because libxml2 because itstool (which needs
3390 ;; libxml) currently uses python-2.
3391 ("python" ,python-2)
3392 ("python-pygobject" ,python2-pygobject)
3393 ;; XXX TODO pylint needed for python support
3394 ("totem-pl-parser" ,totem-pl-parser)
3395 ("grilo" ,grilo)
3396 ("grilo-plugins" ,grilo-plugins)
3397 ("nettle" ,nettle)
3398 ("vala" ,vala)))
3399 (arguments
3400 `(#:phases
3401 (modify-phases %standard-phases
3402 (add-after
3403 'install 'wrap-totem
3404 (lambda* (#:key inputs outputs #:allow-other-keys)
3405 (let ((out (assoc-ref outputs "out"))
3406 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3407 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3408 (wrap-program (string-append out "/bin/totem")
3409 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3410 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3411 #t)))))
3412 (home-page "https://wiki.gnome.org/Apps/Videos")
3413 (synopsis "Simple media player for GNOME based on GStreamer")
3414 (description "Totem is a simple yet featureful media player for GNOME
3415which can read a large number of file formats.")
3416 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3417 ;; to be used and distributed together with GStreamer and Totem. See
3418 ;; file://COPYING in the source distribution for details.
3419 (license license:gpl2+)))
f0afb0c8
DH
3420
3421(define-public rhythmbox
3422 (package
3423 (name "rhythmbox")
4faa8abe 3424 (version "3.4.1")
f0afb0c8
DH
3425 (source (origin
3426 (method url-fetch)
3427 (uri (string-append "mirror://gnome/sources/" name "/"
3428 (version-major+minor version) "/"
3429 name "-" version ".tar.xz"))
3430 (sha256
3431 (base32
4faa8abe 3432 "1dj1hgdyhmwzs6h2zr89b1ipk0p6g7x74rfz56a5yjds3ik8d7q3"))))
f0afb0c8
DH
3433 (build-system glib-or-gtk-build-system)
3434 (arguments
3435 `(#:configure-flags
3436 (list "--enable-lirc"
3437 "--enable-python"
3438 "--enable-vala"
3439 "--with-brasero"
3440 "--with-gudev"
3441 "--with-libsecret")
3442 #:phases
3443 (modify-phases %standard-phases
3444 (add-after
3445 'install 'wrap-rhythmbox
3446 (lambda* (#:key inputs outputs #:allow-other-keys)
3447 (let ((out (assoc-ref outputs "out"))
3448 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3449 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
349cef58
TGR
3450 (grl-plugin-path (getenv "GRL_PLUGIN_PATH"))
3451 (python-path (getenv "PYTHONPATH")))
f0afb0c8
DH
3452 (wrap-program (string-append out "/bin/rhythmbox")
3453 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3454 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
349cef58
TGR
3455 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))
3456 `("PYTHONPATH" ":" prefix (,python-path))))
f0afb0c8
DH
3457 #t)))))
3458 (propagated-inputs
3459 `(("dconf" ,dconf)))
3460 (native-inputs
bcb354ad
SB
3461 `(("itstool" ,itstool)
3462 ("intltool" ,intltool)
f0afb0c8
DH
3463 ("glib" ,glib "bin")
3464 ("gobject-introspection" ,gobject-introspection)
3465 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3466 ("pkg-config" ,pkg-config)
3467 ("xmllint" ,libxml2)))
f0afb0c8
DH
3468 (inputs
3469 `(("json-glib" ,json-glib)
3470 ("tdb" ,tdb)
3471 ("gnome-desktop" ,gnome-desktop)
3472 ("python" ,python)
3473 ("python-pygobject" ,python2-pygobject)
3474 ("vala" ,vala)
3475 ("gmime" ,gmime)
3476 ("nettle" ,nettle)
f0afb0c8
DH
3477 ("adwaita-icon-theme" ,adwaita-icon-theme)
3478 ("grilo" ,grilo)
3479 ("grilo-plugins" ,grilo-plugins)
3480 ("gstreamer" ,gstreamer)
3481 ("gst-plugins-base" ,gst-plugins-base)
3482 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3483 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3484 ("libgudev" ,libgudev)
f0afb0c8
DH
3485 ;;("libmtp" ,libmtp) FIXME: Not detected
3486 ("libsecret" ,libsecret)
3487 ("libsoup" ,libsoup)
3488 ("libnotify" ,libnotify)
3489 ("libpeas" ,libpeas)
3490 ("lirc" ,lirc)
3491 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3492 ;;("clutter" ,clutter)
3493 ;;("clutter-gtk" ,clutter-gtk)
3494 ;;("clutter-gst" ,clutter-gst)
3495 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3496 ("atk" ,atk)
3497 ("pango" ,pango)
3498 ("gtk+" ,gtk+)
3499 ;; TODO:
3500 ;; * libgpod
3501 ;; * mx
f0afb0c8
DH
3502 ("brasero" ,brasero)))
3503 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3504 (synopsis "Music player for GNOME")
3505 (description "Rhythmbox is a music playing application for GNOME. It
3506supports playlists, song ratings, and any codecs installed through gstreamer.")
3507 (license license:gpl2+)))
f70d8383
DH
3508
3509(define-public eog
3510 (package
3511 (name "eog")
dc4b64ae 3512 (version "3.24.1")
f70d8383
DH
3513 (source (origin
3514 (method url-fetch)
3515 (uri (string-append "mirror://gnome/sources/" name "/"
3516 (version-major+minor version) "/"
3517 name "-" version ".tar.xz"))
3518 (sha256
3519 (base32
dc4b64ae 3520 "1rr7zy8afqgl15j1zz8l37svyv6bw4r3l04yf70zlnf1w8bf27pm"))))
f70d8383
DH
3521 (build-system glib-or-gtk-build-system)
3522 (arguments
3523 `(#:phases
3524 (modify-phases %standard-phases
3525 (add-after
3526 'install 'wrap-eog
3527 (lambda* (#:key outputs #:allow-other-keys)
3528 (let ((out (assoc-ref outputs "out"))
3529 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3530 (wrap-program (string-append out "/bin/eog")
3531 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3532 #t)))))
3533 (propagated-inputs
3534 `(("dconf" ,dconf)))
3535 (native-inputs
3536 `(("intltool" ,intltool)
b3546174 3537 ("itstool" ,itstool)
f70d8383
DH
3538 ("glib" ,glib "bin")
3539 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3540 ("pkg-config" ,pkg-config)
3541 ("xmllint" ,libxml2)))
f70d8383
DH
3542 (inputs
3543 `(("gnome-desktop" ,gnome-desktop)
3544 ("shared-mime-info" ,shared-mime-info)
3545 ("adwaita-icon-theme" ,adwaita-icon-theme)
3546 ("exempi" ,exempi)
3547 ("lcms" ,lcms)
3548 ("libexif" ,libexif)
3549 ("libpeas" ,libpeas)
3550 ("libjpeg" ,libjpeg)
3551 ("librsvg" ,librsvg)
3552 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3553 ("gtk+" ,gtk+)))
3554 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3555 (synopsis "GNOME image viewer")
3556 (description "Eye of GNOME is the GNOME image viewer. It
3557supports image conversion, rotation, and slideshows.")
3558 (license license:gpl2+)))
41af5e7b
SB
3559
3560(define-public libgudev
3561 (package
3562 (name "libgudev")
3563 (version "230")
3564 (source (origin
3565 (method url-fetch)
3566 (uri (string-append "mirror://gnome/sources/" name "/"
3567 version "/" name "-" version ".tar.xz"))
3568 (sha256
3569 (base32
3570 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3571 (build-system gnu-build-system)
3572 (native-inputs
3573 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3574 ("gobject-introspection" ,gobject-introspection)
3575 ("pkg-config" ,pkg-config)))
3576 (propagated-inputs
3577 `(("glib" ,glib))) ; required by gudev-1.0.pc
3578 (inputs
3579 `(("udev" ,eudev)))
3580 (home-page "https://wiki.gnome.org/Projects/libgudev")
3581 (synopsis "GObject bindings for libudev")
3582 (description
3583 "This library provides GObject bindings for libudev. It was originally
3584part of udev-extras, then udev, then systemd. It's now a project on its own.")
3585 (license license:lgpl2.1+)))
3dc8828f
SB
3586
3587(define-public gvfs
3588 (package
3589 (name "gvfs")
8e8fefb6 3590 (version "1.32.1")
3dc8828f
SB
3591 (source (origin
3592 (method url-fetch)
3593 (uri (string-append "mirror://gnome/sources/" name "/"
3594 (version-major+minor version) "/"
3595 name "-" version ".tar.xz"))
3596 (sha256
3597 (base32
8e8fefb6 3598 "1pkahczniar1yyas7awcqpkb4ca8l7qa4msn6mr29m89mgnwkdnh"))))
3dc8828f
SB
3599 (build-system gnu-build-system)
3600 (arguments
3601 '(#:tests? #f)) ; XXX: requiring `pidof'
3602 (native-inputs
3603 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3604 ("intltool" ,intltool)
3605 ("pkg-config" ,pkg-config)
3606 ("xsltproc" ,libxslt)))
3607 (inputs
3608 `(("avahi" ,avahi)
3609 ("docbook-xml" ,docbook-xml-4.2)
3610 ("docbook-xsl" ,docbook-xsl)
3611 ("dbus" ,dbus)
3612 ("fuse" ,fuse)
24a78aa6 3613 ("gcr" ,gcr)
3dc8828f
SB
3614 ("glib" ,glib)
3615 ("libarchive" ,libarchive)
3616 ("libbluray" ,libbluray)
8852ca24 3617 ("libcap" ,libcap)
3dc8828f
SB
3618 ("libcdio-paranoia" ,libcdio-paranoia)
3619 ("libgcrypt" ,libgcrypt)
3620 ("libgphoto2" ,libgphoto2)
3621 ("libgudev" ,libgudev)
3622 ("libmtp" ,libmtp)
3623 ("libsecret" ,libsecret)
3624 ("libsmbclient" ,samba)
3625 ("libsoup" ,libsoup)
3626 ("libxml2" ,libxml2)
3627 ("nettle" ,nettle) ; XXX: required by libarchive.pc
8852ca24 3628 ("polkit" ,polkit)
3dc8828f
SB
3629 ("udisks" ,udisks)))
3630 (home-page "https://wiki.gnome.org/gvfs/")
8f65585b 3631 (synopsis "Userspace virtual file system for GIO")
3dc8828f 3632 (description
8f65585b 3633 "GVFS is a userspace virtual file system designed to work with the I/O
3dc8828f
SB
3634abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3635to all applications using the GIO API. It also supports exposing the GVFS
3636mounts to non-GIO applications using FUSE.
3637
3638GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3639DAV, and others.")
3640 (license license:lgpl2.0+)))
7c88b6bd
AW
3641
3642(define-public gusb
3643 (package
3644 (name "gusb")
6b7d7e9b 3645 (version "0.2.9")
7c88b6bd
AW
3646 (source (origin
3647 (method url-fetch)
3648 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3649 "gusb_"
3650 (string-join (string-split version #\.)
3651 "_")
3652 ".tar.gz"))
3653 (sha256
3654 (base32
6b7d7e9b 3655 "1500mgpidmnjfkcz1fzqkbqv547iy1cvr8bwf3k9vqgqcjx3844n"))))
7c88b6bd
AW
3656 (build-system gnu-build-system)
3657 (native-inputs
3658 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3659 ("gobject-introspection" ,gobject-introspection)
3660 ("pkg-config" ,pkg-config)
3661 ("vala" ,vala)
3662 ("autoconf" ,autoconf)
3663 ("automake" ,automake)
3664 ("libtool" ,libtool)
3665 ("gtk-doc" ,gtk-doc)))
3666 (propagated-inputs
3667 ;; Both of these are required by gusb.pc.
3668 `(("glib" ,glib)
3669 ("libusb" ,libusb)))
3670 (arguments
3671 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3672 #:phases
3673 (modify-phases %standard-phases
3674 (add-after 'unpack 'autogen
3675 (lambda _
3676 (and (zero? (system* "gtkdocize"))
3677 (zero? (system* "autoreconf" "-vif"))))))))
8f1640ed 3678 (home-page "https://github.com/hughsie/libgusb")
a124bbd2 3679 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3680 (description
3681 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3682asynchronous control, bulk and interrupt transfers with proper cancellation
3683and integration into a mainloop. This makes it easy to integrate low level
3684USB transfers with your high-level application or system daemon.")
3685 (license license:lgpl2.1+)))
0abe1d86
AW
3686
3687(define-public simple-scan
3688 (package
3689 (name "simple-scan")
baca5333 3690 (version "3.24.1")
0abe1d86
AW
3691 (source (origin
3692 (method url-fetch)
3693 (uri (string-append "https://launchpad.net/simple-scan/"
3694 (version-major+minor version) "/"
3695 version "/+download/simple-scan-"
3696 version ".tar.xz"))
3697 (sha256
3698 (base32
baca5333 3699 "1czg21cdbd2fgqylxfnzfhhzy69gycf816d5bbaq6hb62hmq7bjy"))))
0abe1d86
AW
3700 (build-system glib-or-gtk-build-system)
3701 (inputs
3702 `(("gtk" ,gtk+)
3703 ("zlib" ,zlib)
3704 ("cairo" ,cairo)
3705 ("gdk-pixbuf" ,gdk-pixbuf)
3706 ("gusb" ,gusb)
4c928743 3707 ("libsane" ,sane-backends)))
0abe1d86 3708 (native-inputs
b94a6ca0 3709 `(("gettext" ,gettext-minimal)
0abe1d86
AW
3710 ("itstool" ,itstool)
3711 ("colord" ,colord)
3712 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3713 ("pkg-config" ,pkg-config)
bcb354ad
SB
3714 ("vala" ,vala)
3715 ("xmllint" ,libxml2)))
fb9ca511
TGR
3716 (arguments
3717 '(#:configure-flags '("--disable-packagekit")
3718 #:phases
3719 (modify-phases %standard-phases
3720 (add-after 'unpack 'clean
3721 (lambda _
3722 ;; Remove a left-over reference to PackageKit.
3723
3724 ;; https://bugs.launchpad.net/simple-scan/+bug/1462769
3725
3726 ;; There are some generated C files erroneously
3727 ;; included in the source distribution, and this
3728 ;; one breaks the build by referring to a
3729 ;; non-existent header (packagekit.h)
3730 (delete-file "src/ui.c"))))))
0abe1d86
AW
3731 (home-page "https://launchpad.net/simple-scan")
3732 (synopsis "Document and image scanner")
3733 (description "Simple Scan is an easy-to-use application, designed to let
3734users connect their scanner and quickly have the image/document in an
3735appropriate format. Simple Scan is basically a frontend for SANE - which is
3736the same backend as XSANE uses. This means that all existing scanners will
3737work and the interface is well tested.")
3738 (license license:gpl3+)))
7549f984
SB
3739
3740(define-public epiphany
3741 (package
3742 (name "epiphany")
eb6f315b 3743 (version "3.24.1")
7549f984
SB
3744 (source (origin
3745 (method url-fetch)
3746 (uri (string-append "mirror://gnome/sources/" name "/"
3747 (version-major+minor version) "/"
3748 name "-" version ".tar.xz"))
3749 (sha256
3750 (base32
eb6f315b 3751 "1p499ncsrbpfjna9h5v1cafr7fv1zb4cmihz05pgr07bb625y991"))))
7549f984
SB
3752 (build-system glib-or-gtk-build-system)
3753 (arguments
3754 ;; FIXME: tests run under Xvfb, but fail with:
3755 ;; /src/bookmarks/ephy-bookmarks/create:
3756 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3757 ;; subsystem
3758 ;; FAIL
6f48d9db
MW
3759 '(#:tests? #f
3760 #:configure-flags '("CFLAGS=-std=gnu99")))
80a747c4
SB
3761 (propagated-inputs
3762 `(("dconf" ,dconf)))
7549f984
SB
3763 (native-inputs
3764 `(("intltool" ,intltool)
3765 ("itstool" ,itstool)
bcb354ad
SB
3766 ("pkg-config" ,pkg-config)
3767 ("xmllint" ,libxml2)))
7549f984
SB
3768 (inputs
3769 `(("avahi" ,avahi)
3770 ("gcr" ,gcr)
3771 ("glib-networking" ,glib-networking)
3772 ("gnome-desktop" ,gnome-desktop)
3773 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
eb6f315b 3774 ("json-glib" ,json-glib)
7549f984
SB
3775 ("iso-codes" ,iso-codes)
3776 ("libnotify" ,libnotify)
3777 ("libsecret" ,libsecret)
7549f984 3778 ("libxslt" ,libxslt)
7549f984
SB
3779 ("sqlite" ,sqlite)
3780 ("webkitgtk" ,webkitgtk)))
3781 (home-page "https://wiki.gnome.org/Apps/Web")
3782 (synopsis "GNOME web browser")
3783 (description
3784 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3785principles are simplicity and standards compliance.")
3786 (license license:gpl2+)))
a3856b2c
SB
3787
3788(define-public d-feet
3789 (package
3790 (name "d-feet")
7d04b13c 3791 (version "0.3.11")
a3856b2c
SB
3792 (source (origin
3793 (method url-fetch)
3794 (uri (string-append "mirror://gnome/sources/" name "/"
3795 (version-major+minor version) "/"
3796 name "-" version ".tar.xz"))
3797 (sha256
3798 (base32
7d04b13c 3799 "1hmrijm4d9vwzx2r8qzzsy8ccpj79l1y6cc569n9jjzqcq699p53"))))
a3856b2c
SB
3800 (build-system glib-or-gtk-build-system)
3801 (arguments
3802 '(#:out-of-source? #f ; tests need to run in the source directory.
3803 #:phases
3804 (modify-phases %standard-phases
3805 (add-before
3806 'check 'pre-check
86aff791 3807 (lambda _
a3856b2c
SB
3808 ;; The test suite requires a running X server.
3809 (system "Xvfb :1 &")
3810 (setenv "DISPLAY" ":1")
3811 ;; Don't fail on missing '/etc/machine-id'.
3812 (setenv "DBUS_FATAL_WARNINGS" "0")
3813 ;; tests.py and window.py don't meet E402:
3814 ;; E402 module level import not at top of file
3815 (substitute* "src/tests/Makefile"
86aff791
MW
3816 (("--ignore=E123") "--ignore=E123,E402"))
3817 #t))
a3856b2c
SB
3818 (add-after
3819 'install 'wrap-program
3820 (lambda* (#:key outputs #:allow-other-keys)
3821 (let ((prog (string-append (assoc-ref outputs "out")
3822 "/bin/d-feet")))
3823 (wrap-program prog
3824 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3825 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3826 #t))))))
a3856b2c
SB
3827 (native-inputs
3828 `(("intltool" ,intltool)
3829 ("itstool" ,itstool)
3830 ("pkg-config" ,pkg-config)
3831 ("python-pep8" ,python-pep8)
3832 ("xmllint" ,libxml2)
3833 ("xorg-server" ,xorg-server)))
3834 (inputs
3835 `(("gobject-introspection" ,gobject-introspection)
3836 ("gtk+" ,gtk+)
3837 ("python" ,python-wrapper)
3838 ("python-pygobject" ,python-pygobject)))
3839 (home-page "https://wiki.gnome.org/Apps/DFeet")
3840 (synopsis "D-Bus debugger")
3841 (description
3842 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3843of running programs and invoke methods on those interfaces.")
3844 (license license:gpl2+)))
c3b97bd9
SB
3845
3846(define-public yelp-xsl
3847 (package
3848 (name "yelp-xsl")
27ad5743 3849 (version "3.20.1")
c3b97bd9
SB
3850 (source (origin
3851 (method url-fetch)
3852 (uri (string-append "mirror://gnome/sources/" name "/"
3853 (version-major+minor version) "/"
3854 name "-" version ".tar.xz"))
3855 (sha256
3856 (base32
27ad5743 3857 "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
c3b97bd9
SB
3858 (build-system gnu-build-system)
3859 (native-inputs
3860 `(("intltool" ,intltool)
3861 ("itstool" ,itstool)
3862 ("xmllint" ,libxml2)))
3863 (home-page "https://wiki.gnome.org/Apps/Yelp")
3864 (synopsis "XSL stylesheets for Yelp")
3865 (description
3866 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3867to format Docbook and Mallard documents.")
3868 (license license:gpl2+)))
de3d612a
SB
3869
3870(define-public yelp
3871 (package
3872 (name "yelp")
491cc0dc 3873 (version "3.22.0")
de3d612a
SB
3874 (source (origin
3875 (method url-fetch)
3876 (uri (string-append "mirror://gnome/sources/" name "/"
3877 (version-major+minor version) "/"
3878 name "-" version ".tar.xz"))
3879 (sha256
3880 (base32
491cc0dc 3881 "13kpi0qmnfx2xwizyhmf5i5xaw9ckcn1k7v0289p7als4dybf5l6"))))
de3d612a
SB
3882 (build-system glib-or-gtk-build-system)
3883 (native-inputs
3884 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3885 ("intltool" ,intltool)
3886 ("itstool" ,itstool)
3887 ("pkg-config" ,pkg-config)))
3888 (propagated-inputs
3889 `(("dconf" ,dconf)))
3890 (inputs
ad1b7d8b
SB
3891 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3892 ("libxslt" ,libxslt)
de3d612a 3893 ("sqlite" ,sqlite)
4c28ca1d
SB
3894 ("webkitgtk" ,webkitgtk)
3895 ("yelp-xsl" ,yelp-xsl)))
de3d612a
SB
3896 (home-page "https://wiki.gnome.org/Apps/Yelp")
3897 (synopsis "GNOME help browser")
3898 (description
3899 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3900man, info, and HTML documents. It can locate documents according to the
3901freedesktop.org help system specification.")
3902 (license license:gpl2+)))
122d0d10
SB
3903
3904(define-public yelp-tools
3905 (package
3906 (name "yelp-tools")
50695955 3907 (version "3.18.0")
122d0d10
SB
3908 (source (origin
3909 (method url-fetch)
3910 (uri (string-append "mirror://gnome/sources/" name "/"
3911 (version-major+minor version) "/"
3912 name "-" version ".tar.xz"))
3913 (sha256
3914 (base32
50695955 3915 "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
122d0d10
SB
3916 (build-system gnu-build-system)
3917 (native-inputs
3918 `(("pkg-config" ,pkg-config)))
3919 (propagated-inputs
3920 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3921 `(("itstool" ,itstool)
3922 ("xmllint" ,libxml2)
3923 ("xsltproc" ,libxslt)))
3924 (inputs
3925 `(("yelp-xsl" ,yelp-xsl)))
3926 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3927 (synopsis "Yelp documentation tools")
3928 (description
3929 "Yelp-tools is a collection of scripts and build utilities to help create,
3930manage, and publish documentation for Yelp and the web. Most of the heavy
3931lifting is done by packages like yelp-xsl and itstool. This package just
3932wraps things up in a developer-friendly way.")
3933 (license license:gpl2+)))
af8f9f23
RW
3934
3935(define-public libgee
3936 (package
3937 (name "libgee")
afd8e16b 3938 (version "0.20.0")
af8f9f23
RW
3939 (source (origin
3940 (method url-fetch)
3941 (uri (string-append "mirror://gnome/sources/" name "/"
3942 (version-major+minor version) "/"
3943 name "-" version ".tar.xz"))
3944 (sha256
3945 (base32
afd8e16b 3946 "1fy24dr8imrjlmsqj1syn0gi139gba6hwk3j5vd6sr3pxniqnc11"))))
af8f9f23
RW
3947 (build-system gnu-build-system)
3948 (arguments
3949 `(#:phases
3950 (modify-phases %standard-phases
3951 (add-after 'unpack 'fix-introspection-install-dir
3952 (lambda* (#:key outputs #:allow-other-keys)
3953 (let ((out (assoc-ref outputs "out")))
3954 (substitute* "gee/Makefile.in"
3955 (("@INTROSPECTION_GIRDIR@")
3956 (string-append out "/share/gir-1.0/"))
3957 (("@INTROSPECTION_TYPELIBDIR@")
3958 (string-append out "/lib/girepository-1.0/")))))))))
3959 (native-inputs
3960 `(("glib" ,glib "bin")
3961 ("pkg-config" ,pkg-config)))
3962 (inputs
3963 `(("glib" ,glib)
3964 ("gobject-introspection" ,gobject-introspection)))
3965 (home-page "https://wiki.gnome.org/Projects/Libgee")
3966 (synopsis "GObject collection library")
3967 (description
3968 "Libgee is a utility library providing GObject-based interfaces and
3969classes for commonly used data structures.")
3970 (license license:lgpl2.1+)))
b0f9c4b8
RW
3971
3972(define-public gexiv2
3973 (package
3974 (name "gexiv2")
b7c0c756 3975 (version "0.10.6")
b0f9c4b8
RW
3976 (source (origin
3977 (method url-fetch)
3978 (uri (string-append "mirror://gnome/sources/" name "/"
3979 (version-major+minor version) "/"
3980 name "-" version ".tar.xz"))
3981 (sha256
3982 (base32
b7c0c756 3983 "09aqsnpah71p9gx0ap2px2dyanrs7jmkkar6q114n9b7js8qh9qk"))))
b0f9c4b8
RW
3984 (build-system gnu-build-system)
3985 (native-inputs
3986 `(("glib" ,glib "bin")
3987 ("pkg-config" ,pkg-config)))
3988 (propagated-inputs
3989 ;; Listed in "Requires" section of gexiv2.pc
3990 `(("exiv2" ,exiv2)))
3991 (inputs
3992 `(("glib" ,glib)
3993 ("gobject-introspection" ,gobject-introspection)))
3994 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3995 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3996 (description
3997 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3998allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3999metadata in photo and video files of various formats.")
4000 (license license:gpl2+)))
fed5a689
RW
4001
4002(define-public shotwell
4003 (package
4004 (name "shotwell")
b5ed0b9b 4005 (version "0.25.5")
fed5a689
RW
4006 (source (origin
4007 (method url-fetch)
4008 (uri (string-append "mirror://gnome/sources/" name "/"
4009 (version-major+minor version) "/"
4010 name "-" version ".tar.xz"))
4011 (sha256
4012 (base32
b5ed0b9b 4013 "10pv3v789hky8h7ladqzzmgvkmgy3c41n4xz0nnyjmpycwl26g29"))))
fed5a689 4014 (build-system glib-or-gtk-build-system)
735b8db6
TGR
4015 (propagated-inputs
4016 `(("dconf" ,dconf)))
fed5a689
RW
4017 (native-inputs
4018 `(("pkg-config" ,pkg-config)
f819c21d 4019 ("itstool" ,itstool)
b94a6ca0 4020 ("gettext" ,gettext-minimal)
77e9c993 4021 ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
735b8db6
TGR
4022 ("itstool" ,itstool)
4023 ("vala" ,vala)))
fed5a689 4024 (inputs
735b8db6
TGR
4025 `(("glib:bin" ,glib "bin")
4026 ("gstreamer" ,gstreamer)
fed5a689 4027 ("gst-plugins-base" ,gst-plugins-base)
fed5a689
RW
4028 ("libgee" ,libgee)
4029 ("gexiv2" ,gexiv2)
4030 ("libraw" ,libraw)
4031 ("json-glib" ,json-glib)
7108425c 4032 ("webkitgtk" ,webkitgtk)
fed5a689
RW
4033 ("sqlite" ,sqlite)
4034 ("libsoup" ,libsoup)
4035 ("libxml2" ,libxml2)
fed5a689 4036 ("libgudev" ,libgudev)
522fc32e
LF
4037 ("libgphoto2" ,libgphoto2)
4038 ("gcr" ,gcr)))
fed5a689
RW
4039 (home-page "https://wiki.gnome.org/Apps/Shotwell")
4040 (synopsis "Photo manager for GNOME 3")
4041 (description
4042 "Shotwell is a digital photo manager designed for the GNOME desktop
4043environment. It allows you to import photos from disk or camera, organize
4044them by keywords and events, view them in full-window or fullscreen mode, and
4045share them with others via social networking and more.")
4046 (license license:lgpl2.1+)))
293ff8b2
DT
4047
4048(define-public file-roller
4049 (package
4050 (name "file-roller")
e62a38d4 4051 (version "3.24.1")
293ff8b2
DT
4052 (source (origin
4053 (method url-fetch)
4054 (uri (string-append "mirror://gnome/sources/" name "/"
4055 (version-major+minor version) "/"
4056 name "-" version ".tar.xz"))
4057 (sha256
4058 (base32
e62a38d4 4059 "0fkz9h9a6149crmf6311fsqlmv9wyrxk86470vxib941ppl4a581"))))
293ff8b2 4060 (build-system glib-or-gtk-build-system)
c282c55d
SB
4061 (arguments
4062 '(#:phases
4063 (modify-phases %standard-phases
4064 (add-before 'install 'skip-gtk-update-icon-cache
4065 (lambda _
4066 ;; Don't create 'icon-theme.cache'
4067 (substitute* (find-files "data" "^Makefile$")
4068 (("gtk-update-icon-cache") (which "true")))
4069 #t)))))
293ff8b2
DT
4070 (native-inputs
4071 `(("intltool" ,intltool)
4072 ("pkg-config" ,pkg-config)))
4073 ;; TODO: Add libnautilus.
4074 (inputs
4075 `(("gtk+" ,gtk+)
4076 ("gdk-pixbuf" ,gdk-pixbuf)
4077 ("json-glib" ,json-glib)
4078 ("libarchive" ,libarchive)
4079 ("libnotify" ,libnotify)
4080 ("nettle" ,nettle)
4081 ("itstool" ,itstool)
4082 ("libxml2" ,libxml2)))
4083 (synopsis "Graphical archive manager for GNOME")
4084 (description "File Roller is an archive manager for the GNOME desktop
4085environment that allows users to view, unpack, and create compressed archives
4086such as gzip tarballs.")
4087 (home-page "http://fileroller.sourceforge.net/")
4088 (license license:gpl2+)))
7ce49365
SB
4089
4090(define-public gnome-session
4091 (package
4092 (name "gnome-session")
17cf06c3 4093 (version "3.24.1")
7ce49365
SB
4094 (source (origin
4095 (method url-fetch)
4096 (uri (string-append "mirror://gnome/sources/" name "/"
4097 (version-major+minor version) "/"
4098 name "-" version ".tar.xz"))
4099 (sha256
4100 (base32
17cf06c3 4101 "1vkfjsgks9czajivcg3y1krzlnilv2cnzzbdc7wrasrriqilji1v"))))
2914af3c
AW
4102 (arguments
4103 '(#:phases
4104 (modify-phases %standard-phases
4105 (add-before 'configure 'pre-configure
4106 (lambda* (#:key outputs #:allow-other-keys)
4107 ;; Use elogind instead of systemd.
4108 (substitute* "configure"
4109 (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
4110 "libelogind")
4111 (("systemd") "elogind"))
4112 (substitute* "gnome-session/gsm-systemd.c"
4113 (("#include <systemd/sd-login.h>")
4114 "#include <elogind/sd-login.h>"))
4115 ;; Remove uses of the systemd journal.
4116 (substitute* "gnome-session/main.c"
4117 (("#ifdef HAVE_SYSTEMD") "#if 0"))
4118 (substitute* "gnome-session/gsm-manager.c"
4119 (("#ifdef HAVE_SYSTEMD") "#if 0"))
803ab416
SB
4120 (substitute* "gnome-session/gsm-autostart-app.c"
4121 (("#ifdef HAVE_SYSTEMD") "#if 0"))
a0d7baaf
LC
4122 #t))
4123 (add-after 'install 'wrap-gnome-session
4124 (lambda* (#:key inputs outputs #:allow-other-keys)
4125 ;; Make sure 'gnome-session' finds the 'gsettings' program.
4126 (let ((glib (assoc-ref inputs "glib:bin"))
4127 (out (assoc-ref outputs "out")))
4128 (wrap-program (string-append out "/bin/gnome-session")
4129 `("PATH" ":" prefix (,(string-append glib "/bin"))))
6cbc8d57
LC
4130 #t)))
4131 (add-after 'install 'disable-hardware-acceleration-check
4132 (lambda* (#:key outputs #:allow-other-keys)
4133 ;; Do not abort if hardware acceleration is missing. This allows
4134 ;; GNOME to run in QEMU and on low-end devices.
4135 (let ((out (assoc-ref outputs "out")))
4136 (substitute* (string-append out
4137 "/share/xsessions/gnome.desktop")
4138 (("gnome-session")
4139 "gnome-session --disable-acceleration-check"))
a0d7baaf 4140 #t))))
6cbc8d57 4141
2914af3c
AW
4142 #:configure-flags
4143 '("--enable-elogind")))
ba3cb5ab 4144 (build-system glib-or-gtk-build-system)
7ce49365
SB
4145 (native-inputs
4146 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4147 ("pkg-config" ,pkg-config)
4148 ("intltool" ,intltool)
4149 ("xsltproc" ,libxslt)))
4150 (inputs
2914af3c
AW
4151 `(("elogind" ,elogind)
4152 ("gnome-desktop" ,gnome-desktop)
ba3cb5ab 4153 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
7ce49365
SB
4154 ("gtk+" ,gtk+)
4155 ("json-glib" ,json-glib)
4156 ("libsm" ,libsm)
4157 ("libxcomposite" ,libxcomposite)
4158 ("libxtst" ,libxtst)
4159 ("mesa" ,mesa)
4160 ("upower" ,upower)
4161 ("xtrans" ,xtrans)))
4162 (synopsis "Session manager for GNOME")
4163 (description
4164 "This package contains the GNOME session manager, as well as a
4165configuration program to choose applications starting on login.")
4166 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
4167 (license license:gpl2+)))
f47ba77e
SB
4168
4169(define-public gjs
4170 (package
4171 (name "gjs")
144f94d0 4172 (version "1.48.3")
f47ba77e
SB
4173 (source (origin
4174 (method url-fetch)
4175 (uri (string-append "mirror://gnome/sources/" name "/"
4176 (version-major+minor version) "/"
4177 name "-" version ".tar.xz"))
4178 (sha256
4179 (base32
144f94d0 4180 "0cqgv460wfhwkw6j1h46v6bg29bycg6dfl7c5rv0lfcqmmw7v6v6"))))
f47ba77e
SB
4181 (build-system gnu-build-system)
4182 (arguments
4183 '(#:phases
4184 (modify-phases %standard-phases
4185 (add-before
4186 'check 'pre-check
4187 (lambda _
fc119619
MW
4188 ;; The test suite requires a running X server.
4189 (system "Xvfb :1 &")
4190 (setenv "DISPLAY" ":1")
4191
f47ba77e
SB
4192 ;; For the missing /etc/machine-id.
4193 (setenv "DBUS_FATAL_WARNINGS" "0")
ba666b07 4194
144f94d0
KK
4195 ;; Our mozjs-38 package does not compile the required Intl API
4196 ;; support for these failing tests.
4197 (substitute* "installed-tests/js/testLocale.js"
4198 ((".*toBeDefined.*") "")
4199 ((".*expect\\(datestr\\).*") ""))
f47ba77e
SB
4200 #t)))))
4201 (native-inputs
4202 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
4203 ("pkg-config" ,pkg-config)
4204 ("xmllint" ,libxml2)
4205 ;; For testing
4206 ("dbus-launch" ,dbus)
4207 ("uuidgen" ,util-linux)
4208 ("xvfb" ,xorg-server)))
4209 (propagated-inputs
4210 ;; These are all in the Requires.private field of gjs-1.0.pc.
144f94d0
KK
4211 `(("cairo" ,cairo)
4212 ("gobject-introspection" ,gobject-introspection)
4213 ("mozjs" ,mozjs-38)))
f47ba77e
SB
4214 (inputs
4215 `(("gtk+" ,gtk+)
4216 ("readline" ,readline)))
4217 (synopsis "Javascript bindings for GNOME")
4218 (home-page "http://live.gnome.org/Gjs")
4219 (description
4220 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
4221javascript engine and the GObject introspection framework.")
4222 (license license:gpl2+)))
329d731b
DH
4223
4224(define-public gedit
4225 (package
4226 (name "gedit")
9beae2a2 4227 (version "3.22.0")
329d731b
DH
4228 (source (origin
4229 (method url-fetch)
4230 (uri (string-append "mirror://gnome/sources/" name "/"
4231 (version-major+minor version) "/"
4232 name "-" version ".tar.xz"))
4233 (sha256
4234 (base32
9beae2a2 4235 "0i9z5d31vibb3dd329gwvyga38zq5k1a2glcdq7m93ycbl5mlfq6"))))
329d731b
DH
4236 (build-system glib-or-gtk-build-system)
4237 (arguments
33cd9bef
SB
4238 `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet
4239 #:phases
329d731b
DH
4240 (modify-phases %standard-phases
4241 (add-after
4242 'install 'wrap-gedit
4243 (lambda* (#:key inputs outputs #:allow-other-keys)
4244 (let ((out (assoc-ref outputs "out"))
4245 (gtksourceview (assoc-ref inputs "gtksourceview"))
afc25242
SB
4246 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4247 (python-path (getenv "PYTHONPATH")))
329d731b 4248 (wrap-program (string-append out "/bin/gedit")
afc25242 4249 ;; For plugins.
329d731b 4250 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
afc25242 4251 `("PYTHONPATH" ":" prefix (,python-path))
329d731b
DH
4252 ;; For language-specs.
4253 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
4254 "/share")))))
4255 #t)))))
4256 (propagated-inputs
4257 `(("dconf" ,dconf)))
4258 (native-inputs
4259 `(("intltool" ,intltool)
b3546174 4260 ("itstool" ,itstool)
329d731b
DH
4261 ("gobject-introspection" ,gobject-introspection)
4262 ("pkg-config" ,pkg-config)))
4263 (inputs
4264 `(("glib" ,glib)
4265 ("gtk+" ,gtk+)
4266 ("gtksourceview" ,gtksourceview)
4267 ("libpeas" ,libpeas)
4268 ("libxml2" ,libxml2)
329d731b
DH
4269 ("iso-codes" ,iso-codes)
4270 ("python-pygobject" ,python-pygobject)
4271 ("python" ,python)
4272 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4273 ("libx11" ,libx11)
4274 ("vala" ,vala)
4275 ("adwaita-icon-theme" ,adwaita-icon-theme)
4276 ("libsoup" ,libsoup)
4277 ("gnome-desktop" ,gnome-desktop)))
4278 (home-page "https://wiki.gnome.org/Apps/Gedit")
4279 (synopsis "GNOME text editor")
4280 (description "While aiming at simplicity and ease of use, gedit is a
4281powerful general purpose text editor.")
4282 (license license:gpl2+)))
b7179363
SB
4283
4284(define-public zenity
4285 (package
4286 (name "zenity")
ee0f4e78 4287 (version "3.22.0")
b7179363
SB
4288 (source (origin
4289 (method url-fetch)
4290 (uri (string-append "mirror://gnome/sources/" name "/"
4291 (version-major+minor version) "/"
4292 name "-" version ".tar.xz"))
4293 (sha256
4294 (base32
ee0f4e78 4295 "0rp4l0vgyjhlkpk2imfwf7b05m1qxjrm8n8kp1rv70ykf48gmk8y"))))
b7179363
SB
4296 (build-system gnu-build-system)
4297 (native-inputs
b94a6ca0 4298 `(("gettext" ,gettext-minimal)
b7179363
SB
4299 ("itstool" ,itstool)
4300 ("pkg-config" ,pkg-config)))
4301 (inputs
4302 `(("libnotify" ,libnotify)
4303 ("webkitgtk" ,webkitgtk)))
4304 (synopsis "Display graphical dialog boxes from shell scripts")
4305 (home-page "http://www.gnome.org")
4306 (description
4307 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
4308to display dialog boxes from the commandline and shell scripts.")
4309 (license license:lgpl2.0+)))
60c3627c
SB
4310
4311(define-public mutter
4312 (package
4313 (name "mutter")
86c44e72 4314 (version "3.24.1")
60c3627c 4315 (source (origin
86c44e72
KK
4316 (method url-fetch)
4317 (uri (string-append "mirror://gnome/sources/" name "/"
4318 (version-major+minor version) "/"
4319 name "-" version ".tar.xz"))
60c3627c
SB
4320 (sha256
4321 (base32
86c44e72
KK
4322 "093ax3ng7fv28qfkxpbvcx67mfiizwj5b4s17m5cmijwf3wpgamc"))))
4323 ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
4324 ;; versions of cogl and clutter. As a result, many of the inputs,
4325 ;; propagated-inputs, and configure flags used in cogl and clutter are
4326 ;; needed here as well.
60c3627c
SB
4327 (build-system gnu-build-system)
4328 (arguments
4329 '(#:configure-flags
4330 ;; XXX: build fails with [-Werror]:
4331 ;; backends/meta-cursor-renderer.c:112:5: error:
4332 ;; implicit declaration of function ?roundf?
a88d5a0c
MW
4333 (list "--enable-compile-warnings=minimum"
4334
86c44e72 4335 "--enable-native-backend"
a88d5a0c
MW
4336
4337 ;; The following flags are needed for the bundled clutter
4338 "--enable-x11-backend=yes"
4339
4340 ;; the remaining flags are needed for the bundled cogl
4341 "--enable-cogl-gst"
4342 (string-append "--with-gl-libname="
4343 (assoc-ref %build-inputs "mesa")
f23052a6
DC
4344 "/lib/libGL.so"))
4345 #:phases
4346 (modify-phases %standard-phases
86c44e72
KK
4347 ;; Replace references to systemd libraries to elogind references.
4348 (add-before 'configure 'use-elogind
4349 (lambda _
4350 (substitute* (list "configure"
4351 "src/backends/native/meta-launcher.c"
4352 "src/core/main.c")
4353 (("systemd") "elogind"))
4354 #t)))))
60c3627c
SB
4355 (native-inputs
4356 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4357 ("gobject-introspection" ,gobject-introspection)
4358 ("intltool" ,intltool)
f23052a6
DC
4359 ("pkg-config" ,pkg-config)
4360 ;; For git build
4361 ("autoconf" ,autoconf)
4362 ("automake" ,automake)
4363 ("libtool" ,libtool)))
60c3627c 4364 (propagated-inputs
a88d5a0c
MW
4365 `(;; libmutter.pc refers to these:
4366 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4367 ("gtk+" ,gtk+)
4368 ;; mutter-clutter-1.0.pc and mutter-cogl-1.0.pc refer to these:
4369 ("atk" ,atk)
4370 ("cairo" ,cairo)
4371 ("gdk-pixbuf" ,gdk-pixbuf)
4372 ("glib" ,glib)
4373 ("glib" ,glib)
60c3627c 4374 ("gtk+" ,gtk+)
a88d5a0c
MW
4375 ("json-glib" ,json-glib)
4376 ("libinput" ,libinput)
4377 ("libx11" ,libx11)
4378 ("libxcomposite" ,libxcomposite)
4379 ("libxdamage" ,libxdamage)
4380 ("libxext" ,libxext)
4381 ("libxfixes" ,libxfixes)
4382 ("libxkbcommon" ,libxkbcommon)
4383 ("libxrandr" ,libxrandr)
4384 ("mesa" ,mesa)
4385 ("pango" ,pango)
4386 ("udev" ,eudev)
a88d5a0c 4387 ("xinput" ,xinput)))
60c3627c 4388 (inputs
86c44e72
KK
4389 `(("elogind" ,elogind)
4390 ("gnome-desktop" ,gnome-desktop)
60c3627c 4391 ("libcanberra-gtk" ,libcanberra)
a88d5a0c 4392 ("libgudev" ,libgudev)
60c3627c
SB
4393 ("libice" ,libice)
4394 ("libsm" ,libsm)
60c3627c 4395 ("libxkbfile" ,libxkbfile)
a88d5a0c 4396 ("libxrandr" ,libxrandr)
86c44e72 4397 ("libxtst" ,libxtst)
60c3627c
SB
4398 ("startup-notification" ,startup-notification)
4399 ("upower-glib" ,upower)
4400 ("xkeyboard-config" ,xkeyboard-config)
4401 ("zenity" ,zenity)))
4402 (synopsis "Window and compositing manager")
4403 (home-page "http://www.gnome.org")
4404 (description
4405 "Mutter is a window and compositing manager that displays and manages your
4406desktop via OpenGL. Mutter combines a sophisticated display engine using the
4407Clutter toolkit with solid window-management logic inherited from the Metacity
4408window manager.")
86c44e72 4409 (license license:gpl2+)))
685cee87
SB
4410
4411(define-public gnome-online-accounts
4412 (package
4413 (name "gnome-online-accounts")
6ebccb84 4414 (version "3.24.0")
685cee87
SB
4415 (source (origin
4416 (method url-fetch)
4417 (uri (string-append "mirror://gnome/sources/" name "/"
4418 (version-major+minor version) "/"
4419 name "-" version ".tar.xz"))
4420 (sha256
4421 (base32
6ebccb84 4422 "0yy10znqj278lnhdiqjcqxrwwv5c1jdjd0ncjbbdyh8n0q77hbwy"))))
685cee87
SB
4423 (build-system glib-or-gtk-build-system)
4424 (native-inputs
4425 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4426 ("gobject-introspection" ,gobject-introspection)
4427 ("intltool" ,intltool)
4428 ("pkg-config" ,pkg-config)
4429 ("xsltproc" ,libxslt)))
4430 (propagated-inputs
4431 `(("glib" ,glib) ; required by goa-1.0.pc
4432 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
4433 (inputs
4434 `(("docbook-xsl" ,docbook-xsl)
4435 ("json-glib" ,json-glib)
4436 ("libsecret" ,libsecret)
4437 ("rest" ,rest)
4438 ("telepathy-glib" ,telepathy-glib)
4439 ("webkitgtk" ,webkitgtk)))
4440 (synopsis "Single sign-on framework for GNOME")
4441 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
4442 (description
4443 "GNOME Online Accounts provides interfaces so that applications and
4444libraries in GNOME can access the user's online accounts. It has providers for
4445Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
4446Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
4447 (license license:lgpl2.0+)))
df217748
SB
4448
4449(define-public evolution-data-server
4450 (package
4451 (name "evolution-data-server")
aab951cd 4452 (version "3.22.3")
df217748
SB
4453 (source (origin
4454 (method url-fetch)
4455 (uri (string-append "mirror://gnome/sources/" name "/"
4456 (version-major+minor version) "/"
4457 name "-" version ".tar.xz"))
4458 (sha256
4459 (base32
aab951cd 4460 "0kygd46s0is6i451bqykagrfx34wjvrgjbjyyszaabnppp1dyn0c"))))
df217748
SB
4461 (build-system gnu-build-system)
4462 (arguments
4463 '(;; XXX: fails with:
4464 ;; /Fixture/Calendar0: cleaning up pid xxxx
4465 ;; t status: 139)
4466 #:tests? #f
4467 #:configure-flags
4468 (let ((nss (assoc-ref %build-inputs "nss"))
4469 (nspr (assoc-ref %build-inputs "nspr")))
4470 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
4471 "--disable-google" ; disable Google Contacts support
c1387d36 4472 "--disable-google-auth" ; disable Google authentication
a73c1cf8 4473 "--enable-vala-bindings"
df217748
SB
4474 (string-append "--with-nspr-includes=" nspr "/include/nspr")
4475 (string-append "--with-nss-includes=" nss "/include/nss")
4476 (string-append "--with-nss-libs=" nss "/lib/nss")))
4477 #:phases
4478 (modify-phases %standard-phases
4479 (add-before 'check 'pre-check
4480 (lambda _
4481 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4482 (("/bin/rm") (which "rm")))
4483 #t)))))
4484 (native-inputs
4485 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4486 ("gobject-introspection" ,gobject-introspection)
4487 ("gperf" ,gperf)
4488 ("intltool" ,intltool)
4489 ("pkg-config" ,pkg-config)
a73c1cf8 4490 ("vala" ,vala)
df217748
SB
4491 ("python" ,python)))
4492 (propagated-inputs
4493 ;; These are all in the Requires field of .pc files.
4494 `(("gtk+" ,gtk+)
4495 ("libical" ,libical)
4496 ("libsecret" ,libsecret)
4497 ("libsoup" ,libsoup)
4498 ("nss" ,nss)
4499 ("sqlite" ,sqlite)))
4500 (inputs
4501 `(("bdb" ,bdb)
4502 ("gcr" ,gcr)
4503 ("gnome-online-accounts" ,gnome-online-accounts)
4504 ("libgweather" ,libgweather)))
4505 (synopsis "Store address books and calendars")
4506 (home-page "https://wiki.gnome.org/Apps/Evolution")
4507 (description
4508 "This package provides a unified backend for programs that work with
4509contacts, tasks, and calendar information. It was originally developed for
4510Evolution (hence the name), but is now used by other packages as well.")
4511 (license license:lgpl2.0)))
bd7dfafa
SB
4512
4513(define-public caribou
4514 (package
4515 (name "caribou")
fe964bb5 4516 (version "0.4.21")
bd7dfafa
SB
4517 (source (origin
4518 (method url-fetch)
4519 (uri (string-append "mirror://gnome/sources/" name "/"
4520 (version-major+minor version) "/"
4521 name "-" version ".tar.xz"))
4522 (sha256
4523 (base32
fe964bb5 4524 "0mfychh1q3dx0b96pjz9a9y112bm9yqyim40yykzxx1hppsdjhww"))))
bd7dfafa
SB
4525 (build-system glib-or-gtk-build-system)
4526 (arguments
4527 '(#:phases
4528 (modify-phases %standard-phases
4529 (add-before
4530 'build 'pre-build
4531 (lambda* (#:key outputs #:allow-other-keys)
4532 (let ((out (assoc-ref outputs "out")))
4533 ;; Use absolute shared library path in Caribou-1.0.typelib.
4534 (substitute* "libcaribou/Makefile"
4535 (("--shared-library=libcaribou.so")
4536 (string-append "--shared-library="
4537 out "/lib/libcaribou.so")))
4538 #t)))
4539 (add-after 'install 'wrap-programs
4540 (lambda* (#:key outputs #:allow-other-keys)
4541 (let* ((out (assoc-ref outputs "out"))
4542 (python-path (getenv "PYTHONPATH"))
4543 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4544 (for-each
4545 (lambda (prog)
4546 (wrap-program prog
4547 `("PYTHONPATH" ":" prefix (,python-path))
4548 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4549 (list (string-append out "/bin/caribou-preferences")
4550 (string-append out "/libexec/antler-keyboard"))))
4551 #t)))))
4552 (native-inputs
4553 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4554 ("gobject-introspection" ,gobject-introspection)
4555 ("intltool" ,intltool)
4556 ("pkg-config" ,pkg-config)
4557 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4558 ("vala" ,vala)
4559 ("xsltproc" ,libxslt)))
4560 (propagated-inputs
4561 ;; caribou-1.0.pc refers to all these.
4562 `(("libgee" ,libgee)
4563 ("libxklavier" ,libxklavier)
4564 ("libxtst" ,libxtst)
4565 ("gtk+" ,gtk+)))
4566 (inputs
4567 `(("clutter" ,clutter)
4568 ("dconf" ,dconf)
4569 ("gtk+-2" ,gtk+-2)
4570 ("python-pygobject" ,python2-pygobject)))
4571 (synopsis "Text entry and UI navigation application")
4572 (home-page "https://wiki.gnome.org/Projects/Caribou")
4573 (description
4574 "Caribou is an input assistive technology intended for switch and pointer
4575users.")
4576 (license license:lgpl2.1)))
ba5dd105 4577
ba5dd105
SB
4578(define-public network-manager
4579 (package
4580 (name "network-manager")
d04687dc 4581 (version "1.6.2")
ba5dd105
SB
4582 (source (origin
4583 (method url-fetch)
4584 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4585 (version-major+minor version) "/"
4586 "NetworkManager-" version ".tar.xz"))
4587 (sha256
4588 (base32
d04687dc 4589 "1y96k82rav8if334jl500zc024d210c4pgprh94yqyz3rmanyaxj"))
fd070f35
CM
4590 (snippet
4591 '(begin
4592 (use-modules (guix build utils))
4593 (substitute* "configure"
4594 ;; Replace libsystemd-login with libelogind.
4595 (("libsystemd-login") "libelogind"))
4596 (substitute* "src/devices/wwan/nm-modem-manager.c"
4597 (("systemd") "elogind"))
4598 (substitute* "src/nm-session-monitor.c"
4599 (("systemd") "elogind"))
4600 (substitute* "./src/nm-logging.c"
4601 (("systemd") "elogind"))))))
ba5dd105
SB
4602 (build-system gnu-build-system)
4603 (outputs '("out"
4604 "doc")) ; 8 MiB of gtk-doc HTML
4605 (arguments
4606 '(#:configure-flags
4607 (let ((out (assoc-ref %outputs "out"))
4608 (doc (assoc-ref %outputs "doc"))
4609 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4610 "/sbin/dhclient")))
fd070f35
CM
4611 (list "--with-systemd-logind=yes" ;In GuixSD, this is provided by elogind.
4612 "--with-consolekit=no"
4613 "--with-crypto=gnutls"
ba5dd105
SB
4614 "--disable-config-plugin-ibft"
4615 "--sysconfdir=/etc"
4616 "--localstatedir=/var"
4617 (string-append "--with-udev-dir="
4618 out "/lib/udev")
4619 (string-append "--with-dbus-sys-dir="
4620 out "/etc/dbus-1/system.d")
4621 (string-append "--with-html-dir="
4622 doc "/share/gtk-doc/html")
4623 (string-append "--with-dhclient=" dhclient)))
4624 #:phases
4625 (modify-phases %standard-phases
b4f59d87
AW
4626 (add-before 'configure 'pre-configure
4627 (lambda _
4628 ;; These tests try to test aspects of network-manager's
4629 ;; functionality within restricted containers, but they don't
4630 ;; cope with being already in the Guix build jail as that jail
4631 ;; lacks some features that they would like to proxy over (like
4632 ;; a /sys mount).
d04687dc
HG
4633 (substitute* '("Makefile.in")
4634 (("src/platform/tests/test-address-linux") " ")
4635 (("src/platform/tests/test-cleanup-linux") " ")
4636 (("src/platform/tests/test-link-linux") " ")
4637 (("src/platform/tests/test-route-linux") " ")
4638 (("src/devices/tests/test-arping") " ")
4639 (("src/devices/tests/test-lldp") " ")
4640 (("src/tests/test-route-manager-linux") " "))
b4f59d87 4641 #t))
ba5dd105
SB
4642 (add-before 'check 'pre-check
4643 (lambda _
4644 ;; For the missing /etc/machine-id.
4645 (setenv "DBUS_FATAL_WARNINGS" "0")
4646 #t))
4647 (replace 'install
4648 (lambda _
4649 (zero? (system* "make"
4650 "sysconfdir=/tmp"
142bdcbc
SB
4651 "rundir=/tmp"
4652 "statedir=/tmp"
d04687dc 4653 "nmstatedir=/tmp/nm"
ba5dd105 4654 "install")))))))
b93502d6
DC
4655 (propagated-inputs
4656 `(("glib" ,glib)))
ba5dd105
SB
4657 (native-inputs
4658 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4659 ("gobject-introspection" ,gobject-introspection)
d04687dc 4660 ("docbook-xsl" ,docbook-xsl)
ba5dd105 4661 ("intltool" ,intltool)
d04687dc
HG
4662 ("libxslt" ,libxslt)
4663 ("libxml2" ,libxml2)
ba5dd105
SB
4664 ("pkg-config" ,pkg-config)
4665 ;; For testing.
4666 ("python" ,python-wrapper)
4667 ("python-dbus" ,python-dbus)
4668 ("python-pygobject" ,python-pygobject)))
4669 (inputs
4670 `(("dbus-glib" ,dbus-glib)
4671 ("dnsmasq" ,dnsmasq)
4672 ("gnutls" ,gnutls)
4673 ("iptables" ,iptables)
4674 ("isc-dhcp" ,isc-dhcp)
d04687dc 4675 ("jansson" ,jansson)
ba5dd105
SB
4676 ("libgcrypt" ,libgcrypt)
4677 ("libgudev" ,libgudev)
4678 ("libndp" ,libndp)
4679 ("libnl" ,libnl)
4680 ("libsoup" ,libsoup)
142bdcbc 4681 ("modem-manager" ,modem-manager)
ba5dd105
SB
4682 ("polkit" ,polkit)
4683 ("ppp" ,ppp)
4684 ("readline" ,readline)
fd070f35
CM
4685 ("util-linux" ,util-linux)
4686 ("elogind" ,elogind)))
ba5dd105
SB
4687 (synopsis "Network connection manager")
4688 (home-page "http://www.gnome.org/projects/NetworkManager/")
4689 (description
4690 "NetworkManager is a system network service that manages your network
4691devices and connections, attempting to keep active network connectivity when
4692available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4693devices, and provides VPN integration with a variety of different VPN
4694services.")
29d2f451
LC
4695 (license license:gpl2+)
4696 (properties '((upstream-name . "NetworkManager")))))
4d62a9d3 4697
e5e1df4d
DC
4698(define-public mobile-broadband-provider-info
4699 (package
4700 (name "mobile-broadband-provider-info")
4701 (version "20151214")
4702 (source (origin
4703 (method url-fetch)
4704 (uri (string-append
4705 "mirror://gnome/sources/"
4706 "mobile-broadband-provider-info/" version "/"
4707 "mobile-broadband-provider-info-" version ".tar.xz"))
4708 (sha256
4709 (base32
4710 "1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a"))))
4711 (build-system gnu-build-system)
4712 (arguments
4713 `(#:tests? #f)) ; No tests
4714 (home-page "https://wiki.gnome.org/Projects/NetworkManager")
4715 (synopsis "Database of broadband connection configuration")
4716 (description "Database of broadband connection configuration.")
4717 (license license:public-domain)))
4718
4d62a9d3
SB
4719(define-public network-manager-applet
4720 (package
4721 (name "network-manager-applet")
2116bfb3 4722 (version "1.4.2")
4d62a9d3
SB
4723 (source (origin
4724 (method url-fetch)
4725 (uri (string-append "mirror://gnome/sources/" name "/"
4726 (version-major+minor version) "/"
4727 name "-" version ".tar.xz"))
4728 (sha256
4729 (base32
2116bfb3 4730 "16a43sl9aijmvxbb08hbjqyjnlshj8dckycbgi9nm333fr47n6s3"))))
4d62a9d3 4731 (build-system glib-or-gtk-build-system)
2116bfb3 4732 ;; TODO: WWAN support supposedly requires an update of glibmm which in turn
4733 ;; requires an update of the its dependencies (glib and others).
4734 (arguments '(#:configure-flags '("--disable-migration"
4735 "--without-wwan")))
4d62a9d3
SB
4736 (native-inputs
4737 `(("intltool" ,intltool)
4738 ("gobject-introspection" ,gobject-introspection)
4739 ("pkg-config" ,pkg-config)))
4740 (propagated-inputs
4741 ;; libnm-gtk.pc refers to all these.
4742 `(("dbus-glib" ,dbus-glib)
4743 ("gtk+" ,gtk+)
4744 ("network-manager" ,network-manager)))
4745 (inputs
4746 `(("iso-codes" ,iso-codes)
4747 ("libgudev" ,libgudev)
4748 ("libnotify" ,libnotify)
2116bfb3 4749 ("libsecret" ,libsecret)
4750 ("jansson" ,jansson))) ;for team support
4d62a9d3
SB
4751 (synopsis "Applet for managing network connections")
4752 (home-page "http://www.gnome.org/projects/NetworkManager/")
4753 (description
4754 "This package contains a systray applet for NetworkManager. It displays
4755the available networks and allows users to easily switch between them.")
4756 (license license:gpl2+)))
56196594
RW
4757
4758(define-public libxml++
4759 (package
4760 (name "libxml++")
8344a85e 4761 (version "3.0.1")
56196594
RW
4762 (source (origin
4763 (method url-fetch)
4764 (uri (string-append "mirror://gnome/sources/" name "/"
4765 (version-major+minor version) "/"
4766 name "-" version ".tar.xz"))
4767 (sha256
4768 (base32
8344a85e 4769 "19kik79fmg61nv0by0a5f9wchrcfjwzvih4v2waw01hqflhqvp0r"))))
56196594
RW
4770 (build-system gnu-build-system)
4771 ;; libxml++-3.0.pc refers to all these.
4772 (propagated-inputs
4773 `(("libxml2" ,libxml2)
4774 ("glibmm" ,glibmm)))
4775 (native-inputs
4776 `(("perl" ,perl)
4777 ("pkg-config" ,pkg-config)))
4778 (home-page "http://libxmlplusplus.sourceforge.net/")
4779 (synopsis "C++ wrapper for XML parser library libxml2")
4780 (description
4781 "This package provides a C++ wrapper for the XML parser library
4782libxml2.")
4783 (license license:lgpl2.1+)))
df12f04a 4784
b61d9627
AW
4785(define-public libxml++-2
4786 (package
4787 (inherit libxml++)
4788 (name "libxml++")
4789 (version "2.40.1")
4790 (source (origin
4791 (method url-fetch)
4792 (uri (string-append "mirror://gnome/sources/" name "/"
4793 (version-major+minor version) "/"
4794 name "-" version ".tar.xz"))
4795 (sha256
4796 (base32
4797 "1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a"))))))
4798
df12f04a
SB
4799(define-public gdm
4800 (package
4801 (name "gdm")
4edc6a9c 4802 (version "3.22.1")
df12f04a
SB
4803 (source (origin
4804 (method url-fetch)
4805 (uri (string-append "mirror://gnome/sources/" name "/"
4806 (version-major+minor version) "/"
4807 name "-" version ".tar.xz"))
4808 (sha256
4809 (base32
4edc6a9c 4810 "17wnsrv91mx14xp96wrc21g2hsjjc38yhbkw55kf7hk3yliychva"))))
df12f04a
SB
4811 (build-system gnu-build-system)
4812 (arguments
4813 '(#:configure-flags
4814 '("--without-plymouth")
4815 #:phases
4816 (modify-phases %standard-phases
4817 (add-before
4818 'configure 'pre-configure
4819 (lambda _
4820 ;; We don't have <systemd/sd-daemon.h>.
4821 (substitute* '("common/gdm-log.c"
4822 "daemon/gdm-server.c"
4823 "daemon/gdm-session-worker.c"
4824 "daemon/gdm-session-worker-job.c")
4825 (("#include <systemd/sd-daemon\\.h>") ""))
4826 ;; Use elogind for sd-login.
4827 (substitute* '("common/gdm-common.c"
4828 "daemon/gdm-manager.c"
4829 "libgdm/gdm-user-switching.c")
4830 (("#include <systemd/sd-login\\.h>")
4831 "#include <elogind/sd-login.h>"))
4832 ;; Avoid checking SYSTEMD using pkg-config.
4833 (setenv "SYSTEMD_CFLAGS" " ")
4834 (setenv "SYSTEMD_LIBS" "-lelogind")
4835 #t)))))
4836 (native-inputs
4837 `(("dconf" ,dconf)
4838 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4839 ("gobject-introspection" ,gobject-introspection)
4840 ("intltool" ,intltool)
4841 ("itstool" ,itstool)
4842 ("pkg-config" ,pkg-config)
4843 ("xmllint" ,libxml2)))
4844 (inputs
4845 `(("accountsservice" ,accountsservice)
4846 ("check" ,check) ; for testing
4847 ("elogind" ,elogind)
4848 ("gtk+" ,gtk+)
4849 ("iso-codes" ,iso-codes)
4850 ("libcanberra" ,libcanberra)
4851 ("linux-pam" ,linux-pam)))
4852 (synopsis "Display manager for GNOME")
4853 (home-page "http://wiki.gnome.org/Projects/GDM/")
4854 (description
4855 "GNOME Display Manager is a system service that is responsible for
4856providing graphical log-ins and managing local and remote displays.")
4857 (license license:gpl2+)))
8e1dd04f
SB
4858
4859(define-public libgtop
4860 (package
4861 (name "libgtop")
6206db89 4862 (version "2.36.0")
8e1dd04f
SB
4863 (source (origin
4864 (method url-fetch)
4865 (uri (string-append "mirror://gnome/sources/" name "/"
4866 (version-major+minor version) "/"
4867 name "-" version ".tar.xz"))
4868 (sha256
4869 (base32
6206db89 4870 "0ax17c7nplghxgsf8zl92nmhkbnggj62wwzl7nq00aqb2m6f7gqk"))))
8e1dd04f
SB
4871 (build-system gnu-build-system)
4872 (native-inputs
4873 `(("gobject-introspection" ,gobject-introspection)
4874 ("intltool" ,intltool)
4875 ("perl" ,perl)
4876 ("pkg-config" ,pkg-config)))
4877 (propagated-inputs
4878 `(("glib" ,glib))) ; required by libgtop-2.0.pc
4879 (synopsis "Portable system access library")
4880 (home-page "https://www.gnome.org/")
4881 (description
4882 "LibGTop is a library to get system specific data such as CPU and memory
4883usage and information about running processes.")
4884 (license license:gpl2+)))
b96c4260
SB
4885
4886(define-public gnome-bluetooth
4887 (package
4888 (name "gnome-bluetooth")
f8cb2fbf 4889 (version "3.20.1")
b96c4260
SB
4890 (source (origin
4891 (method url-fetch)
4892 (uri (string-append "mirror://gnome/sources/" name "/"
4893 (version-major+minor version) "/"
4894 name "-" version ".tar.xz"))
4895 (sha256
4896 (base32
f8cb2fbf 4897 "1zlqcz6jz4vzzr8gd1678i9s4015kiwcpr5szrwz4kmryfsm147a"))))
b96c4260
SB
4898 (build-system glib-or-gtk-build-system)
4899 (native-inputs
4900 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
4901 ("gobject-introspection" ,gobject-introspection)
4902 ("intltool" ,intltool)
4903 ("pkg-config" ,pkg-config)
4904 ("xmllint" ,libxml2)))
4905 (propagated-inputs
4906 ;; gnome-bluetooth-1.0.pc refers to all these.
4907 `(("gtk+" ,gtk+)
4908 ("udev" ,eudev)))
4909 (inputs
4910 `(("libcanberra" ,libcanberra)
4911 ("libnotify" ,libnotify)))
4912 (synopsis "GNOME Bluetooth subsystem")
4913 (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth")
4914 (description
4915 "This package contains tools for managing and manipulating Bluetooth
4916devices using the GNOME desktop.")
4917 (license license:lgpl2.1+)))
b645146f
SB
4918
4919(define-public gnome-control-center
4920 (package
4921 (name "gnome-control-center")
a158cfd0 4922 (version "3.24.1")
b645146f
SB
4923 (source (origin
4924 (method url-fetch)
4925 (uri (string-append "mirror://gnome/sources/" name "/"
4926 (version-major+minor version) "/"
4927 name "-" version ".tar.xz"))
4928 (sha256
4929 (base32
a158cfd0 4930 "0g55i4w0a8qpfkl0vnzr3ng6adx8pdxqk8vzc3kvvx6xzlcqxk1h"))))
b645146f
SB
4931 (build-system glib-or-gtk-build-system)
4932 (arguments
4933 '(#:phases
4934 (modify-phases %standard-phases
4935 (add-before 'configure 'patch-paths
4936 (lambda* (#:key inputs #:allow-other-keys)
4937 (let ((libc (assoc-ref inputs "libc"))
4938 (tzdata (assoc-ref inputs "tzdata")))
4939 (substitute* "panels/datetime/tz.h"
4940 (("/usr/share/zoneinfo/zone.tab")
4941 (string-append tzdata "/share/zoneinfo/zone.tab")))
4942 (substitute* "panels/datetime/test-endianess.c"
4943 (("/usr/share/locale")
4944 (string-append libc "/share/locale")))
4945 #t))))))
4946 (native-inputs
4947 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4948 ("intltool" ,intltool)
4949 ("pkg-config" ,pkg-config)
4950 ("xsltproc" ,libxslt)))
4951 (inputs
4952 `(("accountsservice" ,accountsservice)
4953 ("clutter-gtk" ,clutter-gtk)
4954 ("colord-gtk" ,colord-gtk)
4955 ("cups" ,cups)
4956 ("dconf" ,dconf)
4957 ("docbook-xsl" ,docbook-xsl)
3446ffb5 4958 ("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files
b645146f
SB
4959 ("gnome-bluetooth" ,gnome-bluetooth)
4960 ("gnome-desktop" ,gnome-desktop)
4961 ("gnome-online-accounts" ,gnome-online-accounts)
4962 ("gnome-settings-daemon" ,gnome-settings-daemon)
4963 ("grilo" ,grilo)
4964 ("ibus" ,ibus)
4965 ("libcanberra" ,libcanberra)
4966 ("libgudev" ,libgudev)
4967 ("libgtop" ,libgtop)
4968 ("libpwquality" ,libpwquality)
4969 ("libsoup" ,libsoup)
4970 ("libxml2" ,libxml2)
4971 ("libwacom" ,libwacom)
4972 ("mesa" ,mesa)
4973 ("mit-krb5" ,mit-krb5)
4974 ("modem-manager" ,modem-manager)
4975 ("network-manager-applet" ,network-manager-applet)
4976 ("polkit" ,polkit)
4977 ("pulseaudio" ,pulseaudio)
4978 ("smbclient" ,samba)
4979 ("tzdata" ,tzdata)
4980 ("upower" ,upower)))
4981 (synopsis "Utilities to configure the GNOME desktop")
4982 (home-page "https://www.gnome.org/")
4983 (description
4984 "This package contains configuration applets for the GNOME desktop,
4985allowing to set accessibility configuration, desktop fonts, keyboard and mouse
4986properties, sound setup, desktop theme and background, user interface
4987properties, screen resolution, and other GNOME parameters.")
4988 (license license:gpl2+)))
a4df5756
SB
4989
4990(define-public gnome-shell
4991 (package
4992 (name "gnome-shell")
759a077c 4993 (version "3.22.2")
a4df5756
SB
4994 (source (origin
4995 (method url-fetch)
4996 (uri (string-append "mirror://gnome/sources/" name "/"
4997 (version-major+minor version) "/"
4998 name "-" version ".tar.xz"))
cc3bc027 4999 (patches (search-patches "gnome-shell-CVE-2017-8288.patch"))
a4df5756
SB
5000 (sha256
5001 (base32
759a077c 5002 "16smvjfrpyfphv479hjky5261hgl4kli4q86bcb2b8xdcav4w3yq"))))
a4df5756
SB
5003 (build-system glib-or-gtk-build-system)
5004 (arguments
5005 '(#:phases
5006 (modify-phases %standard-phases
5007 (replace 'install
5008 (lambda* (#:key outputs #:allow-other-keys)
5009 (let* ((out (assoc-ref outputs "out"))
5010 (keysdir (string-append
5011 out "/share/gnome-control-center/keybindings")))
5012 (zero? (system* "make"
5013 (string-append "keysdir=" keysdir)
5014 "install")))))
5015 (add-after
5016 'install 'wrap-programs
5017 (lambda* (#:key outputs #:allow-other-keys)
5018 (let ((out (assoc-ref outputs "out"))
5019 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
5020 (python-path (getenv "PYTHONPATH")))
5021 (wrap-program (string-append out "/bin/gnome-shell")
5022 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
5023 (for-each
5024 (lambda (prog)
5025 (wrap-program (string-append out "/bin/" prog)
5026 `("PYTHONPATH" ":" prefix (,python-path))
5027 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5028 '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
5029 #t))))))
5030 (native-inputs
5031 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5032 ("gobject-introspection" ,gobject-introspection)
5033 ("intltool" ,intltool)
5034 ("pkg-config" ,pkg-config)
5035 ("python" ,python)
5036 ("xsltproc" ,libxslt)))
5037 (inputs
5038 `(("accountsservice" ,accountsservice)
5039 ("caribou" ,caribou)
5040 ("docbook-xsl" ,docbook-xsl)
5041 ("evolution-data-server" ,evolution-data-server)
5042 ("gcr" ,gcr)
5043 ("gdm" ,gdm)
5044 ("gjs" ,gjs)
5045 ("gnome-bluetooth" ,gnome-bluetooth)
5046 ("gnome-control-center" ,gnome-control-center)
5047 ("gnome-desktop" ,gnome-desktop)
5048 ("gnome-settings-daemon" ,gnome-settings-daemon)
5049 ("gst-plugins-base" ,gst-plugins-base)
5050 ("ibus" ,ibus)
5051 ("libcanberra" ,libcanberra)
5052 ("libcroco" ,libcroco)
5053 ("libgweather" ,libgweather)
5054 ("libsoup" ,libsoup)
5055 ("mesa-headers" ,mesa-headers)
5056 ("mutter" ,mutter)
5057 ("network-manager-applet" ,network-manager-applet)
5058 ("polkit" ,polkit)
5059 ("pulseaudio" ,pulseaudio)
5060 ("python-pygobject" ,python-pygobject)
5061 ("startup-notification" ,startup-notification)
5062 ("telepathy-logger" ,telepathy-logger)
5063 ("upower" ,upower)
5064 ;; XXX: required by libgjs.la.
5065 ("readline" ,readline)))
5066 (synopsis "Desktop shell for GNOME")
5067 (home-page "https://wiki.gnome.org/Projects/GnomeShell")
5068 (description
5069 "GNOME Shell provides core user interface functions for the GNOME desktop,
5070like switching to windows and launching applications.")
5071 (license license:gpl2+)))
c3f29bc9
RS
5072
5073(define-public gtk-vnc
5074 (package
5075 (name "gtk-vnc")
26653538 5076 (version "0.7.0")
c3f29bc9
RS
5077 (source
5078 (origin
5079 (method url-fetch)
5080 (uri (string-append "mirror://gnome/sources/" name "/"
5081 (version-major+minor version) "/"
5082 name "-" version ".tar.xz"))
5083 (sha256
5084 (base32
26653538 5085 "0gj8dpy3sj4dp810gy67spzh5f0jd8aqg69clcwqjcskj1yawbiw"))))
c3f29bc9
RS
5086 (build-system gnu-build-system)
5087 (arguments
5088 '(#:configure-flags '("--with-gtk=3.0")))
5089 (propagated-inputs
5090 `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc.
5091 (inputs
5092 `(("cyrus-sasl" ,cyrus-sasl)
5093 ("gnutls" ,gnutls)
5094 ("libgcrypt" ,libgcrypt)
5095 ("pulseaudio" ,pulseaudio)))
5096 (native-inputs
5097 `(("glib:bin" ,glib "bin")
5098 ("gobject-introspection" ,gobject-introspection)
5099 ("intltool" ,intltool)
5100 ("pkg-config" ,pkg-config)
5101 ("vala" ,vala)))
5102 (home-page "https://wiki.gnome.org/Projects/gtk-vnc")
5103 (synopsis "VNC viewer widget for GTK+")
5104 (description
5105 "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing
5106applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.
5107GTK-VNC implements client side RFB protocol and authentication extensions such
5108as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.")
5109 (license license:lgpl2.1+)))
8b877545 5110
dc69fe18
MW
5111(define-public gnome-autoar
5112 (package
5113 (name "gnome-autoar")
4063a40a 5114 (version "0.2.2")
dc69fe18
MW
5115 (source (origin
5116 (method url-fetch)
5117 (uri (string-append "mirror://gnome/sources/" name "/"
5118 (version-major+minor version) "/"
5119 name "-" version ".tar.xz"))
5120 (sha256
5121 (base32
4063a40a 5122 "0qnafiwgajsaryh669lfclb4f6z5n1r9r4zhig1ha0ykxq32rzp1"))))
dc69fe18
MW
5123 (build-system glib-or-gtk-build-system)
5124 (native-inputs
5125 `(("gnome-common" ,gnome-common)
5126 ("gobject-introspection" ,gobject-introspection)
5127 ("pkg-config" ,pkg-config)))
5128 (propagated-inputs
5129 `(("libarchive" ,libarchive))) ; XXX document why
5130 (inputs
5131 `(("gtk+" ,gtk+)
5132 ("nettle" ,nettle))) ; XXX: required by libarchive.pc
5133 (synopsis "Archives integration support for GNOME")
5134 (home-page "https://git.gnome.org/browse/gnome-autoar/")
5135 (description
5136 "GNOME Autoar is a library which makes creating and extracting archives
5137easy, safe, and automatic.")
5138 (license license:lgpl2.1+)))
5139
b64e217f
MW
5140(define-public tracker
5141 (package
5142 (name "tracker")
0ef48cd9 5143 (version "1.12.0")
b64e217f
MW
5144 (source (origin
5145 (method url-fetch)
5146 (uri (string-append "mirror://gnome/sources/" name "/"
5147 (version-major+minor version) "/"
5148 name "-" version ".tar.xz"))
5149 (sha256
5150 (base32
0ef48cd9 5151 "0vsrzzkcfvmylhpk1ww6xdx8z9sgjs0gn74gz82qngjyq3c3s6c3"))))
b64e217f
MW
5152 (build-system glib-or-gtk-build-system)
5153 (native-inputs
5154 `(("gnome-common" ,gnome-common)
5155 ("gobject-introspection" ,gobject-introspection)
5156 ("intltool" ,intltool)
5157 ("pkg-config" ,pkg-config)
5158 ("vala" ,vala)))
5159 (inputs
5160 `(("gtk+" ,gtk+)
5161 ("dbus" ,dbus)
5162 ("gstreamer" ,gstreamer)
5163 ("gst-plugins-base" ,gst-plugins-base)
5164 ("sqlite" ,sqlite)
5165 ("nettle" ,nettle) ; XXX why is this needed?
5166 ("poppler" ,poppler)
5167 ("libgsf" ,libgsf)
5168 ("libexif" ,libexif)
5169 ("libpng" ,libpng)
5170 ("libtiff" ,libtiff)
5171 ("libvorbis" ,libvorbis)
5172 ("flac" ,flac)
5173 ("totem-pl-parser" ,totem-pl-parser)
5174 ("zlib" ,zlib)
5175 ("exempi" ,exempi)
5176 ("libxml2" ,libxml2)
5177 ("upower" ,upower)
b64e217f
MW
5178 ("libunistring" ,libunistring)
5179 ("giflib" ,giflib)
0ef48cd9 5180 ("json-glib" ,json-glib)
b64e217f
MW
5181 ("openjpeg" ,openjpeg-1)
5182 ("libosinfo" ,libosinfo)
5183 ("libcue" ,libcue)
5184 ("libseccomp" ,libseccomp)
0ef48cd9 5185 ("libsoup" ,libsoup)
b64e217f
MW
5186 ("libuuid" ,util-linux)))
5187 (arguments `(#:tests? #f)) ; XXX FIXME enable tests (some fail)
5188 (synopsis "Metadata database, indexer and search tool")
5189 (home-page "https://wiki.gnome.org/Projects/Tracker")
5190 (description
5191 "Tracker is an advanced framework for first class objects with associated
5192metadata and tags. It provides a one stop solution for all metadata, tags,
5193shared object databases, search tools and indexing.")
5194 ;; src/libtracker-*/* and src/tracker-extract/* are covered by lgpl2.1+,
5195 ;; src/gvdb/* are covered by lgpl2.0+, and the rest is gpl2+.
5196 (license (list license:gpl2+
5197 license:lgpl2.1+
5198 license:lgpl2.0+))))
5199
8b877545
RS
5200(define-public nautilus
5201 (package
5202 (name "nautilus")
09d88905 5203 (version "3.22.2")
8b877545
RS
5204 (source (origin
5205 (method url-fetch)
5206 (uri (string-append "mirror://gnome/sources/" name "/"
5207 (version-major+minor version) "/"
5208 name "-" version ".tar.xz"))
5209 (sha256
5210 (base32
09d88905 5211 "1cv5xsah04svxx0b6di7iah9gcwk6na2c6lp442pal9v2ybrw76f"))))
8b877545
RS
5212 (build-system glib-or-gtk-build-system)
5213 (arguments
6983ba56 5214 '(#:configure-flags
09d88905 5215 '("--disable-selinux") ; XXX: not packaged
8b877545
RS
5216 ;; XXX: FAIL: check-nautilus
5217 ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
5218 #:tests? #f))
5219 (native-inputs
5220 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
5221 ("gobject-introspection" ,gobject-introspection)
5222 ("intltool" ,intltool)
5223 ("pkg-config" ,pkg-config)))
8b877545 5224 (inputs
8b877545 5225 `(("dconf" ,dconf)
dd05e731 5226 ("gvfs" ,gvfs)
8b877545
RS
5227 ("exempi" ,exempi)
5228 ("gnome-desktop" ,gnome-desktop)
09d88905
MW
5229 ("gnome-autoar" ,gnome-autoar)
5230 ("nettle" ,nettle) ; XXX required by libarchive.pc via gnome-autoar
5231 ("tracker" ,tracker)
ce6027bf
SB
5232 ;; XXX: gtk+ is required by libnautilus-extension.pc
5233 ;;
5234 ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
5235 ;; package. See:
5236 ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
5237 ("gtk+" ,gtk+)
8b877545
RS
5238 ("libexif" ,libexif)
5239 ("libxml2" ,libxml2)))
5240 (synopsis "File manager for GNOME")
5241 (home-page "https://wiki.gnome.org/Apps/Nautilus")
5242 (description
5243 "Nautilus (Files) is a file manager designed to fit the GNOME desktop
5244design and behaviour, giving the user a simple way to navigate and manage its
5245files.")
5246 (license license:gpl2+)))
3c697ffd
JR
5247
5248(define-public baobab
5249 (package
5250 (name "baobab")
9be54b15 5251 (version "3.24.0")
3c697ffd
JR
5252 (source (origin
5253 (method url-fetch)
5254 (uri (string-append
5255 "mirror://gnome/sources/" name "/"
5256 (version-major+minor version) "/"
5257 name "-" version ".tar.xz"))
5258 (sha256
5259 (base32
9be54b15 5260 "0gzwzn8p0agidjq3wnkxcsny6jhqph3yqscqjqd7blgkz5nyk02r"))))
3c697ffd
JR
5261 (build-system glib-or-gtk-build-system)
5262 (native-inputs
5263 `(("intltool" ,intltool)
5264 ("pkg-config" ,pkg-config)
5265 ("itstool" ,itstool)
5266 ("xmllint" ,libxml2)
5267 ("glib" ,glib "bin")
5268 ("vala" ,vala)))
5269 (inputs
5270 `(("gtk+" ,gtk+)))
5271 (synopsis "Disk usage analyzer for GNOME")
5272 (description
5273 "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk
5274usage in the GNOME desktop environment. It can easily scan device volumes or
5275a specific user-requested directory branch (local or remote). Once the scan
5276is complete it provides a graphical representation of each selected folder.")
5277 (home-page "https://wiki.gnome.org/Apps/Baobab")
5278 (license license:gpl2+)))
dc050251 5279
fdba447c
RS
5280(define-public gnome-backgrounds
5281 (package
5282 (name "gnome-backgrounds")
2df65d37 5283 (version "3.24.0")
fdba447c
RS
5284 (source
5285 (origin
5286 (method url-fetch)
5287 (uri (string-append "mirror://gnome/sources/" name "/"
5288 (version-major+minor version) "/"
5289 name "-" version ".tar.xz"))
5290 (sha256
5291 (base32
2df65d37 5292 "1jkikis9k3psp6rb8axnqy86awdyg5rzfbcp9gx40a99b4hlrnnb"))))
fdba447c
RS
5293 (build-system glib-or-gtk-build-system)
5294 (native-inputs
5295 `(("intltool" ,intltool)))
5296 (home-page "https://git.gnome.org/browse/gnome-backgrounds")
5297 (synopsis "Background images for the GNOME desktop")
5298 (description
5299 "GNOME backgrounds package contains a collection of graphics files which
5300can be used as backgrounds in the GNOME Desktop environment. Additionally,
5301the package creates the proper framework and directory structure so that you
5302can add your own files to the collection.")
5303 (license (list license:gpl2+
5304 license:cc-by2.0
5305 license:cc-by-sa2.0
5306 license:cc-by-sa3.0))))
5307
b784b1a9
RS
5308(define-public gnome-screenshot
5309 (package
5310 (name "gnome-screenshot")
efa355bc 5311 (version "3.22.0")
b784b1a9
RS
5312 (source
5313 (origin
5314 (method url-fetch)
5315 (uri (string-append "mirror://gnome/sources/" name "/"
5316 (version-major+minor version) "/"
5317 name "-" version ".tar.xz"))
5318 (sha256
5319 (base32
efa355bc 5320 "0c02n1hgv21m4082jx399b1yazsc0cr07ba8k0pv8v3w7i5z21ca"))))
b784b1a9
RS
5321 (build-system glib-or-gtk-build-system)
5322 (native-inputs
5323 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5324 ("intltool" ,intltool)
5325 ("pkg-config" ,pkg-config)))
5326 (inputs
5327 `(("gtk+" ,gtk+)
5328 ("libcanberra" ,libcanberra)
5329 ("libx11" ,libx11)
5330 ("libxext" ,libxext)))
5331 (home-page "https://git.gnome.org/browse/gnome-screenshot")
5332 (synopsis "Take pictures of your screen")
5333 (description
5334 "GNOME Screenshot is a utility used for taking screenshots of the entire
5335screen, a window or a user defined area of the screen, with optional
5336beautifying border effects.")
5337 (license license:gpl2+)))
5338
66d59111
RS
5339(define-public dconf-editor
5340 (package
5341 (name "dconf-editor")
123e8168 5342 (version "3.22.3")
66d59111
RS
5343 (source
5344 (origin
5345 (method url-fetch)
5346 (uri (string-append "mirror://gnome/sources/" name "/"
5347 (version-major+minor version) "/"
5348 name "-" version ".tar.xz"))
5349 (sha256
5350 (base32
123e8168 5351 "1939yq3fl55c2dqkc6nzp6cbpxq9sli74gdj0rj7c50pwvbngwam"))))
66d59111 5352 (build-system glib-or-gtk-build-system)
d25c1836
SB
5353 (arguments
5354 '(#:phases
5355 (modify-phases %standard-phases
5356 (add-before 'install 'skip-gtk-update-icon-cache
5357 (lambda _
5358 ;; Don't create 'icon-theme.cache'.
5359 (substitute* "editor/Makefile"
5360 (("gtk-update-icon-cache") "true"))
5361 #t)))))
66d59111
RS
5362 (native-inputs
5363 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
5364 ("intltool" ,intltool)
5365 ("pkg-config" ,pkg-config)))
5366 (inputs
5367 `(("dconf" ,dconf)
5368 ("gtk+" ,gtk+)
5369 ("libxml2" ,libxml2)))
5370 (home-page "https://git.gnome.org/browse/dconf-editor")
5371 (synopsis "Graphical editor for GNOME's dconf configuration system")
5372 (description
5373 "Dconf-editor is a graphical tool for browsing and editing the dconf
5374configuration system for GNOME. It allows users to configure desktop
5375software that do not provide their own configuration interface.")
5376 (license license:lgpl2.1+)))
5377
dc050251
SB
5378(define-public gnome
5379 (package
5380 (name "gnome")
5381 (version (package-version gnome-shell))
5382 (source #f)
5383 (build-system trivial-build-system)
5384 (arguments '(#:builder (mkdir %output)))
5385 (propagated-inputs
5386 ;; TODO: Add more packages according to:
5387 ;; <https://packages.debian.org/jessie/gnome-core>.
5388 `(("adwaita-icon-theme" ,adwaita-icon-theme)
05f651c4 5389 ("baobab" ,baobab)
0bd3597b 5390 ("font-cantarell" ,font-cantarell)
dc050251
SB
5391 ("at-spi2-core" ,at-spi2-core)
5392 ("dbus" ,dbus)
5393 ("dconf" ,dconf)
72360453 5394 ("desktop-file-utils" ,desktop-file-utils)
dc050251
SB
5395 ("eog" ,eog)
5396 ("epiphany" ,epiphany)
5397 ("evince" ,evince)
71d9b980 5398 ("file-roller" ,file-roller)
dc050251
SB
5399 ("gedit" ,gedit)
5400 ("glib-networking" ,glib-networking)
05f651c4 5401 ("gnome-backgrounds" ,gnome-backgrounds)
dc050251
SB
5402 ("gnome-control-center" ,gnome-control-center)
5403 ("gnome-keyring" ,gnome-keyring)
5404 ("gnome-session" ,gnome-session)
5405 ("gnome-settings-daemon" ,gnome-settings-daemon)
5406 ("gnome-shell" ,gnome-shell)
5407 ("gnome-terminal" ,gnome-terminal)
5408 ("gnome-themes-standard" ,gnome-themes-standard)
05f651c4 5409 ("gvfs" ,gvfs)
dc050251
SB
5410 ("hicolor-icon-theme" ,hicolor-icon-theme)
5411 ("nautilus" ,nautilus)
69308043 5412 ("pinentry-gnome3" ,pinentry-gnome3)
dc050251
SB
5413 ("pulseaudio" ,pulseaudio)
5414 ("shared-mime-info" ,shared-mime-info)
5415 ("totem" ,totem)
5416 ("yelp" ,yelp)
5417 ("zenity" ,zenity)))
fe4e698d 5418 (synopsis "The GNU desktop environment")
dc050251
SB
5419 (home-page "https://www.gnome.org/")
5420 (description
fe4e698d
LC
5421 "GNOME is the graphical desktop for GNU. It includes a wide variety of
5422applications for browsing the web, editing text and images, creating
5423documents and diagrams, playing media, scanning, and much more.")
dc050251 5424 (license license:gpl2+)))
4a526711
DT
5425
5426(define-public byzanz
5427 ;; The last stable release of Byzanz was in 2011, but there have been many
5428 ;; useful commits made to the Byzanz repository since then that it would be
5429 ;; silly to use such an old release.
5430 (let ((commit "f7af3a5bd252db84af8365bd059c117a7aa5c4af"))
5431 (package
5432 (name "byzanz")
5433 (version (string-append "0.2-1." (string-take commit 7)))
5434 (source (origin
5435 (method git-fetch)
5436 (uri (git-reference
5437 (url "git://git.gnome.org/byzanz")
5438 (commit commit)))
5439 (sha256
5440 (base32
5441 "1l60myzxf9cav27v5v3nsijlslz9r7ip6d5kiirfpkf9k0w26hz3"))))
5442 (build-system glib-or-gtk-build-system)
5443 (arguments
5444 '(#:phases
5445 (modify-phases %standard-phases
5446 (add-after 'unpack 'bootstrap
5447 (lambda _
5448 ;; The build system cleverly detects that we're not building from
5449 ;; a release tarball and turns on -Werror for GCC.
5450 ;; Unsurprisingly, there is a warning during compilation that
5451 ;; causes the build to fail unnecessarily, so we remove the flag.
5452 (substitute* '("configure.ac")
5453 (("-Werror") ""))
5454 ;; The autogen.sh script in gnome-common will run ./configure
5455 ;; by default, which is problematic because source shebangs
5456 ;; have not yet been patched.
5457 (setenv "NOCONFIGURE" "t")
5458 (zero? (system* "sh" "autogen.sh")))))))
5459 (native-inputs
5460 `(("autoconf" ,autoconf)
5461 ("automake" ,automake)
5462 ("gnome-common" ,gnome-common)
5463 ("intltool" ,intltool)
5464 ("libtool" ,libtool)
5465 ("pkg-config" ,pkg-config)
5466 ("which" ,which)))
5467 (inputs
5468 `(("glib" ,glib)
5469 ("gstreamer" ,gstreamer)
5470 ("gst-plugins-base" ,gst-plugins-base)
5471 ("gtk+" ,gtk+)))
5472 (synopsis "Desktop recording program")
5473 (description "Byzanz is a simple desktop recording program with a
5474command-line interface. It can record part or all of an X display for a
5475specified duration and save it as a GIF encoded animated image file.")
5476 (home-page "https://git.gnome.org/browse/byzanz")
5477 (license license:gpl2+))))
3a9a4c51
RS
5478
5479(define-public libzapojit
5480 (package
5481 (name "libzapojit")
5482 (version "0.0.3")
5483 (source (origin
5484 (method url-fetch)
5485 (uri (string-append "mirror://gnome/sources/" name "/"
5486 (version-major+minor version) "/"
5487 name "-" version ".tar.xz"))
5488 (sha256
5489 (base32
5490 "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x"))))
5491 (build-system gnu-build-system)
5492 (native-inputs
5493 `(("gobject-introspection" ,gobject-introspection)
5494 ("intltool" ,intltool)
5495 ("pkg-config" ,pkg-config)))
5496 (inputs
5497 `(("gnome-online-accounts" ,gnome-online-accounts)
5498 ("json-glib" ,json-glib)
5499 ("rest" ,rest)))
5500 (home-page "https://wiki.gnome.org/Projects/Zapojit")
5501 (synopsis "Library for accessing SkyDrive and Hotmail")
5502 (description
5503 "Libzapojit is a GLib-based library for accessing online service APIs of
5504Microsoft SkyDrive and Hotmail, using their REST protocols.")
5505 (license license:lgpl2.1+)))
9365ee1c 5506
3c474897
KY
5507(define-public gnome-calendar
5508 (package
5509 (name "gnome-calendar")
4b8aae41 5510 (version "3.22.2")
3c474897
KY
5511 (source (origin
5512 (method url-fetch)
5513 (uri (string-append "mirror://gnome/sources/" name "/"
5514 (version-major+minor version) "/"
5515 name "-" version ".tar.xz"))
5516 (sha256
5517 (base32
4b8aae41 5518 "03wivk7hbyqrqcrd7jg0m2xj6q13248la2184qkf7zncnj72g5ih"))))
3c474897
KY
5519 (build-system glib-or-gtk-build-system)
5520 (native-inputs
5521 `(("intltool" ,intltool)
5522 ("pkg-config" ,pkg-config)))
5523 (inputs
5524 `(("bdb" ,bdb)
5525 ("desktop-file-utils" ,desktop-file-utils)
5526 ("evolution-data-server" ,evolution-data-server)
4b8aae41
MW
5527 ("gnome-online-accounts" ,gnome-online-accounts)
5528 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
3c474897
KY
5529 (home-page "https://wiki.gnome.org/Apps/Calendar")
5530 (synopsis "GNOME's calendar application")
5531 (description
5532 "GNOME Calendar is a simple calendar application designed to fit the GNOME
5533desktop. It supports multiple calendars, monthly view and yearly view.")
5534 (license license:gpl3+)))
5535
ab179eaf
SB
5536(define-public gnome-dictionary
5537 (package
5538 (name "gnome-dictionary")
5539 (version "3.20.0")
5540 (source (origin
5541 (method url-fetch)
5542 (uri (string-append "mirror://gnome/sources/" name "/"
5543 (version-major+minor version) "/"
5544 name "-" version ".tar.xz"))
5545 (sha256
5546 (base32
5547 "08b1f5s5aqka3dwxnzmwr2fmyddjm9xw7zmqsf8r5zvfsivn7czg"))))
5548 (build-system glib-or-gtk-build-system)
5549 (native-inputs
5550 `(("glib:bin" ,glib "bin")
5551 ("gobject-introspection" ,gobject-introspection)
5552 ("intltool" ,intltool)
5553 ("itstool" ,itstool)
5554 ("pkg-config" ,pkg-config)
5555 ("xmllint" ,libxml2)))
5556 (inputs
5557 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5558 ("gtk+" ,gtk+)))
5559 (home-page "https://wiki.gnome.org/Apps/Dictionary")
5560 (synopsis "Look up words in dictionary sources")
5561 (description
5562 "GNOME Dictionary can look for the definition or translation of a word in
5563existing databases over the internet.")
5564 (license license:gpl3+)))
5565
9365ee1c
JN
5566(define-public gnome-tweak-tool
5567 (package
5568 (name "gnome-tweak-tool")
f169ad10 5569 (version "3.22.0")
9365ee1c
JN
5570 (source (origin
5571 (method url-fetch)
5572 (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
5573 (version-major+minor version) "/"
5574 "gnome-tweak-tool-" version ".tar.xz"))
5575 (patches (list
5576 (search-patch "gnome-tweak-tool-search-paths.patch")))
5577 (sha256
5578 (base32
f169ad10 5579 "1frs16p2284mdw65g1ldmf9cz5sn3rg16wz58gjrw5pn2cgf2six"))))
7ef335b0 5580 (build-system glib-or-gtk-build-system)
9365ee1c
JN
5581 (arguments
5582 `(#:configure-flags '("--localstatedir=/tmp"
5583 "--sysconfdir=/tmp")
5584 #:imported-modules ((guix build python-build-system)
7ef335b0 5585 ,@%glib-or-gtk-build-system-modules)
9365ee1c 5586 #:phases (modify-phases %standard-phases
9af6bce1
CB
5587 (add-after 'install 'wrap-program
5588 (lambda* (#:key outputs #:allow-other-keys)
5589 (let ((out (assoc-ref outputs "out"))
5590 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
5591 (wrap-program (string-append out "/bin/gnome-tweak-tool")
5592 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5593 #t))
9365ee1c
JN
5594 (add-after 'install 'wrap
5595 (@@ (guix build python-build-system) wrap)))))
5596 (native-inputs
5597 `(("intltool" ,intltool)
5598 ("pkg-config" ,pkg-config)))
5599 (inputs
5600 `(("python" ,python-2)
adb41527 5601 ("python2-pygobject" ,python2-pygobject)
fab2784d
CB
5602 ("gnome-desktop" ,gnome-desktop)
5603 ("libsoup" ,libsoup)
adb41527 5604 ("libnotify" ,libnotify)
9365ee1c
JN
5605 ("gobject-introspection" ,gobject-introspection)
5606 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5607 ("gtk+" ,gtk+)))
5608 (synopsis "Customize advanced GNOME 3 options")
5609 (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
5610 (description
5611 "GNOME Tweak Tool allows adjusting advanced configuration settings in
5612GNOME 3. This includes things like the fonts used in user interface elements,
5613alternative user interface themes, changes in window management behavior,
5614GNOME Shell appearance and extension, etc.")
5615 (license license:gpl3+)))
813f814a 5616
32ac717c
DT
5617(define-public gnome-shell-extensions
5618 (package
5619 (name "gnome-shell-extensions")
2e45916c 5620 (version "3.22.2")
32ac717c
DT
5621 (source (origin
5622 (method url-fetch)
5623 (uri (string-append "mirror://gnome/sources/" name "/"
5624 (version-major+minor version) "/"
5625 name "-" version ".tar.xz"))
5626 (sha256
5627 (base32
2e45916c 5628 "11wa4f9arr89a4y8nsvla5j58dzwlawjb2q1lz0jn5i9kv324z6z"))))
32ac717c
DT
5629 (build-system gnu-build-system)
5630 (arguments
5631 '(#:configure-flags '("--enable-extensions=all")))
5632 (native-inputs
5633 `(("intltool" ,intltool)
5634 ("pkg-config" ,pkg-config)))
5635 (propagated-inputs
5636 `(("glib" ,glib)
5637 ("glib" ,glib "bin")))
5638 (synopsis "Extensions for GNOME Shell")
5639 (description "GNOME Shell extensions modify and extend GNOME Shell
5640functionality and behavior.")
5641 (home-page "https://extensions.gnome.org/")
5642 (license license:gpl3+)))
5643
813f814a
DT
5644(define-public arc-theme
5645 (package
5646 (name "arc-theme")
7967efc1 5647 (version "20170302")
813f814a
DT
5648 (source (origin
5649 (method url-fetch)
5650 (uri (string-append "https://github.com/horst3180/arc-theme"
5651 "/archive/" version ".tar.gz"))
5652 (file-name (string-append name "-" version ".tar.gz"))
5653 (sha256
5654 (base32
7967efc1 5655 "0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw"))))
813f814a
DT
5656 (build-system gnu-build-system)
5657 (arguments
5658 '(#:phases
5659 (modify-phases %standard-phases
5660 (add-after 'unpack 'bootstrap
5661 (lambda _
5662 (zero? (system* "autoreconf" "-vif")))))))
5663 (native-inputs
5664 `(("autoconf" ,autoconf)
5665 ("automake" ,automake)
5666 ("pkg-config" ,pkg-config)))
5667 (inputs
5668 `(("gtk+" ,gtk+)))
5669 (synopsis "A flat GTK+ theme with transparent elements")
5670 (description "Arc is a flat theme with transparent elements for GTK 3, GTK
56712, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
5672like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
5673 (home-page "https://github.com/horst3180/arc-theme")
5674 ;; No "or later" language found.
5675 (license license:gpl3)))
9987c57c
DT
5676
5677(define-public moka-icon-theme
5678 (package
5679 (name "moka-icon-theme")
0f9bb61b 5680 (version "5.3.5")
9987c57c
DT
5681 (source (origin
5682 (method url-fetch)
5683 (uri (string-append "https://github.com/moka-project"
5684 "/moka-icon-theme/archive/v"
5685 version ".tar.gz"))
5686 (file-name (string-append name "-" version ".tar.gz"))
5687 (sha256
5688 (base32
0f9bb61b 5689 "062rab0ggmgb3y0d6b3k5d47wsadi28cdnyyr2vqbjhza01dglci"))))
9987c57c
DT
5690 (build-system gnu-build-system)
5691 (arguments
5692 '(#:phases
5693 (modify-phases %standard-phases
5694 (add-after 'unpack 'patch-makefile.am
5695 (lambda _
5696 (substitute* '("Makefile.am")
5697 (("\\$\\(DESTDIR\\)/usr/share")
5698 "$(datadir)"))
5699 #t))
5700 (add-after 'patch-makefile.am 'bootstrap
5701 (lambda _
5702 (zero? (system* "autoreconf" "-vif")))))))
5703 (native-inputs
5704 `(("autoconf" ,autoconf)
5705 ("automake" ,automake)))
5706 (synopsis "Moka icon theme")
5707 (description "Moka is a stylized desktop icon set, designed to be clear,
5708simple and consistent.")
5709 (home-page "http://snwh.org/moka")
5710 (license license:gpl3+)))
6fd8f8d6
DT
5711
5712(define-public arc-icon-theme
5713 (package
5714 (name "arc-icon-theme")
c4180240 5715 (version "20161122")
6fd8f8d6
DT
5716 (source (origin
5717 (method url-fetch)
5718 (uri (string-append "https://github.com/horst3180/arc-icon-theme"
5719 "/archive/" version ".tar.gz"))
5720 (file-name (string-append name "-" version ".tar.gz"))
5721 (sha256
5722 (base32
c4180240 5723 "1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b"))))
6fd8f8d6
DT
5724 (build-system gnu-build-system)
5725 (arguments
5726 '(#:phases
5727 (modify-phases %standard-phases
5728 (add-after 'unpack 'bootstrap
5729 (lambda _
5730 (zero? (system* "autoreconf" "-vif")))))))
5731 (native-inputs
5732 `(("autoconf" ,autoconf)
5733 ("automake" ,automake)))
5734 ;; When Arc is missing an icon, it looks in the Moka icon theme for it.
5735 (propagated-inputs
5736 `(("moka-icon-theme" ,moka-icon-theme)))
5737 (synopsis "Arc icon theme")
5738 (description "The Arc icon theme provides a set of icons matching the
5739style of the Arc GTK theme. Icons missing from the Arc theme are provided by
5740the Moka icon theme.")
5741 (home-page "https://github.com/horst3180/arc-icon-theme")
5742 (license license:gpl3+)))
6064a4e8
LF
5743
5744(define-public folks
5745 (package
5746 (name "folks")
5747 (version "0.11.2")
5748 (source (origin
5749 (method url-fetch)
5750 (uri (string-append
5751 "mirror://gnome/sources/" name "/"
5752 (version-major+minor version) "/"
5753 name "-" version ".tar.xz"))
5754 (sha256
5755 (base32
5756 "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
5757 (build-system glib-or-gtk-build-system)
5758 (inputs
5759 `(("bdb" ,bdb)
5760 ("dbus-glib" ,dbus-glib)
5761 ("evolution-data-server" ,evolution-data-server)
5762 ("glib" ,glib)
5763 ("libgee" ,libgee)
5764 ("telepathy-glib" ,telepathy-glib)))
5765 (native-inputs
5766 `(("gobject-introspection" ,gobject-introspection)
5767 ("intltool" ,intltool)
5768 ("pkg-config" ,pkg-config)
5769 ("vala" ,vala)))
5770 (synopsis "Library to aggregate data about people")
5771 (description "Libfolks is a library that aggregates information about people
5772from multiple sources (e.g., Telepathy connection managers for IM contacts,
5773Evolution Data Server for local contacts, libsocialweb for web service contacts,
5774etc.) to create metacontacts. It's written in Vala, which generates C code when
5775compiled.")
5776 (home-page "https://wiki.gnome.org/Projects/Folks")
5777 (license license:lgpl2.1+)))
01ea778f
LF
5778
5779(define-public gfbgraph
5780 (package
5781 (name "gfbgraph")
5782 (version "0.2.3")
5783 (source (origin
5784 (method url-fetch)
5785 (uri (string-append
5786 "mirror://gnome/sources/" name "/"
5787 (version-major+minor version) "/"
5788 name "-" version ".tar.xz"))
5789 (sha256
5790 (base32
5791 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
5792 (build-system glib-or-gtk-build-system)
5793 (arguments
5794 `(#:tests? #f ; Tests appear to require the network.
5795 ;; FIXME --enable-gtk-doc fails even with gtk-doc as a native-input.
5796 #:configure-flags '("--disable-gtk-doc"
5797 "--disable-static"
5798 "--enable-introspection")))
5799 (native-inputs
5800 `(("pkg-config" ,pkg-config)
5801 ("gobject-introspection" ,gobject-introspection)))
5802 (inputs
5803 `(("json-glib" ,json-glib)
5804 ("gnome-online-accounts" ,gnome-online-accounts)
5805 ("rest" ,rest)))
5806 (synopsis "GLib/GObject wrapper for the Facebook API")
5807 (description "This library allows you to use the Facebook API from
5808GLib/GObject code.")
5809 (home-page "https://wiki.gnome.org/Projects/GFBGraph")
5810 (license license:lgpl2.1+)))
3920868c 5811
5812(define-public libgnomekbd
5813 (package
5814 (name "libgnomekbd")
47b93ae5 5815 (version "3.22.0.1")
3920868c 5816 (source (origin
5817 (method url-fetch)
5818 (uri (string-append "mirror://gnome/sources/" name "/"
5819 (version-major+minor version) "/"
5820 name "-" version ".tar.xz"))
5821 (sha256
5822 (base32
47b93ae5 5823 "1plkkack6s8b21gcmmly0lapgcjz53dmw2vixnn4rw4jxjwbdzaf"))))
3920868c 5824 (build-system gnu-build-system)
5825 (native-inputs
5826 `(("pkg-config" ,pkg-config)
5827 ("glib" ,glib "bin")
5828 ("intltool" ,intltool)))
5829 (propagated-inputs
5830 ;; Referred to in .h files and .pc.
5831 `(("glib" ,glib)
5832 ("gtk+" ,gtk+)
5833 ("libxklavier" ,libxklavier)))
5834 (home-page "https://www.gnome.org")
5835 (synopsis "GNOME keyboard configuration library")
5836 (description
5837 "Libgnomekbd is a keyboard configuration library for the GNOME desktop
5838environment, which can notably display keyboard layouts.")
5839 (license license:lgpl2.0+)))
85327d0d 5840
5841;;; This package is no longer maintained:
5842;;; https://wiki.gnome.org/Attic/LibUnique
5843;;; "Unique is now in maintenance mode, and its usage is strongly discouraged.
5844;;; Applications should use the GtkApplication class provided by GTK+ 3.0."
5845(define-public libunique
5846 (package
5847 (name "libunique")
5848 (version "3.0.2")
5849 (source (origin
5850 (method url-fetch)
5851 (uri (string-append "mirror://gnome/sources/" name "/"
5852 (version-major+minor version) "/"
5853 name "-" version ".tar.xz"))
5854 (sha256
5855 (base32
5856 "0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58"))))
5857 (build-system glib-or-gtk-build-system)
5858 (arguments
5859 `(#:configure-flags '("--disable-static"
5860 "--disable-dbus" ; use gdbus
5861 "--enable-introspection")))
5862 (native-inputs
5863 `(("pkg-config" ,pkg-config)
5864 ("gobject-introspection" ,gobject-introspection)
5865 ("glib:bin" ,glib "bin")
5866 ("gtk-doc" ,gtk-doc)))
5867 (propagated-inputs
5868 ;; Referred to in .h files and .pc.
5869 `(("gtk+" ,gtk+)))
5870 (home-page "https://wiki.gnome.org/Attic/LibUnique")
5871 (synopsis "Library for writing single instance applications")
5872 (description
5873 "Libunique is a library for writing single instance applications. If you
5874launch a single instance application twice, the second instance will either just
5875quit or will send a message to the running instance. Libunique makes it easy to
5876write this kind of application, by providing a base class, taking care of all
5877the IPC machinery needed to send messages to a running instance, and also
5878handling the startup notification side.")
5879 (license license:lgpl2.1+)))
54021cd8
RS
5880
5881(define-public gnome-calculator
5882 (package
5883 (name "gnome-calculator")
de7da4e5 5884 (version "3.22.2")
54021cd8
RS
5885 (source
5886 (origin
5887 (method url-fetch)
5888 (uri (string-append "mirror://gnome/sources/" name "/"
5889 (version-major+minor version) "/"
5890 name "-" version ".tar.xz"))
5891 (sha256
5892 (base32
de7da4e5 5893 "03il7xl4yr6xbzj6x1lbl16yzlb166c9h9wny1w7mj9dccnz99wr"))))
54021cd8
RS
5894 (build-system glib-or-gtk-build-system)
5895 (native-inputs
5896 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
5897 ("intltool" ,intltool)
5898 ("itstool" ,itstool)
5899 ("pkg-config" ,pkg-config)))
5900 (inputs
5901 `(("gtksourceview" ,gtksourceview)
5902 ("libsoup" ,libsoup)
5903 ("mpfr" ,mpfr)))
5904 (home-page "https://wiki.gnome.org/Apps/Calculator")
5905 (synopsis "Desktop calculator")
5906 (description
5907 "Calculator is an application that solves mathematical equations and
5908is suitable as a default application in a Desktop environment.")
5909 (license license:gpl3)))
0bd69759
RS
5910
5911(define-public xpad
5912 (package
5913 (name "xpad")
5914 (version "4.8.0")
5915 (source
5916 (origin
5917 (method url-fetch)
5918 (uri (string-append "https://launchpad.net/xpad/trunk/4.8.0/+download/"
5919 name "-" version ".tar.bz2"))
5920 (sha256
5921 (base32
5922 "17f915yyvfa2fsavq6wh0q0dfhib28b4k1gc0292b9xdlrvy7f22"))))
5923 (build-system gnu-build-system)
5924 (native-inputs
5925 `(("intltool" ,intltool)
5926 ("pkg-config" ,pkg-config)))
5927 (inputs
5928 `(("gtk+" ,gtk+)
5929 ("gtksourceview" ,gtksourceview)
5930 ("libsm" ,libsm)))
5931 (home-page "https://wiki.gnome.org/Apps/Xpad")
5932 (synopsis "Virtual sticky note")
5933 (description
5934 "Xpad is a sticky note that strives to be simple, fault tolerant,
5935and customizable. Xpad consists of independent pad windows, each is
5936basically a text box in which notes can be written.")
5937 (license license:gpl3+)))
3ad7dce1
RS
5938
5939(define-public gucharmap
5940 (package
5941 (name "gucharmap")
5942 (version "3.18.0")
5943 (source
5944 (origin
5945 (method url-fetch)
5946 (uri (string-append "mirror://gnome/sources/" name "/"
5947 (version-major+minor version) "/"
5948 name "-" version ".tar.xz"))
5949 (sha256
5950 (base32
5951 "0c1q9w5vql0vvg6g0knxfnv4ap19fg5cdrwndi1cj9lsym92c78j"))))
5952 (build-system gnu-build-system)
5953 (native-inputs
5954 `(("desktop-file-utils" ,desktop-file-utils)
5955 ("glib:bin" ,glib "bin") ; for glib-compile-resources.
5956 ("gobject-introspection" ,gobject-introspection)
5957 ("intltool" ,intltool)
5958 ("itstool" ,itstool)
5959 ("pkg-config" ,pkg-config)))
5960 (inputs
5961 `(("gtk+" ,gtk+)
5962 ("xmllint" ,libxml2)))
5963 (home-page "https://wiki.gnome.org/Apps/Gucharmap")
5964 (synopsis "Unicode character picker and font browser")
5965 (description
5966 "This program allows you to browse through all the available Unicode
5967characters and categories for the installed fonts, and to examine their
5968detailed properties. It is an easy way to find the character you might
5969only know by its Unicode name or code point.")
5970 (license license:gpl3+)))
04ce840a
RS
5971
5972(define-public bluefish
5973 (package
5974 (name "bluefish")
5975 (version "2.2.9")
5976 (source
5977 (origin
5978 (method url-fetch)
5979 (uri (string-append "http://www.bennewitz.com/bluefish/stable/source/"
5980 name "-" version ".tar.gz"))
5981 (sha256
5982 (base32
5983 "1vnl6raxbvc4hacg3pr6sqyjh707d304dhk5nyhlp7m0m1y3j756"))))
5984 (build-system gnu-build-system)
5985 (native-inputs
5986 `(("desktop-file-utils" ,desktop-file-utils)
5987 ("intltool" ,intltool)
5988 ("pkg-config" ,pkg-config)))
5989 (inputs
5990 `(("enchant" ,enchant)
5991 ("gtk+" ,gtk+)
5992 ("python" ,python-2)
5993 ("xmllint" ,libxml2)
5994 ("gucharmap" ,gucharmap)))
5995 (home-page "http://bluefish.openoffice.nl")
5996 (synopsis "Web development studio")
5997 (description
5998 "Bluefish is an editor targeted towards programmers and web developers,
5999with many options to write web sites, scripts and other code.
6000Bluefish supports many programming and markup languages.")
6001 (license license:gpl3+)))
1f6a73ee
RS
6002
6003(define-public gnome-system-monitor
6004 (package
6005 (name "gnome-system-monitor")
155f0d69 6006 (version "3.24.0")
1f6a73ee
RS
6007 (source
6008 (origin
6009 (method url-fetch)
6010 (uri (string-append "mirror://gnome/sources/" name "/"
6011 (version-major+minor version) "/"
6012 name "-" version ".tar.xz"))
6013 (sha256
6014 (base32
155f0d69 6015 "1x3343hchkllj8wyifk844v8psi45kyjhphyd03fzahi4h34aay3"))))
1f6a73ee
RS
6016 (build-system glib-or-gtk-build-system)
6017 (native-inputs
6018 `(("glib:bin" ,glib "bin") ; for glib-mkenums.
6019 ("intltool" ,intltool)
6020 ("itstool" ,itstool)
6021 ("libgtop" ,libgtop)
6022 ("pkg-config" ,pkg-config)))
6023 (inputs
6024 `(("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files.
6025 ("gtk+" ,gtk+)
6026 ("gtkmm" ,gtkmm)
6027 ("librsvg" ,librsvg)
6028 ("libxml2" ,libxml2)))
6029 (home-page "https://wiki.gnome.org/Apps/SystemMonitor")
6030 (synopsis "Process viewer and system resource monitor for GNOME")
6031 (description
6032 "GNOME System Monitor is a GNOME process viewer and system monitor with
6033an attractive, easy-to-use interface. It has features, such as a tree view
6034for process dependencies, icons for processes, the ability to hide processes,
6035graphical time histories of CPU/memory/swap usage and the ability to
6036kill/reinice processes.")
6037 (license license:gpl2+)))
3e00ac47
SB
6038
6039(define-public python-pyatspi
6040 (package
6041 (name "python-pyatspi")
6042 (version "2.24.0")
6043 (source (origin
6044 (method url-fetch)
6045 (uri (string-append
6046 "mirror://gnome/sources/pyatspi/"
6047 (version-major+minor version)
6048 "/pyatspi-" version ".tar.xz"))
6049 (sha256
6050 (base32
6051 "14m6y27ziqc9f6339gjz49mlsk6mrsyg4bkj055cdzc7sfjlgvz7"))))
6052 (build-system gnu-build-system)
6053 (native-inputs
6054 `(("pkg-config" ,pkg-config)))
6055 (inputs
6056 `(("python" ,python)
6057 ("python-pygobject" ,python-pygobject)))
6058 (synopsis "Python client bindings for D-Bus AT-SPI")
6059 (home-page "https://wiki.linuxfoundation.org/accessibility\
6060/atk/at-spi/at-spi_on_d-bus")
6061 (description
6062 "This package includes a python client library for the AT-SPI D-Bus
6063accessibility infrastructure.")
6064 (license license:lgpl2.0)
6065 (properties '((upstream-name . "pyatspi")))))
53201c0d
SB
6066
6067(define-public orca
6068 (package
6069 (name "orca")
6070 (version "3.24.0")
6071 (source (origin
6072 (method url-fetch)
6073 (uri (string-append
6074 "mirror://gnome/sources/" name "/"
6075 (version-major+minor version) "/"
6076 name "-" version ".tar.xz"))
6077 (sha256
6078 (base32
6079 "1la6f815drykrgqf791jx1dda6716cfv6052frqp7nhjxr75xg97"))))
6080 (build-system glib-or-gtk-build-system)
6081 (arguments
6082 '(#:phases
6083 (modify-phases %standard-phases
6084 (add-before 'configure 'qualify-xkbcomp
6085 (lambda* (#:key inputs #:allow-other-keys)
6086 (let ((xkbcomp (string-append
6087 (assoc-ref inputs "xkbcomp") "/bin/xkbcomp")))
6088 (substitute* "src/orca/orca.py"
6089 (("'xkbcomp'") (format #f "'~a'" xkbcomp))))
6090 #t))
6091 (add-after 'install 'wrap-orca
6092 (lambda* (#:key outputs #:allow-other-keys)
6093 (let* ((out (assoc-ref outputs "out"))
6094 (prog (string-append out "/bin/orca")))
6095 (wrap-program prog
6096 `("GI_TYPELIB_PATH" ":" prefix
6097 (,(getenv "GI_TYPELIB_PATH")))
6098 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix
6099 (,(getenv "GST_PLUGIN_SYSTEM_PATH")))
6100 `("PYTHONPATH" ":" prefix
6101 (,(getenv "PYTHONPATH")))))
6102 #t)))))
6103 (native-inputs
6104 `(("intltool" ,intltool)
6105 ("itstool" ,itstool)
6106 ("pkg-config" ,pkg-config)
6107 ("xmllint" ,libxml2)))
6108 (inputs
6109 `(("at-spi2-atk" ,at-spi2-atk)
6110 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
6111 ("gstreamer" ,gstreamer)
6112 ("gst-plugins-base" ,gst-plugins-base)
6113 ("gst-plugins-good" ,gst-plugins-good)
6114 ("gtk+" ,gtk+)
6115 ("python" ,python)
6116 ("python-pygobject" ,python-pygobject)
6117 ("python-pyatspi" ,python-pyatspi)
6118 ("python-speechd" ,speech-dispatcher)
6119 ("xkbcomp" ,xkbcomp)))
6120 (synopsis
6121 "Screen reader for individuals who are blind or visually impaired")
6122 (home-page "https://wiki.gnome.org/Projects/Orca")
6123 (description
6124 "Orca is a screen reader that provides access to the graphical desktop
6125via speech and refreshable braille. Orca works with applications and toolkits
6126that support the Assistive Technology Service Provider Interface (AT-SPI).")
6127 (license license:lgpl2.1+)))
411ba511
LC
6128
6129(define-public gspell
6130 (package
6131 (name "gspell")
6132 (version "1.3.2")
6133 (source (origin
6134 (method url-fetch)
6135 (uri (string-append "mirror://gnome/sources/" name "/"
6136 (version-major+minor version) "/"
6137 name "-" version ".tar.xz"))
6138 (sha256
6139 (base32
6140 "1n4kd5i11l79h8bpvx3cz79ww0b4z89y99h4czvyg80qlarn585w"))
6141 (patches (search-patches "gspell-dash-test.patch"))))
6142 (build-system glib-or-gtk-build-system)
6143 (arguments
6144 '(#:phases
6145 (modify-phases %standard-phases
6146 (add-before 'check 'pre-check
6147 (lambda* (#:key inputs #:allow-other-keys)
6148 ;; Tests require a running X server.
6149 (system "Xvfb :1 &")
6150 (setenv "DISPLAY" ":1")
6151
6152 ;; For the missing /etc/machine-id.
6153 (setenv "DBUS_FATAL_WARNINGS" "0")
6154
6155 ;; Allow Enchant and its Aspell backend to find the en_US
6156 ;; dictionary.
6157 (setenv "ASPELL_DICT_DIR"
6158 (string-append (assoc-ref inputs "aspell-dict-en")
6159 "/lib/aspell"))
6160 #t)))))
6161 (inputs
6162 `(("enchant" ,enchant)
6163 ("iso-codes" ,iso-codes)
6164 ("gtk+" ,gtk+)
6165 ("glib" ,glib)))
6166 (native-inputs
6167 `(("glib" ,glib "bin")
6168 ("pkg-config" ,pkg-config)
6169 ("xmllint" ,libxml2)
6170
6171 ;; For tests.
6172 ("xorg-server" ,xorg-server)
6173 ("aspell-dict-en" ,aspell-dict-en)))
6174 (home-page "https://wiki.gnome.org/Projects/gspell")
6175 (synopsis "GNOME's alternative spell checker")
6176 (description
6177 "gspell provides a flexible API to add spell-checking to a GTK+
6178application. It provides a GObject API, spell-checking to text entries and
6179text views, and buttons to choose the language.")
6180 (license license:gpl2+)))