gnu: gnumeric: Update to 1.12.24.
[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")
8cabd349 1461 (version "0.10.24")
b804c61e
JD
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 1467 (sha256
8cabd349 1468 (base32 "0nmghi26dpjcw7knkviq031crhm0zjy4k650pv1jj3hb1fmhx9yd"))))
b804c61e
JD
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")
7bcbd40d 1518 (version "1.12.24")
b804c61e
JD
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
7bcbd40d 1526 "0lcm8k0jb8rd5y4ii803f21nv8rx6gc3mmdlrj5h0rkkn9qm57f5"))))
b804c61e
JD
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 1532 #:phases
7bcbd40d
EF
1533 (modify-phases %standard-phases
1534 (add-before
1535 'configure 'pre-conf
1536 (lambda* (#:key outputs #:allow-other-keys)
1537 ;; Make install tries to write into the directory of goffice
1538 ;; I am informed that this only affects the possibility to embed a
1539 ;; spreadsheet inside an Abiword document. So presumably when we
1540 ;; package Abiword we'll have to refer it to this directory.
1541 (substitute* "configure"
1542 (("^GOFFICE_PLUGINS_DIR=.*")
1543 (string-append "GOFFICE_PLUGINS_DIR="
1544 (assoc-ref outputs "out")
1545 "/goffice/plugins"))))))))
b804c61e
JD
1546 (inputs
1547 `(("glib" ,glib)
1548 ("gtk+" ,gtk+)
1549 ("goffice" ,goffice)
1550 ("libgsf" ,libgsf)
7bcbd40d 1551 ("librsvg" ,librsvg)
b804c61e 1552 ("libxml2" ,libxml2)
7bcbd40d 1553 ("libxslt" ,libxslt)
b804c61e
JD
1554 ("zlib" ,zlib)))
1555 (native-inputs
1556 `(("intltool" ,intltool)
b9663471 1557 ("glib:bin" ,glib "bin")
b804c61e
JD
1558 ("pkg-config" ,pkg-config)))
1559 (home-page "http://www.gnumeric.org")
66672a45
LC
1560 (synopsis "Spreadsheet application")
1561 (description
1562 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1563interoperable with other spreadsheet applications. It has a vast array of
1564features beyond typical spreadsheet functionality, such as support for linear
1565and non-linear solvers, statistical analysis, and telecommunication
1566engineering.")
1567 (license
b804c61e
JD
1568 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1569 (list license:gpl2 license:gpl3))))
6f885c05
FB
1570
1571(define-public gnome-themes-standard
1572 (package
1573 (name "gnome-themes-standard")
b64d218c 1574 (version "3.18.0")
6f885c05
FB
1575 (source
1576 (origin
1577 (method url-fetch)
2e6ecc5c 1578 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1579 (version-major+minor version) "/" name "-"
1580 version ".tar.xz"))
1581 (sha256
1582 (base32
b64d218c 1583 "1jxss8kxszhf66vic9n1sagczm5amm0mgxpzyxyjna15q82fnip6"))))
6f885c05
FB
1584 (build-system gnu-build-system)
1585 (inputs
1586 `(("gtk+" ,gtk+)
1587 ("gtk+-2" ,gtk+-2)
1588 ("librsvg" ,librsvg)
1589 ("libxml2" ,libxml2)
1590 ("glib" ,glib)))
1591 (native-inputs
1592 `(("intltool" ,intltool)
1593 ("glib:bin" ,glib "bin")
1594 ("pkg-config" ,pkg-config)))
1595 (arguments
1596 `(#:phases
1597 (alist-cons-before
1598 'build 'use-full-cache
1599 ;; Use librsvg's loaders.cache instead of the one provided by
1600 ;; gdk-pixbuf because the latter does not include support for SVG
1601 ;; files.
1602 (lambda* (#:key inputs #:allow-other-keys)
2e6ecc5c
AE
1603 (setenv "GDK_PIXBUF_MODULE_FILE"
1604 (car (find-files (assoc-ref inputs "librsvg")
6f885c05
FB
1605 "loaders\\.cache"))))
1606 %standard-phases)))
1607 (home-page "https://launchpad.net/gnome-themes-standard")
1608 (synopsis "Default GNOME 3 themes")
1609 (description
1610 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1611 (license license:lgpl2.1+)))
5a659a48 1612
df90c701
RW
1613(define-public seahorse
1614 (package
1615 (name "seahorse")
1616 (version "3.16.0")
1617 (source
1618 (origin
1619 (method url-fetch)
1620 (uri (string-append "mirror://gnome/sources/" name "/"
1621 (version-major+minor version) "/" name "-"
1622 version ".tar.xz"))
1623 (sha256
1624 (base32
1625 "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp"))))
1626 (build-system glib-or-gtk-build-system)
1627 (inputs
1628 `(("gtk+" ,gtk+)
1629 ("gcr" ,gcr)
1630 ("gnupg" ,gnupg-1)
1631 ("gpgme" ,gpgme)
4a1bf090 1632 ("openssh" ,openssh)
df90c701
RW
1633 ("libsecret" ,libsecret)))
1634 (native-inputs
1635 `(("intltool" ,intltool)
1636 ("glib:bin" ,glib "bin")
1637 ("itstool" ,itstool)
bcb354ad
SB
1638 ("pkg-config" ,pkg-config)
1639 ("xmllint" ,libxml2)))
df90c701
RW
1640 (home-page "https://launchpad.net/gnome-themes-standard")
1641 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1642 (description
1643 "Seahorse is a GNOME application for managing encryption keys and
1644passwords in the GNOME keyring.")
1645 (license license:gpl2+)))
1646
5a659a48
SB
1647(define-public vala
1648 (package
1649 (name "vala")
f4925a4f 1650 (version "0.30.0")
5a659a48
SB
1651 (source (origin
1652 (method url-fetch)
1653 (uri (string-append "mirror://gnome/sources/" name "/"
1654 (version-major+minor version) "/"
1655 name "-" version ".tar.xz"))
1656 (sha256
1657 (base32
f4925a4f 1658 "1pyyhfw3zzbhxfscbn8xz70dg6vx0kh8gshzikpxczhg01xk7w31"))))
5a659a48 1659 (build-system gnu-build-system)
1ea90625
SB
1660 (arguments
1661 '(#:phases
1662 (modify-phases %standard-phases
f4925a4f 1663 (add-before 'check 'pre-check
1ea90625
SB
1664 (lambda _
1665 (setenv "CC" "gcc")
f4925a4f
SB
1666 ;; For missing '/etc/machine-id'.
1667 (setenv "DBUS_FATAL_WARNINGS" "0")
1ea90625 1668 #t)))))
5a659a48
SB
1669 (native-inputs
1670 `(("pkg-config" ,pkg-config)
1671 ("flex" ,flex)
1672 ("bison" ,bison)
1673 ("xsltproc" ,libxslt)
1674 ("dbus" ,dbus) ; for dbus tests
1675 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1676 (propagated-inputs
1677 `(("glib" ,glib))) ; required by libvala-0.26.pc
1678 (home-page "http://live.gnome.org/Vala/")
1679 (synopsis "Compiler for the GObject type system")
1680 (description
1681 "Vala is a programming language that aims to bring modern programming
1682language features to GNOME developers without imposing any additional runtime
1683requirements and without using a different ABI compared to applications and
1684libraries written in C.")
1685 (license license:lgpl2.1+)))
ea57378f
SB
1686
1687(define-public vte
1688 (package
1689 (name "vte")
fa092153 1690 (version "0.42.1")
ea57378f
SB
1691 (source (origin
1692 (method url-fetch)
1693 (uri (string-append "mirror://gnome/sources/" name "/"
1694 (version-major+minor version) "/"
1695 name "-" version ".tar.xz"))
1696 (sha256
1697 (base32
fa092153 1698 "0d4xzjq6mxrlhnh4i12a1yy90n41m03z8wf8g6wh4hjgx7ly404y"))))
ea57378f
SB
1699 (build-system gnu-build-system)
1700 (native-inputs
1701 `(("pkg-config" ,pkg-config)
1702 ("intltool" ,intltool)
1703 ("vala" ,vala)
1704 ("gobject-introspection" ,gobject-introspection)
1705 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1706 ("xmllint" ,libxml2)))
1707 (propagated-inputs
302393bc
LC
1708 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1709 ("gnutls" ,gnutls))) ;ditto
ea57378f
SB
1710 (home-page "http://www.gnome.org/")
1711 (synopsis "Virtual Terminal Emulator")
1712 (description
1713 "VTE is a library (libvte) implementing a terminal emulator widget for
1714GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1715gnome-terminal, but can also be used to embed a console/terminal in games,
1716editors, IDEs, etc.")
1717 (license license:lgpl2.1+)))
1718
2776d72c
EF
1719;; provides vte 2.90, required for some terminal emulators
1720;; tilda bug: https://github.com/lanoxx/tilda/issues/94
1721;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
1722;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
1723;; pantheon-terminal, roxterm are not currently packaged
1724(define-public vte-0.36
1725 (package (inherit vte)
1726 (name "vte")
1727 (version "0.36.5")
1728 (source (origin
1729 (method url-fetch)
1730 (uri (string-append "mirror://gnome/sources/" name "/"
1731 (version-major+minor version) "/"
1732 name "-" version ".tar.xz"))
1733 (sha256
1734 (base32
1735 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
1736 (propagated-inputs
1737 `(("gtk" ,gtk+)
1738 ("ncurses" ,ncurses)))))
1739
ea57378f
SB
1740;; stable version for gtk2, required by xfce4-terminal.
1741(define-public vte/gtk+-2
1742 (package (inherit vte)
1743 (name "vte")
1744 (version "0.28.2")
1745 (source (origin
1746 (method url-fetch)
1747 (uri (string-append "mirror://gnome/sources/" name "/"
1748 (version-major+minor version) "/"
1749 name "-" version ".tar.xz"))
1750 (sha256
1751 (base32
1752 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1753 (arguments
1754 '(#:configure-flags '("--disable-python")))
1755 (native-inputs
1756 `(("pkg-config" ,pkg-config)
1757 ("intltool" ,intltool)
1758 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1759 (propagated-inputs
1760 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1761 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1762
1763(define-public dconf
1764 (package
1765 (name "dconf")
1766 (version "0.22.0")
1767 (source (origin
1768 (method url-fetch)
1769 (uri (string-append
2e6ecc5c 1770 "mirror://gnome/sources/" name "/"
b47e1b20
FB
1771 (version-major+minor version) "/"
1772 name "-" version ".tar.xz"))
1773 (sha256
1774 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1775 (build-system glib-or-gtk-build-system)
1776 (inputs
1777 `(("gtk+" ,gtk+)
1778 ("glib" ,glib)
1779 ("dbus" ,dbus)
1780 ("libxml2" ,libxml2)))
1781 (native-inputs
1782 `(("libxslt" ,libxslt)
1783 ("docbook-xml" ,docbook-xml-4.2)
1784 ("docbook-xsl" ,docbook-xsl)
1785 ("intltool" ,intltool)
1786 ("pkg-config" ,pkg-config)))
1787 (arguments
1788 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1789 ; or /etc/machine-id.
1790 #:configure-flags
1791 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 1792 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
1793 (assoc-ref %outputs "out") "/lib")
1794 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1795 #:phases
1796 (alist-cons-before
1797 'configure 'fix-docbook
1798 (lambda* (#:key inputs #:allow-other-keys)
1799 (substitute* "docs/Makefile.in"
1800 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 1801 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
1802 "/xml/xsl/docbook-xsl-"
1803 ,(package-version docbook-xsl)
1804 "/manpages/docbook.xsl")))
2e6ecc5c
AE
1805 (setenv "XML_CATALOG_FILES"
1806 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
1807 "/xml/dtd/docbook/catalog.xml")))
1808 %standard-phases)))
1809 (home-page "https://developer.gnome.org/dconf")
1810 (synopsis "Low-level GNOME configuration system")
1811 (description "Dconf is a low-level configuration system. Its main purpose
1812is to provide a backend to GSettings on platforms that don't already have
1813configuration storage systems.")
1814 (license license:lgpl2.1)))
109da1c0
AE
1815
1816(define-public json-glib
1817 (package
1818 (name "json-glib")
4955ab7d 1819 (version "1.0.4")
109da1c0
AE
1820 (source (origin
1821 (method url-fetch)
1822 (uri (string-append "mirror://gnome/sources/" name "/"
1823 (version-major+minor version) "/"
1824 name "-" version ".tar.xz"))
1825 (sha256
1826 (base32
4955ab7d
SB
1827 "1k85vvb2prmk8aa8hmr2rp9rnbhffjgnmr18b13g24xxnqy5kww0"))
1828 (modules '((guix build utils)))
1829 (snippet
1830 ;; Don't duplicate test names.
1831 ;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
1832 '(substitute* "json-glib/tests/builder.c"
1833 (("\"/builder/complex\", test_builder_empty")
1834 "\"/builder/empty\", test_builder_empty")))))
109da1c0
AE
1835 (build-system gnu-build-system)
1836 (native-inputs
88c6b580 1837 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
1838 ("gobject-introspection" ,gobject-introspection)
1839 ("pkg-config" ,pkg-config)))
1840 (propagated-inputs
88c6b580 1841 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
1842 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1843 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
1844 (description
1845 "JSON-GLib is a C library based on GLib providing serialization and
1846deserialization support for the JavaScript Object Notation (JSON) format
1847described by RFC 4627. It provides parser and generator GObject classes and
1848various wrappers for the complex data types employed by JSON, such as arrays
1849and objects.")
109da1c0 1850 (license license:lgpl2.1+)))
6f96a359
SB
1851
1852(define-public libxklavier
1853 (package
1854 (name "libxklavier")
1855 (version "5.3")
1856 (source (origin
1857 (method url-fetch)
1858 (uri (string-append "mirror://gnome/sources/" name "/"
1859 version "/" name "-" version ".tar.xz"))
1860 (sha256
1861 (base32
1862 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1863 (build-system gnu-build-system)
1864 (arguments
1865 '(#:configure-flags
1866 (list (string-append "--with-xkb-base="
1867 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 1868 "/share/X11/xkb"))))
6f96a359
SB
1869 (native-inputs
1870 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1871 ("gobject-introspection" ,gobject-introspection)
1872 ("pkg-config" ,pkg-config)))
1873 (propagated-inputs
1874 ;; Required by libxklavier.pc.
1875 `(("glib" ,glib)
1876 ("libxml2" ,libxml2)))
1877 (inputs
1878 `(("iso-codes" ,iso-codes)
1879 ("libxi" ,libxi)
1880 ("libxkbfile" ,libxkbfile)
1881 ("xkbcomp" ,xkbcomp)
1882 ("xkeyboard-config" ,xkeyboard-config)))
1883 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1884 (synopsis "High-level API for X Keyboard Extension")
1885 (description
1886 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
1887Extension known as XKB. This library is intended to support XFree86 and other
1888commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
1889indicators etc).")
1890 (license license:lgpl2.0+)))
619936a4
LC
1891
1892(define-public python2-rsvg
1893 ;; XXX: This is actually a subset of gnome-python-desktop.
1894 (package
1895 (name "python2-rsvg")
1896 (version "2.32.0")
1897 (source
1898 (origin
1899 (method url-fetch)
1900 (uri (string-append
1901 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
1902 version ".tar.bz2"))
1903 (sha256
1904 (base32
1905 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
1906 (build-system gnu-build-system)
1907 (native-inputs
1908 `(("pkg-config" ,pkg-config)))
1909 (inputs
1910 `(("python" ,python-2)
1911 ("python2-pygtk" ,python2-pygtk)
1912 ("librsvg" ,librsvg)))
1913 (home-page "http://www.gnome.org")
1914 (synopsis "Python bindings to librsvg")
1915 (description
1916 "This packages provides Python bindings to librsvg, the SVG rendering
1917library.")
1918
1919 ;; This is the license of the rsvg bindings. The license of each module
1920 ;; of gnome-python-desktop is given in 'COPYING'.
1921 (license license:lgpl2.1+)))
a31a6d22 1922
f2ca414a
SB
1923(define-public glib-networking
1924 (package
1925 (name "glib-networking")
aa8789c0 1926 (version "2.46.1")
f2ca414a
SB
1927 (source (origin
1928 (method url-fetch)
1929 (uri (string-append "mirror://gnome/sources/glib-networking/"
1930 (version-major+minor version) "/"
1931 name "-" version ".tar.xz"))
1932 (sha256
1933 (base32
aa8789c0 1934 "1cchmi08jpjypgmm9i7xzh5qfg2q5k61kry9ns8mhw3z44a440ym"))
907f939b
SB
1935 (patches
1936 (list (search-patch "glib-networking-ssl-cert-file.patch")))))
f2ca414a
SB
1937 (build-system gnu-build-system)
1938 (arguments
1939 `(#:configure-flags
907f939b 1940 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
1941 #:phases
1942 (modify-phases %standard-phases
3a4de6b2 1943 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
1944 ;; Install GIO modules into $out/lib/gio/modules.
1945 (lambda _
1946 (substitute* "configure"
1947 (("GIO_MODULE_DIR=.*")
1948 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
1949 "/lib/gio/modules\n")))))
1950 (add-before 'check 'use-empty-ssl-cert-file
1951 (lambda _
1952 ;; The ca-certificates.crt is not available in the build
1953 ;; environment.
1954 (setenv "SSL_CERT_FILE" "/dev/null")
1955 #t)))))
f2ca414a
SB
1956 (native-inputs
1957 `(("pkg-config" ,pkg-config)
1958 ("intltool" ,intltool)))
1959 (inputs
1960 `(("glib" ,glib)
1961 ("gnutls" ,gnutls)
1962 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1963 ("p11-kit" ,p11-kit)))
1964 (home-page "http://www.gnome.org")
1965 (synopsis "Network-related GIO modules")
1966 (description
1967 "This package contains various network related extensions for the GIO
1968library.")
1969 (license license:lgpl2.0+)))
1970
ca649680 1971(define-public rest
4510b2da 1972 (package
ca649680 1973 (name "rest")
4510b2da
SB
1974 (version "0.7.93")
1975 (source (origin
1976 (method url-fetch)
1977 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
1978 (version-major+minor version) "/"
1979 name "-" version ".tar.xz"))
4510b2da
SB
1980 (sha256
1981 (base32
1982 "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))))
1983 (build-system gnu-build-system)
1984 (arguments
1985 '(#:tests? #f ; tests require internet connection
1986 #:configure-flags
1987 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
1988 (native-inputs
1989 `(("glib-mkenums" ,glib "bin")
1990 ("gobject-introspection" ,gobject-introspection)
1991 ("pkg-config" ,pkg-config)))
1992 (propagated-inputs
1993 ;; rest-0.7.pc refers to all these.
1994 `(("glib" ,glib)
1995 ("libsoup" ,libsoup)
1996 ("libxml2" ,libxml2)))
1997 (home-page "http://www.gtk.org/")
1998 (synopsis "RESTful web api query library")
1999 (description
2000 "This library was designed to make it easier to access web services that
2001claim to be \"RESTful\". It includes convenience wrappers for libsoup and
2002libxml to ease remote use of the RESTful API.")
2003 (license license:lgpl2.1+)))
2004
6e1bb642
SB
2005(define-public libsoup
2006 (package
2007 (name "libsoup")
fd730590 2008 (version "2.52.1")
6e1bb642
SB
2009 (source (origin
2010 (method url-fetch)
2011 (uri (string-append "mirror://gnome/sources/libsoup/"
2012 (version-major+minor version) "/"
2013 name "-" version ".tar.xz"))
2014 (sha256
2015 (base32
fd730590 2016 "0j6cnnpqqgnb9nj2r0j8j6898np4z503hrnpis7b4l5d8yhbq68f"))))
6e1bb642
SB
2017 (build-system gnu-build-system)
2018 (outputs '("out" "doc"))
2019 (arguments
b19d6805 2020 `(#:configure-flags
6e1bb642
SB
2021 (list (string-append "--with-html-dir="
2022 (assoc-ref %outputs "doc")
fd730590 2023 "/share/gtk-doc/html"))
6e1bb642
SB
2024 #:phases
2025 (modify-phases %standard-phases
3a4de6b2 2026 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2027 ;; This test fails due to missing /etc/nsswitch.conf
2028 ;; in the build environment.
2029 (lambda _
2030 (substitute* "tests/socket-test.c"
2031 ((".*/sockets/unconnected.*") ""))
2032 #t))
907f939b 2033 (add-before 'check 'pre-check
6e1bb642 2034 (lambda _
907f939b
SB
2035 ;; The 'check-local' target runs 'env LANG=C sort -u',
2036 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2037 (unsetenv "LC_ALL")
907f939b
SB
2038 ;; The ca-certificates.crt is not available in the build
2039 ;; environment.
2040 (setenv "SSL_CERT_FILE" "/dev/null")
fd730590
SB
2041 #t))
2042 (replace 'install
2043 (lambda _
2044 (zero?
2045 (system* "make"
2046 ;; Install vala bindings into $out.
2047 (string-append "vapidir=" %output
2048 "/share/vala/vapi")
2049 "install")))))))
6e1bb642
SB
2050 (native-inputs
2051 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2052 ("gobject-introspection" ,gobject-introspection)
2053 ("intltool" ,intltool)
2054 ("pkg-config" ,pkg-config)
2055 ("python" ,python-wrapper)
fd730590 2056 ("vala" ,vala)
6e1bb642
SB
2057 ;; These are needed for the tests.
2058 ;; FIXME: Add PHP once available.
2059 ("curl" ,curl)
2060 ("httpd" ,httpd)))
2061 (propagated-inputs
2062 ;; libsoup-2.4.pc refers to all these.
2063 `(("glib" ,glib)
2064 ("libxml2" ,libxml2)))
2065 (inputs
2066 `(("glib-networking" ,glib-networking)
2067 ("sqlite" ,sqlite)))
2068 (home-page "https://live.gnome.org/LibSoup/")
2069 (synopsis "GLib-based HTTP Library")
2070 (description
2071 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2072and the GLib main loop, to integrate well with GNOME applications.")
2073 (license license:lgpl2.0+)))
2074
bba229a3
SB
2075(define-public libsecret
2076 (package
2077 (name "libsecret")
896dcbc7 2078 (version "0.18.3")
bba229a3
SB
2079 (source (origin
2080 (method url-fetch)
2081 (uri (string-append
896dcbc7
EF
2082 "mirror://gnome/sources/libsecret/"
2083 (version-major+minor version) "/"
bba229a3
SB
2084 name "-" version ".tar.xz"))
2085 (sha256
2086 (base32
896dcbc7 2087 "1jc4pw6pb5igwasj0ms1zx80w63c11myziz3ydj0cr5lb861vgzj"))))
bba229a3
SB
2088 (build-system gnu-build-system)
2089 (outputs '("out" "doc"))
2090 (arguments
2091 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2092 #:configure-flags
2093 (list (string-append "--with-html-dir="
2094 (assoc-ref %outputs "doc")
2095 "/share/gtk-doc/html"))))
2096 (native-inputs
2097 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2098 ("gobject-introspection" ,gobject-introspection)
2099 ("intltool" ,intltool)
2100 ("pkg-config" ,pkg-config)
2101 ("vala" ,vala)
2102 ("xsltproc" ,libxslt)))
2103 ;; These are needed for the tests.
2104 ;; FIXME: Add gjs once available.
2105 ;("dbus" ,dbus)
2106 ;("python2" ,python-2)
2107 ;("python2-dbus" ,python2-dbus)
2108 ;("python2-pygobject" ,python2-pygobject)
2109 ;("python2-pygobject-2" ,python2-pygobject-2)))
2110 (propagated-inputs
2111 `(("glib" ,glib))) ; required by libsecret-1.pc
2112 (inputs
2113 `(("docbook-xsl" ,docbook-xsl)
2114 ("libgcrypt" ,libgcrypt)
2115 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2116 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2117 (synopsis "GObject bindings for \"Secret Service\" API")
2118 (description
2119 "Libsecret is a GObject based library for storing and retrieving passwords
2120and other secrets. It communicates with the \"Secret Service\" using DBus.")
2121 (license license:lgpl2.1+)))
2122
a31a6d22
SB
2123(define-public gnome-mines
2124 (package
2125 (name "gnome-mines")
121398e7 2126 (version "3.16.0")
a31a6d22
SB
2127 (source
2128 (origin
2129 (method url-fetch)
2130 (uri (string-append "mirror://gnome/sources/" name "/"
2131 (version-major+minor version) "/"
2132 name "-" version ".tar.xz"))
2133 (sha256
2134 (base32
121398e7 2135 "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx"))))
a31a6d22
SB
2136 (build-system glib-or-gtk-build-system)
2137 (arguments
2138 '(#:phases
2139 (modify-phases %standard-phases
f8503e2b 2140 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2141 (lambda _
2142 (substitute* "configure"
2143 (("/bin/true") (which "true")))))
f8503e2b 2144 (add-after 'install 'wrap-pixbuf
a31a6d22
SB
2145 ;; Use librsvg's loaders.cache to support SVG files.
2146 (lambda* (#:key inputs outputs #:allow-other-keys)
2147 (let* ((out (assoc-ref outputs "out"))
2148 (prog (string-append out "/bin/gnome-mines"))
2149 (rsvg (assoc-ref inputs "librsvg"))
2150 (pixbuf (find-files rsvg "^loaders\\.cache$")))
2151 (wrap-program prog
2152 `("GDK_PIXBUF_MODULE_FILE" = ,pixbuf))))))))
2153 (native-inputs
2154 `(("pkg-config" ,pkg-config)
2155 ("desktop-file-utils" ,desktop-file-utils)
2156 ("intltool" ,intltool)
bcb354ad
SB
2157 ("itstool" ,itstool)
2158 ("xmllint" ,libxml2)))
a31a6d22
SB
2159 (inputs
2160 `(("gtk+" ,gtk+)
2161 ("librsvg" ,librsvg)))
2162 (home-page "https://wiki.gnome.org/Apps/Mines")
2163 (synopsis "Minesweeper game")
2164 (description
2165 "Mines (previously gnomine) is a puzzle game where you locate mines
2166floating in an ocean using only your brain and a little bit of luck.")
2167 (license license:gpl2+)))
88f70665
AW
2168
2169(define-public gnome-terminal
2170 (package
2171 (name "gnome-terminal")
2172 (version "3.16.0")
2173 (source
2174 (origin
2175 (method url-fetch)
2176 (uri (string-append "mirror://gnome/sources/" name "/"
2177 (version-major+minor version) "/"
2178 name "-" version ".tar.xz"))
2179 (sha256
2180 (base32
2181 "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd"))))
2182 (build-system glib-or-gtk-build-system)
2183 (arguments
2184 '(#:configure-flags
2185 (list "--disable-migration" "--disable-search-provider"
2186 "--without-nautilus-extension")
2187 #:phases
2188 (modify-phases %standard-phases
3a4de6b2 2189 (add-before 'configure 'patch-/bin/true
88f70665
AW
2190 (lambda _
2191 (substitute* "configure"
2192 (("/bin/true") (which "true"))))))))
2193 (native-inputs
2194 `(("pkg-config" ,pkg-config)
2195 ("desktop-file-utils" ,desktop-file-utils)
2196 ("intltool" ,intltool)
bcb354ad
SB
2197 ("itstool" ,itstool)
2198 ("xmllint" ,libxml2)))
68702167
MW
2199 (propagated-inputs
2200 `(("dconf" ,dconf)))
88f70665
AW
2201 (inputs
2202 `(("gtk+" ,gtk+)
2203 ("vte" ,vte)
2204 ("gnutls" ,gnutls)
88f70665
AW
2205 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2206 ("util-linux" ,util-linux)
2207 ("vala" ,vala)))
2208 (home-page "https://wiki.gnome.org/Apps/Terminal")
2209 (synopsis "Terminal emulator")
2210 (description
2211 "GNOME Terminal is a terminal emulator application for accessing a
2212UNIX shell environment which can be used to run programs available on
2213your system.
2214
2215It supports several profiles, multiple tabs and implements several
2216keyboard shortcuts.")
2217 (license license:gpl3+)))
75016d07
AW
2218
2219(define-public colord
2220 (package
2221 (name "colord")
2222 (version "1.1.8")
2223 (source
2224 (origin
2225 (method url-fetch)
2226 (uri (string-append "http://www.freedesktop.org/software/colord/releases/"
2227 name "-" version ".tar.xz"))
2228 (sha256
2229 (base32
2230 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2231 (build-system glib-or-gtk-build-system)
2232 (arguments
2233 '(;; The tests want to run valgrind. Punt for now.
2234 #:tests? #f
2235 #:configure-flags (list "--localstatedir=/var"
2236 ;; GUSB not packaged yet.
2237 "--disable-gusb"
2238 ;; No dep on systemd.
2239 "--disable-systemd-login"
2240 ;; Wants to install to global completion dir;
2241 ;; punt.
2242 "--disable-bash-completion"
2243 ;; colord-gtk not packaged yet.
2244 "--disable-session-example"
2245 "--with-daemon-user=colord"
2246 "--enable-sane"
2247 (string-append "--with-udevrulesdir="
2248 (assoc-ref %outputs "out")
2249 "/lib/udev/rules.d"))
2250 #:phases
2251 (modify-phases %standard-phases
3a4de6b2 2252 (add-before 'configure 'patch-/bin/true
75016d07
AW
2253 (lambda _
2254 (substitute* "configure"
2255 (("/bin/true") (which "true")))
2256 (substitute* "src/Makefile.in"
2257 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2258 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2259 (native-inputs
2260 `(("pkg-config" ,pkg-config)
2261 ("gobject-introspection" ,gobject-introspection)
2262 ("libtool" ,libtool)
2263 ("intltool" ,intltool)))
65cb2d61
SB
2264 (propagated-inputs
2265 ;; colord.pc refers to all these.
2266 `(("glib" ,glib)
2267 ("udev" ,eudev)
2268 ("lcms" ,lcms)))
75016d07 2269 (inputs
65cb2d61 2270 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2271 ("libgudev" ,libgudev)
75016d07 2272 ("libusb" ,libusb)
75016d07
AW
2273 ("sqlite" ,sqlite)
2274 ("polkit" ,polkit)
2275 ("sane-backends" ,sane-backends)))
2276 (home-page "http://www.freedesktop.org/software/colord/")
2277 (synopsis "Color management service")
2278 (description "Colord is a system service that makes it easy to manage,
2279install and generate color profiles to accurately color manage input and
2280output devices.")
2281 (license license:gpl2+)))
7b2abd00
AW
2282
2283(define-public geoclue
2284 (package
2285 (name "geoclue")
faf713b9 2286 (version "2.2.0")
7b2abd00
AW
2287 (source
2288 (origin
2289 (method url-fetch)
2290 (uri (string-append "http://www.freedesktop.org/software/" name
2291 "/releases/" (version-major+minor version) "/"
2292 name "-" version ".tar.xz"))
2293 (sha256
2294 (base32
faf713b9 2295 "0inlqx0zar498fhi9hh92p2g4kp8qy3zdl4z3vw6bjwp9w6xx454"))
7b2abd00
AW
2296 (patches (list (search-patch "geoclue-config.patch")))))
2297 (build-system glib-or-gtk-build-system)
2298 (arguments
2299 '(;; The tests want to run the system bus.
2300 #:tests? #f
2301 #:configure-flags (list ;; Disable bits requiring ModemManager.
2302 "--disable-3g-source"
2303 "--disable-cdma-source"
2304 "--disable-modem-gps-source"
2305 "--with-dbus-service-user=geoclue")
2306 #:phases
2307 (modify-phases %standard-phases
3a4de6b2 2308 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2309 (lambda _
2310 (substitute* "configure"
2311 (("/bin/true") (which "true"))))))))
2312 (native-inputs
2313 `(("pkg-config" ,pkg-config)
2314 ("intltool" ,intltool)))
2315 (inputs
2316 `(("glib" ,glib)
2317 ("json-glib" ,json-glib)
2318 ("libsoup" ,libsoup)))
2319 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2320 (synopsis "Geolocation service")
2321 (description "Geoclue is a D-Bus service that provides location
2322information. The primary goal of the Geoclue project is to make creating
2323location-aware applications as simple as possible, while the secondary goal is
2324to ensure that no application can access location information without explicit
e881752c 2325permission from user.")
7b2abd00 2326 (license license:gpl2+)))
2bfe7437
AW
2327
2328(define-public geocode-glib
2329 (package
2330 (name "geocode-glib")
2331 (version "3.16.0")
2332 (source (origin
2333 (method url-fetch)
2334 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2335 (version-major+minor version) "/"
2336 name "-" version ".tar.xz"))
2337 (sha256
2338 (base32
2339 "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj"))))
2340 (build-system gnu-build-system)
2341 (arguments
2342 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2343 ;; work for the builder. Punt.
a124bbd2 2344 #:tests? #f))
2bfe7437
AW
2345 (native-inputs
2346 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2347 ("gobject-introspection" ,gobject-introspection)
2348 ("pkg-config" ,pkg-config)
2349 ("json-glib" ,json-glib)))
2350 (propagated-inputs
2351 ;; geocode-glib-1.0.pc refers to GIO.
2352 `(("glib" ,glib)))
2353 (inputs
2354 `(("libsoup" ,libsoup)))
2355 (home-page "https://github.com/GNOME/geocode-glib/")
2356 (synopsis "Geocoding and reverse-geocoding library")
2357 (description
2358 "geocode-glib is a convenience library for geocoding (finding longitude,
2359and latitude from an address) and reverse geocoding (finding an address from
2360coordinates) using the Nominatim service. geocode-glib caches requests for
2361faster results and to avoid unnecessary server load.")
2362 (license license:lgpl2.0+)))
a1d5bb0e
AW
2363
2364(define-public upower
2365 (package
2366 (name "upower")
d777e048 2367 (version "0.99.3")
a1d5bb0e
AW
2368 (source (origin
2369 (method url-fetch)
2370 (uri (string-append "http://upower.freedesktop.org/releases/"
2371 name "-" version ".tar.xz"))
2372 (sha256
2373 (base32
d777e048 2374 "0f6x9mi1jzgqdpycaikyhjljnw3aacsl3gxndyg0dfqkq6y9jwb9"))
a1d5bb0e
AW
2375 (patches (list (search-patch "upower-builddir.patch")))))
2376 (build-system glib-or-gtk-build-system)
2377 (arguments
2378 '( ;; The tests want to contact the system bus, which can't be done in the
2379 ;; build environment. The integration test can run, but the last of
2380 ;; the up-self-tests doesn't. Disable tests for now.
2381 #:tests? #f
2382 #:configure-flags (list "--localstatedir=/var"
2383 (string-append "--with-udevrulesdir="
2384 (assoc-ref %outputs "out")
2385 "/lib/udev/rules.d"))
2386 #:phases
2387 (modify-phases %standard-phases
2388 (add-before 'configure 'patch-/bin/true
2389 (lambda _
2390 (substitute* "configure"
2391 (("/bin/true") (which "true")))))
2392 (add-before 'configure 'patch-integration-test
2393 (lambda _
2394 (substitute* "src/linux/integration-test"
2395 (("/usr/bin/python3") (which "python3"))))))))
2396 (native-inputs
ebeabe2d
SB
2397 `(("gobject-introspection" ,gobject-introspection)
2398 ("pkg-config" ,pkg-config)
a1d5bb0e
AW
2399 ("intltool" ,intltool)
2400 ("python" ,python)))
2401 (inputs
ea226291
SB
2402 `(("dbus-glib" ,dbus-glib)
2403 ("libgudev" ,libgudev)
a1d5bb0e
AW
2404 ("libusb" ,libusb)))
2405 (home-page "http://upower.freedesktop.org/")
2406 (synopsis "System daemon for managing power devices")
2407 (description
2408 "UPower is an abstraction for enumerating power devices,
2409listening to device events and querying history and statistics. Any
2410application or service on the system can access the org.freedesktop.UPower
2411service via the system message bus.")
2412 (license license:gpl2+)))
6a180f6f
AW
2413
2414(define-public libgweather
2415 (package
2416 (name "libgweather")
b6072e6b 2417 (version "3.18.1")
6a180f6f
AW
2418 (source (origin
2419 (method url-fetch)
2420 (uri (string-append "mirror://gnome/sources/" name "/"
2421 (version-major+minor version) "/"
2422 name "-" version ".tar.xz"))
2423 (sha256
2424 (base32
b6072e6b 2425 "1l3sra84k5dnavbdbjyf1ar84xmjszpnnldih6mf45kniwpjkcll"))))
6a180f6f
AW
2426 (build-system gnu-build-system)
2427 (arguments
b6072e6b
SB
2428 `(#:configure-flags
2429 `(,(string-append "--with-zoneinfo-dir="
2430 (assoc-ref %build-inputs "tzdata")
2431 "/share/zoneinfo"))
2432 #:phases
2433 (modify-phases %standard-phases
2434 (add-before
2435 'check 'pre-check
2436 (lambda* (#:key inputs #:allow-other-keys)
2437 (substitute* "data/check-timezones.sh"
2438 (("/usr/share/zoneinfo/zone.tab")
2439 (string-append (assoc-ref inputs "tzdata")
2440 "/share/zoneinfo/zone.tab")))
2441 #t)))))
6a180f6f
AW
2442 (native-inputs
2443 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2444 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2445 ("pkg-config" ,pkg-config)
2446 ("intltool" ,intltool)))
2447 (propagated-inputs
2448 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2449 ;; libsoup.
2450 `(("gtk+" ,gtk+)
2451 ("gdk-pixbuf" ,gdk-pixbuf)
2452 ("libxml2" ,libxml2)
2453 ("libsoup" ,libsoup)))
2454 (inputs
2455 `(("tzdata" ,tzdata)
2456 ("geocode-glib" ,geocode-glib)))
2457 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2458 (synopsis "Location, time zone, and weather library for GNOME")
2459 (description
2460 "libgweather is a library to access weather information from online
2461services for numerous locations.")
2462 (license license:gpl2+)))
23a22af6
AW
2463
2464(define-public gnome-settings-daemon
2465 (package
2466 (name "gnome-settings-daemon")
2467 (version "3.16.0")
2468 (source
2469 (origin
2470 (method url-fetch)
2471 (uri (string-append "mirror://gnome/sources/" name "/"
2472 (version-major+minor version) "/"
2473 name "-" version ".tar.xz"))
2474 (sha256
2475 (base32
2476 "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3"))))
2477 (build-system glib-or-gtk-build-system)
2478 (arguments
ec2b1921 2479 `(;; Network manager not yet packaged.
23a22af6
AW
2480 #:configure-flags '("--disable-network-manager")
2481 ;; Color management test can't reach the colord system service.
2482 #:tests? #f))
2483 (native-inputs
2484 `(("pkg-config" ,pkg-config)
2485 ("intltool" ,intltool)
2486 ("xsltproc" ,libxslt)
2487 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2488 ("docbook-xml" ,docbook-xml-4.2)
2489 ("docbook-xsl" ,docbook-xsl)))
2490 (inputs
2491 `(("colord" ,colord)
ea226291 2492 ("libgudev" ,libgudev)
23a22af6
AW
2493 ("upower" ,upower)
2494 ("polkit" ,polkit)
2495 ("pulseaudio" ,pulseaudio)
2496 ("libcanberra" ,libcanberra)
2497 ("libx11" ,libx11)
2498 ("libxtst" ,libxtst)
2499 ("lcms" ,lcms)
2500 ("libnotify" ,libnotify)
2501 ("geoclue" ,geoclue)
2502 ("geocode-glib" ,geocode-glib)
2503 ("libgweather" ,libgweather)
2504 ("gnome-desktop" ,gnome-desktop)
2505 ("nss" ,nss)
2506 ("cups" ,cups)
ec2b1921
AW
2507 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2508 ("libwacom" ,libwacom)
2509 ("librsvg" ,librsvg)
2510 ("xf86-input-wacom" ,xf86-input-wacom)))
23a22af6
AW
2511 (home-page "http://www.gnome.org")
2512 (synopsis "GNOME settings daemon")
2513 (description
2514 "This package contains the daemon responsible for setting the various
2515parameters of a GNOME session and the applications that run under it. It
2516handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2517settings, themes, mouse settings, and startup of other daemons.")
2518 (license license:gpl2+)))
1e7464a9
DH
2519
2520(define-public totem-pl-parser
2521 (package
2522 (name "totem-pl-parser")
2523 (version "3.10.5")
2524 (source (origin
2525 (method url-fetch)
2526 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2527 "totem-pl-parser-" version ".tar.xz"))
2528 (sha256
2529 (base32
2530 "0dw1kiwmjwdjrighri0j9nagsnj44dllm0mamnfh4y5nc47mhim7"))))
2531 (build-system gnu-build-system)
2532 (arguments
2533 ;; FIXME: Tests require gvfs.
2534 `(#:tests? #f))
2535 (native-inputs
2536 `(("intltool" ,intltool)
2537 ("glib" ,glib "bin")
4d6d8281 2538 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2539 ("pkg-config" ,pkg-config)))
22a6ad6a 2540 (propagated-inputs
1e7464a9
DH
2541 `(("glib" ,glib)
2542 ("gmime" ,gmime)
22a6ad6a
MW
2543 ("libxml2" ,libxml2)))
2544 (inputs
2545 `(("libarchive" ,libarchive)
1e7464a9
DH
2546 ("libgcrypt" ,libgcrypt)
2547 ("nettle" ,nettle)
22a6ad6a 2548 ("libsoup" ,libsoup)))
1e7464a9
DH
2549 (home-page "https://projects.gnome.org/totem")
2550 (synopsis "Library to parse and save media playlists for GNOME")
2551 (description "Totem-pl-parser is a GObjects-based library to parse and save
2552playlists in a variety of formats.")
2553 (license license:lgpl2.0+)))
2554
6b888eff
SB
2555(define-public aisleriot
2556 (package
2557 (name "aisleriot")
2558 (version "3.16.1")
2559 (source (origin
2560 (method url-fetch)
2561 (uri (string-append "mirror://gnome/sources/" name "/"
2562 (version-major+minor version) "/"
2563 name "-" version ".tar.xz"))
2564 (sha256
2565 (base32
2566 "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h"))))
2567 (build-system glib-or-gtk-build-system)
2568 (arguments
2569 '(#:configure-flags
2570 '("--with-platform=gtk-only"
2571 "--with-card-theme-formats=svg")))
2572 (native-inputs
2573 `(("desktop-file-utils" ,desktop-file-utils)
2574 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2575 ("intltool" ,intltool)
2576 ("itstool" ,itstool)
2577 ("pkg-config" ,pkg-config)
2578 ("xmllint" ,libxml2)))
2579 (inputs
2580 `(("gtk+" ,gtk+)
2581 ("guile" ,guile-2.0)
2582 ("libcanberra" ,libcanberra)
2583 ("librsvg" ,librsvg)))
2584 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2585 (synopsis "Solitaire card games")
2586 (description
2587 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2588which are easy to play with the aid of a mouse.")
2589 (license license:gpl3+)))
4a79e256
SB
2590
2591(define-public devhelp
2592 (package
2593 (name "devhelp")
2594 (version "3.16.1")
2595 (source (origin
2596 (method url-fetch)
2597 (uri (string-append "mirror://gnome/sources/" name "/"
2598 (version-major+minor version) "/"
2599 name "-" version ".tar.xz"))
2600 (sha256
2601 (base32
2602 "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
2603 (build-system glib-or-gtk-build-system)
2604 (native-inputs
2605 `(("intltool" ,intltool)
2606 ("pkg-config" ,pkg-config)))
2607 (inputs
2608 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2609 ("webkitgtk" ,webkitgtk)))
2610 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2611 (synopsis "API documentation browser for GNOME")
2612 (description
2613 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2614natively with GTK-Doc (the API reference system developed for GTK+ and used
2615throughout GNOME for API documentation).")
2616 (license license:gpl2+)))
ba421ab7
MW
2617
2618(define-public cogl
2619 (package
2620 (name "cogl")
b3e91e02 2621 (version "1.22.0")
ba421ab7
MW
2622 (source
2623 (origin
2624 (method url-fetch)
2625 (uri (string-append "mirror://gnome/sources/" name "/"
2626 (version-major+minor version) "/"
2627 name "-" version ".tar.xz"))
2628 (sha256
2629 (base32
b3e91e02 2630 "14daxqrid5039xmq9yl4pk86awng1n9zgl6ysblhc4gw2ifzp7b8"))))
ba421ab7
MW
2631 (build-system gnu-build-system)
2632 (native-inputs
2633 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2634 ("gobject-introspection" ,gobject-introspection)
2635 ;;("xorg-server" ,xorg-server) ; for the test suite
2636 ("pkg-config" ,pkg-config)))
2637 (propagated-inputs
2638 `(("glib" ,glib)
2639 ("gdk-pixbuf" ,gdk-pixbuf)
2640 ("libx11" ,libx11)
2641 ("libxext" ,libxext)
2642 ("libxfixes" ,libxfixes)
2643 ("libxdamage" ,libxdamage)
2644 ("libxcomposite" ,libxcomposite)
2645 ("libxrandr" ,libxrandr)))
2646 (inputs
2647 `(("mesa" ,mesa)
2648 ("cairo" ,cairo)
2649 ("pango" ,pango)
2650 ("gstreamer" ,gstreamer)
2651 ("gst-plugins-base" ,gst-plugins-base)))
2652 (arguments
2653 `(#:configure-flags (list "--enable-cogl-gst"
2654 ;; Arrange to pass an absolute file name to
2655 ;; dlopen for libGL.so.
2656 (string-append "--with-gl-libname="
2657 (assoc-ref %build-inputs "mesa")
2658 "/lib/libGL.so"))
2659 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2660 ;; _FontTransOpen: Unable to Parse address
2661 ;; ${prefix}/share/fonts/X11/misc/
2662 #:tests? #f
2663 #; #:phases
2664 #;
2665 (modify-phases %standard-phases
2666 (add-before 'check 'start-xorg-server
2667 (lambda* (#:key inputs #:allow-other-keys)
2668 ;; The test suite requires a running X server.
2669 (system (format #f "~a/bin/Xvfb :1 &"
2670 (assoc-ref inputs "xorg-server")))
2671 (setenv "DISPLAY" ":1")
2672 #t)))))
2673 (home-page "http://www.cogl3d.org")
2674 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2675 (description
2676 "Cogl is a small library for using 3D graphics hardware to draw pretty
2677pictures. The API departs from the flat state machine style of OpenGL and is
2678designed to make it easy to write orthogonal components that can render
2679without stepping on each others toes.")
2680 (license (list license:expat ; most of the code
2681 license:bsd-3 ; cogl/cogl-point-in-poly.c
2682 license:sgifreeb2.0 ; cogl-path/tesselator/
2683 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2684
2685(define-public clutter
2686 (package
2687 (name "clutter")
0efd8be5 2688 (version "1.24.2")
fb182b8a
MW
2689 (source
2690 (origin
2691 (method url-fetch)
2692 (uri (string-append "mirror://gnome/sources/" name "/"
2693 (version-major+minor version) "/"
2694 name "-" version ".tar.xz"))
2695 (sha256
2696 (base32
0efd8be5 2697 "0qyd0cw17wi8gl6y9z2j2lh2gwghxskfmsdvw4ayrgxwnj6cjccn"))))
fb182b8a 2698 (build-system gnu-build-system)
600233bd
LC
2699 (outputs '("out"
2700 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2701 (native-inputs
2702 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2703 ("gobject-introspection" ,gobject-introspection)
2704 ("pkg-config" ,pkg-config)
2705 ("xsltproc" ,libxslt)))
2706 (propagated-inputs
2707 `(("cogl" ,cogl)
2708 ("cairo" ,cairo)
2709 ("atk" ,atk)
2710 ("gtk+" ,gtk+)
2711 ("json-glib" ,json-glib)
2712 ("glib" ,glib)
2713 ("libxcomposite" ,libxcomposite)
2714 ("libxdamage" ,libxdamage)
2715 ("libxext" ,libxext)
2716 ("xinput" ,xinput)))
2717 (inputs
2718 `(("libxkbcommon" ,libxkbcommon)
2719 ("udev" ,eudev)))
2720 (arguments
600233bd
LC
2721 `(#:configure-flags (list "--enable-x11-backend=yes"
2722
2723 ;; This produces share/doc/{clutter,cally}.
2724 (string-append "--with-html-dir="
2725 (assoc-ref %outputs "doc")
2726 "/share/doc"))
fb182b8a
MW
2727 ;; XXX FIXME: Get test suite working. It would probably fail in the
2728 ;; same way the cogl tests fail, since clutter is based on cogl.
2729 #:tests? #f))
2730 (home-page "http://www.clutter-project.org")
2731 (synopsis "Open GL based interactive canvas library")
2732 (description
2733 "Clutter is an Open GL based interactive canvas library, designed for
2734creating fast, mainly 2D single window applications such as media box UIs,
2735presentations, kiosk style applications and so on.")
2736 (license license:lgpl2.0+)))
bf7f17ba
MW
2737
2738(define-public clutter-gtk
2739 (package
2740 (name "clutter-gtk")
2741 (version "1.6.0")
2742 (source
2743 (origin
2744 (method url-fetch)
2745 (uri (string-append "mirror://gnome/sources/" name "/"
2746 (version-major+minor version) "/"
2747 name "-" version ".tar.xz"))
2748 (sha256
2749 (base32
2750 "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
2751 (build-system gnu-build-system)
2752 (native-inputs
2753 `(("pkg-config" ,pkg-config)
2754 ("gobject-introspection" ,gobject-introspection)))
2755 (inputs
2756 `(("clutter" ,clutter)
2757 ("gtk+" ,gtk+)))
2758 (home-page "http://www.clutter-project.org")
2759 (synopsis "Open GL based interactive canvas library GTK+ widget")
2760 (description
2761 "Clutter is an Open GL based interactive canvas library, designed for
2762creating fast, mainly 2D single window applications such as media box UIs,
2763presentations, kiosk style applications and so on.")
2764 (license license:lgpl2.0+)))
86d6a893
MW
2765
2766(define-public clutter-gst
2767 (package
2768 (name "clutter-gst")
2769 (version "3.0.6")
2770 (source
2771 (origin
2772 (method url-fetch)
2773 (uri (string-append "mirror://gnome/sources/" name "/"
2774 (version-major+minor version) "/"
2775 name "-" version ".tar.xz"))
2776 (sha256
2777 (base32
2778 "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
2779 (build-system gnu-build-system)
2780 (native-inputs
2781 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2782 ("pkg-config" ,pkg-config)
2783 ("gobject-introspection" ,gobject-introspection)))
2784 (inputs
2785 `(("clutter" ,clutter)
2786 ("gstreamer" ,gstreamer)
2787 ("gst-plugins-base" ,gst-plugins-base)))
2788 (home-page "http://www.clutter-project.org")
2789 (synopsis "Integration library for using GStreamer with Clutter")
2790 (description
2791 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2792It provides a GStreamer sink to upload frames to GL and an actor that
2793implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2794GL based interactive canvas library.")
2795 (license license:lgpl2.0+)))
607a04ae 2796
30dc88d9
LC
2797(define-public libchamplain
2798 (package
2799 (name "libchamplain")
2800 (version "0.12.10")
2801 (source (origin
2802 (method url-fetch)
2803 (uri (string-append
2804 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
2805 version ".tar.xz"))
2806 (sha256
2807 (base32
2808 "019b8scnx7d3wdylmpk9ihzh06w25b63x9cn8nhj6kjx82rcwlxz"))))
2809 (build-system gnu-build-system)
2810 (native-inputs `(("pkg-config" ,pkg-config)))
2811 (propagated-inputs
2812 `(("libsoup" ,libsoup)
2813 ("sqlite" ,sqlite)
2814 ("clutter" ,clutter)
2815 ("clutter-gtk" ,clutter-gtk)
2816 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
2817 ("cairo" ,cairo)
2818 ("gtk+3" ,gtk+)
2819 ("glib" ,glib)))
2820 (home-page "http://projects.gnome.org/libchamplain/")
2821 (synopsis "C library providing a ClutterActor to display maps")
2822 (description
2823 "libchamplain is a C library providing a ClutterActor to display maps.
2824It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
2825and Perl bindings are also available. It supports numerous free map sources
2826such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
2827 (license license:lgpl2.1+)))
2828
607a04ae
MW
2829(define-public gom
2830 (package
2831 (name "gom")
2832 (version "0.3.1")
2833 (source
2834 (origin
2835 (method url-fetch)
2836 (uri (string-append "mirror://gnome/sources/" name "/"
2837 (version-major+minor version) "/"
2838 name "-" version ".tar.xz"))
2839 (sha256
2840 (base32
2841 "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
2842 (build-system gnu-build-system)
2843 (native-inputs
2844 `(("intltool" ,intltool)
2845 ("pkg-config" ,pkg-config)
2846 ("gobject-introspection" ,gobject-introspection)))
2847 (inputs
2848 `(("glib" ,glib)
2849 ("gdk-pixbuf" ,gdk-pixbuf)
2850 ("sqlite" ,sqlite)))
2851 ;; XXX TODO: Figure out how to run the test suite.
2852 (arguments `(#:tests? #f))
2853 (home-page "https://wiki.gnome.org/Projects/Gom")
2854 (synopsis "Object mapper from GObjects to SQLite")
2855 (description
2856 "Gom provides an object mapper from GObjects to SQLite. It helps you
2857write applications that need to store structured data as well as make complex
2858queries upon that data.")
2859 (license license:lgpl2.1+)))
b7a3cf11
SB
2860
2861(define-public gnome-klotski
2862 (package
2863 (name "gnome-klotski")
2864 (version "3.16.1")
2865 (source (origin
2866 (method url-fetch)
2867 (uri (string-append "mirror://gnome/sources/" name "/"
2868 (version-major+minor version) "/"
2869 name "-" version ".tar.xz"))
2870 (sha256
2871 (base32
2872 "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
2873 (build-system glib-or-gtk-build-system)
2874 (native-inputs
2875 `(("desktop-file-utils" ,desktop-file-utils)
2876 ("intltool" ,intltool)
2877 ("itstool" ,itstool)
bcb354ad
SB
2878 ("pkg-config" ,pkg-config)
2879 ("xmllint" ,libxml2)))
b7a3cf11
SB
2880 (inputs
2881 `(("gtk+" ,gtk+)
2882 ("librsvg" ,librsvg)))
2883 (home-page "https://wiki.gnome.org/Apps/Klotski")
2884 (synopsis "Sliding block puzzles")
2885 (description
2886 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
2887the patterned block to the area bordered by green markers. To do so, you will
2888need to slide other blocks out of the way. Complete each puzzle in as few moves
2889as possible!")
2890 (license license:gpl2+)))
8d4791bf
MW
2891
2892(define-public grilo
2893 (package
2894 (name "grilo")
2895 (version "0.2.12")
2896 (source
2897 (origin
2898 (method url-fetch)
2899 (uri (string-append "mirror://gnome/sources/" name "/"
2900 (version-major+minor version) "/"
2901 name "-" version ".tar.xz"))
2902 (sha256
2903 (base32
2904 "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m"))))
2905 (build-system gnu-build-system)
2906 (native-inputs
2907 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2908 ("intltool" ,intltool)
2909 ("pkg-config" ,pkg-config)
2910 ("gobject-introspection" ,gobject-introspection)))
2911 (inputs
2912 `(("glib" ,glib)
2913 ("gtk+" ,gtk+)
2914 ("libxml2" ,libxml2)
2915 ;; XXX TODO: Add oauth
2916 ("libsoup" ,libsoup)
2917 ("totem-pl-parser" ,totem-pl-parser)))
2918 (arguments
2919 `(#:phases
2920 (modify-phases %standard-phases
2921 (add-after 'unpack 'fix-introspection-install-dir
2922 (lambda* (#:key outputs #:allow-other-keys)
2923 (let ((out (assoc-ref outputs "out")))
2924 (substitute* '("src/Makefile.in"
2925 "libs/pls/Makefile.in"
2926 "libs/net/Makefile.in")
2927 (("@INTROSPECTION_GIRDIR@")
2928 (string-append out "/share/gir-1.0/"))
2929 (("@INTROSPECTION_TYPELIBDIR@")
2930 (string-append out "/lib/girepository-1.0/")))))))))
2931 (native-search-paths
2932 (list (search-path-specification
2933 (variable "GRL_PLUGIN_PATH")
2934 (files (list (string-append "lib/grilo-"
2935 (version-major+minor version)))))))
2936 (home-page "http://live.gnome.org/Grilo")
2937 (synopsis "Framework for discovering and browsing media")
2938 (description
2939 "Grilo is a framework focused on making media discovery and browsing easy
2940for application developers.")
2941 (license license:lgpl2.1+)))
7b212526
MW
2942
2943(define-public grilo-plugins
2944 (package
2945 (name "grilo-plugins")
2946 (version "0.2.14")
2947 (source
2948 (origin
2949 (method url-fetch)
2950 (uri (string-append "mirror://gnome/sources/" name "/"
2951 (version-major+minor version) "/"
2952 name "-" version ".tar.xz"))
2953 (sha256
2954 (base32
2955 "1aykhc679pwn2qxsg19g8nh9hffpsqkgxcbqq7lcfn2hcwb83wfh"))))
2956 (build-system gnu-build-system)
2957 (native-inputs
2958 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2959 ("intltool" ,intltool)
2960 ("itstool" ,itstool)
2961 ("pkg-config" ,pkg-config)))
2962 (inputs
2963 `(("grilo" ,grilo)
2964 ("glib" ,glib)
2965 ("libxml2" ,libxml2)
2966 ("sqlite" ,sqlite)
2967 ("gom" ,gom)
2968 ;; XXX TODO: Add oauth
2969 ;; XXX TODO: Add goa
2970 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
2971 ;; XXX TODO: Add lua (needs help finding it)
2972 ("json-glib" ,json-glib)
2973 ("avahi" ,avahi)
2974 ("gmime" ,gmime)
2975 ("libsoup" ,libsoup)
2976 ("libarchive" ,libarchive)
2977 ("totem-pl-parser" ,totem-pl-parser)))
2978 (arguments
2979 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
2980 %output
2981 "/lib/grilo-"
2982 ,(version-major+minor version)))
2983 ;; XXX FIXME: Try to get the test suite working. It appears to require
2984 ;; a working system dbus. Inside the build container, all tests fail
2985 ;; with: "assertion failed: (source)". Outside of the build container,
2986 ;; most tests succeed.
2987 #:tests? #f))
2988 (home-page "http://live.gnome.org/Grilo")
2989 (synopsis "Plugins for the Grilo media discovery library")
2990 (description
2991 "Grilo is a framework focused on making media discovery and browsing easy
2992for application developers.")
2993 (license license:lgpl2.1+)))
4e3fc547
MW
2994
2995(define-public totem
2996 (package
2997 (name "totem")
2998 (version "3.16.1")
2999 (source
3000 (origin
3001 (method url-fetch)
3002 (uri (string-append "mirror://gnome/sources/" name "/"
3003 (version-major+minor version) "/"
3004 name "-" version ".tar.xz"))
3005 (sha256
3006 (base32
3007 "1nkm2i271ivq40hryrl6px39gbbvhmlx4vmvwvw4h3z8xh3013f9"))))
3008 (build-system glib-or-gtk-build-system)
3009 (native-inputs
3010 `(("pkg-config" ,pkg-config)
3011 ("desktop-file-utils" ,desktop-file-utils)
3012 ("gobject-introspection" ,gobject-introspection)
3013 ("intltool" ,intltool)
bcb354ad
SB
3014 ("itstool" ,itstool)
3015 ("xmllint" ,libxml2)))
4e3fc547
MW
3016 (propagated-inputs
3017 `(("dconf" ,dconf)))
3018 (inputs
3019 `(("gtk+" ,gtk+)
3020 ("gdk-pixbuf" ,gdk-pixbuf)
3021 ("atk" ,atk)
3022 ("cairo" ,cairo)
3023 ("dbus-glib" ,dbus-glib)
3024 ("clutter" ,clutter)
3025 ("clutter-gtk" ,clutter-gtk)
3026 ("clutter-gst" ,clutter-gst)
3027 ("xproto" ,xproto)
3028 ("libxxf86vm" ,libxxf86vm)
3029 ("libxtst" ,libxtst)
3030 ("libxrandr" ,libxrandr)
3031 ("libxml2" ,libxml2)
3032 ("libsoup" ,libsoup)
3033 ("libpeas" ,libpeas)
3034 ("librsvg" ,librsvg)
3035 ("lirc" ,lirc)
3036 ("gnome-desktop" ,gnome-desktop)
3037 ("gstreamer" ,gstreamer)
3038 ("gst-plugins-base" ,gst-plugins-base)
3039 ("gst-plugins-good" ,gst-plugins-good)
3040 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3041 ("adwaita-icon-theme" ,adwaita-icon-theme)
3042 ;; XXX We use python-2 because libxml2 because itstool (which needs
3043 ;; libxml) currently uses python-2.
3044 ("python" ,python-2)
3045 ("python-pygobject" ,python2-pygobject)
3046 ;; XXX TODO pylint needed for python support
3047 ("totem-pl-parser" ,totem-pl-parser)
3048 ("grilo" ,grilo)
3049 ("grilo-plugins" ,grilo-plugins)
3050 ("nettle" ,nettle)
3051 ("vala" ,vala)))
3052 (arguments
3053 `(#:phases
3054 (modify-phases %standard-phases
3055 (add-after
3056 'install 'wrap-totem
3057 (lambda* (#:key inputs outputs #:allow-other-keys)
3058 (let ((out (assoc-ref outputs "out"))
3059 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3060 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3061 (wrap-program (string-append out "/bin/totem")
3062 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3063 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3064 #t)))))
3065 (home-page "https://wiki.gnome.org/Apps/Videos")
3066 (synopsis "Simple media player for GNOME based on GStreamer")
3067 (description "Totem is a simple yet featureful media player for GNOME
3068which can read a large number of file formats.")
3069 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3070 ;; to be used and distributed together with GStreamer and Totem. See
3071 ;; file://COPYING in the source distribution for details.
3072 (license license:gpl2+)))
f0afb0c8
DH
3073
3074(define-public rhythmbox
3075 (package
3076 (name "rhythmbox")
3077 (version "3.2.1")
3078 (source (origin
3079 (method url-fetch)
3080 (uri (string-append "mirror://gnome/sources/" name "/"
3081 (version-major+minor version) "/"
3082 name "-" version ".tar.xz"))
3083 (sha256
3084 (base32
3085 "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
3086 (build-system glib-or-gtk-build-system)
3087 (arguments
3088 `(#:configure-flags
3089 (list "--enable-lirc"
3090 "--enable-python"
3091 "--enable-vala"
3092 "--with-brasero"
3093 "--with-gudev"
3094 "--with-libsecret")
3095 #:phases
3096 (modify-phases %standard-phases
3097 (add-after
3098 'install 'wrap-rhythmbox
3099 (lambda* (#:key inputs outputs #:allow-other-keys)
3100 (let ((out (assoc-ref outputs "out"))
3101 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3102 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3103 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3104 (wrap-program (string-append out "/bin/rhythmbox")
3105 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3106 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3107 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3108 #t)))))
3109 (propagated-inputs
3110 `(("dconf" ,dconf)))
3111 (native-inputs
bcb354ad
SB
3112 `(("itstool" ,itstool)
3113 ("intltool" ,intltool)
f0afb0c8
DH
3114 ("glib" ,glib "bin")
3115 ("gobject-introspection" ,gobject-introspection)
3116 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3117 ("pkg-config" ,pkg-config)
3118 ("xmllint" ,libxml2)))
f0afb0c8
DH
3119 (inputs
3120 `(("json-glib" ,json-glib)
3121 ("tdb" ,tdb)
3122 ("gnome-desktop" ,gnome-desktop)
3123 ("python" ,python)
3124 ("python-pygobject" ,python2-pygobject)
3125 ("vala" ,vala)
3126 ("gmime" ,gmime)
3127 ("nettle" ,nettle)
f0afb0c8
DH
3128 ("adwaita-icon-theme" ,adwaita-icon-theme)
3129 ("grilo" ,grilo)
3130 ("grilo-plugins" ,grilo-plugins)
3131 ("gstreamer" ,gstreamer)
3132 ("gst-plugins-base" ,gst-plugins-base)
3133 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3134 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3135 ("libgudev" ,libgudev)
f0afb0c8
DH
3136 ;;("libmtp" ,libmtp) FIXME: Not detected
3137 ("libsecret" ,libsecret)
3138 ("libsoup" ,libsoup)
3139 ("libnotify" ,libnotify)
3140 ("libpeas" ,libpeas)
3141 ("lirc" ,lirc)
3142 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3143 ;;("clutter" ,clutter)
3144 ;;("clutter-gtk" ,clutter-gtk)
3145 ;;("clutter-gst" ,clutter-gst)
3146 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3147 ("atk" ,atk)
3148 ("pango" ,pango)
3149 ("gtk+" ,gtk+)
3150 ;; TODO:
3151 ;; * libgpod
3152 ;; * mx
3153 ;; * webkit
3154 ("brasero" ,brasero)))
3155 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3156 (synopsis "Music player for GNOME")
3157 (description "Rhythmbox is a music playing application for GNOME. It
3158supports playlists, song ratings, and any codecs installed through gstreamer.")
3159 (license license:gpl2+)))
f70d8383
DH
3160
3161(define-public eog
3162 (package
3163 (name "eog")
3164 (version "3.16.2")
3165 (source (origin
3166 (method url-fetch)
3167 (uri (string-append "mirror://gnome/sources/" name "/"
3168 (version-major+minor version) "/"
3169 name "-" version ".tar.xz"))
3170 (sha256
3171 (base32
3172 "0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0"))))
3173 (build-system glib-or-gtk-build-system)
3174 (arguments
3175 `(#:phases
3176 (modify-phases %standard-phases
3177 (add-after
3178 'install 'wrap-eog
3179 (lambda* (#:key outputs #:allow-other-keys)
3180 (let ((out (assoc-ref outputs "out"))
3181 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3182 (wrap-program (string-append out "/bin/eog")
3183 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3184 #t)))))
3185 (propagated-inputs
3186 `(("dconf" ,dconf)))
3187 (native-inputs
3188 `(("intltool" ,intltool)
3189 ("itstool", itstool)
3190 ("glib" ,glib "bin")
3191 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3192 ("pkg-config" ,pkg-config)
3193 ("xmllint" ,libxml2)))
f70d8383
DH
3194 (inputs
3195 `(("gnome-desktop" ,gnome-desktop)
3196 ("shared-mime-info" ,shared-mime-info)
3197 ("adwaita-icon-theme" ,adwaita-icon-theme)
3198 ("exempi" ,exempi)
3199 ("lcms" ,lcms)
3200 ("libexif" ,libexif)
3201 ("libpeas" ,libpeas)
3202 ("libjpeg" ,libjpeg)
3203 ("librsvg" ,librsvg)
3204 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3205 ("gtk+" ,gtk+)))
3206 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3207 (synopsis "GNOME image viewer")
3208 (description "Eye of GNOME is the GNOME image viewer. It
3209supports image conversion, rotation, and slideshows.")
3210 (license license:gpl2+)))
41af5e7b
SB
3211
3212(define-public libgudev
3213 (package
3214 (name "libgudev")
3215 (version "230")
3216 (source (origin
3217 (method url-fetch)
3218 (uri (string-append "mirror://gnome/sources/" name "/"
3219 version "/" name "-" version ".tar.xz"))
3220 (sha256
3221 (base32
3222 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3223 (build-system gnu-build-system)
3224 (native-inputs
3225 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3226 ("gobject-introspection" ,gobject-introspection)
3227 ("pkg-config" ,pkg-config)))
3228 (propagated-inputs
3229 `(("glib" ,glib))) ; required by gudev-1.0.pc
3230 (inputs
3231 `(("udev" ,eudev)))
3232 (home-page "https://wiki.gnome.org/Projects/libgudev")
3233 (synopsis "GObject bindings for libudev")
3234 (description
3235 "This library provides GObject bindings for libudev. It was originally
3236part of udev-extras, then udev, then systemd. It's now a project on its own.")
3237 (license license:lgpl2.1+)))
3dc8828f
SB
3238
3239(define-public gvfs
3240 (package
3241 (name "gvfs")
24a78aa6 3242 (version "1.26.2")
3dc8828f
SB
3243 (source (origin
3244 (method url-fetch)
3245 (uri (string-append "mirror://gnome/sources/" name "/"
3246 (version-major+minor version) "/"
3247 name "-" version ".tar.xz"))
3248 (sha256
3249 (base32
24a78aa6 3250 "064dsjrdjcbi38zl38jhh4r9jcpiygg7x4c8s6s2rb757l7nwnv9"))))
3dc8828f
SB
3251 (build-system gnu-build-system)
3252 (arguments
3253 '(#:tests? #f)) ; XXX: requiring `pidof'
3254 (native-inputs
3255 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3256 ("intltool" ,intltool)
3257 ("pkg-config" ,pkg-config)
3258 ("xsltproc" ,libxslt)))
3259 (inputs
3260 `(("avahi" ,avahi)
3261 ("docbook-xml" ,docbook-xml-4.2)
3262 ("docbook-xsl" ,docbook-xsl)
3263 ("dbus" ,dbus)
3264 ("fuse" ,fuse)
24a78aa6 3265 ("gcr" ,gcr)
3dc8828f
SB
3266 ("glib" ,glib)
3267 ("libarchive" ,libarchive)
3268 ("libbluray" ,libbluray)
3269 ("libcdio-paranoia" ,libcdio-paranoia)
3270 ("libgcrypt" ,libgcrypt)
3271 ("libgphoto2" ,libgphoto2)
3272 ("libgudev" ,libgudev)
3273 ("libmtp" ,libmtp)
3274 ("libsecret" ,libsecret)
3275 ("libsmbclient" ,samba)
3276 ("libsoup" ,libsoup)
3277 ("libxml2" ,libxml2)
3278 ("nettle" ,nettle) ; XXX: required by libarchive.pc
3279 ("udisks" ,udisks)))
3280 (home-page "https://wiki.gnome.org/gvfs/")
3281 (synopsis "Userspace virtual filesystem for GIO")
3282 (description
3283 "GVFS is a userspace virtual filesystem designed to work with the I/O
3284abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3285to all applications using the GIO API. It also supports exposing the GVFS
3286mounts to non-GIO applications using FUSE.
3287
3288GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3289DAV, and others.")
3290 (license license:lgpl2.0+)))
7c88b6bd
AW
3291
3292(define-public gusb
3293 (package
3294 (name "gusb")
3295 (version "0.2.6")
3296 (source (origin
3297 (method url-fetch)
3298 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3299 "gusb_"
3300 (string-join (string-split version #\.)
3301 "_")
3302 ".tar.gz"))
3303 (sha256
3304 (base32
3305 "0h9dzaza81b0mx5jfh5cnc31xdynl0jsxgwvl6vqyhy8mnwfi5nr"))))
3306 (build-system gnu-build-system)
3307 (native-inputs
3308 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3309 ("gobject-introspection" ,gobject-introspection)
3310 ("pkg-config" ,pkg-config)
3311 ("vala" ,vala)
3312 ("autoconf" ,autoconf)
3313 ("automake" ,automake)
3314 ("libtool" ,libtool)
3315 ("gtk-doc" ,gtk-doc)))
3316 (propagated-inputs
3317 ;; Both of these are required by gusb.pc.
3318 `(("glib" ,glib)
3319 ("libusb" ,libusb)))
3320 (arguments
3321 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3322 #:phases
3323 (modify-phases %standard-phases
3324 (add-after 'unpack 'autogen
3325 (lambda _
3326 (and (zero? (system* "gtkdocize"))
3327 (zero? (system* "autoreconf" "-vif"))))))))
3328 (home-page "https://github/hughsie/libgusb")
a124bbd2 3329 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3330 (description
3331 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3332asynchronous control, bulk and interrupt transfers with proper cancellation
3333and integration into a mainloop. This makes it easy to integrate low level
3334USB transfers with your high-level application or system daemon.")
3335 (license license:lgpl2.1+)))
0abe1d86
AW
3336
3337(define-public simple-scan
3338 (package
3339 (name "simple-scan")
3340 (version "3.17.4")
3341 (source (origin
3342 (method url-fetch)
3343 (uri (string-append "https://launchpad.net/simple-scan/"
3344 (version-major+minor version) "/"
3345 version "/+download/simple-scan-"
3346 version ".tar.xz"))
3347 (sha256
3348 (base32
3349 "1pslbv45g01g039zj2b01k08f763kkhzqw8wwz7yh27m7bjllnx6"))))
3350 (build-system glib-or-gtk-build-system)
3351 (inputs
3352 `(("gtk" ,gtk+)
3353 ("zlib" ,zlib)
3354 ("cairo" ,cairo)
3355 ("gdk-pixbuf" ,gdk-pixbuf)
3356 ("gusb" ,gusb)
3357 ("libgudev" ,libgudev)
3358 ("libsane" ,sane-backends)))
3359 (native-inputs
3360 `(("intltool" ,intltool)
3361 ("itstool" ,itstool)
3362 ("colord" ,colord)
3363 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3364 ("pkg-config" ,pkg-config)
bcb354ad
SB
3365 ("vala" ,vala)
3366 ("xmllint" ,libxml2)))
0abe1d86
AW
3367 (home-page "https://launchpad.net/simple-scan")
3368 (synopsis "Document and image scanner")
3369 (description "Simple Scan is an easy-to-use application, designed to let
3370users connect their scanner and quickly have the image/document in an
3371appropriate format. Simple Scan is basically a frontend for SANE - which is
3372the same backend as XSANE uses. This means that all existing scanners will
3373work and the interface is well tested.")
3374 (license license:gpl3+)))
7549f984
SB
3375
3376(define-public epiphany
3377 (package
3378 (name "epiphany")
3379 (version "3.16.3")
3380 (source (origin
3381 (method url-fetch)
3382 (uri (string-append "mirror://gnome/sources/" name "/"
3383 (version-major+minor version) "/"
3384 name "-" version ".tar.xz"))
3385 (sha256
3386 (base32
3387 "1cch4c7gh6lq1i4g0gs39qa2csl4i8a3pcdfapcj5v3r0xvz29ym"))))
3388 (build-system glib-or-gtk-build-system)
3389 (arguments
3390 ;; FIXME: tests run under Xvfb, but fail with:
3391 ;; /src/bookmarks/ephy-bookmarks/create:
3392 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3393 ;; subsystem
3394 ;; FAIL
3395 '(#:tests? #f))
80a747c4
SB
3396 (propagated-inputs
3397 `(("dconf" ,dconf)))
7549f984
SB
3398 (native-inputs
3399 `(("intltool" ,intltool)
3400 ("itstool" ,itstool)
bcb354ad
SB
3401 ("pkg-config" ,pkg-config)
3402 ("xmllint" ,libxml2)))
7549f984
SB
3403 (inputs
3404 `(("avahi" ,avahi)
3405 ("gcr" ,gcr)
3406 ("glib-networking" ,glib-networking)
3407 ("gnome-desktop" ,gnome-desktop)
3408 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3409 ("iso-codes" ,iso-codes)
3410 ("libnotify" ,libnotify)
3411 ("libsecret" ,libsecret)
3412 ("libwnck" ,libwnck)
3413 ("libxslt" ,libxslt)
3414 ("nss" ,nss)
3415 ("sqlite" ,sqlite)
3416 ("webkitgtk" ,webkitgtk)))
3417 (home-page "https://wiki.gnome.org/Apps/Web")
3418 (synopsis "GNOME web browser")
3419 (description
3420 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3421principles are simplicity and standards compliance.")
3422 (license license:gpl2+)))
a3856b2c
SB
3423
3424(define-public d-feet
3425 (package
3426 (name "d-feet")
3427 (version "0.3.10")
3428 (source (origin
3429 (method url-fetch)
3430 (uri (string-append "mirror://gnome/sources/" name "/"
3431 (version-major+minor version) "/"
3432 name "-" version ".tar.xz"))
3433 (sha256
3434 (base32
3435 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3436 (build-system glib-or-gtk-build-system)
3437 (arguments
3438 '(#:out-of-source? #f ; tests need to run in the source directory.
3439 #:phases
3440 (modify-phases %standard-phases
3441 (add-before
3442 'check 'pre-check
86aff791 3443 (lambda _
a3856b2c
SB
3444 ;; The test suite requires a running X server.
3445 (system "Xvfb :1 &")
3446 (setenv "DISPLAY" ":1")
3447 ;; Don't fail on missing '/etc/machine-id'.
3448 (setenv "DBUS_FATAL_WARNINGS" "0")
3449 ;; tests.py and window.py don't meet E402:
3450 ;; E402 module level import not at top of file
3451 (substitute* "src/tests/Makefile"
86aff791
MW
3452 (("--ignore=E123") "--ignore=E123,E402"))
3453 #t))
a3856b2c
SB
3454 (add-after
3455 'install 'wrap-program
3456 (lambda* (#:key outputs #:allow-other-keys)
3457 (let ((prog (string-append (assoc-ref outputs "out")
3458 "/bin/d-feet")))
3459 (wrap-program prog
3460 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3461 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3462 #t))))))
a3856b2c
SB
3463 (native-inputs
3464 `(("intltool" ,intltool)
3465 ("itstool" ,itstool)
3466 ("pkg-config" ,pkg-config)
3467 ("python-pep8" ,python-pep8)
3468 ("xmllint" ,libxml2)
3469 ("xorg-server" ,xorg-server)))
3470 (inputs
3471 `(("gobject-introspection" ,gobject-introspection)
3472 ("gtk+" ,gtk+)
3473 ("python" ,python-wrapper)
3474 ("python-pygobject" ,python-pygobject)))
3475 (home-page "https://wiki.gnome.org/Apps/DFeet")
3476 (synopsis "D-Bus debugger")
3477 (description
3478 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3479of running programs and invoke methods on those interfaces.")
3480 (license license:gpl2+)))
c3b97bd9
SB
3481
3482(define-public yelp-xsl
3483 (package
3484 (name "yelp-xsl")
3485 (version "3.16.1")
3486 (source (origin
3487 (method url-fetch)
3488 (uri (string-append "mirror://gnome/sources/" name "/"
3489 (version-major+minor version) "/"
3490 name "-" version ".tar.xz"))
3491 (sha256
3492 (base32
3493 "0jhpni4mmfvj3xf57rjm61nc8d0x66hz9gd1ywws5lh39g6fx59j"))))
3494 (build-system gnu-build-system)
3495 (native-inputs
3496 `(("intltool" ,intltool)
3497 ("itstool" ,itstool)
3498 ("xmllint" ,libxml2)))
3499 (home-page "https://wiki.gnome.org/Apps/Yelp")
3500 (synopsis "XSL stylesheets for Yelp")
3501 (description
3502 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3503to format Docbook and Mallard documents.")
3504 (license license:gpl2+)))
de3d612a
SB
3505
3506(define-public yelp
3507 (package
3508 (name "yelp")
3509 (version "3.16.1")
3510 (source (origin
3511 (method url-fetch)
3512 (uri (string-append "mirror://gnome/sources/" name "/"
3513 (version-major+minor version) "/"
3514 name "-" version ".tar.xz"))
3515 (sha256
3516 (base32
3517 "1jk7aad1srykhgc3x0hd3q3dnlshmy1ak00alwjzaasxvy6hp0b0"))))
3518 (build-system glib-or-gtk-build-system)
3519 (native-inputs
3520 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3521 ("intltool" ,intltool)
3522 ("itstool" ,itstool)
3523 ("pkg-config" ,pkg-config)))
3524 (propagated-inputs
3525 `(("dconf" ,dconf)))
3526 (inputs
3527 `(("libxslt" ,libxslt)
3528 ("sqlite" ,sqlite)
3529 ("webkitgtk" ,webkitgtk-2.4)
3530 ("yelp-xsl" ,yelp-xsl)
3531 ;; XXX: need by libwebkitgtk-3.0.la.
3532 ("icu4c" ,(@ (gnu packages icu4c) icu4c))))
3533 (home-page "https://wiki.gnome.org/Apps/Yelp")
3534 (synopsis "GNOME help browser")
3535 (description
3536 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3537man, info, and HTML documents. It can locate documents according to the
3538freedesktop.org help system specification.")
3539 (license license:gpl2+)))
122d0d10
SB
3540
3541(define-public yelp-tools
3542 (package
3543 (name "yelp-tools")
3544 (version "3.16.1")
3545 (source (origin
3546 (method url-fetch)
3547 (uri (string-append "mirror://gnome/sources/" name "/"
3548 (version-major+minor version) "/"
3549 name "-" version ".tar.xz"))
3550 (sha256
3551 (base32
3552 "177qzvj5w019isdp41qxqcys2kc4sq2x6dqhqn6l9ipib8a6rxml"))))
3553 (build-system gnu-build-system)
3554 (native-inputs
3555 `(("pkg-config" ,pkg-config)))
3556 (propagated-inputs
3557 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3558 `(("itstool" ,itstool)
3559 ("xmllint" ,libxml2)
3560 ("xsltproc" ,libxslt)))
3561 (inputs
3562 `(("yelp-xsl" ,yelp-xsl)))
3563 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3564 (synopsis "Yelp documentation tools")
3565 (description
3566 "Yelp-tools is a collection of scripts and build utilities to help create,
3567manage, and publish documentation for Yelp and the web. Most of the heavy
3568lifting is done by packages like yelp-xsl and itstool. This package just
3569wraps things up in a developer-friendly way.")
3570 (license license:gpl2+)))
af8f9f23
RW
3571
3572(define-public libgee
3573 (package
3574 (name "libgee")
3575 (version "0.18.0")
3576 (source (origin
3577 (method url-fetch)
3578 (uri (string-append "mirror://gnome/sources/" name "/"
3579 (version-major+minor version) "/"
3580 name "-" version ".tar.xz"))
3581 (sha256
3582 (base32
3583 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3584 (build-system gnu-build-system)
3585 (arguments
3586 `(#:phases
3587 (modify-phases %standard-phases
3588 (add-after 'unpack 'fix-introspection-install-dir
3589 (lambda* (#:key outputs #:allow-other-keys)
3590 (let ((out (assoc-ref outputs "out")))
3591 (substitute* "gee/Makefile.in"
3592 (("@INTROSPECTION_GIRDIR@")
3593 (string-append out "/share/gir-1.0/"))
3594 (("@INTROSPECTION_TYPELIBDIR@")
3595 (string-append out "/lib/girepository-1.0/")))))))))
3596 (native-inputs
3597 `(("glib" ,glib "bin")
3598 ("pkg-config" ,pkg-config)))
3599 (inputs
3600 `(("glib" ,glib)
3601 ("gobject-introspection" ,gobject-introspection)))
3602 (home-page "https://wiki.gnome.org/Projects/Libgee")
3603 (synopsis "GObject collection library")
3604 (description
3605 "Libgee is a utility library providing GObject-based interfaces and
3606classes for commonly used data structures.")
3607 (license license:lgpl2.1+)))
b0f9c4b8
RW
3608
3609(define-public gexiv2
3610 (package
3611 (name "gexiv2")
3612 (version "0.10.3")
3613 (source (origin
3614 (method url-fetch)
3615 (uri (string-append "mirror://gnome/sources/" name "/"
3616 (version-major+minor version) "/"
3617 name "-" version ".tar.xz"))
3618 (sha256
3619 (base32
3620 "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))))
3621 (build-system gnu-build-system)
3622 (native-inputs
3623 `(("glib" ,glib "bin")
3624 ("pkg-config" ,pkg-config)))
3625 (propagated-inputs
3626 ;; Listed in "Requires" section of gexiv2.pc
3627 `(("exiv2" ,exiv2)))
3628 (inputs
3629 `(("glib" ,glib)
3630 ("gobject-introspection" ,gobject-introspection)))
3631 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3632 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3633 (description
3634 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3635allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3636metadata in photo and video files of various formats.")
3637 (license license:gpl2+)))
fed5a689
RW
3638
3639(define-public shotwell
3640 (package
3641 (name "shotwell")
3642 (version "0.22.0")
3643 (source (origin
3644 (method url-fetch)
3645 (uri (string-append "mirror://gnome/sources/" name "/"
3646 (version-major+minor version) "/"
3647 name "-" version ".tar.xz"))
3648 (sha256
3649 (base32
3650 "0cgqaaikrb10plhf6zxbgqy32zqpiwyi9dpx3g8yr261q72r5c81"))))
3651 (build-system glib-or-gtk-build-system)
3652 (arguments
3653 `(#:tests? #f ;no "check" target
3654 #:make-flags '("CC=gcc")
3655 #:configure-flags '("--disable-gsettings-convert-install")
3656 #:out-of-source? #f))
3657 (native-inputs
3658 `(("pkg-config" ,pkg-config)
3659 ("gettext" ,gnu-gettext)
3660 ("m4" ,m4)
3661 ("desktop-file-utils" ,desktop-file-utils)
3662 ("vala" ,vala)
3663 ("which" ,which)
3664 ("gnome-doc-utils" ,gnome-doc-utils)
3665 ;; FIXME: I only added python2-libxml2 because xml2po needs it at
3666 ;; runtime. It should be propagated.
3667 ("python2-libxml2" ,python2-libxml2)
3668 ("python2" ,python-2)))
3669 (inputs
3670 `(("gstreamer" ,gstreamer)
3671 ("gst-plugins-base" ,gst-plugins-base)
3672 ("gst-plugins-good" ,gst-plugins-good)
3673 ("libgee" ,libgee)
3674 ("gexiv2" ,gexiv2)
3675 ("libraw" ,libraw)
3676 ("json-glib" ,json-glib)
3677 ("rest" ,rest)
3678 ("webkitgtk" ,webkitgtk-2.4)
3679 ("sqlite" ,sqlite)
3680 ("libsoup" ,libsoup)
3681 ("libxml2" ,libxml2)
3682 ("gtk+" ,gtk+)
3683 ("libgudev" ,libgudev)
3684 ("libgphoto2" ,libgphoto2)))
3685 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3686 (synopsis "Photo manager for GNOME 3")
3687 (description
3688 "Shotwell is a digital photo manager designed for the GNOME desktop
3689environment. It allows you to import photos from disk or camera, organize
3690them by keywords and events, view them in full-window or fullscreen mode, and
3691share them with others via social networking and more.")
3692 (license license:lgpl2.1+)))
293ff8b2
DT
3693
3694(define-public file-roller
3695 (package
3696 (name "file-roller")
3697 (version "3.10.0")
3698 (source (origin
3699 (method url-fetch)
3700 (uri (string-append "mirror://gnome/sources/" name "/"
3701 (version-major+minor version) "/"
3702 name "-" version ".tar.xz"))
3703 (sha256
3704 (base32
3705 "04sg4yzz4c3hzgxhbgx2dc36lq5hjrnrmal2q0amfvhl0jcvp2fq"))))
3706 (build-system glib-or-gtk-build-system)
3707 (native-inputs
3708 `(("intltool" ,intltool)
3709 ("pkg-config" ,pkg-config)))
3710 ;; TODO: Add libnautilus.
3711 (inputs
3712 `(("gtk+" ,gtk+)
3713 ("gdk-pixbuf" ,gdk-pixbuf)
3714 ("json-glib" ,json-glib)
3715 ("libarchive" ,libarchive)
3716 ("libnotify" ,libnotify)
3717 ("nettle" ,nettle)
3718 ("itstool" ,itstool)
3719 ("libxml2" ,libxml2)))
3720 (synopsis "Graphical archive manager for GNOME")
3721 (description "File Roller is an archive manager for the GNOME desktop
3722environment that allows users to view, unpack, and create compressed archives
3723such as gzip tarballs.")
3724 (home-page "http://fileroller.sourceforge.net/")
3725 (license license:gpl2+)))
7ce49365
SB
3726
3727(define-public gnome-session
3728 (package
3729 (name "gnome-session")
3730 (version "3.18.1.2")
3731 (source (origin
3732 (method url-fetch)
3733 (uri (string-append "mirror://gnome/sources/" name "/"
3734 (version-major+minor version) "/"
3735 name "-" version ".tar.xz"))
3736 (sha256
3737 (base32
3738 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk"))))
3739 (build-system gnu-build-system)
3740 (native-inputs
3741 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3742 ("pkg-config" ,pkg-config)
3743 ("intltool" ,intltool)
3744 ("xsltproc" ,libxslt)))
3745 (inputs
3746 `(("gnome-desktop" ,gnome-desktop)
3747 ("gtk+" ,gtk+)
3748 ("json-glib" ,json-glib)
3749 ("libsm" ,libsm)
3750 ("libxcomposite" ,libxcomposite)
3751 ("libxtst" ,libxtst)
3752 ("mesa" ,mesa)
3753 ("upower" ,upower)
3754 ("xtrans" ,xtrans)))
3755 (synopsis "Session manager for GNOME")
3756 (description
3757 "This package contains the GNOME session manager, as well as a
3758configuration program to choose applications starting on login.")
3759 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3760 (license license:gpl2+)))
f47ba77e
SB
3761
3762(define-public gjs
3763 (package
3764 (name "gjs")
3765 (version "1.44.0")
3766 (source (origin
3767 (method url-fetch)
3768 (uri (string-append "mirror://gnome/sources/" name "/"
3769 (version-major+minor version) "/"
3770 name "-" version ".tar.xz"))
3771 (sha256
3772 (base32
3773 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
3774 (modules '((guix build utils)))
3775 (snippet '(substitute* "test/run-with-dbus"
3776 (("/bin/rm") "rm")))))
3777 (build-system gnu-build-system)
3778 (arguments
3779 '(#:phases
3780 (modify-phases %standard-phases
3781 (add-before
3782 'check 'pre-check
3783 (lambda _
3784 ;; For the missing /etc/machine-id.
3785 (setenv "DBUS_FATAL_WARNINGS" "0")
3786 #t)))))
3787 (native-inputs
3788 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
3789 ("pkg-config" ,pkg-config)
3790 ("xmllint" ,libxml2)
3791 ;; For testing
3792 ("dbus-launch" ,dbus)
3793 ("uuidgen" ,util-linux)
3794 ("xvfb" ,xorg-server)))
3795 (propagated-inputs
3796 ;; These are all in the Requires.private field of gjs-1.0.pc.
3797 `(("gobject-introspection" ,gobject-introspection)
3798 ("mozjs" ,mozjs-24)))
3799 (inputs
3800 `(("gtk+" ,gtk+)
3801 ("readline" ,readline)))
3802 (synopsis "Javascript bindings for GNOME")
3803 (home-page "http://live.gnome.org/Gjs")
3804 (description
3805 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
3806javascript engine and the GObject introspection framework.")
3807 (license license:gpl2+)))
329d731b
DH
3808
3809(define-public gedit
3810 (package
3811 (name "gedit")
3812 (version "3.18.1")
3813 (source (origin
3814 (method url-fetch)
3815 (uri (string-append "mirror://gnome/sources/" name "/"
3816 (version-major+minor version) "/"
3817 name "-" version ".tar.xz"))
3818 (sha256
3819 (base32
3820 "1kb3hglcppap7fdy7i7w2wk746kfz77jzs2lq6vrna8a3fqaxmas"))))
3821 (build-system glib-or-gtk-build-system)
3822 (arguments
3823 `(#:phases
3824 (modify-phases %standard-phases
3825 (add-after
3826 'install 'wrap-gedit
3827 (lambda* (#:key inputs outputs #:allow-other-keys)
3828 (let ((out (assoc-ref outputs "out"))
3829 (gtksourceview (assoc-ref inputs "gtksourceview"))
3830 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3831 (wrap-program (string-append out "/bin/gedit")
3832 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3833 ;; For language-specs.
3834 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
3835 "/share")))))
3836 #t)))))
3837 (propagated-inputs
3838 `(("dconf" ,dconf)))
3839 (native-inputs
3840 `(("intltool" ,intltool)
3841 ("itstool", itstool)
3842 ("gobject-introspection" ,gobject-introspection)
3843 ("pkg-config" ,pkg-config)))
3844 (inputs
3845 `(("glib" ,glib)
3846 ("gtk+" ,gtk+)
3847 ("gtksourceview" ,gtksourceview)
3848 ("libpeas" ,libpeas)
3849 ("libxml2" ,libxml2)
3850 ("enchant" ,enchant)
3851 ("iso-codes" ,iso-codes)
3852 ("python-pygobject" ,python-pygobject)
3853 ("python" ,python)
3854 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3855 ("libx11" ,libx11)
3856 ("vala" ,vala)
3857 ("adwaita-icon-theme" ,adwaita-icon-theme)
3858 ("libsoup" ,libsoup)
3859 ("gnome-desktop" ,gnome-desktop)))
3860 (home-page "https://wiki.gnome.org/Apps/Gedit")
3861 (synopsis "GNOME text editor")
3862 (description "While aiming at simplicity and ease of use, gedit is a
3863powerful general purpose text editor.")
3864 (license license:gpl2+)))
b7179363
SB
3865
3866(define-public zenity
3867 (package
3868 (name "zenity")
3869 (version "3.18.1.1")
3870 (source (origin
3871 (method url-fetch)
3872 (uri (string-append "mirror://gnome/sources/" name "/"
3873 (version-major+minor version) "/"
3874 name "-" version ".tar.xz"))
3875 (sha256
3876 (base32
3877 "02m88dfm1rziqk2ywakwib06wl1rxangbzih6cp8wllbyl1plcg6"))))
3878 (build-system gnu-build-system)
3879 (native-inputs
3880 `(("gettext" ,gnu-gettext)
3881 ("itstool" ,itstool)
3882 ("pkg-config" ,pkg-config)))
3883 (inputs
3884 `(("libnotify" ,libnotify)
3885 ("webkitgtk" ,webkitgtk)))
3886 (synopsis "Display graphical dialog boxes from shell scripts")
3887 (home-page "http://www.gnome.org")
3888 (description
3889 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
3890to display dialog boxes from the commandline and shell scripts.")
3891 (license license:lgpl2.0+)))
60c3627c
SB
3892
3893(define-public mutter
3894 (package
3895 (name "mutter")
3896 (version "3.18.1")
3897 (source (origin
3898 (method url-fetch)
3899 (uri (string-append "mirror://gnome/sources/" name "/"
3900 (version-major+minor version) "/"
3901 name "-" version ".tar.xz"))
3902 (sha256
3903 (base32
3904 "1ab959z5fgi4rq0ifxdqvpdbv99a2b1lfgvj327s9crdvk4ygpjg"))))
3905 (build-system gnu-build-system)
3906 (arguments
3907 '(#:configure-flags
3908 ;; XXX: build fails with [-Werror]:
3909 ;; backends/meta-cursor-renderer.c:112:5: error:
3910 ;; implicit declaration of function ?roundf?
3911 '("--enable-compile-warnings=minimum")))
3912 (native-inputs
3913 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3914 ("gobject-introspection" ,gobject-introspection)
3915 ("intltool" ,intltool)
3916 ("pkg-config" ,pkg-config)))
3917 (propagated-inputs
3918 ;; libmutter.pc refers to all these.
3919 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3920 ("gtk+" ,gtk+)
3921 ("clutter" ,clutter)))
3922 (inputs
3923 `(("gnome-desktop" ,gnome-desktop)
3924 ("libcanberra-gtk" ,libcanberra)
3925 ("libice" ,libice)
3926 ("libsm" ,libsm)
3927 ("libxkbcommon" ,libxkbcommon)
3928 ("libxkbfile" ,libxkbfile)
3929 ("mesa-headers" ,mesa-headers)
3930 ("startup-notification" ,startup-notification)
3931 ("upower-glib" ,upower)
3932 ("xkeyboard-config" ,xkeyboard-config)
3933 ("zenity" ,zenity)))
3934 (synopsis "Window and compositing manager")
3935 (home-page "http://www.gnome.org")
3936 (description
3937 "Mutter is a window and compositing manager that displays and manages your
3938desktop via OpenGL. Mutter combines a sophisticated display engine using the
3939Clutter toolkit with solid window-management logic inherited from the Metacity
3940window manager.")
3941 (license license:gpl2+)))
685cee87
SB
3942
3943(define-public gnome-online-accounts
3944 (package
3945 (name "gnome-online-accounts")
3946 (version "3.18.1")
3947 (source (origin
3948 (method url-fetch)
3949 (uri (string-append "mirror://gnome/sources/" name "/"
3950 (version-major+minor version) "/"
3951 name "-" version ".tar.xz"))
3952 (sha256
3953 (base32
3954 "1hn2fvkr1f4qh4gix03avnvk7pklvv5272ns8ws56v4kcq4nppkc"))))
3955 (build-system glib-or-gtk-build-system)
3956 (native-inputs
3957 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3958 ("gobject-introspection" ,gobject-introspection)
3959 ("intltool" ,intltool)
3960 ("pkg-config" ,pkg-config)
3961 ("xsltproc" ,libxslt)))
3962 (propagated-inputs
3963 `(("glib" ,glib) ; required by goa-1.0.pc
3964 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
3965 (inputs
3966 `(("docbook-xsl" ,docbook-xsl)
3967 ("json-glib" ,json-glib)
3968 ("libsecret" ,libsecret)
3969 ("rest" ,rest)
3970 ("telepathy-glib" ,telepathy-glib)
3971 ("webkitgtk" ,webkitgtk)))
3972 (synopsis "Single sign-on framework for GNOME")
3973 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
3974 (description
3975 "GNOME Online Accounts provides interfaces so that applications and
3976libraries in GNOME can access the user's online accounts. It has providers for
3977Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
3978Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
3979 (license license:lgpl2.0+)))
df217748
SB
3980
3981(define-public evolution-data-server
3982 (package
3983 (name "evolution-data-server")
3984 (version "3.18.2")
3985 (source (origin
3986 (method url-fetch)
3987 (uri (string-append "mirror://gnome/sources/" name "/"
3988 (version-major+minor version) "/"
3989 name "-" version ".tar.xz"))
3990 (sha256
3991 (base32
3992 "16yfd2a00xqxikyf6pi2awfd0qfq4hwdhfar88axrb4mycfgqhjr"))))
3993 (build-system gnu-build-system)
3994 (arguments
3995 '(;; XXX: fails with:
3996 ;; /Fixture/Calendar0: cleaning up pid xxxx
3997 ;; t status: 139)
3998 #:tests? #f
3999 #:configure-flags
4000 (let ((nss (assoc-ref %build-inputs "nss"))
4001 (nspr (assoc-ref %build-inputs "nspr")))
4002 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
4003 "--disable-google" ; disable Google Contacts support
4004 (string-append "--with-nspr-includes=" nspr "/include/nspr")
4005 (string-append "--with-nss-includes=" nss "/include/nss")
4006 (string-append "--with-nss-libs=" nss "/lib/nss")))
4007 #:phases
4008 (modify-phases %standard-phases
4009 (add-before 'check 'pre-check
4010 (lambda _
4011 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4012 (("/bin/rm") (which "rm")))
4013 #t)))))
4014 (native-inputs
4015 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4016 ("gobject-introspection" ,gobject-introspection)
4017 ("gperf" ,gperf)
4018 ("intltool" ,intltool)
4019 ("pkg-config" ,pkg-config)
4020 ("python" ,python)))
4021 (propagated-inputs
4022 ;; These are all in the Requires field of .pc files.
4023 `(("gtk+" ,gtk+)
4024 ("libical" ,libical)
4025 ("libsecret" ,libsecret)
4026 ("libsoup" ,libsoup)
4027 ("nss" ,nss)
4028 ("sqlite" ,sqlite)))
4029 (inputs
4030 `(("bdb" ,bdb)
4031 ("gcr" ,gcr)
4032 ("gnome-online-accounts" ,gnome-online-accounts)
4033 ("libgweather" ,libgweather)))
4034 (synopsis "Store address books and calendars")
4035 (home-page "https://wiki.gnome.org/Apps/Evolution")
4036 (description
4037 "This package provides a unified backend for programs that work with
4038contacts, tasks, and calendar information. It was originally developed for
4039Evolution (hence the name), but is now used by other packages as well.")
4040 (license license:lgpl2.0)))
bd7dfafa
SB
4041
4042(define-public caribou
4043 (package
4044 (name "caribou")
4045 (version "0.4.19")
4046 (source (origin
4047 (method url-fetch)
4048 (uri (string-append "mirror://gnome/sources/" name "/"
4049 (version-major+minor version) "/"
4050 name "-" version ".tar.xz"))
4051 (sha256
4052 (base32
4053 "0i2s2xy9ami3wslam15cajhggpcsj4c70qm7qddcz52z9k0x02rg"))))
4054 (build-system glib-or-gtk-build-system)
4055 (arguments
4056 '(#:phases
4057 (modify-phases %standard-phases
4058 (add-before
4059 'build 'pre-build
4060 (lambda* (#:key outputs #:allow-other-keys)
4061 (let ((out (assoc-ref outputs "out")))
4062 ;; Use absolute shared library path in Caribou-1.0.typelib.
4063 (substitute* "libcaribou/Makefile"
4064 (("--shared-library=libcaribou.so")
4065 (string-append "--shared-library="
4066 out "/lib/libcaribou.so")))
4067 #t)))
4068 (add-after 'install 'wrap-programs
4069 (lambda* (#:key outputs #:allow-other-keys)
4070 (let* ((out (assoc-ref outputs "out"))
4071 (python-path (getenv "PYTHONPATH"))
4072 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4073 (for-each
4074 (lambda (prog)
4075 (wrap-program prog
4076 `("PYTHONPATH" ":" prefix (,python-path))
4077 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4078 (list (string-append out "/bin/caribou-preferences")
4079 (string-append out "/libexec/antler-keyboard"))))
4080 #t)))))
4081 (native-inputs
4082 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4083 ("gobject-introspection" ,gobject-introspection)
4084 ("intltool" ,intltool)
4085 ("pkg-config" ,pkg-config)
4086 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4087 ("vala" ,vala)
4088 ("xsltproc" ,libxslt)))
4089 (propagated-inputs
4090 ;; caribou-1.0.pc refers to all these.
4091 `(("libgee" ,libgee)
4092 ("libxklavier" ,libxklavier)
4093 ("libxtst" ,libxtst)
4094 ("gtk+" ,gtk+)))
4095 (inputs
4096 `(("clutter" ,clutter)
4097 ("dconf" ,dconf)
4098 ("gtk+-2" ,gtk+-2)
4099 ("python-pygobject" ,python2-pygobject)))
4100 (synopsis "Text entry and UI navigation application")
4101 (home-page "https://wiki.gnome.org/Projects/Caribou")
4102 (description
4103 "Caribou is an input assistive technology intended for switch and pointer
4104users.")
4105 (license license:lgpl2.1)))
ba5dd105
SB
4106
4107(define %network-manager-glib-duplicate-test-patch
4108 (origin
4109 (method url-fetch)
4110 (uri (string-append
4111 "http://cgit.freedesktop.org/NetworkManager/NetworkManager/"
4112 "patch/libnm-core/tests/test-general.c"
4113 "?id=874f455d6d47c5a34ed9861a6710f4b78202e0d6"))
4114 (file-name "network-manager-glib-duplicate-test.patch")
4115 (sha256
4116 (base32
4117 "1v0vpxzf0p0b1y5lmq8w7rjndp216gr60nbf2dpdz5rgxx3p3ml6"))))
4118
4119(define-public network-manager
4120 (package
4121 (name "network-manager")
4122 (version "1.0.6")
4123 (source (origin
4124 (method url-fetch)
4125 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4126 (version-major+minor version) "/"
4127 "NetworkManager-" version ".tar.xz"))
4128 (sha256
4129 (base32
4130 "1galh9j95yw33iv1jj8zz0h88ahx8gm5mqmam7zq9f730cj01siq"))
4131 (patches (list %network-manager-glib-duplicate-test-patch))))
4132 (build-system gnu-build-system)
4133 (outputs '("out"
4134 "doc")) ; 8 MiB of gtk-doc HTML
4135 (arguments
4136 '(#:configure-flags
4137 (let ((out (assoc-ref %outputs "out"))
4138 (doc (assoc-ref %outputs "doc"))
4139 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4140 "/sbin/dhclient")))
4141 (list "--with-crypto=gnutls"
4142 "--disable-config-plugin-ibft"
4143 "--sysconfdir=/etc"
4144 "--localstatedir=/var"
4145 (string-append "--with-udev-dir="
4146 out "/lib/udev")
4147 (string-append "--with-dbus-sys-dir="
4148 out "/etc/dbus-1/system.d")
4149 (string-append "--with-html-dir="
4150 doc "/share/gtk-doc/html")
4151 (string-append "--with-dhclient=" dhclient)))
4152 #:phases
4153 (modify-phases %standard-phases
4154 (add-before 'check 'pre-check
4155 (lambda _
4156 ;; For the missing /etc/machine-id.
4157 (setenv "DBUS_FATAL_WARNINGS" "0")
4158 #t))
4159 (replace 'install
4160 (lambda _
4161 (zero? (system* "make"
4162 "sysconfdir=/tmp"
4163 "localstatedir=/tmp"
4164 "install")))))))
4165 (native-inputs
4166 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4167 ("gobject-introspection" ,gobject-introspection)
4168 ("intltool" ,intltool)
4169 ("pkg-config" ,pkg-config)
4170 ;; For testing.
4171 ("python" ,python-wrapper)
4172 ("python-dbus" ,python-dbus)
4173 ("python-pygobject" ,python-pygobject)))
4174 (inputs
4175 `(("dbus-glib" ,dbus-glib)
4176 ("dnsmasq" ,dnsmasq)
4177 ("gnutls" ,gnutls)
4178 ("iptables" ,iptables)
4179 ("isc-dhcp" ,isc-dhcp)
4180 ("libgcrypt" ,libgcrypt)
4181 ("libgudev" ,libgudev)
4182 ("libndp" ,libndp)
4183 ("libnl" ,libnl)
4184 ("libsoup" ,libsoup)
4185 ("polkit" ,polkit)
4186 ("ppp" ,ppp)
4187 ("readline" ,readline)
4188 ("util-linux" ,util-linux)))
4189 (synopsis "Network connection manager")
4190 (home-page "http://www.gnome.org/projects/NetworkManager/")
4191 (description
4192 "NetworkManager is a system network service that manages your network
4193devices and connections, attempting to keep active network connectivity when
4194available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4195devices, and provides VPN integration with a variety of different VPN
4196services.")
4197 (license license:gpl2+)))
4d62a9d3
SB
4198
4199(define-public network-manager-applet
4200 (package
4201 (name "network-manager-applet")
4202 (version "1.0.6")
4203 (source (origin
4204 (method url-fetch)
4205 (uri (string-append "mirror://gnome/sources/" name "/"
4206 (version-major+minor version) "/"
4207 name "-" version ".tar.xz"))
4208 (sha256
4209 (base32
4210 "1yj0m6fb9v12d0di0rfmk3hx1vmygjkiff2c476rf792sbh56kax"))))
4211 (build-system glib-or-gtk-build-system)
4212 (arguments '(#:configure-flags '("--disable-migration")))
4213 (native-inputs
4214 `(("intltool" ,intltool)
4215 ("gobject-introspection" ,gobject-introspection)
4216 ("pkg-config" ,pkg-config)))
4217 (propagated-inputs
4218 ;; libnm-gtk.pc refers to all these.
4219 `(("dbus-glib" ,dbus-glib)
4220 ("gtk+" ,gtk+)
4221 ("network-manager" ,network-manager)))
4222 (inputs
4223 `(("iso-codes" ,iso-codes)
4224 ("libgudev" ,libgudev)
4225 ("libnotify" ,libnotify)
4226 ("libsecret" ,libsecret)))
4227 (synopsis "Applet for managing network connections")
4228 (home-page "http://www.gnome.org/projects/NetworkManager/")
4229 (description
4230 "This package contains a systray applet for NetworkManager. It displays
4231the available networks and allows users to easily switch between them.")
4232 (license license:gpl2+)))
56196594
RW
4233
4234(define-public libxml++
4235 (package
4236 (name "libxml++")
4237 (version "2.91.2")
4238 (source (origin
4239 (method url-fetch)
4240 (uri (string-append "mirror://gnome/sources/" name "/"
4241 (version-major+minor version) "/"
4242 name "-" version ".tar.xz"))
4243 (sha256
4244 (base32
4245 "0h4h7hhh9lg8h34py116517m3wqbzhd5v63k1c6pp1p2a43s18fs"))))
4246 (build-system gnu-build-system)
4247 ;; libxml++-3.0.pc refers to all these.
4248 (propagated-inputs
4249 `(("libxml2" ,libxml2)
4250 ("glibmm" ,glibmm)))
4251 (native-inputs
4252 `(("perl" ,perl)
4253 ("pkg-config" ,pkg-config)))
4254 (home-page "http://libxmlplusplus.sourceforge.net/")
4255 (synopsis "C++ wrapper for XML parser library libxml2")
4256 (description
4257 "This package provides a C++ wrapper for the XML parser library
4258libxml2.")
4259 (license license:lgpl2.1+)))