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