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