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