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