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