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