gnu: youtube-dl: Update to 2015.11.15.
[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>
eb497b66 3;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
29a7c98a 4;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
b38e45d8 5;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
58d32305 6;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
6f96a359 7;;; Copyright © 2015 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>
8ff49011 11;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
ba421ab7 12;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
293ff8b2 13;;; Copyright © 2015 David Thompson <davet@gnu.org>
2776d72c 14;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
995b7261
AE
15;;;
16;;; This file is part of GNU Guix.
17;;;
18;;; GNU Guix is free software; you can redistribute it and/or modify it
19;;; under the terms of the GNU General Public License as published by
20;;; the Free Software Foundation; either version 3 of the License, or (at
21;;; your option) any later version.
22;;;
23;;; GNU Guix is distributed in the hope that it will be useful, but
24;;; WITHOUT ANY WARRANTY; without even the implied warranty of
25;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26;;; GNU General Public License for more details.
27;;;
28;;; You should have received a copy of the GNU General Public License
29;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
30
31(define-module (gnu packages gnome)
b5b73a82 32 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
33 #:use-module (guix packages)
34 #:use-module (guix download)
29a7c98a 35 #:use-module (guix utils)
995b7261 36 #:use-module (guix build-system gnu)
121de2e1 37 #:use-module (guix build-system glib-or-gtk)
ed19903d 38 #:use-module (gnu packages)
75016d07 39 #:use-module (gnu packages autotools)
7b212526 40 #:use-module (gnu packages avahi)
6a180f6f 41 #:use-module (gnu packages base)
5698b8b8 42 #:use-module (gnu packages bison)
df217748 43 #:use-module (gnu packages calendar)
23a22af6 44 #:use-module (gnu packages cups)
6e1bb642
SB
45 #:use-module (gnu packages curl)
46 #:use-module (gnu packages databases)
c769cf9f 47 #:use-module (gnu packages djvu)
121de2e1 48 #:use-module (gnu packages flex)
b4ce6300 49 #:use-module (gnu packages docbook)
329d731b 50 #:use-module (gnu packages enchant)
fed5a689 51 #:use-module (gnu packages gettext)
995b7261 52 #:use-module (gnu packages glib)
c1354b90 53 #:use-module (gnu packages gnupg)
23a22af6 54 #:use-module (gnu packages gnuzilla)
85f5dc19 55 #:use-module (gnu packages gstreamer)
d9c1a22b 56 #:use-module (gnu packages gtk)
df217748 57 #:use-module (gnu packages gperf)
6b888eff 58 #:use-module (gnu packages guile)
c1354b90 59 #:use-module (gnu packages pdf)
75016d07 60 #:use-module (gnu packages polkit)
5698b8b8 61 #:use-module (gnu packages popt)
c1354b90 62 #:use-module (gnu packages ghostscript)
9cc98f8a 63 #:use-module (gnu packages iso-codes)
85f5dc19 64 #:use-module (gnu packages libcanberra)
88f70665 65 #:use-module (gnu packages linux)
75016d07 66 #:use-module (gnu packages libusb)
4e3fc547 67 #:use-module (gnu packages lirc)
7b212526 68 #:use-module (gnu packages lua)
fed5a689 69 #:use-module (gnu packages m4)
e55354b8 70 #:use-module (gnu packages image)
27477d2d 71 #:use-module (gnu packages perl)
f70d8383 72 #:use-module (gnu packages photo)
995b7261 73 #:use-module (gnu packages pkg-config)
23a22af6 74 #:use-module (gnu packages pulseaudio)
995b7261 75 #:use-module (gnu packages python)
75016d07 76 #:use-module (gnu packages scanner)
4a1bf090 77 #:use-module (gnu packages ssh)
85f5dc19 78 #:use-module (gnu packages xml)
b0f9c4b8 79 #:use-module (gnu packages geeqie)
200726ed 80 #:use-module (gnu packages gl)
fb182b8a 81 #:use-module (gnu packages qt) ; for libxkbcommon
1dd26275 82 #:use-module (gnu packages compression)
c769cf9f 83 #:use-module (gnu packages texlive)
a7fd7b68 84 #:use-module (gnu packages tls)
6e1bb642 85 #:use-module (gnu packages web)
4a79e256 86 #:use-module (gnu packages webkit)
fecbf86e 87 #:use-module (gnu packages xorg)
ea57378f 88 #:use-module (gnu packages xdisorg)
ba421ab7 89 #:use-module (gnu packages freedesktop)
1e7464a9
DH
90 #:use-module (gnu packages mail)
91 #:use-module (gnu packages backup)
92 #:use-module (gnu packages nettle)
c024ae36 93 #:use-module (gnu packages ncurses)
3dc8828f
SB
94 #:use-module (gnu packages video)
95 #:use-module (gnu packages cdrom)
96 #:use-module (gnu packages samba)
f47ba77e 97 #:use-module (gnu packages readline)
c024ae36 98 #:use-module (srfi srfi-1))
85f5dc19
AE
99
100(define-public brasero
101 (package
102 (name "brasero")
e8627cd9 103 (version "3.12.1")
85f5dc19
AE
104 (source (origin
105 (method url-fetch)
e8627cd9
DH
106 (uri (string-append "mirror://gnome/sources/" name "/"
107 (version-major+minor version) "/"
108 name "-" version ".tar.xz"))
85f5dc19
AE
109 (sha256
110 (base32
e8627cd9 111 "09vi2hyhl0bz7imv3ky6h7x5m3d546n968wcghydwrkvwm9ylpls"))))
1c40e3b7 112 (build-system glib-or-gtk-build-system)
e8627cd9
DH
113 (arguments
114 `(#:configure-flags (list
115 (string-append "--with-girdir="
116 (assoc-ref %outputs "out")
117 "/share/gir-1.0")
118 (string-append "--with-typelibdir="
119 (assoc-ref %outputs "out")
120 "/lib/girepository-1.0"))))
85f5dc19
AE
121 (propagated-inputs
122 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
123 (native-inputs
124 `(("intltool" ,intltool)
426adbe8 125 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
e8627cd9 126 ("gobject-introspection" ,gobject-introspection)
9cc98f8a 127 ("pkg-config" ,pkg-config)))
85f5dc19
AE
128 (inputs
129 `(("glib" ,glib)
130 ("gnome-doc-utils" ,gnome-doc-utils)
131 ("gstreamer" ,gstreamer)
132 ("gst-plugins-base" ,gst-plugins-base)
133 ("gtk+" ,gtk+)
85f5dc19
AE
134 ("itstool" ,itstool)
135 ("libcanberra" ,libcanberra)
136 ("libice" ,libice)
137 ("libnotify" ,libnotify)
138 ("libsm" ,libsm)
e8627cd9
DH
139 ("libxml2" ,libxml2)
140 ("nettle" ,nettle)
141 ("totem-pl-parser" ,totem-pl-parser)))
85f5dc19
AE
142 (home-page "https://projects.gnome.org/brasero/")
143 (synopsis "CD/DVD burning tool for Gnome")
144 (description "Brasero is an application to burn CD/DVD for the Gnome
145Desktop. It is designed to be as simple as possible and has some unique
146features to enable users to create their discs easily and quickly.")
1dd26275 147 (license license:gpl2+)))
995b7261 148
7aab13f1
ML
149(define-public gnome-common
150 (package
151 (name "gnome-common")
152 (version "3.14.0")
153 (source
154 (origin
155 (method url-fetch)
156 (uri (string-append "mirror://gnome/sources/" name "/"
157 (version-major+minor version) "/"
158 name "-" version ".tar.xz"))
159 (sha256
160 (base32
161 "0b1676g4q44ah73c5gwl1kg88pc93pnq1pa9kwl43d0vg0pj802c"))))
162 (build-system gnu-build-system)
163 (home-page "https://www.gnome.org/")
164 (synopsis "Bootstrap GNOME modules built from Git")
165 (description "gnome-common contains various files needed to bootstrap
166GNOME modules built from Git. It contains a common \"autogen.sh\" script that
167can be used to configure a source directory checked out from Git and some
168commonly used macros.")
169 (license license:gpl2+)))
170
9cc98f8a
CR
171(define-public gnome-desktop
172 (package
173 (name "gnome-desktop")
a8340482 174 (version "3.18.1")
9cc98f8a
CR
175 (source
176 (origin
177 (method url-fetch)
b38e45d8
EB
178 (uri (string-append "mirror://gnome/sources/" name "/"
179 (version-major+minor version) "/"
9cc98f8a
CR
180 name "-" version ".tar.xz"))
181 (sha256
182 (base32
a8340482 183 "0avpmyhzz5b3pyfpkp8iq5ym5r5w7zs3a396hqkdpdsiym0vrazc"))))
9cc98f8a
CR
184 (build-system gnu-build-system)
185 (native-inputs
a8340482
SB
186 `(("gobject-introspection" ,gobject-introspection)
187 ("itstool" ,itstool)
bcb354ad
SB
188 ("intltool" ,intltool)
189 ("pkg-config" ,pkg-config)
190 ("xmllint" ,libxml2)))
a8340482
SB
191 (propagated-inputs
192 ;; Required by gnome-desktop-3.0.pc.
193 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
194 ("gtk+" ,gtk+)))
9cc98f8a
CR
195 (inputs
196 `(("gdk-pixbuf" ,gdk-pixbuf)
197 ("glib" ,glib)
9cc98f8a 198 ("iso-codes" ,iso-codes)
9cc98f8a
CR
199 ("libx11" ,libx11)
200 ("libxext" ,libxext)
201 ("libxkbfile" ,libxkbfile)
202 ("libxrandr" ,libxrandr)
203 ("xkeyboard-config" ,xkeyboard-config)))
204 (home-page "https://www.gnome.org/")
205 (synopsis
35b9e423 206 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
207 (description
208 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
209on the desktop, but that cannot live in the platform for various reasons.
210There is no API or ABI guarantee, although we are doing our best to provide
211stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
212
213The gnome-about program helps find which version of GNOME is installed.")
214 ; Some bits under the LGPL.
1dd26275 215 (license license:gpl2+)))
9cc98f8a 216
995b7261
AE
217(define-public gnome-doc-utils
218 (package
219 (name "gnome-doc-utils")
220 (version "0.20.10")
221 (source
222 (origin
223 (method url-fetch)
b38e45d8
EB
224 (uri (string-append "mirror://gnome/sources/" name "/"
225 (version-major+minor version) "/"
995b7261
AE
226 name "-" version ".tar.xz"))
227 (sha256
228 (base32
229 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
230 (build-system gnu-build-system)
c4c4cc05 231 (native-inputs
995b7261 232 `(("intltool" ,intltool)
b4ce6300 233 ("docbook-xml" ,docbook-xml-4.4)
d80b0d4a 234 ("python2-libxml2" ,python2-libxml2)
995b7261
AE
235 ("libxml2" ,libxml2)
236 ("libxslt" ,libxslt)
237 ("pkg-config" ,pkg-config)
238 ("python-2" ,python-2)))
995b7261
AE
239 (home-page "https://wiki.gnome.org/GnomeDocUtils")
240 (synopsis
241 "Documentation utilities for the Gnome project")
242 (description
243 "Gnome-doc-utils is a collection of documentation utilities for the
244Gnome project. It includes xml2po tool which makes it easier to translate
245and keep up to date translations of documentation.")
1dd26275 246 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 247
8ff49011
RW
248(define-public gcr
249 (package
250 (name "gcr")
2af4f5b0 251 (version "3.18.0")
8ff49011
RW
252 (source (origin
253 (method url-fetch)
254 (uri (string-append "mirror://gnome/sources/" name "/"
255 (version-major+minor version) "/"
256 name "-" version ".tar.xz"))
257 (sha256
258 (base32
2af4f5b0 259 "006f6xbd3jppkf9avg83mpqdld5d0z6mr0sm81lql52mmyjnvlfl"))))
8ff49011
RW
260 (build-system gnu-build-system)
261 (arguments
262 '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
263 ;not exist
264 #:phases (modify-phases %standard-phases
265 (add-before
266 'check 'pre-check
267 (lambda* (#:key inputs #:allow-other-keys)
268 (substitute* "build/tap-driver"
269 (("/usr/bin/env python") (which "python"))))))))
270 (inputs
271 `(("dbus" ,dbus)
272 ("gnupg" ,gnupg) ;called as a child process during tests
273 ("libgcrypt" ,libgcrypt)))
274 (native-inputs
275 `(("python" ,python-2) ;for tests
276 ("pkg-config" ,pkg-config)
277 ("glib" ,glib "bin")
2af4f5b0
SB
278 ("gobject-introspection" ,gobject-introspection)
279 ("intltool" ,intltool)
280 ("xsltproc" ,libxslt)))
8ff49011
RW
281 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
282 (propagated-inputs
283 `(("p11-kit" ,p11-kit)
284 ("glib" ,glib)
285 ("gtk+" ,gtk+)))
286 (home-page "http://www.gnome.org")
287 (synopsis "Libraries for displaying certificates and accessing key stores")
288 (description
289 "The GCR package contains libraries used for displaying certificates and
290accessing key stores. It also provides the viewer for crypto files on the
291GNOME Desktop.")
292 (license license:lgpl2.1+)))
293
c1354b90
LC
294(define-public libgnome-keyring
295 (package
296 (name "libgnome-keyring")
297 (version "3.6.0")
298 (source (origin
299 (method url-fetch)
b38e45d8
EB
300 (uri (string-append "mirror://gnome/sources/" name "/"
301 (version-major+minor version) "/"
302 name "-" version ".tar.xz"))
c1354b90
LC
303 (sha256
304 (base32
305 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
306 (build-system gnu-build-system)
c1354b90 307 (inputs
c4c4cc05 308 `(("libgcrypt" ,libgcrypt)
c1354b90 309 ("dbus" ,dbus)))
c4c4cc05
JD
310 (native-inputs
311 `(("pkg-config" ,pkg-config)
426adbe8 312 ("glib" ,glib "bin")
c4c4cc05 313 ("intltool" ,intltool)))
c1354b90
LC
314 (propagated-inputs
315 ;; Referred to in .h files and .pc.
316 `(("glib" ,glib)))
317 (home-page "http://www.gnome.org")
318 (synopsis "Accessing passwords from the GNOME keyring")
319 (description
320 "Client library to access passwords from the GNOME keyring.")
321
322 ;; Though a couple of files are LGPLv2.1+.
1dd26275 323 (license license:lgpl2.0+)))
c1354b90 324
e99a3d6f
RW
325(define-public gnome-keyring
326 (package
327 (name "gnome-keyring")
328 (version "3.16.0")
329 (source (origin
330 (method url-fetch)
331 (uri (string-append "mirror://gnome/sources/" name "/"
332 (version-major+minor version) "/"
333 name "-" version ".tar.xz"))
334 (sha256
335 (base32
336 "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm"))))
337 (build-system gnu-build-system)
338 (arguments
339 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
340 ;not exist
341 #:configure-flags
342 (list
343 (string-append "--with-pkcs11-config="
344 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
345 (string-append "--with-pkcs11-modules="
346 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
347 #:phases
348 (modify-phases %standard-phases
349 (add-before
350 'check 'pre-check
351 (lambda* (#:key inputs #:allow-other-keys)
352 (substitute* "build/tap-driver"
353 (("/usr/bin/env python") (which "python")))))
354 (add-before
355 'configure 'fix-docbook
356 (lambda* (#:key inputs #:allow-other-keys)
357 (substitute* "docs/Makefile.am"
358 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
359 (string-append (assoc-ref inputs "docbook-xsl")
360 "/xml/xsl/docbook-xsl-"
361 ,(package-version docbook-xsl)
362 "/manpages/docbook.xsl")))
363 (setenv "XML_CATALOG_FILES"
364 (string-append (assoc-ref inputs "docbook-xml")
365 "/xml/dtd/docbook/catalog.xml")))))))
366 (inputs
367 `(("libgcrypt" ,libgcrypt)
368 ("dbus" ,dbus)
369 ("gcr" ,gcr)))
370 (native-inputs
371 `(("pkg-config" ,pkg-config)
372 ("glib" ,glib "bin")
373 ("python" ,python-2) ;for tests
374 ("intltool" ,intltool)
375 ("autoconf" ,autoconf)
376 ("automake" ,automake)
377 ("libxslt" ,libxslt) ;for documentation
378 ("docbook-xml" ,docbook-xml-4.2)
379 ("docbook-xsl" ,docbook-xsl)))
380 (home-page "http://www.gnome.org")
381 (synopsis "Daemon to store passwords and encryption keys")
382 (description
383 "gnome-keyring is a program that keeps passwords and other secrets for
384users. It is run as a daemon in the session, similar to ssh-agent, and other
385applications locate it via an environment variable or D-Bus.
386
387The program can manage several keyrings, each with its own master password,
388and there is also a session keyring which is never stored to disk, but
389forgotten when the session ends.")
390 (license license:lgpl2.1+)))
391
c1354b90
LC
392(define-public evince
393 (package
394 (name "evince")
c3b9d75f 395 (version "3.18.1")
c1354b90
LC
396 (source (origin
397 (method url-fetch)
b38e45d8
EB
398 (uri (string-append "mirror://gnome/sources/" name "/"
399 (version-major+minor version) "/"
400 name "-" version ".tar.xz"))
c1354b90
LC
401 (sha256
402 (base32
c3b9d75f 403 "0cccmbvl1b6d2976642iyfr8g3r69zf3mzl2ln6vjvvdbrv26l3v"))))
121de2e1 404 (build-system glib-or-gtk-build-system)
c1354b90
LC
405 (arguments
406 `(#:configure-flags '("--disable-nautilus")
407
408 ;; FIXME: Tests fail with:
409 ;; ImportError: No module named gi.repository
410 ;; Where should that module come from?
3d243e9c 411 #:tests? #f))
c1354b90
LC
412 (inputs
413 `(("libspectre" ,libspectre)
c769cf9f 414 ("djvulibre" ,djvulibre)
c1354b90
LC
415 ("ghostscript" ,ghostscript)
416 ("poppler" ,poppler)
c769cf9f
SB
417 ("libtiff" ,libtiff)
418 ;; TODO:
419 ;; Add libgxps for XPS support.
420 ;; Build libkpathsea as a shared library for DVI support.
421 ;; ("libkpathsea" ,texlive-bin)
422 ("gnome-desktop" ,gnome-desktop)
c1354b90
LC
423 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
424 ("libgnome-keyring" ,libgnome-keyring)
c769cf9f 425 ("adwaita-icon-theme" ,adwaita-icon-theme)
c1354b90
LC
426 ("gdk-pixbuf" ,gdk-pixbuf)
427 ("atk" ,atk)
428 ("pango" ,pango)
429 ("gtk+" ,gtk+)
430 ("glib" ,glib)
431 ("libxml2" ,libxml2)
c1354b90
LC
432 ("libsm" ,libsm)
433 ("libice" ,libice)
96e42467 434 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
435 ("dconf" ,dconf)
436 ("libcanberra" ,libcanberra)
c769cf9f 437 ("libsecret" ,libsecret)
c1354b90
LC
438 ;; For tests.
439 ("dogtail" ,python2-dogtail)))
96e42467 440 (native-inputs
bcb354ad
SB
441 `(("itstool" ,itstool)
442 ("intltool" ,intltool)
426adbe8 443 ("glib" ,glib "bin")
bcb354ad
SB
444 ("pkg-config" ,pkg-config)
445 ("xmllint" ,libxml2)))
c1354b90
LC
446 (home-page
447 "http://www.gnome.org/projects/evince/")
448 (synopsis "GNOME's document viewer")
449 (description
450 "Evince is a document viewer for multiple document formats. It
451currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
452of Evince is to replace the multiple document viewers that exist
96e42467 453on the GNOME Desktop with a single simple application.")
1dd26275 454 (license license:gpl2+)))
c1354b90 455
22e32e69
AE
456(define-public gsettings-desktop-schemas
457 (package
458 (name "gsettings-desktop-schemas")
3e429a86 459 (version "3.18.0")
22e32e69
AE
460 (source
461 (origin
462 (method url-fetch)
463 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 464 (version-major+minor version) "/"
22e32e69
AE
465 name "-" version ".tar.xz"))
466 (sha256
467 (base32
3e429a86 468 "1szc857f46spdhrbnq9ci3kwfqg5vwpikbf0hprq6vd94rr369xs"))))
22e32e69
AE
469 (build-system gnu-build-system)
470 (inputs
c4c4cc05
JD
471 `(("glib" ,glib)))
472 (native-inputs
473 `(("intltool" ,intltool)
426adbe8 474 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 475 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
476 ("pkg-config" ,pkg-config)))
477 (home-page "https://launchpad.net/gsettings-desktop-schemas")
478 (synopsis
479 "GNOME settings for various desktop components")
480 (description
481 "Gsettings-desktop-schemas contains a collection of GSettings schemas
482for settings shared by various components of the GNOME desktop.")
1dd26275 483 (license license:lgpl2.1+)))
22e32e69 484
27477d2d
AE
485(define-public icon-naming-utils
486 (package
487 (name "icon-naming-utils")
488 (version "0.8.90")
489 (source
490 (origin
491 (method url-fetch)
492 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
493 version ".tar.bz2"))
494 (sha256
495 (base32
496 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
497 (build-system gnu-build-system)
498 (inputs
499 `(("perl" ,perl)
500 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
501 (arguments
502 '(#:phases
503 (alist-cons-after
504 'install 'set-load-paths
505 ;; Tell 'icon-name-mapping' where XML::Simple is.
506 (lambda* (#:key outputs #:allow-other-keys)
507 (let* ((out (assoc-ref outputs "out"))
508 (prog (string-append out "/libexec/icon-name-mapping")))
509 (wrap-program
510 prog
511 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
512 %standard-phases)))
27477d2d
AE
513 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
514 (synopsis
515 "Utility to implement the Freedesktop Icon Naming Specification")
516 (description
517 "To help with the transition to the Freedesktop Icon Naming
518Specification, the icon naming utility maps the icon names used by the
519GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 520 (license license:lgpl2.1+)))
27477d2d 521
686e025d
SB
522(define-public desktop-file-utils
523 (package
524 (name "desktop-file-utils")
525 (version "0.22")
526 (source (origin
527 (method url-fetch)
528 (uri (string-append "http://www.freedesktop.org/software/" name
529 "/releases/" name "-" version ".tar.xz"))
530 (sha256
531 (base32
532 "1ianvr2a69yjv4rpyv30w7yjsmnsb23crrka5ndqxycj4rkk4dc4"))))
533 (build-system gnu-build-system)
534 (native-inputs
535 `(("pkg-config" ,pkg-config)))
536 (inputs
537 `(("glib" ,glib)))
538 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
539 (synopsis "Utilities for working with desktop entries")
540 (description
541 "This package contains a few command line utilities for working with
542desktop entries:
543
544desktop-file-validate: validates a desktop file and prints warnings/errors
545 about desktop entry specification violations.
546
547desktop-file-install: installs a desktop file to the applications directory,
548 optionally munging it a bit in transit.
549
550update-desktop-database: updates the database containing a cache of MIME types
551 handled by desktop files.")
552 (license license:gpl2+)))
553
7d3f3651
AE
554(define-public gnome-icon-theme
555 (package
556 (name "gnome-icon-theme")
b32f58dd 557 (version "3.12.0")
7d3f3651
AE
558 (source
559 (origin
560 (method url-fetch)
561 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 562 (version-major+minor version) "/"
7d3f3651
AE
563 name "-" version ".tar.xz"))
564 (sha256
565 (base32
b32f58dd 566 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
7d3f3651 567 (build-system gnu-build-system)
c4c4cc05 568 (native-inputs
73b6cf42
SB
569 `(("gtk+" ,gtk+) ; for gtk-update-icon-cache
570 ("icon-naming-utils" ,icon-naming-utils)
571 ("intltool" ,intltool)
572 ("pkg-config" ,pkg-config)))
7d3f3651
AE
573 (home-page "http://art.gnome.org/")
574 (synopsis
575 "GNOME icon theme")
576 (description
577 "Icons for the GNOME desktop.")
1dd26275 578 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 579
14eeefa2
SB
580;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
581(define-public adwaita-icon-theme
582 (package (inherit gnome-icon-theme)
583 (name "adwaita-icon-theme")
584 (version "3.16.2")
585 (source (origin
586 (method url-fetch)
587 (uri (string-append "mirror://gnome/sources/" name "/"
588 (version-major+minor version) "/"
589 name "-" version ".tar.xz"))
590 (sha256
591 (base32
592 "1hmlw7kvhr7c2asc5y77adpymi9ka17gaf76zz835nwwffnn4rlw"))))))
593
9167f8e6
LC
594(define-public shared-mime-info
595 (package
596 (name "shared-mime-info")
597 (version "1.2")
598 (source (origin
599 (method url-fetch)
b38e45d8
EB
600 (uri (string-append "http://freedesktop.org/~hadess/"
601 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
602 (sha256
603 (base32
604 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
605 (build-system gnu-build-system)
606 (arguments
607 ;; The build system appears not to be parallel-safe.
608 '(#:parallel-build? #f))
609 (inputs
610 `(("glib" ,glib)
c4c4cc05 611 ("libxml2" ,libxml2)))
9167f8e6 612 (native-inputs
c4c4cc05
JD
613 `(("intltool" ,intltool)
614 ("pkg-config" ,pkg-config)))
9167f8e6
LC
615 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
616 (synopsis "Database of common MIME types")
617 (description
618 "The shared-mime-info package contains the core database of common types
619and the update-mime-database command used to extend it. It requires glib2 to
620be installed for building the update command. Additionally, it uses intltool
621for translations, though this is only a dependency for the maintainers. This
622database is translated at Transifex.")
1dd26275 623 (license license:gpl2+)))
9167f8e6 624
bef4dd92
AE
625(define-public hicolor-icon-theme
626 (package
627 (name "hicolor-icon-theme")
628 (version "0.12")
629 (source
630 (origin
631 (method url-fetch)
b38e45d8
EB
632 (uri (string-append "http://icon-theme.freedesktop.org/releases/"
633 "hicolor-icon-theme-" version ".tar.gz"))
bef4dd92
AE
634 (sha256
635 (base32
636 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
637 (build-system gnu-build-system)
638 (arguments
639 `(#:tests? #f)) ; no check target
640 (home-page "http://icon-theme.freedesktop.org/releases/")
641 (synopsis
642 "Freedesktop icon theme")
643 (description
644 "Freedesktop icon theme.")
1dd26275 645 (license license:gpl2)))
bef4dd92 646
d9c1a22b
AE
647(define-public libnotify
648 (package
649 (name "libnotify")
650 (version "0.7.6")
651 (source
652 (origin
653 (method url-fetch)
654 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 655 (version-major+minor version) "/"
d9c1a22b
AE
656 name "-" version ".tar.xz"))
657 (sha256
658 (base32
659 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
660 (build-system gnu-build-system)
661 (inputs
662 `(("gdk-pixbuf" ,gdk-pixbuf)
663 ("glib" ,glib)
664 ("gtk+" ,gtk+)
c4c4cc05
JD
665 ("libpng" ,libpng)))
666 (native-inputs
426adbe8
LC
667 `(("pkg-config" ,pkg-config)
668 ("glib" ,glib "bin")))
d9c1a22b
AE
669 (home-page "https://developer-next.gnome.org/libnotify/")
670 (synopsis
671 "GNOME desktop notification library")
672 (description
673 "Libnotify is a library that sends desktop notifications to a
35b9e423 674notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
675notifications can be used to inform the user about an event or display
676some form of information without getting in the user's way.")
1dd26275 677 (license license:lgpl2.1+)))
7a8605ce
CR
678
679(define-public libpeas
680 (package
681 (name "libpeas")
835ed74b 682 (version "1.16.0")
7a8605ce
CR
683 (source
684 (origin
685 (method url-fetch)
686 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 687 (version-major+minor version) "/"
7a8605ce
CR
688 name "-" version ".tar.xz"))
689 (sha256
690 (base32
835ed74b 691 "0kj5n5hz93xq7qdb2r7n86nibzwqjr88jxaih1fdbxv5rn7014xh"))))
7a8605ce 692 (build-system gnu-build-system)
7a8605ce
CR
693 (inputs
694 `(("atk" ,atk)
695 ("gdk-pixbuf" ,gdk-pixbuf)
696 ("glib" ,glib)
7a8605ce 697 ("gtk+" ,gtk+)
141aed80
LC
698 ("pango" ,pango)))
699 (native-inputs
700 `(("pkg-config" ,pkg-config)
93622993 701 ("glib:bin" ,glib "bin")
141aed80
LC
702 ("gobject-introspection" ,gobject-introspection)
703 ("intltool" ,intltool)))
7a8605ce
CR
704 (home-page "https://wiki.gnome.org/Libpeas")
705 (synopsis "GObject plugin system")
706 (description
35b9e423 707 "Libpeas is a gobject-based plugins engine, and is targetted at giving
7a8605ce
CR
708every application the chance to assume its own extensibility. It also has a
709set of features including, but not limited to: multiple extension points; on
710demand (lazy) programming language support for C, Python and JS; simplicity of
e881752c 711the API.")
1dd26275 712 (license license:lgpl2.0+)))
ed19903d
JD
713
714(define-public gtkglext
715 (package
716 (name "gtkglext")
717 (version "1.2.0")
718 (source (origin
719 (method url-fetch)
720 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
721 version "/gtkglext-" version ".tar.gz"))
722 (sha256
723 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
724 (patches (list
ed19903d
JD
725 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
726 (build-system gnu-build-system)
727 (inputs `(("gtk+" ,gtk+-2)
728 ("mesa" ,mesa)
cc8b02f4 729 ("glu" ,glu)
ed19903d
JD
730 ("libx11" ,libx11)
731 ("libxt" ,libxt)))
426adbe8
LC
732 (native-inputs `(("pkg-config" ,pkg-config)
733 ("glib" ,glib "bin")))
a83b6a06 734 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 735 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 736 (synopsis "OpenGL extension to GTK+")
35b9e423 737 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
738additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
739API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 740 (license license:lgpl2.1+)))
3600420e
JD
741
742(define-public glade3
743 (package
744 (name "glade")
745 (version "3.8.4")
b38e45d8
EB
746 (source (origin
747 (method url-fetch)
748 (uri (string-append "mirror://gnome/sources/" name "/"
749 (version-major+minor version) "/"
750 name "3-" version ".tar.xz"))
3600420e
JD
751 (sha256
752 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
753 (build-system gnu-build-system)
754 (inputs
755 `(("gtk+" ,gtk+-2)
756 ("libxml2" ,libxml2)))
757 (native-inputs
758 `(("intltool" ,intltool)
759 ("python" ,python)
760 ("pkg-config" ,pkg-config)))
761 (home-page "https://glade.gnome.org")
762 (synopsis "GTK+ rapid application development tool")
763 (description "Glade is a rapid application development (RAD) tool to
764enable quick & easy development of user interfaces for the GTK+ toolkit and
765the GNOME desktop environment.")
1dd26275
LC
766 (license license:lgpl2.0+)))
767
768(define-public libcroco
769 (package
770 (name "libcroco")
771 (version "0.6.8")
772 (source (origin
773 (method url-fetch)
b38e45d8
EB
774 (uri (string-append "mirror://gnome/sources/" name "/"
775 (version-major+minor version) "/"
776 name "-" version ".tar.xz"))
1dd26275
LC
777 (sha256
778 (base32
779 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
780 (build-system gnu-build-system)
781 (native-inputs
782 `(("pkg-config" ,pkg-config)))
783 (inputs
784 `(("glib" ,glib)
785 ("libxml2" ,libxml2)
786 ("zlib" ,zlib)))
787 (home-page "https://github.com/GNOME/libcroco")
788 (synopsis "CSS2 parsing and manipulation library")
789 (description
790 "Libcroco is a standalone CSS2 parsing and manipulation library.
791The parser provides a low level event driven SAC-like API and a CSS object
792model like API. Libcroco provides a CSS2 selection engine and an experimental
793XML/CSS rendering engine.")
794
795 ;; LGPLv2.1-only.
796 (license license:lgpl2.1)))
25178594
LC
797
798(define-public libgsf
799 (package
800 (name "libgsf")
4ea50f2b 801 (version "1.14.34")
25178594
LC
802 (source (origin
803 (method url-fetch)
b38e45d8
EB
804 (uri (string-append "mirror://gnome/sources/" name "/"
805 (version-major+minor version) "/"
806 name "-" version ".tar.xz"))
25178594
LC
807 (sha256
808 (base32
4ea50f2b 809 "0a5m1i5gp4m2z0cn2x1rrdm8wgrr04bzv65l8pgp6jipw13s9zph"))))
25178594
LC
810 (build-system gnu-build-system)
811 (native-inputs
812 `(("intltool" ,intltool)
813 ("pkg-config" ,pkg-config)))
814 (inputs
815 `(("python" ,python)
816 ("zlib" ,zlib)
817 ("bzip2" ,bzip2)))
818 (propagated-inputs
819 `(("gdk-pixbuf" ,gdk-pixbuf)
820 ("glib" ,glib)
821 ("libxml2" ,libxml2)))
822 (home-page "http://www.gnome.org/projects/libgsf")
823 (synopsis "GNOME's Structured File Library")
824 (description
825 "Libgsf aims to provide an efficient extensible I/O abstraction for
826dealing with different structured file formats.")
827
828 ;; LGPLv2.1-only.
829 (license license:lgpl2.1)))
63016e7c
LC
830
831(define-public librsvg
832 (package
833 (name "librsvg")
f43c0e9c 834 (version "2.40.11")
63016e7c
LC
835 (source (origin
836 (method url-fetch)
b38e45d8
EB
837 (uri (string-append "mirror://gnome/sources/" name "/"
838 (version-major+minor version) "/"
839 name "-" version ".tar.xz"))
63016e7c
LC
840 (sha256
841 (base32
5f37e56b
SB
842 "00ifd9wjjjsw0ybk5j6qs4yyh66jj34hjmggy6dhrgfy8ksw06k1"))
843 (patches
844 (list (search-patch "librsvg-tests.patch")))))
63016e7c
LC
845 (build-system gnu-build-system)
846 (arguments
ce2df078 847 `(#:phases
63016e7c
LC
848 (alist-cons-before
849 'configure 'augment-gir-search-path
850 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
851 (substitute* "gdk-pixbuf-loader/Makefile.in"
852 ;; By default the gdk-pixbuf loader is installed under
853 ;; gdk-pixbuf's prefix. Work around that.
854 (("gdk_pixbuf_moduledir = .*$")
855 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 856 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c
LC
857 "loaders\n"))
858 ;; Likewise, create a separate 'loaders.cache' file.
859 (("gdk_pixbuf_cache_file = .*$")
860 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
cd14b5e3
FB
861 (alist-cons-after
862 'install 'generate-full-cache
863 (lambda* (#:key inputs outputs #:allow-other-keys)
2e6ecc5c 864 (let ((loaders-directory
cd14b5e3 865 (string-append (assoc-ref outputs "out")
dc67ebd2 866 "/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
cd14b5e3 867 (zero?
2e6ecc5c
AE
868 (system
869 (string-append
870 "gdk-pixbuf-query-loaders "
cd14b5e3 871 loaders-directory "/libpixbufloader-svg.so "
2e6ecc5c 872 (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
cd14b5e3
FB
873 "libpixbufloader-.*\\.so") " ")
874 "> " loaders-directory ".cache")))))
b19d6805 875 %standard-phases))))
63016e7c
LC
876 (native-inputs
877 `(("pkg-config" ,pkg-config)
44add1ce 878 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
879 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
880 (inputs
881 `(("pango" ,pango)
882 ("libcroco" ,libcroco)
883 ("bzip2" ,bzip2)
884 ("libgsf" ,libgsf)
885 ("libxml2" ,libxml2)))
886 (propagated-inputs
887 ;; librsvg-2.0.pc refers to all of that.
888 `(("cairo" ,cairo)
889 ("gdk-pixbuf" ,gdk-pixbuf)
890 ("glib" ,glib)))
891 (home-page "https://wiki.gnome.org/LibRsvg")
892 (synopsis "Render SVG files using Cairo")
893 (description
35b9e423 894 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
895library.")
896 (license license:lgpl2.0+)))
5698b8b8
JD
897
898(define-public libidl
899 (package
900 (name "libidl")
901 (version "0.8.14")
902 (source (origin
903 (method url-fetch)
904 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
905 (string-append "mirror://gnome/sources/" upstream-name "/"
906 (version-major+minor version) "/"
907 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
908 (sha256
909 (base32
910 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
911 (build-system gnu-build-system)
912 (inputs `(("glib" ,glib)))
913 (native-inputs
914 `(("pkg-config" ,pkg-config)
915 ("flex", flex)
916 ("bison" ,bison)))
917 (home-page "http://freecode.com/projects/libidl")
918 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 919 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
920Definition Language (idl) files, which is a specification for defining
921portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 922GNOME project, and the primary means of libidl distribution). However, the
2e6ecc5c 923functionality was designed to be as reusable and portable as possible.")
5698b8b8
JD
924 (license license:lgpl2.0+)))
925
926
927(define-public orbit2
928 (package
929 (name "orbit2")
930 (version "2.14.19")
931 (source (origin
932 (method url-fetch)
2e6ecc5c 933 (uri (let ((upstream-name "ORBit2"))
a124bbd2 934 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
935 (version-major+minor version) "/"
936 upstream-name "-" version ".tar.bz2")))
5698b8b8 937 (sha256
a124bbd2
SB
938 (base32
939 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
5698b8b8
JD
940 (build-system gnu-build-system)
941 (arguments
a124bbd2
SB
942 `(#:configure-flags
943 ;; The programmer kindly gives us a hook to turn off deprecation
944 ;; warnings ...
945 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
946 ;; ... which they then completly ignore !!
947 #:phases
948 (alist-cons-before
949 'configure 'ignore-deprecations
950 (lambda _
951 (substitute* "linc2/src/Makefile.in"
952 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
953 %standard-phases)))
5698b8b8
JD
954 (inputs `(("glib" ,glib)
955 ("libidl" ,libidl)))
956 (native-inputs
957 `(("pkg-config" ,pkg-config)))
958 (home-page "https://projects.gnome.org/orbit2/")
959 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 960 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
2e6ecc5c 961featuring mature C, C++ and Python bindings.")
a124bbd2
SB
962 ;; Licence notice is unclear. The Web page simply say "GPL" without giving
963 ;; a version. SOME of the code files have licence notices for GPLv2+.
964 ;; The tarball contains files of the text of GPLv2 and LGPLv2.
2e6ecc5c 965 (license license:gpl2+)))
5698b8b8
JD
966
967
968(define-public libbonobo
969 (package
970 (name "libbonobo")
971 (version "2.32.1")
972 (source (origin
973 (method url-fetch)
5becd025 974 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 975 (version-major+minor version)
5becd025 976 "/" name "-" version ".tar.bz2"))
5698b8b8 977 (sha256
f1fc45a9
EB
978 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
979 (patches (list (search-patch "libbonobo-activation-test-race.patch")))))
5698b8b8
JD
980 (build-system gnu-build-system)
981 (arguments
982 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
983 `(#:configure-flags
984 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
985 ;; ... which they then completly ignore !!
986 #:phases
987 (alist-cons-before
988 'configure 'ignore-deprecations
989 (lambda _
990 (substitute* "activation-server/Makefile.in"
991 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
992 %standard-phases)))
5698b8b8
JD
993 (inputs `(("popt" ,popt)
994 ("libxml2" ,libxml2)))
995 ;; The following are Required by the .pc file
44add1ce 996 (propagated-inputs
5698b8b8
JD
997 `(("glib" ,glib)
998 ("orbit2" ,orbit2)))
999 (native-inputs
1000 `(("intltool" ,intltool)
1001 ("pkg-config" ,pkg-config)
221ed17a 1002 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1003 ("flex" ,flex)
1004 ("bison" ,bison)))
1005 (home-page "https://developer.gnome.org/libbonobo/")
1006 (synopsis "Framework for creating reusable components for use in GNOME applications")
1007 (description "Bonobo is a framework for creating reusable components for
2e6ecc5c 1008use in GNOME applications, built on top of CORBA.")
5698b8b8
JD
1009 ;; Licence not explicitly stated. Source files contain no licence notices.
1010 ;; Tarball contains text of both GPLv2 and LGPLv2
1011 ;; GPLv2 covers both conditions
1012 (license license:gpl2+)))
1013
1014
1015(define-public gconf
1016 (package
1017 (name "gconf")
1018 (version "3.2.6")
1019 (source (origin
1020 (method url-fetch)
a124bbd2
SB
1021 (uri
1022 (let ((upstream-name "GConf"))
1023 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1024 (version-major+minor version) "/"
1025 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
1026 (sha256
1027 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
1028 (build-system gnu-build-system)
2e88d113 1029 (inputs `(("dbus-glib" ,dbus-glib)
5698b8b8 1030 ("libxml2" ,libxml2)))
2e6ecc5c
AE
1031 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
1032 ("orbit2" ,orbit2)))
5698b8b8
JD
1033 (native-inputs
1034 `(("intltool" ,intltool)
221ed17a 1035 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1036 ("pkg-config" ,pkg-config)))
1037 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
1038 (synopsis "Store application preferences")
1039 (description "Gconf is a system for storing application preferences. It
1040is intended for user preferences; not arbitrary data storage.")
2e6ecc5c 1041 (license license:lgpl2.0+)))
5698b8b8
JD
1042
1043
1044(define-public gnome-mime-data
1045 (package
1046 (name "gnome-mime-data")
1047 (version "2.18.0")
1048 (source (origin
1049 (method url-fetch)
b38e45d8
EB
1050 (uri (string-append "mirror://gnome/sources/" name "/"
1051 (version-major+minor version) "/"
1052 name "-" version ".tar.bz2"))
5698b8b8
JD
1053 (sha256
1054 (base32
1055 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
1056 (build-system gnu-build-system)
1057 (native-inputs
1058 `(("perl" ,perl)
1059 ("intltool" ,intltool)))
1060 (home-page "http://www.gnome.org")
35b9e423 1061 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
1062 (description "GNOME Mime Data is a module which contains the base MIME
1063and Application database for GNOME. The data stored by this module is
1064designed to be accessed through the MIME functions in GnomeVFS.")
1065 (license license:gpl2+)))
1066
1067
1068(define-public gnome-vfs
1069 (package
1070 (name "gnome-vfs")
1071 (version "2.24.4")
1072 (source (origin
1073 (method url-fetch)
b38e45d8
EB
1074 (uri (string-append "mirror://gnome/sources/" name "/"
1075 (version-major+minor version) "/"
1076 name "-" version ".tar.bz2"))
5698b8b8 1077 (sha256
9e12bc34
MW
1078 (base32
1079 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
5698b8b8
JD
1080 (build-system gnu-build-system)
1081 (arguments
db5127d8 1082 `(#:phases
9e12bc34
MW
1083 (alist-cons-before
1084 'configure 'ignore-deprecations
1085 (lambda _
1086 (substitute* '("libgnomevfs/Makefile.in"
1087 "daemon/Makefile.in")
1088 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1089 #t)
db5127d8
MW
1090 (alist-cons-before
1091 'configure 'patch-test-async-cancel-to-never-fail
1092 (lambda _
1093 (substitute* "test/test-async-cancel.c"
1094 (("EXIT_FAILURE") "77")))
1095 %standard-phases))))
2e6ecc5c 1096 (inputs `(("libxml2" ,libxml2)
5698b8b8 1097 ("dbus-glib" ,dbus-glib)
5698b8b8
JD
1098 ("gconf" ,gconf)
1099 ("gnome-mime-data" ,gnome-mime-data)
1100 ("zlib" ,zlib)))
1101 (native-inputs
221ed17a
EB
1102 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1103 ("intltool" ,intltool)
5698b8b8
JD
1104 ("pkg-config" ,pkg-config)))
1105 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 1106 (synopsis "Access files and folders in GNOME applications")
9e12bc34
MW
1107 (description
1108 "GnomeVFS is the core library used to access files and folders in GNOME
1109applications. It provides a file system abstraction which allows applications
1110to access local and remote files with a single consistent API.")
5698b8b8
JD
1111 (license license:lgpl2.0+)))
1112
1113
1114
1115(define-public libgnome
1116 (package
1117 (name "libgnome")
1118 (version "2.32.1")
1119 (source (origin
1120 (method url-fetch)
b38e45d8
EB
1121 (uri (string-append "mirror://gnome/sources/" name "/"
1122 (version-major+minor version) "/"
1123 name "-" version ".tar.bz2"))
5698b8b8
JD
1124 (sha256
1125 (base32
1126 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1127 (build-system gnu-build-system)
1128 (arguments
1129 `(#:phases
1130 (alist-cons-before
1131 'configure 'enable-deprecated
2e6ecc5c 1132 (lambda _
5698b8b8
JD
1133 (substitute* "libgnome/Makefile.in"
1134 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1135 %standard-phases)))
25338e9f 1136 (inputs `(("libxml2" ,libxml2)))
5698b8b8 1137 (native-inputs
221ed17a
EB
1138 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1139 ("intltool" ,intltool)
5698b8b8
JD
1140 ("pkg-config" ,pkg-config)))
1141 ;; The following are listed as Required in the .pc file
1142 ;; (except for libcanberra -- which seems to be oversight on the part
1143 ;; of the upstream developers -- anything that links against libgnome,
1144 ;; must also link against libcanberra
1145 (propagated-inputs
1146 `(("libcanberra" ,libcanberra)
1147 ("libbonobo" ,libbonobo)
1148 ("gconf" ,gconf)
a640d3d5
LC
1149 ("gnome-vfs" ,gnome-vfs)
1150 ("popt" ,popt))) ;gnome-program.h includes popt.h
5698b8b8
JD
1151 (home-page "https://developer.gnome.org/libgnome/")
1152 (synopsis "Useful routines for building applications")
1153 (description "The libgnome library provides a number of useful routines
1154for building modern applications, including session management, activation of
1155files and URIs, and displaying help.")
1156 (license license:lgpl2.0+)))
1157
1158
1159(define-public libart-lgpl
1160 (package
1161 (name "libart-lgpl")
76c9b6aa 1162 (version "2.3.21")
5698b8b8
JD
1163 (source (origin
1164 (method url-fetch)
1165 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
1166 (string-append "mirror://gnome/sources/" upstream-name "/"
1167 (version-major+minor version) "/"
1168 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1169 (sha256
1170 (base32
76c9b6aa 1171 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
1172 (build-system gnu-build-system)
1173 (native-inputs
1174 `(("pkg-config" ,pkg-config)))
1175 (home-page "https://people.gnome.org/~mathieu/libart")
1176 (synopsis "2D drawing library")
2e6ecc5c 1177 (description "Libart is a 2D drawing library intended as a
5698b8b8
JD
1178high-quality vector-based 2D library with antialiasing and alpha composition.")
1179 (license license:lgpl2.0+)))
1180
1181
1182
1183(define-public libgnomecanvas
1184 (package
1185 (name "libgnomecanvas")
1186 (version "2.30.3")
1187 (source (origin
1188 (method url-fetch)
b38e45d8
EB
1189 (uri (string-append "mirror://gnome/sources/" name "/"
1190 (version-major+minor version) "/"
1191 name "-" version ".tar.gz"))
5698b8b8
JD
1192 (sha256
1193 (base32
1194 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1195 (build-system gnu-build-system)
1196 ;; Mentioned as Required in the .pc file
1197 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1198 ("gtk+" ,gtk+-2)))
1199 (native-inputs
1200 `(("intltool" ,intltool)
221ed17a 1201 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1202 ("pkg-config" ,pkg-config)))
1203 (home-page "https://developer.gnome.org/libgnomecanvas/")
1204 (synopsis "Flexible widget for creating interactive structured graphics")
1205 (description "The GnomeCanvas widget provides a flexible widget for
1206creating interactive structured graphics.")
1207 (license license:lgpl2.0+)))
1208
eadc734e
RW
1209(define-public libgnomecanvasmm
1210 (package
1211 (name "libgnomecanvasmm")
1212 (version "2.26.0")
1213 (source (origin
1214 (method url-fetch)
1215 (uri (string-append "mirror://gnome/sources/" name "/"
1216 (version-major+minor version) "/"
1217 name "-" version ".tar.bz2"))
1218 (sha256
1219 (base32
1220 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1221 (build-system gnu-build-system)
6e4512c4
SB
1222 (arguments
1223 '(#:configure-flags '("CXXFLAGS=-std=c++11"))) ; required by gtkmm
eadc734e
RW
1224 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1225 (native-inputs
1226 `(("gtkmm-2" ,gtkmm-2)
1227 ("pkg-config" ,pkg-config)))
1228 (home-page "http://gtkmm.org")
1229 (synopsis "C++ bindings to the GNOME Canvas library")
1230 (description "C++ bindings to the GNOME Canvas library.")
1231 (license license:lgpl2.0+)))
1232
5698b8b8
JD
1233(define-public libgnomeui
1234 (package
1235 (name "libgnomeui")
1236 (version "2.24.5")
1237 (source (origin
1238 (method url-fetch)
b38e45d8
EB
1239 (uri (string-append "mirror://gnome/sources/" name "/"
1240 (version-major+minor version) "/"
1241 name "-" version ".tar.bz2"))
5698b8b8
JD
1242 (sha256
1243 (base32
1244 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1245 (build-system gnu-build-system)
1246 ;; Mentioned as Required in the .pc file
0a38a497
AE
1247 (propagated-inputs `(("libbonoboui" ,libbonoboui)
1248 ("libgnome" ,libgnome)
1249 ("libgnomecanvas" ,libgnomecanvas)
5698b8b8 1250 ("libgnome-keyring" ,libgnome-keyring)))
0a38a497 1251 (inputs `(("libjpeg" ,libjpeg)
5698b8b8
JD
1252 ("popt" ,popt)
1253 ("libbonobo" ,libbonobo)
1254 ("libxml2" ,libxml2)
1255 ("libglade" ,libglade)))
1256 (native-inputs
221ed17a
EB
1257 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1258 ("intltool" ,intltool)
5698b8b8
JD
1259 ("pkg-config" ,pkg-config)))
1260 (home-page "https://developer.gnome.org/libgnomeui/")
1261 (synopsis "Additional widgets for applications")
35b9e423 1262 (description "The libgnomeui library provides additional widgets for
e881752c
AK
1263applications. Many of the widgets from libgnomeui have already been
1264ported to GTK+.")
5698b8b8
JD
1265 (license license:lgpl2.0+)))
1266
1267(define-public libglade
1268 (package
1269 (name "libglade")
1270 (version "2.6.4")
1271 (source (origin
1272 (method url-fetch)
b38e45d8
EB
1273 (uri (string-append "mirror://gnome/sources/" name "/"
1274 (version-major+minor version) "/"
1275 name "-" version ".tar.bz2"))
5698b8b8
JD
1276 (sha256
1277 (base32
1278 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1279 (build-system gnu-build-system)
1280 (inputs
92dcc23d
AE
1281 `(("python" ,python))) ;; needed for the optional libglade-convert program
1282 (propagated-inputs
5698b8b8 1283 `(("gtk+-2" ,gtk+-2)
92dcc23d 1284 ("libxml2" ,libxml2))) ; required by libglade-2.0.pc
5698b8b8
JD
1285 (native-inputs
1286 `(("pkg-config" ,pkg-config)))
1287 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1288 (synopsis "Load glade interfaces and access the glade built widgets")
1289 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1290graphical interfaces described in glade files and for accessing the
1291widgets built in the loading process.")
1292 (license license:gpl2+))) ; This is correct. GPL not LGPL
1293
1294(define-public libgnomeprint
eb497b66
LC
1295 ;; This library has been deprecated since 2006; see
1296 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1297 (package
1298 (name "libgnomeprint")
1299 (version "2.8.2")
1300 (source (origin
1301 (method url-fetch)
b38e45d8
EB
1302 (uri (string-append "mirror://gnome/sources/" name "/"
1303 (version-major+minor version) "/"
1304 name "-" version ".tar.bz2"))
5698b8b8
JD
1305 (sha256
1306 (base32
3edce2c9
RW
1307 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))
1308 (modules '((guix build utils)))
1309 (snippet
1310 ;; Adapt to newer freetype. As the package is deprecated, there
1311 ;; is no use in creating a patch and reporting it.
1312 '(substitute* '("libgnomeprint/gnome-font-face.c"
1313 "libgnomeprint/gnome-rfont.c")
1314 (("freetype/") "freetype2/")))))
5698b8b8
JD
1315 (build-system gnu-build-system)
1316 (inputs
1317 `(("popt" ,popt)
1318 ("libart-lgpl" ,libart-lgpl)
1319 ("gtk+" ,gtk+-2)
44add1ce 1320 ("libxml2" ,libxml2)))
5698b8b8
JD
1321 (native-inputs
1322 `(("intltool" ,intltool)
221ed17a 1323 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1324 ("pkg-config" ,pkg-config)))
1325 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1326 (synopsis "Printing framework for GNOME")
eb497b66
LC
1327 (description
1328 "GNOME-print was a printing framework for GNOME. It has been deprecated
1329since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1330 (license license:lgpl2.0+)))
1331
1332
1333(define-public libgnomeprintui
eb497b66 1334 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1335 (package
1336 (name "libgnomeprintui")
1337 (version "2.8.2")
1338 (source (origin
1339 (method url-fetch)
b38e45d8
EB
1340 (uri (string-append "mirror://gnome/sources/" name "/"
1341 (version-major+minor version) "/"
1342 name "-" version ".tar.bz2"))
5698b8b8
JD
1343 (sha256
1344 (base32
1345 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1346 (build-system gnu-build-system)
1347 ;; Mentioned as Required in the .pc file
1348 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1349 (inputs `(("gtk+" ,gtk+-2)
1350 ("glib" ,glib)
1351 ("gnome-icon-theme" ,gnome-icon-theme)
1352 ("libgnomecanvas" ,libgnomecanvas)
2e6ecc5c 1353 ("libxml2" ,libxml2)))
5698b8b8
JD
1354 (native-inputs
1355 `(("intltool" ,intltool)
1356 ("pkg-config" ,pkg-config)))
1357 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1358 (synopsis "Printing framework for GNOME")
eb497b66 1359 (description (package-description libgnomeprint))
5698b8b8
JD
1360 (license license:lgpl2.0+)))
1361
5698b8b8
JD
1362(define-public libbonoboui
1363 (package
1364 (name "libbonoboui")
1365 (version "2.24.5")
1366 (source (origin
1367 (method url-fetch)
b38e45d8
EB
1368 (uri (string-append "mirror://gnome/sources/" name "/"
1369 (version-major+minor version) "/"
1370 name "-" version ".tar.bz2"))
5698b8b8
JD
1371 (sha256
1372 (base32
1373 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1374 (build-system gnu-build-system)
1375 (arguments
1376 `(#:phases
1377 (alist-cons-before
1378 'check 'start-xserver
1379 (lambda* (#:key inputs #:allow-other-keys)
1380 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1381 (disp ":1"))
2e6ecc5c 1382
5698b8b8
JD
1383 (setenv "HOME" (getcwd))
1384 (setenv "DISPLAY" disp)
1385 ;; There must be a running X server and make check doesn't start one.
1386 ;; Therefore we must do it.
1387 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1388 %standard-phases)))
1389 ;; Mentioned as Required by the .pc file
1390 (propagated-inputs `(("libxml2" ,libxml2)))
1391 (inputs
1392 `(("popt" ,popt)
1393 ("pangox-compat" ,pangox-compat)
1394 ("libgnome" ,libgnome)
1395 ("libgnomecanvas" ,libgnomecanvas)
1396 ("libglade" ,libglade)))
1397 (native-inputs
221ed17a
EB
1398 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1399 ("intltool" ,intltool)
5698b8b8
JD
1400 ("xorg-server" ,xorg-server) ; For running the tests
1401 ("pkg-config" ,pkg-config)))
1402 (home-page "https://developer.gnome.org/libbonoboui/")
1403 (synopsis "Some user interface controls using Bonobo")
1404 (description "The Bonobo UI library provides a number of user interface
1405controls using the Bonobo component framework.")
1406 (license license:lgpl2.0+)))
1407
fecbf86e
SB
1408(define-public libwnck
1409 (package
1410 (name "libwnck")
1411 (version "3.14.0")
1412 (source (origin
1413 (method url-fetch)
1414 (uri (string-append "mirror://gnome/sources/" name "/"
1415 (version-major+minor version) "/"
1416 name "-" version ".tar.xz"))
1417 (sha256
1418 (base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
1419 (build-system gnu-build-system)
1420 (native-inputs
1421 `(("pkg-config" ,pkg-config)
1422 ("intltool" ,intltool)))
1423 (propagated-inputs
427476d5
SB
1424 `(("gtk+" ,gtk+)
1425 ("libxres" ,libxres)
1426 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1427 (home-page "https://developer.gnome.org/libwnck/")
1428 (synopsis "Window Navigator Construction Kit")
1429 (description
1430 "Libwnck is the Window Navigator Construction Kit, a library for use in
1431writing pagers, tasklists, and more generally applications that are dealing
1432with window management. It tries hard to respect the Extended Window Manager
1433Hints specification (EWMH).")
1434 (license license:lgpl2.0+)))
1435
1436;; stable version for gtk2, required by xfwm4.
1437(define-public libwnck-1
1438 (package (inherit libwnck)
1439 (name "libwnck")
1440 (version "2.30.7")
1441 (source (origin
1442 (method url-fetch)
1443 (uri (string-append "mirror://gnome/sources/" name "/"
1444 (version-major+minor version) "/"
1445 name "-" version ".tar.xz"))
1446 (sha256
1447 (base32
1448 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1449 (propagated-inputs
427476d5
SB
1450 `(("gtk+" ,gtk+-2)
1451 ("libxres" ,libxres)
1452 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1453
1454(define-public goffice
1455 (package
1456 (name "goffice")
1457 (version "0.10.14")
1458 (source (origin
1459 (method url-fetch)
b38e45d8
EB
1460 (uri (string-append "mirror://gnome/sources/" name "/"
1461 (version-major+minor version) "/"
1462 name "-" version ".tar.xz"))
b804c61e
JD
1463 (sha256
1464 (base32 "0kj0iwng6w4axm7yv2zy7myn5dhw5ilrlq2pzrjlm9i852ikqy60"))))
1465 (build-system gnu-build-system)
1466 (inputs
1467 `(("gtk+" ,gtk+)
1468 ("libgsf" ,libgsf)
1469 ("librsvg" ,librsvg)
1470 ("libxslt" ,libxslt)
1471 ("libxml2" ,libxml2)))
1472 (native-inputs
1473 `(("intltool" ,intltool)
f280cdb1 1474 ("glib" ,glib "bin")
b804c61e
JD
1475 ("pkg-config" ,pkg-config)))
1476 (home-page "https://developer.gnome.org/goffice/")
1477 (synopsis "Document-centric objects and utilities")
1478 (description "A GLib/GTK+ set of document-centric objects and utilities.")
2e6ecc5c 1479 (license
b804c61e
JD
1480 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1481 ;; Note: NOT LGPL
1482 (list license:gpl2 license:gpl3))))
1483
c024ae36
RW
1484(define-public goffice-0.8
1485 (package (inherit goffice)
1486 (version "0.8.17")
1487 (source (origin
1488 (method url-fetch)
1489 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1490 (version-major+minor version) "/"
1491 (package-name goffice) "-" version ".tar.xz"))
1492 (sha256
1493 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1494 (arguments
1495 `(#:phases
1496 (alist-cons-after
1497 'unpack 'fix-pcre-check
1498 (lambda _
1499 ;; Only glib.h can be included directly. See
1500 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1501 (substitute* "configure"
1502 (("glib/gregex\\.h") "glib.h")) #t)
1503 %standard-phases)))
1504 (propagated-inputs
1505 ;; libgoffice-0.8.pc mentions libgsf-1
1506 `(("libgsf" ,libgsf)))
1507 (inputs
1508 `(("gtk" ,gtk+-2)
1509 ,@(alist-delete "gtk" (package-inputs goffice))))))
1510
b804c61e
JD
1511(define-public gnumeric
1512 (package
1513 (name "gnumeric")
1514 (version "1.12.17")
1515 (source (origin
1516 (method url-fetch)
b38e45d8
EB
1517 (uri (string-append "mirror://gnome/sources/" name "/"
1518 (version-major+minor version) "/"
1519 name "-" version ".tar.xz"))
b804c61e
JD
1520 (sha256
1521 (base32
1522 "18bvc3phghr4p5440fp8hm6gvp53d3mqs9cyc637zpmk0b6bcp7c"))))
1523 (build-system gnu-build-system)
1524 (arguments
1525 `(;; The gnumeric developers don't worry much about failing tests.
1526 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
2e6ecc5c 1527 #:tests? #f
b804c61e
JD
1528 #:phases
1529 (alist-cons-before
1530 'configure 'pre-conf
1531 (lambda* (#:key outputs #:allow-other-keys)
1532 ;; Make install tries to write into the directory of goffice
1533 ;; I am informed that this only affects the possibility to embed a
1534 ;; spreadsheet inside an Abiword document. So presumably when we
1535 ;; package Abiword we'll have to refer it to this directory.
2e6ecc5c 1536 (substitute* "configure"
b804c61e 1537 (("^GOFFICE_PLUGINS_DIR=.*")
2e6ecc5c 1538 (string-append "GOFFICE_PLUGINS_DIR="
b804c61e
JD
1539 (assoc-ref outputs "out") "/goffice/plugins"))))
1540 %standard-phases)))
1541 (inputs
1542 `(("glib" ,glib)
1543 ("gtk+" ,gtk+)
1544 ("goffice" ,goffice)
1545 ("libgsf" ,libgsf)
1546 ("libxml2" ,libxml2)
1547 ("zlib" ,zlib)))
1548 (native-inputs
1549 `(("intltool" ,intltool)
b9663471 1550 ("glib:bin" ,glib "bin")
b804c61e
JD
1551 ("pkg-config" ,pkg-config)))
1552 (home-page "http://www.gnumeric.org")
66672a45
LC
1553 (synopsis "Spreadsheet application")
1554 (description
1555 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1556interoperable with other spreadsheet applications. It has a vast array of
1557features beyond typical spreadsheet functionality, such as support for linear
1558and non-linear solvers, statistical analysis, and telecommunication
1559engineering.")
1560 (license
b804c61e
JD
1561 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1562 (list license:gpl2 license:gpl3))))
6f885c05
FB
1563
1564(define-public gnome-themes-standard
1565 (package
1566 (name "gnome-themes-standard")
b64d218c 1567 (version "3.18.0")
6f885c05
FB
1568 (source
1569 (origin
1570 (method url-fetch)
2e6ecc5c 1571 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1572 (version-major+minor version) "/" name "-"
1573 version ".tar.xz"))
1574 (sha256
1575 (base32
b64d218c 1576 "1jxss8kxszhf66vic9n1sagczm5amm0mgxpzyxyjna15q82fnip6"))))
6f885c05
FB
1577 (build-system gnu-build-system)
1578 (inputs
1579 `(("gtk+" ,gtk+)
1580 ("gtk+-2" ,gtk+-2)
1581 ("librsvg" ,librsvg)
1582 ("libxml2" ,libxml2)
1583 ("glib" ,glib)))
1584 (native-inputs
1585 `(("intltool" ,intltool)
1586 ("glib:bin" ,glib "bin")
1587 ("pkg-config" ,pkg-config)))
1588 (arguments
1589 `(#:phases
1590 (alist-cons-before
1591 'build 'use-full-cache
1592 ;; Use librsvg's loaders.cache instead of the one provided by
1593 ;; gdk-pixbuf because the latter does not include support for SVG
1594 ;; files.
1595 (lambda* (#:key inputs #:allow-other-keys)
2e6ecc5c
AE
1596 (setenv "GDK_PIXBUF_MODULE_FILE"
1597 (car (find-files (assoc-ref inputs "librsvg")
6f885c05
FB
1598 "loaders\\.cache"))))
1599 %standard-phases)))
1600 (home-page "https://launchpad.net/gnome-themes-standard")
1601 (synopsis "Default GNOME 3 themes")
1602 (description
1603 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1604 (license license:lgpl2.1+)))
5a659a48 1605
df90c701
RW
1606(define-public seahorse
1607 (package
1608 (name "seahorse")
1609 (version "3.16.0")
1610 (source
1611 (origin
1612 (method url-fetch)
1613 (uri (string-append "mirror://gnome/sources/" name "/"
1614 (version-major+minor version) "/" name "-"
1615 version ".tar.xz"))
1616 (sha256
1617 (base32
1618 "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp"))))
1619 (build-system glib-or-gtk-build-system)
1620 (inputs
1621 `(("gtk+" ,gtk+)
1622 ("gcr" ,gcr)
1623 ("gnupg" ,gnupg-1)
1624 ("gpgme" ,gpgme)
4a1bf090 1625 ("openssh" ,openssh)
df90c701
RW
1626 ("libsecret" ,libsecret)))
1627 (native-inputs
1628 `(("intltool" ,intltool)
1629 ("glib:bin" ,glib "bin")
1630 ("itstool" ,itstool)
bcb354ad
SB
1631 ("pkg-config" ,pkg-config)
1632 ("xmllint" ,libxml2)))
df90c701
RW
1633 (home-page "https://launchpad.net/gnome-themes-standard")
1634 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1635 (description
1636 "Seahorse is a GNOME application for managing encryption keys and
1637passwords in the GNOME keyring.")
1638 (license license:gpl2+)))
1639
5a659a48
SB
1640(define-public vala
1641 (package
1642 (name "vala")
f4925a4f 1643 (version "0.30.0")
5a659a48
SB
1644 (source (origin
1645 (method url-fetch)
1646 (uri (string-append "mirror://gnome/sources/" name "/"
1647 (version-major+minor version) "/"
1648 name "-" version ".tar.xz"))
1649 (sha256
1650 (base32
f4925a4f 1651 "1pyyhfw3zzbhxfscbn8xz70dg6vx0kh8gshzikpxczhg01xk7w31"))))
5a659a48 1652 (build-system gnu-build-system)
1ea90625
SB
1653 (arguments
1654 '(#:phases
1655 (modify-phases %standard-phases
f4925a4f 1656 (add-before 'check 'pre-check
1ea90625
SB
1657 (lambda _
1658 (setenv "CC" "gcc")
f4925a4f
SB
1659 ;; For missing '/etc/machine-id'.
1660 (setenv "DBUS_FATAL_WARNINGS" "0")
1ea90625 1661 #t)))))
5a659a48
SB
1662 (native-inputs
1663 `(("pkg-config" ,pkg-config)
1664 ("flex" ,flex)
1665 ("bison" ,bison)
1666 ("xsltproc" ,libxslt)
1667 ("dbus" ,dbus) ; for dbus tests
1668 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1669 (propagated-inputs
1670 `(("glib" ,glib))) ; required by libvala-0.26.pc
1671 (home-page "http://live.gnome.org/Vala/")
1672 (synopsis "Compiler for the GObject type system")
1673 (description
1674 "Vala is a programming language that aims to bring modern programming
1675language features to GNOME developers without imposing any additional runtime
1676requirements and without using a different ABI compared to applications and
1677libraries written in C.")
1678 (license license:lgpl2.1+)))
ea57378f
SB
1679
1680(define-public vte
1681 (package
1682 (name "vte")
191e9b4e 1683 (version "0.40.0")
ea57378f
SB
1684 (source (origin
1685 (method url-fetch)
1686 (uri (string-append "mirror://gnome/sources/" name "/"
1687 (version-major+minor version) "/"
1688 name "-" version ".tar.xz"))
1689 (sha256
1690 (base32
191e9b4e 1691 "0lnq0bgkmsixjwmfacb2ch9qfjqjxa8zkk1hiv3l29kgca0n3nal"))))
ea57378f
SB
1692 (build-system gnu-build-system)
1693 (native-inputs
1694 `(("pkg-config" ,pkg-config)
1695 ("intltool" ,intltool)
1696 ("vala" ,vala)
1697 ("gobject-introspection" ,gobject-introspection)
1698 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1699 ("xmllint" ,libxml2)))
1700 (propagated-inputs
302393bc
LC
1701 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1702 ("gnutls" ,gnutls))) ;ditto
ea57378f
SB
1703 (home-page "http://www.gnome.org/")
1704 (synopsis "Virtual Terminal Emulator")
1705 (description
1706 "VTE is a library (libvte) implementing a terminal emulator widget for
1707GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1708gnome-terminal, but can also be used to embed a console/terminal in games,
1709editors, IDEs, etc.")
1710 (license license:lgpl2.1+)))
1711
2776d72c
EF
1712;; provides vte 2.90, required for some terminal emulators
1713;; tilda bug: https://github.com/lanoxx/tilda/issues/94
1714;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
1715;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
1716;; pantheon-terminal, roxterm are not currently packaged
1717(define-public vte-0.36
1718 (package (inherit vte)
1719 (name "vte")
1720 (version "0.36.5")
1721 (source (origin
1722 (method url-fetch)
1723 (uri (string-append "mirror://gnome/sources/" name "/"
1724 (version-major+minor version) "/"
1725 name "-" version ".tar.xz"))
1726 (sha256
1727 (base32
1728 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
1729 (propagated-inputs
1730 `(("gtk" ,gtk+)
1731 ("ncurses" ,ncurses)))))
1732
ea57378f
SB
1733;; stable version for gtk2, required by xfce4-terminal.
1734(define-public vte/gtk+-2
1735 (package (inherit vte)
1736 (name "vte")
1737 (version "0.28.2")
1738 (source (origin
1739 (method url-fetch)
1740 (uri (string-append "mirror://gnome/sources/" name "/"
1741 (version-major+minor version) "/"
1742 name "-" version ".tar.xz"))
1743 (sha256
1744 (base32
1745 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1746 (arguments
1747 '(#:configure-flags '("--disable-python")))
1748 (native-inputs
1749 `(("pkg-config" ,pkg-config)
1750 ("intltool" ,intltool)
1751 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1752 (propagated-inputs
1753 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1754 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1755
1756(define-public dconf
1757 (package
1758 (name "dconf")
1759 (version "0.22.0")
1760 (source (origin
1761 (method url-fetch)
1762 (uri (string-append
2e6ecc5c 1763 "mirror://gnome/sources/" name "/"
b47e1b20
FB
1764 (version-major+minor version) "/"
1765 name "-" version ".tar.xz"))
1766 (sha256
1767 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1768 (build-system glib-or-gtk-build-system)
1769 (inputs
1770 `(("gtk+" ,gtk+)
1771 ("glib" ,glib)
1772 ("dbus" ,dbus)
1773 ("libxml2" ,libxml2)))
1774 (native-inputs
1775 `(("libxslt" ,libxslt)
1776 ("docbook-xml" ,docbook-xml-4.2)
1777 ("docbook-xsl" ,docbook-xsl)
1778 ("intltool" ,intltool)
1779 ("pkg-config" ,pkg-config)))
1780 (arguments
1781 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1782 ; or /etc/machine-id.
1783 #:configure-flags
1784 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 1785 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
1786 (assoc-ref %outputs "out") "/lib")
1787 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1788 #:phases
1789 (alist-cons-before
1790 'configure 'fix-docbook
1791 (lambda* (#:key inputs #:allow-other-keys)
1792 (substitute* "docs/Makefile.in"
1793 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 1794 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
1795 "/xml/xsl/docbook-xsl-"
1796 ,(package-version docbook-xsl)
1797 "/manpages/docbook.xsl")))
2e6ecc5c
AE
1798 (setenv "XML_CATALOG_FILES"
1799 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
1800 "/xml/dtd/docbook/catalog.xml")))
1801 %standard-phases)))
1802 (home-page "https://developer.gnome.org/dconf")
1803 (synopsis "Low-level GNOME configuration system")
1804 (description "Dconf is a low-level configuration system. Its main purpose
1805is to provide a backend to GSettings on platforms that don't already have
1806configuration storage systems.")
1807 (license license:lgpl2.1)))
109da1c0
AE
1808
1809(define-public json-glib
1810 (package
1811 (name "json-glib")
4955ab7d 1812 (version "1.0.4")
109da1c0
AE
1813 (source (origin
1814 (method url-fetch)
1815 (uri (string-append "mirror://gnome/sources/" name "/"
1816 (version-major+minor version) "/"
1817 name "-" version ".tar.xz"))
1818 (sha256
1819 (base32
4955ab7d
SB
1820 "1k85vvb2prmk8aa8hmr2rp9rnbhffjgnmr18b13g24xxnqy5kww0"))
1821 (modules '((guix build utils)))
1822 (snippet
1823 ;; Don't duplicate test names.
1824 ;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
1825 '(substitute* "json-glib/tests/builder.c"
1826 (("\"/builder/complex\", test_builder_empty")
1827 "\"/builder/empty\", test_builder_empty")))))
109da1c0
AE
1828 (build-system gnu-build-system)
1829 (native-inputs
88c6b580 1830 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
1831 ("gobject-introspection" ,gobject-introspection)
1832 ("pkg-config" ,pkg-config)))
1833 (propagated-inputs
88c6b580 1834 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
1835 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1836 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
1837 (description
1838 "JSON-GLib is a C library based on GLib providing serialization and
1839deserialization support for the JavaScript Object Notation (JSON) format
1840described by RFC 4627. It provides parser and generator GObject classes and
1841various wrappers for the complex data types employed by JSON, such as arrays
1842and objects.")
109da1c0 1843 (license license:lgpl2.1+)))
6f96a359
SB
1844
1845(define-public libxklavier
1846 (package
1847 (name "libxklavier")
1848 (version "5.3")
1849 (source (origin
1850 (method url-fetch)
1851 (uri (string-append "mirror://gnome/sources/" name "/"
1852 version "/" name "-" version ".tar.xz"))
1853 (sha256
1854 (base32
1855 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1856 (build-system gnu-build-system)
1857 (arguments
1858 '(#:configure-flags
1859 (list (string-append "--with-xkb-base="
1860 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 1861 "/share/X11/xkb"))))
6f96a359
SB
1862 (native-inputs
1863 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1864 ("gobject-introspection" ,gobject-introspection)
1865 ("pkg-config" ,pkg-config)))
1866 (propagated-inputs
1867 ;; Required by libxklavier.pc.
1868 `(("glib" ,glib)
1869 ("libxml2" ,libxml2)))
1870 (inputs
1871 `(("iso-codes" ,iso-codes)
1872 ("libxi" ,libxi)
1873 ("libxkbfile" ,libxkbfile)
1874 ("xkbcomp" ,xkbcomp)
1875 ("xkeyboard-config" ,xkeyboard-config)))
1876 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1877 (synopsis "High-level API for X Keyboard Extension")
1878 (description
1879 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
1880Extension known as XKB. This library is intended to support XFree86 and other
1881commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
1882indicators etc).")
1883 (license license:lgpl2.0+)))
619936a4
LC
1884
1885(define-public python2-rsvg
1886 ;; XXX: This is actually a subset of gnome-python-desktop.
1887 (package
1888 (name "python2-rsvg")
1889 (version "2.32.0")
1890 (source
1891 (origin
1892 (method url-fetch)
1893 (uri (string-append
1894 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
1895 version ".tar.bz2"))
1896 (sha256
1897 (base32
1898 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
1899 (build-system gnu-build-system)
1900 (native-inputs
1901 `(("pkg-config" ,pkg-config)))
1902 (inputs
1903 `(("python" ,python-2)
1904 ("python2-pygtk" ,python2-pygtk)
1905 ("librsvg" ,librsvg)))
1906 (home-page "http://www.gnome.org")
1907 (synopsis "Python bindings to librsvg")
1908 (description
1909 "This packages provides Python bindings to librsvg, the SVG rendering
1910library.")
1911
1912 ;; This is the license of the rsvg bindings. The license of each module
1913 ;; of gnome-python-desktop is given in 'COPYING'.
1914 (license license:lgpl2.1+)))
a31a6d22 1915
f2ca414a
SB
1916(define-public glib-networking
1917 (package
1918 (name "glib-networking")
aa8789c0 1919 (version "2.46.1")
f2ca414a
SB
1920 (source (origin
1921 (method url-fetch)
1922 (uri (string-append "mirror://gnome/sources/glib-networking/"
1923 (version-major+minor version) "/"
1924 name "-" version ".tar.xz"))
1925 (sha256
1926 (base32
aa8789c0 1927 "1cchmi08jpjypgmm9i7xzh5qfg2q5k61kry9ns8mhw3z44a440ym"))
907f939b
SB
1928 (patches
1929 (list (search-patch "glib-networking-ssl-cert-file.patch")))))
f2ca414a
SB
1930 (build-system gnu-build-system)
1931 (arguments
1932 `(#:configure-flags
907f939b 1933 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
1934 #:phases
1935 (modify-phases %standard-phases
3a4de6b2 1936 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
1937 ;; Install GIO modules into $out/lib/gio/modules.
1938 (lambda _
1939 (substitute* "configure"
1940 (("GIO_MODULE_DIR=.*")
1941 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
1942 "/lib/gio/modules\n")))))
1943 (add-before 'check 'use-empty-ssl-cert-file
1944 (lambda _
1945 ;; The ca-certificates.crt is not available in the build
1946 ;; environment.
1947 (setenv "SSL_CERT_FILE" "/dev/null")
1948 #t)))))
f2ca414a
SB
1949 (native-inputs
1950 `(("pkg-config" ,pkg-config)
1951 ("intltool" ,intltool)))
1952 (inputs
1953 `(("glib" ,glib)
1954 ("gnutls" ,gnutls)
1955 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1956 ("p11-kit" ,p11-kit)))
1957 (home-page "http://www.gnome.org")
1958 (synopsis "Network-related GIO modules")
1959 (description
1960 "This package contains various network related extensions for the GIO
1961library.")
1962 (license license:lgpl2.0+)))
1963
ca649680 1964(define-public rest
4510b2da 1965 (package
ca649680 1966 (name "rest")
4510b2da
SB
1967 (version "0.7.93")
1968 (source (origin
1969 (method url-fetch)
1970 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
1971 (version-major+minor version) "/"
1972 name "-" version ".tar.xz"))
4510b2da
SB
1973 (sha256
1974 (base32
1975 "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))))
1976 (build-system gnu-build-system)
1977 (arguments
1978 '(#:tests? #f ; tests require internet connection
1979 #:configure-flags
1980 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
1981 (native-inputs
1982 `(("glib-mkenums" ,glib "bin")
1983 ("gobject-introspection" ,gobject-introspection)
1984 ("pkg-config" ,pkg-config)))
1985 (propagated-inputs
1986 ;; rest-0.7.pc refers to all these.
1987 `(("glib" ,glib)
1988 ("libsoup" ,libsoup)
1989 ("libxml2" ,libxml2)))
1990 (home-page "http://www.gtk.org/")
1991 (synopsis "RESTful web api query library")
1992 (description
1993 "This library was designed to make it easier to access web services that
1994claim to be \"RESTful\". It includes convenience wrappers for libsoup and
1995libxml to ease remote use of the RESTful API.")
1996 (license license:lgpl2.1+)))
1997
6e1bb642
SB
1998(define-public libsoup
1999 (package
2000 (name "libsoup")
fd730590 2001 (version "2.52.1")
6e1bb642
SB
2002 (source (origin
2003 (method url-fetch)
2004 (uri (string-append "mirror://gnome/sources/libsoup/"
2005 (version-major+minor version) "/"
2006 name "-" version ".tar.xz"))
2007 (sha256
2008 (base32
fd730590 2009 "0j6cnnpqqgnb9nj2r0j8j6898np4z503hrnpis7b4l5d8yhbq68f"))))
6e1bb642
SB
2010 (build-system gnu-build-system)
2011 (outputs '("out" "doc"))
2012 (arguments
b19d6805 2013 `(#:configure-flags
6e1bb642
SB
2014 (list (string-append "--with-html-dir="
2015 (assoc-ref %outputs "doc")
fd730590 2016 "/share/gtk-doc/html"))
6e1bb642
SB
2017 #:phases
2018 (modify-phases %standard-phases
3a4de6b2 2019 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2020 ;; This test fails due to missing /etc/nsswitch.conf
2021 ;; in the build environment.
2022 (lambda _
2023 (substitute* "tests/socket-test.c"
2024 ((".*/sockets/unconnected.*") ""))
2025 #t))
907f939b 2026 (add-before 'check 'pre-check
6e1bb642 2027 (lambda _
907f939b
SB
2028 ;; The 'check-local' target runs 'env LANG=C sort -u',
2029 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2030 (unsetenv "LC_ALL")
907f939b
SB
2031 ;; The ca-certificates.crt is not available in the build
2032 ;; environment.
2033 (setenv "SSL_CERT_FILE" "/dev/null")
fd730590
SB
2034 #t))
2035 (replace 'install
2036 (lambda _
2037 (zero?
2038 (system* "make"
2039 ;; Install vala bindings into $out.
2040 (string-append "vapidir=" %output
2041 "/share/vala/vapi")
2042 "install")))))))
6e1bb642
SB
2043 (native-inputs
2044 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2045 ("gobject-introspection" ,gobject-introspection)
2046 ("intltool" ,intltool)
2047 ("pkg-config" ,pkg-config)
2048 ("python" ,python-wrapper)
fd730590 2049 ("vala" ,vala)
6e1bb642
SB
2050 ;; These are needed for the tests.
2051 ;; FIXME: Add PHP once available.
2052 ("curl" ,curl)
2053 ("httpd" ,httpd)))
2054 (propagated-inputs
2055 ;; libsoup-2.4.pc refers to all these.
2056 `(("glib" ,glib)
2057 ("libxml2" ,libxml2)))
2058 (inputs
2059 `(("glib-networking" ,glib-networking)
2060 ("sqlite" ,sqlite)))
2061 (home-page "https://live.gnome.org/LibSoup/")
2062 (synopsis "GLib-based HTTP Library")
2063 (description
2064 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2065and the GLib main loop, to integrate well with GNOME applications.")
2066 (license license:lgpl2.0+)))
2067
bba229a3
SB
2068(define-public libsecret
2069 (package
2070 (name "libsecret")
2071 (version "0.18")
2072 (source (origin
2073 (method url-fetch)
2074 (uri (string-append
2075 "mirror://gnome/sources/libsecret/" version "/"
2076 name "-" version ".tar.xz"))
2077 (sha256
2078 (base32
2079 "1qq29c01xxjyx5sl6y5h22w8r0ff4c73bph3gfx3h7mx5mvalwqc"))))
2080 (build-system gnu-build-system)
2081 (outputs '("out" "doc"))
2082 (arguments
2083 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2084 #:configure-flags
2085 (list (string-append "--with-html-dir="
2086 (assoc-ref %outputs "doc")
2087 "/share/gtk-doc/html"))))
2088 (native-inputs
2089 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2090 ("gobject-introspection" ,gobject-introspection)
2091 ("intltool" ,intltool)
2092 ("pkg-config" ,pkg-config)
2093 ("vala" ,vala)
2094 ("xsltproc" ,libxslt)))
2095 ;; These are needed for the tests.
2096 ;; FIXME: Add gjs once available.
2097 ;("dbus" ,dbus)
2098 ;("python2" ,python-2)
2099 ;("python2-dbus" ,python2-dbus)
2100 ;("python2-pygobject" ,python2-pygobject)
2101 ;("python2-pygobject-2" ,python2-pygobject-2)))
2102 (propagated-inputs
2103 `(("glib" ,glib))) ; required by libsecret-1.pc
2104 (inputs
2105 `(("docbook-xsl" ,docbook-xsl)
2106 ("libgcrypt" ,libgcrypt)
2107 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2108 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2109 (synopsis "GObject bindings for \"Secret Service\" API")
2110 (description
2111 "Libsecret is a GObject based library for storing and retrieving passwords
2112and other secrets. It communicates with the \"Secret Service\" using DBus.")
2113 (license license:lgpl2.1+)))
2114
a31a6d22
SB
2115(define-public gnome-mines
2116 (package
2117 (name "gnome-mines")
121398e7 2118 (version "3.16.0")
a31a6d22
SB
2119 (source
2120 (origin
2121 (method url-fetch)
2122 (uri (string-append "mirror://gnome/sources/" name "/"
2123 (version-major+minor version) "/"
2124 name "-" version ".tar.xz"))
2125 (sha256
2126 (base32
121398e7 2127 "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx"))))
a31a6d22
SB
2128 (build-system glib-or-gtk-build-system)
2129 (arguments
2130 '(#:phases
2131 (modify-phases %standard-phases
f8503e2b 2132 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2133 (lambda _
2134 (substitute* "configure"
2135 (("/bin/true") (which "true")))))
f8503e2b 2136 (add-after 'install 'wrap-pixbuf
a31a6d22
SB
2137 ;; Use librsvg's loaders.cache to support SVG files.
2138 (lambda* (#:key inputs outputs #:allow-other-keys)
2139 (let* ((out (assoc-ref outputs "out"))
2140 (prog (string-append out "/bin/gnome-mines"))
2141 (rsvg (assoc-ref inputs "librsvg"))
2142 (pixbuf (find-files rsvg "^loaders\\.cache$")))
2143 (wrap-program prog
2144 `("GDK_PIXBUF_MODULE_FILE" = ,pixbuf))))))))
2145 (native-inputs
2146 `(("pkg-config" ,pkg-config)
2147 ("desktop-file-utils" ,desktop-file-utils)
2148 ("intltool" ,intltool)
bcb354ad
SB
2149 ("itstool" ,itstool)
2150 ("xmllint" ,libxml2)))
a31a6d22
SB
2151 (inputs
2152 `(("gtk+" ,gtk+)
2153 ("librsvg" ,librsvg)))
2154 (home-page "https://wiki.gnome.org/Apps/Mines")
2155 (synopsis "Minesweeper game")
2156 (description
2157 "Mines (previously gnomine) is a puzzle game where you locate mines
2158floating in an ocean using only your brain and a little bit of luck.")
2159 (license license:gpl2+)))
88f70665
AW
2160
2161(define-public gnome-terminal
2162 (package
2163 (name "gnome-terminal")
2164 (version "3.16.0")
2165 (source
2166 (origin
2167 (method url-fetch)
2168 (uri (string-append "mirror://gnome/sources/" name "/"
2169 (version-major+minor version) "/"
2170 name "-" version ".tar.xz"))
2171 (sha256
2172 (base32
2173 "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd"))))
2174 (build-system glib-or-gtk-build-system)
2175 (arguments
2176 '(#:configure-flags
2177 (list "--disable-migration" "--disable-search-provider"
2178 "--without-nautilus-extension")
2179 #:phases
2180 (modify-phases %standard-phases
3a4de6b2 2181 (add-before 'configure 'patch-/bin/true
88f70665
AW
2182 (lambda _
2183 (substitute* "configure"
2184 (("/bin/true") (which "true"))))))))
2185 (native-inputs
2186 `(("pkg-config" ,pkg-config)
2187 ("desktop-file-utils" ,desktop-file-utils)
2188 ("intltool" ,intltool)
bcb354ad
SB
2189 ("itstool" ,itstool)
2190 ("xmllint" ,libxml2)))
68702167
MW
2191 (propagated-inputs
2192 `(("dconf" ,dconf)))
88f70665
AW
2193 (inputs
2194 `(("gtk+" ,gtk+)
2195 ("vte" ,vte)
2196 ("gnutls" ,gnutls)
88f70665
AW
2197 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2198 ("util-linux" ,util-linux)
2199 ("vala" ,vala)))
2200 (home-page "https://wiki.gnome.org/Apps/Terminal")
2201 (synopsis "Terminal emulator")
2202 (description
2203 "GNOME Terminal is a terminal emulator application for accessing a
2204UNIX shell environment which can be used to run programs available on
2205your system.
2206
2207It supports several profiles, multiple tabs and implements several
2208keyboard shortcuts.")
2209 (license license:gpl3+)))
75016d07
AW
2210
2211(define-public colord
2212 (package
2213 (name "colord")
2214 (version "1.1.8")
2215 (source
2216 (origin
2217 (method url-fetch)
2218 (uri (string-append "http://www.freedesktop.org/software/colord/releases/"
2219 name "-" version ".tar.xz"))
2220 (sha256
2221 (base32
2222 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2223 (build-system glib-or-gtk-build-system)
2224 (arguments
2225 '(;; The tests want to run valgrind. Punt for now.
2226 #:tests? #f
2227 #:configure-flags (list "--localstatedir=/var"
2228 ;; GUSB not packaged yet.
2229 "--disable-gusb"
2230 ;; No dep on systemd.
2231 "--disable-systemd-login"
2232 ;; Wants to install to global completion dir;
2233 ;; punt.
2234 "--disable-bash-completion"
2235 ;; colord-gtk not packaged yet.
2236 "--disable-session-example"
2237 "--with-daemon-user=colord"
2238 "--enable-sane"
2239 (string-append "--with-udevrulesdir="
2240 (assoc-ref %outputs "out")
2241 "/lib/udev/rules.d"))
2242 #:phases
2243 (modify-phases %standard-phases
3a4de6b2 2244 (add-before 'configure 'patch-/bin/true
75016d07
AW
2245 (lambda _
2246 (substitute* "configure"
2247 (("/bin/true") (which "true")))
2248 (substitute* "src/Makefile.in"
2249 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2250 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2251 (native-inputs
2252 `(("pkg-config" ,pkg-config)
2253 ("gobject-introspection" ,gobject-introspection)
2254 ("libtool" ,libtool)
2255 ("intltool" ,intltool)))
65cb2d61
SB
2256 (propagated-inputs
2257 ;; colord.pc refers to all these.
2258 `(("glib" ,glib)
2259 ("udev" ,eudev)
2260 ("lcms" ,lcms)))
75016d07 2261 (inputs
65cb2d61 2262 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2263 ("libgudev" ,libgudev)
75016d07 2264 ("libusb" ,libusb)
75016d07
AW
2265 ("sqlite" ,sqlite)
2266 ("polkit" ,polkit)
2267 ("sane-backends" ,sane-backends)))
2268 (home-page "http://www.freedesktop.org/software/colord/")
2269 (synopsis "Color management service")
2270 (description "Colord is a system service that makes it easy to manage,
2271install and generate color profiles to accurately color manage input and
2272output devices.")
2273 (license license:gpl2+)))
7b2abd00
AW
2274
2275(define-public geoclue
2276 (package
2277 (name "geoclue")
faf713b9 2278 (version "2.2.0")
7b2abd00
AW
2279 (source
2280 (origin
2281 (method url-fetch)
2282 (uri (string-append "http://www.freedesktop.org/software/" name
2283 "/releases/" (version-major+minor version) "/"
2284 name "-" version ".tar.xz"))
2285 (sha256
2286 (base32
faf713b9 2287 "0inlqx0zar498fhi9hh92p2g4kp8qy3zdl4z3vw6bjwp9w6xx454"))
7b2abd00
AW
2288 (patches (list (search-patch "geoclue-config.patch")))))
2289 (build-system glib-or-gtk-build-system)
2290 (arguments
2291 '(;; The tests want to run the system bus.
2292 #:tests? #f
2293 #:configure-flags (list ;; Disable bits requiring ModemManager.
2294 "--disable-3g-source"
2295 "--disable-cdma-source"
2296 "--disable-modem-gps-source"
2297 "--with-dbus-service-user=geoclue")
2298 #:phases
2299 (modify-phases %standard-phases
3a4de6b2 2300 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2301 (lambda _
2302 (substitute* "configure"
2303 (("/bin/true") (which "true"))))))))
2304 (native-inputs
2305 `(("pkg-config" ,pkg-config)
2306 ("intltool" ,intltool)))
2307 (inputs
2308 `(("glib" ,glib)
2309 ("json-glib" ,json-glib)
2310 ("libsoup" ,libsoup)))
2311 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2312 (synopsis "Geolocation service")
2313 (description "Geoclue is a D-Bus service that provides location
2314information. The primary goal of the Geoclue project is to make creating
2315location-aware applications as simple as possible, while the secondary goal is
2316to ensure that no application can access location information without explicit
e881752c 2317permission from user.")
7b2abd00 2318 (license license:gpl2+)))
2bfe7437
AW
2319
2320(define-public geocode-glib
2321 (package
2322 (name "geocode-glib")
2323 (version "3.16.0")
2324 (source (origin
2325 (method url-fetch)
2326 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2327 (version-major+minor version) "/"
2328 name "-" version ".tar.xz"))
2329 (sha256
2330 (base32
2331 "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj"))))
2332 (build-system gnu-build-system)
2333 (arguments
2334 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2335 ;; work for the builder. Punt.
a124bbd2 2336 #:tests? #f))
2bfe7437
AW
2337 (native-inputs
2338 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2339 ("gobject-introspection" ,gobject-introspection)
2340 ("pkg-config" ,pkg-config)
2341 ("json-glib" ,json-glib)))
2342 (propagated-inputs
2343 ;; geocode-glib-1.0.pc refers to GIO.
2344 `(("glib" ,glib)))
2345 (inputs
2346 `(("libsoup" ,libsoup)))
2347 (home-page "https://github.com/GNOME/geocode-glib/")
2348 (synopsis "Geocoding and reverse-geocoding library")
2349 (description
2350 "geocode-glib is a convenience library for geocoding (finding longitude,
2351and latitude from an address) and reverse geocoding (finding an address from
2352coordinates) using the Nominatim service. geocode-glib caches requests for
2353faster results and to avoid unnecessary server load.")
2354 (license license:lgpl2.0+)))
a1d5bb0e
AW
2355
2356(define-public upower
2357 (package
2358 (name "upower")
d777e048 2359 (version "0.99.3")
a1d5bb0e
AW
2360 (source (origin
2361 (method url-fetch)
2362 (uri (string-append "http://upower.freedesktop.org/releases/"
2363 name "-" version ".tar.xz"))
2364 (sha256
2365 (base32
d777e048 2366 "0f6x9mi1jzgqdpycaikyhjljnw3aacsl3gxndyg0dfqkq6y9jwb9"))
a1d5bb0e
AW
2367 (patches (list (search-patch "upower-builddir.patch")))))
2368 (build-system glib-or-gtk-build-system)
2369 (arguments
2370 '( ;; The tests want to contact the system bus, which can't be done in the
2371 ;; build environment. The integration test can run, but the last of
2372 ;; the up-self-tests doesn't. Disable tests for now.
2373 #:tests? #f
2374 #:configure-flags (list "--localstatedir=/var"
2375 (string-append "--with-udevrulesdir="
2376 (assoc-ref %outputs "out")
2377 "/lib/udev/rules.d"))
2378 #:phases
2379 (modify-phases %standard-phases
2380 (add-before 'configure 'patch-/bin/true
2381 (lambda _
2382 (substitute* "configure"
2383 (("/bin/true") (which "true")))))
2384 (add-before 'configure 'patch-integration-test
2385 (lambda _
2386 (substitute* "src/linux/integration-test"
2387 (("/usr/bin/python3") (which "python3"))))))))
2388 (native-inputs
ebeabe2d
SB
2389 `(("gobject-introspection" ,gobject-introspection)
2390 ("pkg-config" ,pkg-config)
a1d5bb0e
AW
2391 ("intltool" ,intltool)
2392 ("python" ,python)))
2393 (inputs
ea226291
SB
2394 `(("dbus-glib" ,dbus-glib)
2395 ("libgudev" ,libgudev)
a1d5bb0e
AW
2396 ("libusb" ,libusb)))
2397 (home-page "http://upower.freedesktop.org/")
2398 (synopsis "System daemon for managing power devices")
2399 (description
2400 "UPower is an abstraction for enumerating power devices,
2401listening to device events and querying history and statistics. Any
2402application or service on the system can access the org.freedesktop.UPower
2403service via the system message bus.")
2404 (license license:gpl2+)))
6a180f6f
AW
2405
2406(define-public libgweather
2407 (package
2408 (name "libgweather")
b6072e6b 2409 (version "3.18.1")
6a180f6f
AW
2410 (source (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
b6072e6b 2417 "1l3sra84k5dnavbdbjyf1ar84xmjszpnnldih6mf45kniwpjkcll"))))
6a180f6f
AW
2418 (build-system gnu-build-system)
2419 (arguments
b6072e6b
SB
2420 `(#:configure-flags
2421 `(,(string-append "--with-zoneinfo-dir="
2422 (assoc-ref %build-inputs "tzdata")
2423 "/share/zoneinfo"))
2424 #:phases
2425 (modify-phases %standard-phases
2426 (add-before
2427 'check 'pre-check
2428 (lambda* (#:key inputs #:allow-other-keys)
2429 (substitute* "data/check-timezones.sh"
2430 (("/usr/share/zoneinfo/zone.tab")
2431 (string-append (assoc-ref inputs "tzdata")
2432 "/share/zoneinfo/zone.tab")))
2433 #t)))))
6a180f6f
AW
2434 (native-inputs
2435 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2436 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2437 ("pkg-config" ,pkg-config)
2438 ("intltool" ,intltool)))
2439 (propagated-inputs
2440 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2441 ;; libsoup.
2442 `(("gtk+" ,gtk+)
2443 ("gdk-pixbuf" ,gdk-pixbuf)
2444 ("libxml2" ,libxml2)
2445 ("libsoup" ,libsoup)))
2446 (inputs
2447 `(("tzdata" ,tzdata)
2448 ("geocode-glib" ,geocode-glib)))
2449 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2450 (synopsis "Location, time zone, and weather library for GNOME")
2451 (description
2452 "libgweather is a library to access weather information from online
2453services for numerous locations.")
2454 (license license:gpl2+)))
23a22af6
AW
2455
2456(define-public gnome-settings-daemon
2457 (package
2458 (name "gnome-settings-daemon")
2459 (version "3.16.0")
2460 (source
2461 (origin
2462 (method url-fetch)
2463 (uri (string-append "mirror://gnome/sources/" name "/"
2464 (version-major+minor version) "/"
2465 name "-" version ".tar.xz"))
2466 (sha256
2467 (base32
2468 "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3"))))
2469 (build-system glib-or-gtk-build-system)
2470 (arguments
ec2b1921 2471 `(;; Network manager not yet packaged.
23a22af6
AW
2472 #:configure-flags '("--disable-network-manager")
2473 ;; Color management test can't reach the colord system service.
2474 #:tests? #f))
2475 (native-inputs
2476 `(("pkg-config" ,pkg-config)
2477 ("intltool" ,intltool)
2478 ("xsltproc" ,libxslt)
2479 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2480 ("docbook-xml" ,docbook-xml-4.2)
2481 ("docbook-xsl" ,docbook-xsl)))
2482 (inputs
2483 `(("colord" ,colord)
ea226291 2484 ("libgudev" ,libgudev)
23a22af6
AW
2485 ("upower" ,upower)
2486 ("polkit" ,polkit)
2487 ("pulseaudio" ,pulseaudio)
2488 ("libcanberra" ,libcanberra)
2489 ("libx11" ,libx11)
2490 ("libxtst" ,libxtst)
2491 ("lcms" ,lcms)
2492 ("libnotify" ,libnotify)
2493 ("geoclue" ,geoclue)
2494 ("geocode-glib" ,geocode-glib)
2495 ("libgweather" ,libgweather)
2496 ("gnome-desktop" ,gnome-desktop)
2497 ("nss" ,nss)
2498 ("cups" ,cups)
ec2b1921
AW
2499 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2500 ("libwacom" ,libwacom)
2501 ("librsvg" ,librsvg)
2502 ("xf86-input-wacom" ,xf86-input-wacom)))
23a22af6
AW
2503 (home-page "http://www.gnome.org")
2504 (synopsis "GNOME settings daemon")
2505 (description
2506 "This package contains the daemon responsible for setting the various
2507parameters of a GNOME session and the applications that run under it. It
2508handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2509settings, themes, mouse settings, and startup of other daemons.")
2510 (license license:gpl2+)))
1e7464a9
DH
2511
2512(define-public totem-pl-parser
2513 (package
2514 (name "totem-pl-parser")
2515 (version "3.10.5")
2516 (source (origin
2517 (method url-fetch)
2518 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2519 "totem-pl-parser-" version ".tar.xz"))
2520 (sha256
2521 (base32
2522 "0dw1kiwmjwdjrighri0j9nagsnj44dllm0mamnfh4y5nc47mhim7"))))
2523 (build-system gnu-build-system)
2524 (arguments
2525 ;; FIXME: Tests require gvfs.
2526 `(#:tests? #f))
2527 (native-inputs
2528 `(("intltool" ,intltool)
2529 ("glib" ,glib "bin")
4d6d8281 2530 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2531 ("pkg-config" ,pkg-config)))
22a6ad6a 2532 (propagated-inputs
1e7464a9
DH
2533 `(("glib" ,glib)
2534 ("gmime" ,gmime)
22a6ad6a
MW
2535 ("libxml2" ,libxml2)))
2536 (inputs
2537 `(("libarchive" ,libarchive)
1e7464a9
DH
2538 ("libgcrypt" ,libgcrypt)
2539 ("nettle" ,nettle)
22a6ad6a 2540 ("libsoup" ,libsoup)))
1e7464a9
DH
2541 (home-page "https://projects.gnome.org/totem")
2542 (synopsis "Library to parse and save media playlists for GNOME")
2543 (description "Totem-pl-parser is a GObjects-based library to parse and save
2544playlists in a variety of formats.")
2545 (license license:lgpl2.0+)))
2546
6b888eff
SB
2547(define-public aisleriot
2548 (package
2549 (name "aisleriot")
2550 (version "3.16.1")
2551 (source (origin
2552 (method url-fetch)
2553 (uri (string-append "mirror://gnome/sources/" name "/"
2554 (version-major+minor version) "/"
2555 name "-" version ".tar.xz"))
2556 (sha256
2557 (base32
2558 "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h"))))
2559 (build-system glib-or-gtk-build-system)
2560 (arguments
2561 '(#:configure-flags
2562 '("--with-platform=gtk-only"
2563 "--with-card-theme-formats=svg")))
2564 (native-inputs
2565 `(("desktop-file-utils" ,desktop-file-utils)
2566 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2567 ("intltool" ,intltool)
2568 ("itstool" ,itstool)
2569 ("pkg-config" ,pkg-config)
2570 ("xmllint" ,libxml2)))
2571 (inputs
2572 `(("gtk+" ,gtk+)
2573 ("guile" ,guile-2.0)
2574 ("libcanberra" ,libcanberra)
2575 ("librsvg" ,librsvg)))
2576 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2577 (synopsis "Solitaire card games")
2578 (description
2579 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2580which are easy to play with the aid of a mouse.")
2581 (license license:gpl3+)))
4a79e256
SB
2582
2583(define-public devhelp
2584 (package
2585 (name "devhelp")
2586 (version "3.16.1")
2587 (source (origin
2588 (method url-fetch)
2589 (uri (string-append "mirror://gnome/sources/" name "/"
2590 (version-major+minor version) "/"
2591 name "-" version ".tar.xz"))
2592 (sha256
2593 (base32
2594 "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
2595 (build-system glib-or-gtk-build-system)
2596 (native-inputs
2597 `(("intltool" ,intltool)
2598 ("pkg-config" ,pkg-config)))
2599 (inputs
2600 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2601 ("webkitgtk" ,webkitgtk)))
2602 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2603 (synopsis "API documentation browser for GNOME")
2604 (description
2605 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2606natively with GTK-Doc (the API reference system developed for GTK+ and used
2607throughout GNOME for API documentation).")
2608 (license license:gpl2+)))
ba421ab7
MW
2609
2610(define-public cogl
2611 (package
2612 (name "cogl")
b3e91e02 2613 (version "1.22.0")
ba421ab7
MW
2614 (source
2615 (origin
2616 (method url-fetch)
2617 (uri (string-append "mirror://gnome/sources/" name "/"
2618 (version-major+minor version) "/"
2619 name "-" version ".tar.xz"))
2620 (sha256
2621 (base32
b3e91e02 2622 "14daxqrid5039xmq9yl4pk86awng1n9zgl6ysblhc4gw2ifzp7b8"))))
ba421ab7
MW
2623 (build-system gnu-build-system)
2624 (native-inputs
2625 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2626 ("gobject-introspection" ,gobject-introspection)
2627 ;;("xorg-server" ,xorg-server) ; for the test suite
2628 ("pkg-config" ,pkg-config)))
2629 (propagated-inputs
2630 `(("glib" ,glib)
2631 ("gdk-pixbuf" ,gdk-pixbuf)
2632 ("libx11" ,libx11)
2633 ("libxext" ,libxext)
2634 ("libxfixes" ,libxfixes)
2635 ("libxdamage" ,libxdamage)
2636 ("libxcomposite" ,libxcomposite)
2637 ("libxrandr" ,libxrandr)))
2638 (inputs
2639 `(("mesa" ,mesa)
2640 ("cairo" ,cairo)
2641 ("pango" ,pango)
2642 ("gstreamer" ,gstreamer)
2643 ("gst-plugins-base" ,gst-plugins-base)))
2644 (arguments
2645 `(#:configure-flags (list "--enable-cogl-gst"
2646 ;; Arrange to pass an absolute file name to
2647 ;; dlopen for libGL.so.
2648 (string-append "--with-gl-libname="
2649 (assoc-ref %build-inputs "mesa")
2650 "/lib/libGL.so"))
2651 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2652 ;; _FontTransOpen: Unable to Parse address
2653 ;; ${prefix}/share/fonts/X11/misc/
2654 #:tests? #f
2655 #; #:phases
2656 #;
2657 (modify-phases %standard-phases
2658 (add-before 'check 'start-xorg-server
2659 (lambda* (#:key inputs #:allow-other-keys)
2660 ;; The test suite requires a running X server.
2661 (system (format #f "~a/bin/Xvfb :1 &"
2662 (assoc-ref inputs "xorg-server")))
2663 (setenv "DISPLAY" ":1")
2664 #t)))))
2665 (home-page "http://www.cogl3d.org")
2666 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2667 (description
2668 "Cogl is a small library for using 3D graphics hardware to draw pretty
2669pictures. The API departs from the flat state machine style of OpenGL and is
2670designed to make it easy to write orthogonal components that can render
2671without stepping on each others toes.")
2672 (license (list license:expat ; most of the code
2673 license:bsd-3 ; cogl/cogl-point-in-poly.c
2674 license:sgifreeb2.0 ; cogl-path/tesselator/
2675 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2676
2677(define-public clutter
2678 (package
2679 (name "clutter")
0efd8be5 2680 (version "1.24.2")
fb182b8a
MW
2681 (source
2682 (origin
2683 (method url-fetch)
2684 (uri (string-append "mirror://gnome/sources/" name "/"
2685 (version-major+minor version) "/"
2686 name "-" version ".tar.xz"))
2687 (sha256
2688 (base32
0efd8be5 2689 "0qyd0cw17wi8gl6y9z2j2lh2gwghxskfmsdvw4ayrgxwnj6cjccn"))))
fb182b8a 2690 (build-system gnu-build-system)
600233bd
LC
2691 (outputs '("out"
2692 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2693 (native-inputs
2694 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2695 ("gobject-introspection" ,gobject-introspection)
2696 ("pkg-config" ,pkg-config)
2697 ("xsltproc" ,libxslt)))
2698 (propagated-inputs
2699 `(("cogl" ,cogl)
2700 ("cairo" ,cairo)
2701 ("atk" ,atk)
2702 ("gtk+" ,gtk+)
2703 ("json-glib" ,json-glib)
2704 ("glib" ,glib)
2705 ("libxcomposite" ,libxcomposite)
2706 ("libxdamage" ,libxdamage)
2707 ("libxext" ,libxext)
2708 ("xinput" ,xinput)))
2709 (inputs
2710 `(("libxkbcommon" ,libxkbcommon)
2711 ("udev" ,eudev)))
2712 (arguments
600233bd
LC
2713 `(#:configure-flags (list "--enable-x11-backend=yes"
2714
2715 ;; This produces share/doc/{clutter,cally}.
2716 (string-append "--with-html-dir="
2717 (assoc-ref %outputs "doc")
2718 "/share/doc"))
fb182b8a
MW
2719 ;; XXX FIXME: Get test suite working. It would probably fail in the
2720 ;; same way the cogl tests fail, since clutter is based on cogl.
2721 #:tests? #f))
2722 (home-page "http://www.clutter-project.org")
2723 (synopsis "Open GL based interactive canvas library")
2724 (description
2725 "Clutter is an Open GL based interactive canvas library, designed for
2726creating fast, mainly 2D single window applications such as media box UIs,
2727presentations, kiosk style applications and so on.")
2728 (license license:lgpl2.0+)))
bf7f17ba
MW
2729
2730(define-public clutter-gtk
2731 (package
2732 (name "clutter-gtk")
2733 (version "1.6.0")
2734 (source
2735 (origin
2736 (method url-fetch)
2737 (uri (string-append "mirror://gnome/sources/" name "/"
2738 (version-major+minor version) "/"
2739 name "-" version ".tar.xz"))
2740 (sha256
2741 (base32
2742 "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
2743 (build-system gnu-build-system)
2744 (native-inputs
2745 `(("pkg-config" ,pkg-config)
2746 ("gobject-introspection" ,gobject-introspection)))
2747 (inputs
2748 `(("clutter" ,clutter)
2749 ("gtk+" ,gtk+)))
2750 (home-page "http://www.clutter-project.org")
2751 (synopsis "Open GL based interactive canvas library GTK+ widget")
2752 (description
2753 "Clutter is an Open GL based interactive canvas library, designed for
2754creating fast, mainly 2D single window applications such as media box UIs,
2755presentations, kiosk style applications and so on.")
2756 (license license:lgpl2.0+)))
86d6a893
MW
2757
2758(define-public clutter-gst
2759 (package
2760 (name "clutter-gst")
2761 (version "3.0.6")
2762 (source
2763 (origin
2764 (method url-fetch)
2765 (uri (string-append "mirror://gnome/sources/" name "/"
2766 (version-major+minor version) "/"
2767 name "-" version ".tar.xz"))
2768 (sha256
2769 (base32
2770 "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
2771 (build-system gnu-build-system)
2772 (native-inputs
2773 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2774 ("pkg-config" ,pkg-config)
2775 ("gobject-introspection" ,gobject-introspection)))
2776 (inputs
2777 `(("clutter" ,clutter)
2778 ("gstreamer" ,gstreamer)
2779 ("gst-plugins-base" ,gst-plugins-base)))
2780 (home-page "http://www.clutter-project.org")
2781 (synopsis "Integration library for using GStreamer with Clutter")
2782 (description
2783 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2784It provides a GStreamer sink to upload frames to GL and an actor that
2785implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2786GL based interactive canvas library.")
2787 (license license:lgpl2.0+)))
607a04ae 2788
30dc88d9
LC
2789(define-public libchamplain
2790 (package
2791 (name "libchamplain")
2792 (version "0.12.10")
2793 (source (origin
2794 (method url-fetch)
2795 (uri (string-append
2796 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
2797 version ".tar.xz"))
2798 (sha256
2799 (base32
2800 "019b8scnx7d3wdylmpk9ihzh06w25b63x9cn8nhj6kjx82rcwlxz"))))
2801 (build-system gnu-build-system)
2802 (native-inputs `(("pkg-config" ,pkg-config)))
2803 (propagated-inputs
2804 `(("libsoup" ,libsoup)
2805 ("sqlite" ,sqlite)
2806 ("clutter" ,clutter)
2807 ("clutter-gtk" ,clutter-gtk)
2808 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
2809 ("cairo" ,cairo)
2810 ("gtk+3" ,gtk+)
2811 ("glib" ,glib)))
2812 (home-page "http://projects.gnome.org/libchamplain/")
2813 (synopsis "C library providing a ClutterActor to display maps")
2814 (description
2815 "libchamplain is a C library providing a ClutterActor to display maps.
2816It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
2817and Perl bindings are also available. It supports numerous free map sources
2818such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
2819 (license license:lgpl2.1+)))
2820
607a04ae
MW
2821(define-public gom
2822 (package
2823 (name "gom")
2824 (version "0.3.1")
2825 (source
2826 (origin
2827 (method url-fetch)
2828 (uri (string-append "mirror://gnome/sources/" name "/"
2829 (version-major+minor version) "/"
2830 name "-" version ".tar.xz"))
2831 (sha256
2832 (base32
2833 "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
2834 (build-system gnu-build-system)
2835 (native-inputs
2836 `(("intltool" ,intltool)
2837 ("pkg-config" ,pkg-config)
2838 ("gobject-introspection" ,gobject-introspection)))
2839 (inputs
2840 `(("glib" ,glib)
2841 ("gdk-pixbuf" ,gdk-pixbuf)
2842 ("sqlite" ,sqlite)))
2843 ;; XXX TODO: Figure out how to run the test suite.
2844 (arguments `(#:tests? #f))
2845 (home-page "https://wiki.gnome.org/Projects/Gom")
2846 (synopsis "Object mapper from GObjects to SQLite")
2847 (description
2848 "Gom provides an object mapper from GObjects to SQLite. It helps you
2849write applications that need to store structured data as well as make complex
2850queries upon that data.")
2851 (license license:lgpl2.1+)))
b7a3cf11
SB
2852
2853(define-public gnome-klotski
2854 (package
2855 (name "gnome-klotski")
2856 (version "3.16.1")
2857 (source (origin
2858 (method url-fetch)
2859 (uri (string-append "mirror://gnome/sources/" name "/"
2860 (version-major+minor version) "/"
2861 name "-" version ".tar.xz"))
2862 (sha256
2863 (base32
2864 "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
2865 (build-system glib-or-gtk-build-system)
2866 (native-inputs
2867 `(("desktop-file-utils" ,desktop-file-utils)
2868 ("intltool" ,intltool)
2869 ("itstool" ,itstool)
bcb354ad
SB
2870 ("pkg-config" ,pkg-config)
2871 ("xmllint" ,libxml2)))
b7a3cf11
SB
2872 (inputs
2873 `(("gtk+" ,gtk+)
2874 ("librsvg" ,librsvg)))
2875 (home-page "https://wiki.gnome.org/Apps/Klotski")
2876 (synopsis "Sliding block puzzles")
2877 (description
2878 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
2879the patterned block to the area bordered by green markers. To do so, you will
2880need to slide other blocks out of the way. Complete each puzzle in as few moves
2881as possible!")
2882 (license license:gpl2+)))
8d4791bf
MW
2883
2884(define-public grilo
2885 (package
2886 (name "grilo")
2887 (version "0.2.12")
2888 (source
2889 (origin
2890 (method url-fetch)
2891 (uri (string-append "mirror://gnome/sources/" name "/"
2892 (version-major+minor version) "/"
2893 name "-" version ".tar.xz"))
2894 (sha256
2895 (base32
2896 "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m"))))
2897 (build-system gnu-build-system)
2898 (native-inputs
2899 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2900 ("intltool" ,intltool)
2901 ("pkg-config" ,pkg-config)
2902 ("gobject-introspection" ,gobject-introspection)))
2903 (inputs
2904 `(("glib" ,glib)
2905 ("gtk+" ,gtk+)
2906 ("libxml2" ,libxml2)
2907 ;; XXX TODO: Add oauth
2908 ("libsoup" ,libsoup)
2909 ("totem-pl-parser" ,totem-pl-parser)))
2910 (arguments
2911 `(#:phases
2912 (modify-phases %standard-phases
2913 (add-after 'unpack 'fix-introspection-install-dir
2914 (lambda* (#:key outputs #:allow-other-keys)
2915 (let ((out (assoc-ref outputs "out")))
2916 (substitute* '("src/Makefile.in"
2917 "libs/pls/Makefile.in"
2918 "libs/net/Makefile.in")
2919 (("@INTROSPECTION_GIRDIR@")
2920 (string-append out "/share/gir-1.0/"))
2921 (("@INTROSPECTION_TYPELIBDIR@")
2922 (string-append out "/lib/girepository-1.0/")))))))))
2923 (native-search-paths
2924 (list (search-path-specification
2925 (variable "GRL_PLUGIN_PATH")
2926 (files (list (string-append "lib/grilo-"
2927 (version-major+minor version)))))))
2928 (home-page "http://live.gnome.org/Grilo")
2929 (synopsis "Framework for discovering and browsing media")
2930 (description
2931 "Grilo is a framework focused on making media discovery and browsing easy
2932for application developers.")
2933 (license license:lgpl2.1+)))
7b212526
MW
2934
2935(define-public grilo-plugins
2936 (package
2937 (name "grilo-plugins")
2938 (version "0.2.14")
2939 (source
2940 (origin
2941 (method url-fetch)
2942 (uri (string-append "mirror://gnome/sources/" name "/"
2943 (version-major+minor version) "/"
2944 name "-" version ".tar.xz"))
2945 (sha256
2946 (base32
2947 "1aykhc679pwn2qxsg19g8nh9hffpsqkgxcbqq7lcfn2hcwb83wfh"))))
2948 (build-system gnu-build-system)
2949 (native-inputs
2950 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2951 ("intltool" ,intltool)
2952 ("itstool" ,itstool)
2953 ("pkg-config" ,pkg-config)))
2954 (inputs
2955 `(("grilo" ,grilo)
2956 ("glib" ,glib)
2957 ("libxml2" ,libxml2)
2958 ("sqlite" ,sqlite)
2959 ("gom" ,gom)
2960 ;; XXX TODO: Add oauth
2961 ;; XXX TODO: Add goa
2962 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
2963 ;; XXX TODO: Add lua (needs help finding it)
2964 ("json-glib" ,json-glib)
2965 ("avahi" ,avahi)
2966 ("gmime" ,gmime)
2967 ("libsoup" ,libsoup)
2968 ("libarchive" ,libarchive)
2969 ("totem-pl-parser" ,totem-pl-parser)))
2970 (arguments
2971 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
2972 %output
2973 "/lib/grilo-"
2974 ,(version-major+minor version)))
2975 ;; XXX FIXME: Try to get the test suite working. It appears to require
2976 ;; a working system dbus. Inside the build container, all tests fail
2977 ;; with: "assertion failed: (source)". Outside of the build container,
2978 ;; most tests succeed.
2979 #:tests? #f))
2980 (home-page "http://live.gnome.org/Grilo")
2981 (synopsis "Plugins for the Grilo media discovery library")
2982 (description
2983 "Grilo is a framework focused on making media discovery and browsing easy
2984for application developers.")
2985 (license license:lgpl2.1+)))
4e3fc547
MW
2986
2987(define-public totem
2988 (package
2989 (name "totem")
2990 (version "3.16.1")
2991 (source
2992 (origin
2993 (method url-fetch)
2994 (uri (string-append "mirror://gnome/sources/" name "/"
2995 (version-major+minor version) "/"
2996 name "-" version ".tar.xz"))
2997 (sha256
2998 (base32
2999 "1nkm2i271ivq40hryrl6px39gbbvhmlx4vmvwvw4h3z8xh3013f9"))))
3000 (build-system glib-or-gtk-build-system)
3001 (native-inputs
3002 `(("pkg-config" ,pkg-config)
3003 ("desktop-file-utils" ,desktop-file-utils)
3004 ("gobject-introspection" ,gobject-introspection)
3005 ("intltool" ,intltool)
bcb354ad
SB
3006 ("itstool" ,itstool)
3007 ("xmllint" ,libxml2)))
4e3fc547
MW
3008 (propagated-inputs
3009 `(("dconf" ,dconf)))
3010 (inputs
3011 `(("gtk+" ,gtk+)
3012 ("gdk-pixbuf" ,gdk-pixbuf)
3013 ("atk" ,atk)
3014 ("cairo" ,cairo)
3015 ("dbus-glib" ,dbus-glib)
3016 ("clutter" ,clutter)
3017 ("clutter-gtk" ,clutter-gtk)
3018 ("clutter-gst" ,clutter-gst)
3019 ("xproto" ,xproto)
3020 ("libxxf86vm" ,libxxf86vm)
3021 ("libxtst" ,libxtst)
3022 ("libxrandr" ,libxrandr)
3023 ("libxml2" ,libxml2)
3024 ("libsoup" ,libsoup)
3025 ("libpeas" ,libpeas)
3026 ("librsvg" ,librsvg)
3027 ("lirc" ,lirc)
3028 ("gnome-desktop" ,gnome-desktop)
3029 ("gstreamer" ,gstreamer)
3030 ("gst-plugins-base" ,gst-plugins-base)
3031 ("gst-plugins-good" ,gst-plugins-good)
3032 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3033 ("adwaita-icon-theme" ,adwaita-icon-theme)
3034 ;; XXX We use python-2 because libxml2 because itstool (which needs
3035 ;; libxml) currently uses python-2.
3036 ("python" ,python-2)
3037 ("python-pygobject" ,python2-pygobject)
3038 ;; XXX TODO pylint needed for python support
3039 ("totem-pl-parser" ,totem-pl-parser)
3040 ("grilo" ,grilo)
3041 ("grilo-plugins" ,grilo-plugins)
3042 ("nettle" ,nettle)
3043 ("vala" ,vala)))
3044 (arguments
3045 `(#:phases
3046 (modify-phases %standard-phases
3047 (add-after
3048 'install 'wrap-totem
3049 (lambda* (#:key inputs outputs #:allow-other-keys)
3050 (let ((out (assoc-ref outputs "out"))
3051 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3052 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3053 (wrap-program (string-append out "/bin/totem")
3054 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3055 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3056 #t)))))
3057 (home-page "https://wiki.gnome.org/Apps/Videos")
3058 (synopsis "Simple media player for GNOME based on GStreamer")
3059 (description "Totem is a simple yet featureful media player for GNOME
3060which can read a large number of file formats.")
3061 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3062 ;; to be used and distributed together with GStreamer and Totem. See
3063 ;; file://COPYING in the source distribution for details.
3064 (license license:gpl2+)))
f0afb0c8
DH
3065
3066(define-public rhythmbox
3067 (package
3068 (name "rhythmbox")
3069 (version "3.2.1")
3070 (source (origin
3071 (method url-fetch)
3072 (uri (string-append "mirror://gnome/sources/" name "/"
3073 (version-major+minor version) "/"
3074 name "-" version ".tar.xz"))
3075 (sha256
3076 (base32
3077 "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
3078 (build-system glib-or-gtk-build-system)
3079 (arguments
3080 `(#:configure-flags
3081 (list "--enable-lirc"
3082 "--enable-python"
3083 "--enable-vala"
3084 "--with-brasero"
3085 "--with-gudev"
3086 "--with-libsecret")
3087 #:phases
3088 (modify-phases %standard-phases
3089 (add-after
3090 'install 'wrap-rhythmbox
3091 (lambda* (#:key inputs outputs #:allow-other-keys)
3092 (let ((out (assoc-ref outputs "out"))
3093 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3094 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3095 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3096 (wrap-program (string-append out "/bin/rhythmbox")
3097 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3098 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3099 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3100 #t)))))
3101 (propagated-inputs
3102 `(("dconf" ,dconf)))
3103 (native-inputs
bcb354ad
SB
3104 `(("itstool" ,itstool)
3105 ("intltool" ,intltool)
f0afb0c8
DH
3106 ("glib" ,glib "bin")
3107 ("gobject-introspection" ,gobject-introspection)
3108 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3109 ("pkg-config" ,pkg-config)
3110 ("xmllint" ,libxml2)))
f0afb0c8
DH
3111 (inputs
3112 `(("json-glib" ,json-glib)
3113 ("tdb" ,tdb)
3114 ("gnome-desktop" ,gnome-desktop)
3115 ("python" ,python)
3116 ("python-pygobject" ,python2-pygobject)
3117 ("vala" ,vala)
3118 ("gmime" ,gmime)
3119 ("nettle" ,nettle)
f0afb0c8
DH
3120 ("adwaita-icon-theme" ,adwaita-icon-theme)
3121 ("grilo" ,grilo)
3122 ("grilo-plugins" ,grilo-plugins)
3123 ("gstreamer" ,gstreamer)
3124 ("gst-plugins-base" ,gst-plugins-base)
3125 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3126 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3127 ("libgudev" ,libgudev)
f0afb0c8
DH
3128 ;;("libmtp" ,libmtp) FIXME: Not detected
3129 ("libsecret" ,libsecret)
3130 ("libsoup" ,libsoup)
3131 ("libnotify" ,libnotify)
3132 ("libpeas" ,libpeas)
3133 ("lirc" ,lirc)
3134 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3135 ;;("clutter" ,clutter)
3136 ;;("clutter-gtk" ,clutter-gtk)
3137 ;;("clutter-gst" ,clutter-gst)
3138 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3139 ("atk" ,atk)
3140 ("pango" ,pango)
3141 ("gtk+" ,gtk+)
3142 ;; TODO:
3143 ;; * libgpod
3144 ;; * mx
3145 ;; * webkit
3146 ("brasero" ,brasero)))
3147 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3148 (synopsis "Music player for GNOME")
3149 (description "Rhythmbox is a music playing application for GNOME. It
3150supports playlists, song ratings, and any codecs installed through gstreamer.")
3151 (license license:gpl2+)))
f70d8383
DH
3152
3153(define-public eog
3154 (package
3155 (name "eog")
3156 (version "3.16.2")
3157 (source (origin
3158 (method url-fetch)
3159 (uri (string-append "mirror://gnome/sources/" name "/"
3160 (version-major+minor version) "/"
3161 name "-" version ".tar.xz"))
3162 (sha256
3163 (base32
3164 "0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0"))))
3165 (build-system glib-or-gtk-build-system)
3166 (arguments
3167 `(#:phases
3168 (modify-phases %standard-phases
3169 (add-after
3170 'install 'wrap-eog
3171 (lambda* (#:key outputs #:allow-other-keys)
3172 (let ((out (assoc-ref outputs "out"))
3173 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3174 (wrap-program (string-append out "/bin/eog")
3175 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3176 #t)))))
3177 (propagated-inputs
3178 `(("dconf" ,dconf)))
3179 (native-inputs
3180 `(("intltool" ,intltool)
3181 ("itstool", itstool)
3182 ("glib" ,glib "bin")
3183 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3184 ("pkg-config" ,pkg-config)
3185 ("xmllint" ,libxml2)))
f70d8383
DH
3186 (inputs
3187 `(("gnome-desktop" ,gnome-desktop)
3188 ("shared-mime-info" ,shared-mime-info)
3189 ("adwaita-icon-theme" ,adwaita-icon-theme)
3190 ("exempi" ,exempi)
3191 ("lcms" ,lcms)
3192 ("libexif" ,libexif)
3193 ("libpeas" ,libpeas)
3194 ("libjpeg" ,libjpeg)
3195 ("librsvg" ,librsvg)
3196 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3197 ("gtk+" ,gtk+)))
3198 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3199 (synopsis "GNOME image viewer")
3200 (description "Eye of GNOME is the GNOME image viewer. It
3201supports image conversion, rotation, and slideshows.")
3202 (license license:gpl2+)))
41af5e7b
SB
3203
3204(define-public libgudev
3205 (package
3206 (name "libgudev")
3207 (version "230")
3208 (source (origin
3209 (method url-fetch)
3210 (uri (string-append "mirror://gnome/sources/" name "/"
3211 version "/" name "-" version ".tar.xz"))
3212 (sha256
3213 (base32
3214 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3215 (build-system gnu-build-system)
3216 (native-inputs
3217 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3218 ("gobject-introspection" ,gobject-introspection)
3219 ("pkg-config" ,pkg-config)))
3220 (propagated-inputs
3221 `(("glib" ,glib))) ; required by gudev-1.0.pc
3222 (inputs
3223 `(("udev" ,eudev)))
3224 (home-page "https://wiki.gnome.org/Projects/libgudev")
3225 (synopsis "GObject bindings for libudev")
3226 (description
3227 "This library provides GObject bindings for libudev. It was originally
3228part of udev-extras, then udev, then systemd. It's now a project on its own.")
3229 (license license:lgpl2.1+)))
3dc8828f
SB
3230
3231(define-public gvfs
3232 (package
3233 (name "gvfs")
3234 (version "1.24.1")
3235 (source (origin
3236 (method url-fetch)
3237 (uri (string-append "mirror://gnome/sources/" name "/"
3238 (version-major+minor version) "/"
3239 name "-" version ".tar.xz"))
3240 (sha256
3241 (base32
3242 "1ygiknnd24qgzds8wif3jns981mqr65lgjlxs5pw65cl3376g0yk"))))
3243 (build-system gnu-build-system)
3244 (arguments
3245 '(#:tests? #f)) ; XXX: requiring `pidof'
3246 (native-inputs
3247 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3248 ("intltool" ,intltool)
3249 ("pkg-config" ,pkg-config)
3250 ("xsltproc" ,libxslt)))
3251 (inputs
3252 `(("avahi" ,avahi)
3253 ("docbook-xml" ,docbook-xml-4.2)
3254 ("docbook-xsl" ,docbook-xsl)
3255 ("dbus" ,dbus)
3256 ("fuse" ,fuse)
3257 ("glib" ,glib)
3258 ("libarchive" ,libarchive)
3259 ("libbluray" ,libbluray)
3260 ("libcdio-paranoia" ,libcdio-paranoia)
3261 ("libgcrypt" ,libgcrypt)
3262 ("libgphoto2" ,libgphoto2)
3263 ("libgudev" ,libgudev)
3264 ("libmtp" ,libmtp)
3265 ("libsecret" ,libsecret)
3266 ("libsmbclient" ,samba)
3267 ("libsoup" ,libsoup)
3268 ("libxml2" ,libxml2)
3269 ("nettle" ,nettle) ; XXX: required by libarchive.pc
3270 ("udisks" ,udisks)))
3271 (home-page "https://wiki.gnome.org/gvfs/")
3272 (synopsis "Userspace virtual filesystem for GIO")
3273 (description
3274 "GVFS is a userspace virtual filesystem designed to work with the I/O
3275abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3276to all applications using the GIO API. It also supports exposing the GVFS
3277mounts to non-GIO applications using FUSE.
3278
3279GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3280DAV, and others.")
3281 (license license:lgpl2.0+)))
7c88b6bd
AW
3282
3283(define-public gusb
3284 (package
3285 (name "gusb")
3286 (version "0.2.6")
3287 (source (origin
3288 (method url-fetch)
3289 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3290 "gusb_"
3291 (string-join (string-split version #\.)
3292 "_")
3293 ".tar.gz"))
3294 (sha256
3295 (base32
3296 "0h9dzaza81b0mx5jfh5cnc31xdynl0jsxgwvl6vqyhy8mnwfi5nr"))))
3297 (build-system gnu-build-system)
3298 (native-inputs
3299 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3300 ("gobject-introspection" ,gobject-introspection)
3301 ("pkg-config" ,pkg-config)
3302 ("vala" ,vala)
3303 ("autoconf" ,autoconf)
3304 ("automake" ,automake)
3305 ("libtool" ,libtool)
3306 ("gtk-doc" ,gtk-doc)))
3307 (propagated-inputs
3308 ;; Both of these are required by gusb.pc.
3309 `(("glib" ,glib)
3310 ("libusb" ,libusb)))
3311 (arguments
3312 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3313 #:phases
3314 (modify-phases %standard-phases
3315 (add-after 'unpack 'autogen
3316 (lambda _
3317 (and (zero? (system* "gtkdocize"))
3318 (zero? (system* "autoreconf" "-vif"))))))))
3319 (home-page "https://github/hughsie/libgusb")
a124bbd2 3320 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3321 (description
3322 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3323asynchronous control, bulk and interrupt transfers with proper cancellation
3324and integration into a mainloop. This makes it easy to integrate low level
3325USB transfers with your high-level application or system daemon.")
3326 (license license:lgpl2.1+)))
0abe1d86
AW
3327
3328(define-public simple-scan
3329 (package
3330 (name "simple-scan")
3331 (version "3.17.4")
3332 (source (origin
3333 (method url-fetch)
3334 (uri (string-append "https://launchpad.net/simple-scan/"
3335 (version-major+minor version) "/"
3336 version "/+download/simple-scan-"
3337 version ".tar.xz"))
3338 (sha256
3339 (base32
3340 "1pslbv45g01g039zj2b01k08f763kkhzqw8wwz7yh27m7bjllnx6"))))
3341 (build-system glib-or-gtk-build-system)
3342 (inputs
3343 `(("gtk" ,gtk+)
3344 ("zlib" ,zlib)
3345 ("cairo" ,cairo)
3346 ("gdk-pixbuf" ,gdk-pixbuf)
3347 ("gusb" ,gusb)
3348 ("libgudev" ,libgudev)
3349 ("libsane" ,sane-backends)))
3350 (native-inputs
3351 `(("intltool" ,intltool)
3352 ("itstool" ,itstool)
3353 ("colord" ,colord)
3354 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3355 ("pkg-config" ,pkg-config)
bcb354ad
SB
3356 ("vala" ,vala)
3357 ("xmllint" ,libxml2)))
0abe1d86
AW
3358 (home-page "https://launchpad.net/simple-scan")
3359 (synopsis "Document and image scanner")
3360 (description "Simple Scan is an easy-to-use application, designed to let
3361users connect their scanner and quickly have the image/document in an
3362appropriate format. Simple Scan is basically a frontend for SANE - which is
3363the same backend as XSANE uses. This means that all existing scanners will
3364work and the interface is well tested.")
3365 (license license:gpl3+)))
7549f984
SB
3366
3367(define-public epiphany
3368 (package
3369 (name "epiphany")
3370 (version "3.16.3")
3371 (source (origin
3372 (method url-fetch)
3373 (uri (string-append "mirror://gnome/sources/" name "/"
3374 (version-major+minor version) "/"
3375 name "-" version ".tar.xz"))
3376 (sha256
3377 (base32
3378 "1cch4c7gh6lq1i4g0gs39qa2csl4i8a3pcdfapcj5v3r0xvz29ym"))))
3379 (build-system glib-or-gtk-build-system)
3380 (arguments
3381 ;; FIXME: tests run under Xvfb, but fail with:
3382 ;; /src/bookmarks/ephy-bookmarks/create:
3383 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3384 ;; subsystem
3385 ;; FAIL
3386 '(#:tests? #f))
80a747c4
SB
3387 (propagated-inputs
3388 `(("dconf" ,dconf)))
7549f984
SB
3389 (native-inputs
3390 `(("intltool" ,intltool)
3391 ("itstool" ,itstool)
bcb354ad
SB
3392 ("pkg-config" ,pkg-config)
3393 ("xmllint" ,libxml2)))
7549f984
SB
3394 (inputs
3395 `(("avahi" ,avahi)
3396 ("gcr" ,gcr)
3397 ("glib-networking" ,glib-networking)
3398 ("gnome-desktop" ,gnome-desktop)
3399 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3400 ("iso-codes" ,iso-codes)
3401 ("libnotify" ,libnotify)
3402 ("libsecret" ,libsecret)
3403 ("libwnck" ,libwnck)
3404 ("libxslt" ,libxslt)
3405 ("nss" ,nss)
3406 ("sqlite" ,sqlite)
3407 ("webkitgtk" ,webkitgtk)))
3408 (home-page "https://wiki.gnome.org/Apps/Web")
3409 (synopsis "GNOME web browser")
3410 (description
3411 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3412principles are simplicity and standards compliance.")
3413 (license license:gpl2+)))
a3856b2c
SB
3414
3415(define-public d-feet
3416 (package
3417 (name "d-feet")
3418 (version "0.3.10")
3419 (source (origin
3420 (method url-fetch)
3421 (uri (string-append "mirror://gnome/sources/" name "/"
3422 (version-major+minor version) "/"
3423 name "-" version ".tar.xz"))
3424 (sha256
3425 (base32
3426 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3427 (build-system glib-or-gtk-build-system)
3428 (arguments
3429 '(#:out-of-source? #f ; tests need to run in the source directory.
3430 #:phases
3431 (modify-phases %standard-phases
3432 (add-before
3433 'check 'pre-check
86aff791 3434 (lambda _
a3856b2c
SB
3435 ;; The test suite requires a running X server.
3436 (system "Xvfb :1 &")
3437 (setenv "DISPLAY" ":1")
3438 ;; Don't fail on missing '/etc/machine-id'.
3439 (setenv "DBUS_FATAL_WARNINGS" "0")
3440 ;; tests.py and window.py don't meet E402:
3441 ;; E402 module level import not at top of file
3442 (substitute* "src/tests/Makefile"
86aff791
MW
3443 (("--ignore=E123") "--ignore=E123,E402"))
3444 #t))
a3856b2c
SB
3445 (add-after
3446 'install 'wrap-program
3447 (lambda* (#:key outputs #:allow-other-keys)
3448 (let ((prog (string-append (assoc-ref outputs "out")
3449 "/bin/d-feet")))
3450 (wrap-program prog
3451 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3452 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3453 #t))))))
a3856b2c
SB
3454 (native-inputs
3455 `(("intltool" ,intltool)
3456 ("itstool" ,itstool)
3457 ("pkg-config" ,pkg-config)
3458 ("python-pep8" ,python-pep8)
3459 ("xmllint" ,libxml2)
3460 ("xorg-server" ,xorg-server)))
3461 (inputs
3462 `(("gobject-introspection" ,gobject-introspection)
3463 ("gtk+" ,gtk+)
3464 ("python" ,python-wrapper)
3465 ("python-pygobject" ,python-pygobject)))
3466 (home-page "https://wiki.gnome.org/Apps/DFeet")
3467 (synopsis "D-Bus debugger")
3468 (description
3469 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3470of running programs and invoke methods on those interfaces.")
3471 (license license:gpl2+)))
c3b97bd9
SB
3472
3473(define-public yelp-xsl
3474 (package
3475 (name "yelp-xsl")
3476 (version "3.16.1")
3477 (source (origin
3478 (method url-fetch)
3479 (uri (string-append "mirror://gnome/sources/" name "/"
3480 (version-major+minor version) "/"
3481 name "-" version ".tar.xz"))
3482 (sha256
3483 (base32
3484 "0jhpni4mmfvj3xf57rjm61nc8d0x66hz9gd1ywws5lh39g6fx59j"))))
3485 (build-system gnu-build-system)
3486 (native-inputs
3487 `(("intltool" ,intltool)
3488 ("itstool" ,itstool)
3489 ("xmllint" ,libxml2)))
3490 (home-page "https://wiki.gnome.org/Apps/Yelp")
3491 (synopsis "XSL stylesheets for Yelp")
3492 (description
3493 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3494to format Docbook and Mallard documents.")
3495 (license license:gpl2+)))
de3d612a
SB
3496
3497(define-public yelp
3498 (package
3499 (name "yelp")
3500 (version "3.16.1")
3501 (source (origin
3502 (method url-fetch)
3503 (uri (string-append "mirror://gnome/sources/" name "/"
3504 (version-major+minor version) "/"
3505 name "-" version ".tar.xz"))
3506 (sha256
3507 (base32
3508 "1jk7aad1srykhgc3x0hd3q3dnlshmy1ak00alwjzaasxvy6hp0b0"))))
3509 (build-system glib-or-gtk-build-system)
3510 (native-inputs
3511 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3512 ("intltool" ,intltool)
3513 ("itstool" ,itstool)
3514 ("pkg-config" ,pkg-config)))
3515 (propagated-inputs
3516 `(("dconf" ,dconf)))
3517 (inputs
3518 `(("libxslt" ,libxslt)
3519 ("sqlite" ,sqlite)
3520 ("webkitgtk" ,webkitgtk-2.4)
3521 ("yelp-xsl" ,yelp-xsl)
3522 ;; XXX: need by libwebkitgtk-3.0.la.
3523 ("icu4c" ,(@ (gnu packages icu4c) icu4c))))
3524 (home-page "https://wiki.gnome.org/Apps/Yelp")
3525 (synopsis "GNOME help browser")
3526 (description
3527 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3528man, info, and HTML documents. It can locate documents according to the
3529freedesktop.org help system specification.")
3530 (license license:gpl2+)))
122d0d10
SB
3531
3532(define-public yelp-tools
3533 (package
3534 (name "yelp-tools")
3535 (version "3.16.1")
3536 (source (origin
3537 (method url-fetch)
3538 (uri (string-append "mirror://gnome/sources/" name "/"
3539 (version-major+minor version) "/"
3540 name "-" version ".tar.xz"))
3541 (sha256
3542 (base32
3543 "177qzvj5w019isdp41qxqcys2kc4sq2x6dqhqn6l9ipib8a6rxml"))))
3544 (build-system gnu-build-system)
3545 (native-inputs
3546 `(("pkg-config" ,pkg-config)))
3547 (propagated-inputs
3548 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3549 `(("itstool" ,itstool)
3550 ("xmllint" ,libxml2)
3551 ("xsltproc" ,libxslt)))
3552 (inputs
3553 `(("yelp-xsl" ,yelp-xsl)))
3554 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3555 (synopsis "Yelp documentation tools")
3556 (description
3557 "Yelp-tools is a collection of scripts and build utilities to help create,
3558manage, and publish documentation for Yelp and the web. Most of the heavy
3559lifting is done by packages like yelp-xsl and itstool. This package just
3560wraps things up in a developer-friendly way.")
3561 (license license:gpl2+)))
af8f9f23
RW
3562
3563(define-public libgee
3564 (package
3565 (name "libgee")
3566 (version "0.18.0")
3567 (source (origin
3568 (method url-fetch)
3569 (uri (string-append "mirror://gnome/sources/" name "/"
3570 (version-major+minor version) "/"
3571 name "-" version ".tar.xz"))
3572 (sha256
3573 (base32
3574 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3575 (build-system gnu-build-system)
3576 (arguments
3577 `(#:phases
3578 (modify-phases %standard-phases
3579 (add-after 'unpack 'fix-introspection-install-dir
3580 (lambda* (#:key outputs #:allow-other-keys)
3581 (let ((out (assoc-ref outputs "out")))
3582 (substitute* "gee/Makefile.in"
3583 (("@INTROSPECTION_GIRDIR@")
3584 (string-append out "/share/gir-1.0/"))
3585 (("@INTROSPECTION_TYPELIBDIR@")
3586 (string-append out "/lib/girepository-1.0/")))))))))
3587 (native-inputs
3588 `(("glib" ,glib "bin")
3589 ("pkg-config" ,pkg-config)))
3590 (inputs
3591 `(("glib" ,glib)
3592 ("gobject-introspection" ,gobject-introspection)))
3593 (home-page "https://wiki.gnome.org/Projects/Libgee")
3594 (synopsis "GObject collection library")
3595 (description
3596 "Libgee is a utility library providing GObject-based interfaces and
3597classes for commonly used data structures.")
3598 (license license:lgpl2.1+)))
b0f9c4b8
RW
3599
3600(define-public gexiv2
3601 (package
3602 (name "gexiv2")
3603 (version "0.10.3")
3604 (source (origin
3605 (method url-fetch)
3606 (uri (string-append "mirror://gnome/sources/" name "/"
3607 (version-major+minor version) "/"
3608 name "-" version ".tar.xz"))
3609 (sha256
3610 (base32
3611 "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))))
3612 (build-system gnu-build-system)
3613 (native-inputs
3614 `(("glib" ,glib "bin")
3615 ("pkg-config" ,pkg-config)))
3616 (propagated-inputs
3617 ;; Listed in "Requires" section of gexiv2.pc
3618 `(("exiv2" ,exiv2)))
3619 (inputs
3620 `(("glib" ,glib)
3621 ("gobject-introspection" ,gobject-introspection)))
3622 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3623 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3624 (description
3625 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3626allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3627metadata in photo and video files of various formats.")
3628 (license license:gpl2+)))
fed5a689
RW
3629
3630(define-public shotwell
3631 (package
3632 (name "shotwell")
3633 (version "0.22.0")
3634 (source (origin
3635 (method url-fetch)
3636 (uri (string-append "mirror://gnome/sources/" name "/"
3637 (version-major+minor version) "/"
3638 name "-" version ".tar.xz"))
3639 (sha256
3640 (base32
3641 "0cgqaaikrb10plhf6zxbgqy32zqpiwyi9dpx3g8yr261q72r5c81"))))
3642 (build-system glib-or-gtk-build-system)
3643 (arguments
3644 `(#:tests? #f ;no "check" target
3645 #:make-flags '("CC=gcc")
3646 #:configure-flags '("--disable-gsettings-convert-install")
3647 #:out-of-source? #f))
3648 (native-inputs
3649 `(("pkg-config" ,pkg-config)
3650 ("gettext" ,gnu-gettext)
3651 ("m4" ,m4)
3652 ("desktop-file-utils" ,desktop-file-utils)
3653 ("vala" ,vala)
3654 ("which" ,which)
3655 ("gnome-doc-utils" ,gnome-doc-utils)
3656 ;; FIXME: I only added python2-libxml2 because xml2po needs it at
3657 ;; runtime. It should be propagated.
3658 ("python2-libxml2" ,python2-libxml2)
3659 ("python2" ,python-2)))
3660 (inputs
3661 `(("gstreamer" ,gstreamer)
3662 ("gst-plugins-base" ,gst-plugins-base)
3663 ("gst-plugins-good" ,gst-plugins-good)
3664 ("libgee" ,libgee)
3665 ("gexiv2" ,gexiv2)
3666 ("libraw" ,libraw)
3667 ("json-glib" ,json-glib)
3668 ("rest" ,rest)
3669 ("webkitgtk" ,webkitgtk-2.4)
3670 ("sqlite" ,sqlite)
3671 ("libsoup" ,libsoup)
3672 ("libxml2" ,libxml2)
3673 ("gtk+" ,gtk+)
3674 ("libgudev" ,libgudev)
3675 ("libgphoto2" ,libgphoto2)))
3676 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3677 (synopsis "Photo manager for GNOME 3")
3678 (description
3679 "Shotwell is a digital photo manager designed for the GNOME desktop
3680environment. It allows you to import photos from disk or camera, organize
3681them by keywords and events, view them in full-window or fullscreen mode, and
3682share them with others via social networking and more.")
3683 (license license:lgpl2.1+)))
293ff8b2
DT
3684
3685(define-public file-roller
3686 (package
3687 (name "file-roller")
3688 (version "3.10.0")
3689 (source (origin
3690 (method url-fetch)
3691 (uri (string-append "mirror://gnome/sources/" name "/"
3692 (version-major+minor version) "/"
3693 name "-" version ".tar.xz"))
3694 (sha256
3695 (base32
3696 "04sg4yzz4c3hzgxhbgx2dc36lq5hjrnrmal2q0amfvhl0jcvp2fq"))))
3697 (build-system glib-or-gtk-build-system)
3698 (native-inputs
3699 `(("intltool" ,intltool)
3700 ("pkg-config" ,pkg-config)))
3701 ;; TODO: Add libnautilus.
3702 (inputs
3703 `(("gtk+" ,gtk+)
3704 ("gdk-pixbuf" ,gdk-pixbuf)
3705 ("json-glib" ,json-glib)
3706 ("libarchive" ,libarchive)
3707 ("libnotify" ,libnotify)
3708 ("nettle" ,nettle)
3709 ("itstool" ,itstool)
3710 ("libxml2" ,libxml2)))
3711 (synopsis "Graphical archive manager for GNOME")
3712 (description "File Roller is an archive manager for the GNOME desktop
3713environment that allows users to view, unpack, and create compressed archives
3714such as gzip tarballs.")
3715 (home-page "http://fileroller.sourceforge.net/")
3716 (license license:gpl2+)))
7ce49365
SB
3717
3718(define-public gnome-session
3719 (package
3720 (name "gnome-session")
3721 (version "3.18.1.2")
3722 (source (origin
3723 (method url-fetch)
3724 (uri (string-append "mirror://gnome/sources/" name "/"
3725 (version-major+minor version) "/"
3726 name "-" version ".tar.xz"))
3727 (sha256
3728 (base32
3729 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk"))))
3730 (build-system gnu-build-system)
3731 (native-inputs
3732 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3733 ("pkg-config" ,pkg-config)
3734 ("intltool" ,intltool)
3735 ("xsltproc" ,libxslt)))
3736 (inputs
3737 `(("gnome-desktop" ,gnome-desktop)
3738 ("gtk+" ,gtk+)
3739 ("json-glib" ,json-glib)
3740 ("libsm" ,libsm)
3741 ("libxcomposite" ,libxcomposite)
3742 ("libxtst" ,libxtst)
3743 ("mesa" ,mesa)
3744 ("upower" ,upower)
3745 ("xtrans" ,xtrans)))
3746 (synopsis "Session manager for GNOME")
3747 (description
3748 "This package contains the GNOME session manager, as well as a
3749configuration program to choose applications starting on login.")
3750 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3751 (license license:gpl2+)))
f47ba77e
SB
3752
3753(define-public gjs
3754 (package
3755 (name "gjs")
3756 (version "1.44.0")
3757 (source (origin
3758 (method url-fetch)
3759 (uri (string-append "mirror://gnome/sources/" name "/"
3760 (version-major+minor version) "/"
3761 name "-" version ".tar.xz"))
3762 (sha256
3763 (base32
3764 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
3765 (modules '((guix build utils)))
3766 (snippet '(substitute* "test/run-with-dbus"
3767 (("/bin/rm") "rm")))))
3768 (build-system gnu-build-system)
3769 (arguments
3770 '(#:phases
3771 (modify-phases %standard-phases
3772 (add-before
3773 'check 'pre-check
3774 (lambda _
3775 ;; For the missing /etc/machine-id.
3776 (setenv "DBUS_FATAL_WARNINGS" "0")
3777 #t)))))
3778 (native-inputs
3779 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
3780 ("pkg-config" ,pkg-config)
3781 ("xmllint" ,libxml2)
3782 ;; For testing
3783 ("dbus-launch" ,dbus)
3784 ("uuidgen" ,util-linux)
3785 ("xvfb" ,xorg-server)))
3786 (propagated-inputs
3787 ;; These are all in the Requires.private field of gjs-1.0.pc.
3788 `(("gobject-introspection" ,gobject-introspection)
3789 ("mozjs" ,mozjs-24)))
3790 (inputs
3791 `(("gtk+" ,gtk+)
3792 ("readline" ,readline)))
3793 (synopsis "Javascript bindings for GNOME")
3794 (home-page "http://live.gnome.org/Gjs")
3795 (description
3796 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
3797javascript engine and the GObject introspection framework.")
3798 (license license:gpl2+)))
329d731b
DH
3799
3800(define-public gedit
3801 (package
3802 (name "gedit")
3803 (version "3.18.1")
3804 (source (origin
3805 (method url-fetch)
3806 (uri (string-append "mirror://gnome/sources/" name "/"
3807 (version-major+minor version) "/"
3808 name "-" version ".tar.xz"))
3809 (sha256
3810 (base32
3811 "1kb3hglcppap7fdy7i7w2wk746kfz77jzs2lq6vrna8a3fqaxmas"))))
3812 (build-system glib-or-gtk-build-system)
3813 (arguments
3814 `(#:phases
3815 (modify-phases %standard-phases
3816 (add-after
3817 'install 'wrap-gedit
3818 (lambda* (#:key inputs outputs #:allow-other-keys)
3819 (let ((out (assoc-ref outputs "out"))
3820 (gtksourceview (assoc-ref inputs "gtksourceview"))
3821 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3822 (wrap-program (string-append out "/bin/gedit")
3823 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3824 ;; For language-specs.
3825 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
3826 "/share")))))
3827 #t)))))
3828 (propagated-inputs
3829 `(("dconf" ,dconf)))
3830 (native-inputs
3831 `(("intltool" ,intltool)
3832 ("itstool", itstool)
3833 ("gobject-introspection" ,gobject-introspection)
3834 ("pkg-config" ,pkg-config)))
3835 (inputs
3836 `(("glib" ,glib)
3837 ("gtk+" ,gtk+)
3838 ("gtksourceview" ,gtksourceview)
3839 ("libpeas" ,libpeas)
3840 ("libxml2" ,libxml2)
3841 ("enchant" ,enchant)
3842 ("iso-codes" ,iso-codes)
3843 ("python-pygobject" ,python-pygobject)
3844 ("python" ,python)
3845 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3846 ("libx11" ,libx11)
3847 ("vala" ,vala)
3848 ("adwaita-icon-theme" ,adwaita-icon-theme)
3849 ("libsoup" ,libsoup)
3850 ("gnome-desktop" ,gnome-desktop)))
3851 (home-page "https://wiki.gnome.org/Apps/Gedit")
3852 (synopsis "GNOME text editor")
3853 (description "While aiming at simplicity and ease of use, gedit is a
3854powerful general purpose text editor.")
3855 (license license:gpl2+)))
b7179363
SB
3856
3857(define-public zenity
3858 (package
3859 (name "zenity")
3860 (version "3.18.1.1")
3861 (source (origin
3862 (method url-fetch)
3863 (uri (string-append "mirror://gnome/sources/" name "/"
3864 (version-major+minor version) "/"
3865 name "-" version ".tar.xz"))
3866 (sha256
3867 (base32
3868 "02m88dfm1rziqk2ywakwib06wl1rxangbzih6cp8wllbyl1plcg6"))))
3869 (build-system gnu-build-system)
3870 (native-inputs
3871 `(("gettext" ,gnu-gettext)
3872 ("itstool" ,itstool)
3873 ("pkg-config" ,pkg-config)))
3874 (inputs
3875 `(("libnotify" ,libnotify)
3876 ("webkitgtk" ,webkitgtk)))
3877 (synopsis "Display graphical dialog boxes from shell scripts")
3878 (home-page "http://www.gnome.org")
3879 (description
3880 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
3881to display dialog boxes from the commandline and shell scripts.")
3882 (license license:lgpl2.0+)))
60c3627c
SB
3883
3884(define-public mutter
3885 (package
3886 (name "mutter")
3887 (version "3.18.1")
3888 (source (origin
3889 (method url-fetch)
3890 (uri (string-append "mirror://gnome/sources/" name "/"
3891 (version-major+minor version) "/"
3892 name "-" version ".tar.xz"))
3893 (sha256
3894 (base32
3895 "1ab959z5fgi4rq0ifxdqvpdbv99a2b1lfgvj327s9crdvk4ygpjg"))))
3896 (build-system gnu-build-system)
3897 (arguments
3898 '(#:configure-flags
3899 ;; XXX: build fails with [-Werror]:
3900 ;; backends/meta-cursor-renderer.c:112:5: error:
3901 ;; implicit declaration of function ?roundf?
3902 '("--enable-compile-warnings=minimum")))
3903 (native-inputs
3904 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3905 ("gobject-introspection" ,gobject-introspection)
3906 ("intltool" ,intltool)
3907 ("pkg-config" ,pkg-config)))
3908 (propagated-inputs
3909 ;; libmutter.pc refers to all these.
3910 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3911 ("gtk+" ,gtk+)
3912 ("clutter" ,clutter)))
3913 (inputs
3914 `(("gnome-desktop" ,gnome-desktop)
3915 ("libcanberra-gtk" ,libcanberra)
3916 ("libice" ,libice)
3917 ("libsm" ,libsm)
3918 ("libxkbcommon" ,libxkbcommon)
3919 ("libxkbfile" ,libxkbfile)
3920 ("mesa-headers" ,mesa-headers)
3921 ("startup-notification" ,startup-notification)
3922 ("upower-glib" ,upower)
3923 ("xkeyboard-config" ,xkeyboard-config)
3924 ("zenity" ,zenity)))
3925 (synopsis "Window and compositing manager")
3926 (home-page "http://www.gnome.org")
3927 (description
3928 "Mutter is a window and compositing manager that displays and manages your
3929desktop via OpenGL. Mutter combines a sophisticated display engine using the
3930Clutter toolkit with solid window-management logic inherited from the Metacity
3931window manager.")
3932 (license license:gpl2+)))
685cee87
SB
3933
3934(define-public gnome-online-accounts
3935 (package
3936 (name "gnome-online-accounts")
3937 (version "3.18.1")
3938 (source (origin
3939 (method url-fetch)
3940 (uri (string-append "mirror://gnome/sources/" name "/"
3941 (version-major+minor version) "/"
3942 name "-" version ".tar.xz"))
3943 (sha256
3944 (base32
3945 "1hn2fvkr1f4qh4gix03avnvk7pklvv5272ns8ws56v4kcq4nppkc"))))
3946 (build-system glib-or-gtk-build-system)
3947 (native-inputs
3948 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3949 ("gobject-introspection" ,gobject-introspection)
3950 ("intltool" ,intltool)
3951 ("pkg-config" ,pkg-config)
3952 ("xsltproc" ,libxslt)))
3953 (propagated-inputs
3954 `(("glib" ,glib) ; required by goa-1.0.pc
3955 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
3956 (inputs
3957 `(("docbook-xsl" ,docbook-xsl)
3958 ("json-glib" ,json-glib)
3959 ("libsecret" ,libsecret)
3960 ("rest" ,rest)
3961 ("telepathy-glib" ,telepathy-glib)
3962 ("webkitgtk" ,webkitgtk)))
3963 (synopsis "Single sign-on framework for GNOME")
3964 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
3965 (description
3966 "GNOME Online Accounts provides interfaces so that applications and
3967libraries in GNOME can access the user's online accounts. It has providers for
3968Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
3969Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
3970 (license license:lgpl2.0+)))
df217748
SB
3971
3972(define-public evolution-data-server
3973 (package
3974 (name "evolution-data-server")
3975 (version "3.18.2")
3976 (source (origin
3977 (method url-fetch)
3978 (uri (string-append "mirror://gnome/sources/" name "/"
3979 (version-major+minor version) "/"
3980 name "-" version ".tar.xz"))
3981 (sha256
3982 (base32
3983 "16yfd2a00xqxikyf6pi2awfd0qfq4hwdhfar88axrb4mycfgqhjr"))))
3984 (build-system gnu-build-system)
3985 (arguments
3986 '(;; XXX: fails with:
3987 ;; /Fixture/Calendar0: cleaning up pid xxxx
3988 ;; t status: 139)
3989 #:tests? #f
3990 #:configure-flags
3991 (let ((nss (assoc-ref %build-inputs "nss"))
3992 (nspr (assoc-ref %build-inputs "nspr")))
3993 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
3994 "--disable-google" ; disable Google Contacts support
3995 (string-append "--with-nspr-includes=" nspr "/include/nspr")
3996 (string-append "--with-nss-includes=" nss "/include/nss")
3997 (string-append "--with-nss-libs=" nss "/lib/nss")))
3998 #:phases
3999 (modify-phases %standard-phases
4000 (add-before 'check 'pre-check
4001 (lambda _
4002 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4003 (("/bin/rm") (which "rm")))
4004 #t)))))
4005 (native-inputs
4006 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4007 ("gobject-introspection" ,gobject-introspection)
4008 ("gperf" ,gperf)
4009 ("intltool" ,intltool)
4010 ("pkg-config" ,pkg-config)
4011 ("python" ,python)))
4012 (propagated-inputs
4013 ;; These are all in the Requires field of .pc files.
4014 `(("gtk+" ,gtk+)
4015 ("libical" ,libical)
4016 ("libsecret" ,libsecret)
4017 ("libsoup" ,libsoup)
4018 ("nss" ,nss)
4019 ("sqlite" ,sqlite)))
4020 (inputs
4021 `(("bdb" ,bdb)
4022 ("gcr" ,gcr)
4023 ("gnome-online-accounts" ,gnome-online-accounts)
4024 ("libgweather" ,libgweather)))
4025 (synopsis "Store address books and calendars")
4026 (home-page "https://wiki.gnome.org/Apps/Evolution")
4027 (description
4028 "This package provides a unified backend for programs that work with
4029contacts, tasks, and calendar information. It was originally developed for
4030Evolution (hence the name), but is now used by other packages as well.")
4031 (license license:lgpl2.0)))
bd7dfafa
SB
4032
4033(define-public caribou
4034 (package
4035 (name "caribou")
4036 (version "0.4.19")
4037 (source (origin
4038 (method url-fetch)
4039 (uri (string-append "mirror://gnome/sources/" name "/"
4040 (version-major+minor version) "/"
4041 name "-" version ".tar.xz"))
4042 (sha256
4043 (base32
4044 "0i2s2xy9ami3wslam15cajhggpcsj4c70qm7qddcz52z9k0x02rg"))))
4045 (build-system glib-or-gtk-build-system)
4046 (arguments
4047 '(#:phases
4048 (modify-phases %standard-phases
4049 (add-before
4050 'build 'pre-build
4051 (lambda* (#:key outputs #:allow-other-keys)
4052 (let ((out (assoc-ref outputs "out")))
4053 ;; Use absolute shared library path in Caribou-1.0.typelib.
4054 (substitute* "libcaribou/Makefile"
4055 (("--shared-library=libcaribou.so")
4056 (string-append "--shared-library="
4057 out "/lib/libcaribou.so")))
4058 #t)))
4059 (add-after 'install 'wrap-programs
4060 (lambda* (#:key outputs #:allow-other-keys)
4061 (let* ((out (assoc-ref outputs "out"))
4062 (python-path (getenv "PYTHONPATH"))
4063 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4064 (for-each
4065 (lambda (prog)
4066 (wrap-program prog
4067 `("PYTHONPATH" ":" prefix (,python-path))
4068 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4069 (list (string-append out "/bin/caribou-preferences")
4070 (string-append out "/libexec/antler-keyboard"))))
4071 #t)))))
4072 (native-inputs
4073 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4074 ("gobject-introspection" ,gobject-introspection)
4075 ("intltool" ,intltool)
4076 ("pkg-config" ,pkg-config)
4077 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4078 ("vala" ,vala)
4079 ("xsltproc" ,libxslt)))
4080 (propagated-inputs
4081 ;; caribou-1.0.pc refers to all these.
4082 `(("libgee" ,libgee)
4083 ("libxklavier" ,libxklavier)
4084 ("libxtst" ,libxtst)
4085 ("gtk+" ,gtk+)))
4086 (inputs
4087 `(("clutter" ,clutter)
4088 ("dconf" ,dconf)
4089 ("gtk+-2" ,gtk+-2)
4090 ("python-pygobject" ,python2-pygobject)))
4091 (synopsis "Text entry and UI navigation application")
4092 (home-page "https://wiki.gnome.org/Projects/Caribou")
4093 (description
4094 "Caribou is an input assistive technology intended for switch and pointer
4095users.")
4096 (license license:lgpl2.1)))