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