gnu: speech-dispatcher: Add more inputs.
[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>
89e34644 3;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
29a7c98a 4;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
7108425c 5;;; Copyright © 2014, 2016 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>
49586905 11;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
8344a85e 12;;; Copyright © 2015, 2016, 2017 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>
21f05134 17;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
277a7d82 18;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
a56be436 19;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
6064a4e8 20;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
71d9b980 21;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
3920868c 22;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
e5e1df4d 23;;; Copyright © 2016 David Craven <david@craven.ch>
735b8db6 24;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
cce0da5e 25;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
d04687dc 26;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
995b7261
AE
27;;;
28;;; This file is part of GNU Guix.
29;;;
30;;; GNU Guix is free software; you can redistribute it and/or modify it
31;;; under the terms of the GNU General Public License as published by
32;;; the Free Software Foundation; either version 3 of the License, or (at
33;;; your option) any later version.
34;;;
35;;; GNU Guix is distributed in the hope that it will be useful, but
36;;; WITHOUT ANY WARRANTY; without even the implied warranty of
37;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
38;;; GNU General Public License for more details.
39;;;
40;;; You should have received a copy of the GNU General Public License
41;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
42
43(define-module (gnu packages gnome)
b5b73a82 44 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
45 #:use-module (guix packages)
46 #:use-module (guix download)
4a526711 47 #:use-module (guix git-download)
29a7c98a 48 #:use-module (guix utils)
995b7261 49 #:use-module (guix build-system gnu)
121de2e1 50 #:use-module (guix build-system glib-or-gtk)
dc050251 51 #:use-module (guix build-system trivial)
ed19903d 52 #:use-module (gnu packages)
ba5dd105 53 #:use-module (gnu packages admin)
75016d07 54 #:use-module (gnu packages autotools)
7b212526 55 #:use-module (gnu packages avahi)
6a180f6f 56 #:use-module (gnu packages base)
5698b8b8 57 #:use-module (gnu packages bison)
df217748 58 #:use-module (gnu packages calendar)
df12f04a 59 #:use-module (gnu packages check)
23a22af6 60 #:use-module (gnu packages cups)
6e1bb642 61 #:use-module (gnu packages curl)
c3f29bc9 62 #:use-module (gnu packages cyrus-sasl)
6e1bb642 63 #:use-module (gnu packages databases)
c769cf9f 64 #:use-module (gnu packages djvu)
ba5dd105 65 #:use-module (gnu packages dns)
121de2e1 66 #:use-module (gnu packages flex)
b4ce6300 67 #:use-module (gnu packages docbook)
329d731b 68 #:use-module (gnu packages enchant)
a56be436 69 #:use-module (gnu packages fontutils)
dfc407f3 70 #:use-module (gnu packages game-development)
fed5a689 71 #:use-module (gnu packages gettext)
995b7261 72 #:use-module (gnu packages glib)
c1354b90 73 #:use-module (gnu packages gnupg)
23a22af6 74 #:use-module (gnu packages gnuzilla)
85f5dc19 75 #:use-module (gnu packages gstreamer)
d9c1a22b 76 #:use-module (gnu packages gtk)
df217748 77 #:use-module (gnu packages gperf)
6b888eff 78 #:use-module (gnu packages guile)
34b979b9 79 #:use-module (gnu packages openldap)
c1354b90 80 #:use-module (gnu packages pdf)
75016d07 81 #:use-module (gnu packages polkit)
5698b8b8 82 #:use-module (gnu packages popt)
c1354b90 83 #:use-module (gnu packages ghostscript)
b645146f 84 #:use-module (gnu packages ibus)
9cc98f8a 85 #:use-module (gnu packages iso-codes)
85f5dc19 86 #:use-module (gnu packages libcanberra)
b64e217f 87 #:use-module (gnu packages libunistring)
88f70665 88 #:use-module (gnu packages linux)
75016d07 89 #:use-module (gnu packages libusb)
4e3fc547 90 #:use-module (gnu packages lirc)
7b212526 91 #:use-module (gnu packages lua)
e55354b8 92 #:use-module (gnu packages image)
ae792dba 93 #:use-module (gnu packages imagemagick)
ba5dd105 94 #:use-module (gnu packages networking)
b645146f 95 #:use-module (gnu packages password-utils)
de1215e2 96 #:use-module (gnu packages pcre)
27477d2d 97 #:use-module (gnu packages perl)
f70d8383 98 #:use-module (gnu packages photo)
995b7261 99 #:use-module (gnu packages pkg-config)
23a22af6 100 #:use-module (gnu packages pulseaudio)
995b7261 101 #:use-module (gnu packages python)
cce0da5e 102 #:use-module (gnu packages rdesktop)
75016d07 103 #:use-module (gnu packages scanner)
4a1bf090 104 #:use-module (gnu packages ssh)
85f5dc19 105 #:use-module (gnu packages xml)
200726ed 106 #:use-module (gnu packages gl)
1dd26275 107 #:use-module (gnu packages compression)
cce0da5e 108 #:use-module (gnu packages spice)
8f9ac901 109 #:use-module (gnu packages tex)
a7fd7b68 110 #:use-module (gnu packages tls)
6e1bb642 111 #:use-module (gnu packages web)
4a79e256 112 #:use-module (gnu packages webkit)
b64e217f 113 #:use-module (gnu packages xiph)
fecbf86e 114 #:use-module (gnu packages xorg)
ea57378f 115 #:use-module (gnu packages xdisorg)
ba421ab7 116 #:use-module (gnu packages freedesktop)
1e7464a9 117 #:use-module (gnu packages mail)
89e34644 118 #:use-module (gnu packages kerberos)
54021cd8 119 #:use-module (gnu packages multiprecision)
1e7464a9
DH
120 #:use-module (gnu packages backup)
121 #:use-module (gnu packages nettle)
c024ae36 122 #:use-module (gnu packages ncurses)
3dc8828f
SB
123 #:use-module (gnu packages video)
124 #:use-module (gnu packages cdrom)
125 #:use-module (gnu packages samba)
f47ba77e 126 #:use-module (gnu packages readline)
0bd3597b 127 #:use-module (gnu packages fonts)
b64e217f
MW
128 #:use-module (gnu packages qemu)
129 #:use-module (gnu packages zip)
c024ae36 130 #:use-module (srfi srfi-1))
85f5dc19
AE
131
132(define-public brasero
133 (package
134 (name "brasero")
e8627cd9 135 (version "3.12.1")
85f5dc19
AE
136 (source (origin
137 (method url-fetch)
e8627cd9
DH
138 (uri (string-append "mirror://gnome/sources/" name "/"
139 (version-major+minor version) "/"
140 name "-" version ".tar.xz"))
85f5dc19
AE
141 (sha256
142 (base32
e8627cd9 143 "09vi2hyhl0bz7imv3ky6h7x5m3d546n968wcghydwrkvwm9ylpls"))))
1c40e3b7 144 (build-system glib-or-gtk-build-system)
e8627cd9
DH
145 (arguments
146 `(#:configure-flags (list
147 (string-append "--with-girdir="
148 (assoc-ref %outputs "out")
149 "/share/gir-1.0")
150 (string-append "--with-typelibdir="
151 (assoc-ref %outputs "out")
152 "/lib/girepository-1.0"))))
85f5dc19
AE
153 (propagated-inputs
154 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
155 (native-inputs
156 `(("intltool" ,intltool)
426adbe8 157 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
e8627cd9 158 ("gobject-introspection" ,gobject-introspection)
9cc98f8a 159 ("pkg-config" ,pkg-config)))
85f5dc19
AE
160 (inputs
161 `(("glib" ,glib)
162 ("gnome-doc-utils" ,gnome-doc-utils)
163 ("gstreamer" ,gstreamer)
164 ("gst-plugins-base" ,gst-plugins-base)
165 ("gtk+" ,gtk+)
85f5dc19
AE
166 ("itstool" ,itstool)
167 ("libcanberra" ,libcanberra)
168 ("libice" ,libice)
169 ("libnotify" ,libnotify)
170 ("libsm" ,libsm)
e8627cd9
DH
171 ("libxml2" ,libxml2)
172 ("nettle" ,nettle)
173 ("totem-pl-parser" ,totem-pl-parser)))
85f5dc19
AE
174 (home-page "https://projects.gnome.org/brasero/")
175 (synopsis "CD/DVD burning tool for Gnome")
176 (description "Brasero is an application to burn CD/DVD for the Gnome
177Desktop. It is designed to be as simple as possible and has some unique
178features to enable users to create their discs easily and quickly.")
1dd26275 179 (license license:gpl2+)))
995b7261 180
a56be436
RJ
181(define-public dia
182 ;; This version from GNOME's repository includes fixes for compiling with
183 ;; recent versions of the build tools. The latest activity on the
184 ;; pre-GNOME version has been in 2014, while GNOME has continued applying
185 ;; fixes in 2016.
186 (let ((commit "fbc306168edab63db80b904956117cbbdc514ee4"))
187 (package
188 (name "dia")
189 (version (string-append "0.97.2-" (string-take commit 7)))
190 (source (origin
191 (method git-fetch)
192 (uri (git-reference
193 (url "https://git.gnome.org/browse/dia")
194 (commit commit)))
195 (file-name (string-append name "-" version "-checkout"))
196 (sha256
197 (base32
198 "1b4bba0k8ph4cwgw8xjglss0p6n111bpd5app67lrq79mp0ad06l"))))
199 (build-system gnu-build-system)
200 (inputs
201 `(("glib" ,glib "bin")
202 ("pango" ,pango)
203 ("gdk-pixbuf" ,gdk-pixbuf)
204 ("gtk+" ,gtk+-2)
205 ("libxml2" ,libxml2)
206 ("freetype" ,freetype)
207 ("libart-lgpl" ,libart-lgpl)))
208 (native-inputs
209 `(("intltool" ,intltool)
210 ("pkg-config" ,pkg-config)
211 ("automake" ,automake)
212 ("autoconf" ,autoconf)
213 ("libtool" ,libtool)
214 ("perl" ,perl)
215 ("python-wrapper" ,python-wrapper)))
216 (arguments
217 `(#:phases
218 (modify-phases %standard-phases
219 (add-before 'configure 'run-autogen
220 (lambda _
221 (system* "sh" "autogen.sh"))))))
222 (home-page "https://wiki.gnome.org/Apps/Dia")
223 (synopsis "Diagram creation for GNOME")
224 (description "Dia can be used to draw different types of diagrams, and
225includes support for UML static structure diagrams (class diagrams), entity
226relationship modeling, and network diagrams. The program supports various file
227formats like PNG, SVG, PDF and EPS.")
228 (license license:gpl2+))))
229
7aab13f1
ML
230(define-public gnome-common
231 (package
232 (name "gnome-common")
af83490d 233 (version "3.18.0")
7aab13f1
ML
234 (source
235 (origin
236 (method url-fetch)
237 (uri (string-append "mirror://gnome/sources/" name "/"
238 (version-major+minor version) "/"
239 name "-" version ".tar.xz"))
240 (sha256
241 (base32
af83490d 242 "1kzqi8qvh5p1zncj8msazlmvcwsczjz2hqxp4x2y0mg718vrwmi2"))))
7aab13f1
ML
243 (build-system gnu-build-system)
244 (home-page "https://www.gnome.org/")
245 (synopsis "Bootstrap GNOME modules built from Git")
246 (description "gnome-common contains various files needed to bootstrap
247GNOME modules built from Git. It contains a common \"autogen.sh\" script that
248can be used to configure a source directory checked out from Git and some
249commonly used macros.")
250 (license license:gpl2+)))
251
9cc98f8a
CR
252(define-public gnome-desktop
253 (package
254 (name "gnome-desktop")
c01deb86 255 (version "3.22.2")
9cc98f8a
CR
256 (source
257 (origin
258 (method url-fetch)
b38e45d8
EB
259 (uri (string-append "mirror://gnome/sources/" name "/"
260 (version-major+minor version) "/"
9cc98f8a
CR
261 name "-" version ".tar.xz"))
262 (sha256
263 (base32
c01deb86 264 "074yjz4g9gii045v2pl1ad34hcg92ci04ynxqcabwnf3lvvypmsi"))))
9cc98f8a
CR
265 (build-system gnu-build-system)
266 (native-inputs
a8340482
SB
267 `(("gobject-introspection" ,gobject-introspection)
268 ("itstool" ,itstool)
bcb354ad
SB
269 ("intltool" ,intltool)
270 ("pkg-config" ,pkg-config)
271 ("xmllint" ,libxml2)))
a8340482
SB
272 (propagated-inputs
273 ;; Required by gnome-desktop-3.0.pc.
274 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
275 ("gtk+" ,gtk+)))
9cc98f8a
CR
276 (inputs
277 `(("gdk-pixbuf" ,gdk-pixbuf)
278 ("glib" ,glib)
9cc98f8a 279 ("iso-codes" ,iso-codes)
9cc98f8a
CR
280 ("libx11" ,libx11)
281 ("libxext" ,libxext)
282 ("libxkbfile" ,libxkbfile)
283 ("libxrandr" ,libxrandr)
284 ("xkeyboard-config" ,xkeyboard-config)))
285 (home-page "https://www.gnome.org/")
286 (synopsis
35b9e423 287 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
288 (description
289 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
290on the desktop, but that cannot live in the platform for various reasons.
291There is no API or ABI guarantee, although we are doing our best to provide
292stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
293
294The gnome-about program helps find which version of GNOME is installed.")
295 ; Some bits under the LGPL.
1dd26275 296 (license license:gpl2+)))
9cc98f8a 297
995b7261
AE
298(define-public gnome-doc-utils
299 (package
300 (name "gnome-doc-utils")
301 (version "0.20.10")
302 (source
303 (origin
304 (method url-fetch)
b38e45d8
EB
305 (uri (string-append "mirror://gnome/sources/" name "/"
306 (version-major+minor version) "/"
995b7261
AE
307 name "-" version ".tar.xz"))
308 (sha256
309 (base32
310 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
311 (build-system gnu-build-system)
c4c4cc05 312 (native-inputs
995b7261 313 `(("intltool" ,intltool)
b4ce6300 314 ("docbook-xml" ,docbook-xml-4.4)
d80b0d4a 315 ("python2-libxml2" ,python2-libxml2)
995b7261
AE
316 ("libxml2" ,libxml2)
317 ("libxslt" ,libxslt)
318 ("pkg-config" ,pkg-config)
319 ("python-2" ,python-2)))
995b7261
AE
320 (home-page "https://wiki.gnome.org/GnomeDocUtils")
321 (synopsis
322 "Documentation utilities for the Gnome project")
323 (description
324 "Gnome-doc-utils is a collection of documentation utilities for the
325Gnome project. It includes xml2po tool which makes it easier to translate
326and keep up to date translations of documentation.")
1dd26275 327 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 328
6c4f7022
DC
329(define-public gnome-disk-utility
330 (package
331 (name "gnome-disk-utility")
332 (version "3.22.1")
333 (source (origin
334 (method url-fetch)
335 (uri (string-append "mirror://gnome/sources/" name "/"
336 (version-major+minor version) "/"
337 name "-" version ".tar.xz"))
338 (sha256
339 (base32
340 "1hqynlcgwm72il2rdml98gcarz0alsgxs5xf6ww2x0czaj3s3953"))))
341 (build-system gnu-build-system)
342 (native-inputs
343 `(("glib:bin" ,glib "bin")
344 ("intltool" ,intltool)
345 ("pkg-config" ,pkg-config)
346 ("docbook-xml" ,docbook-xml)
347 ("docbook-xsl" ,docbook-xsl)
348 ("libxml2" ,libxml2)
349 ("libxslt" ,libxslt)))
350 (inputs
351 `(("glib" ,glib)
352 ("appstream-glib" ,appstream-glib)
353 ("gnome-settings-daemon" ,gnome-settings-daemon)
354 ("gtk+" ,gtk+)
355 ("libcanberra" ,libcanberra)
356 ("libdvdread" ,libdvdread)
357 ("libnotify" ,libnotify)
358 ("libpwquality" ,libpwquality)
359 ("libsecret" ,libsecret)
360 ("udisks" ,udisks)))
361 (home-page "https://git.gnome.org/browse/gnome-disk-utility")
362 (synopsis "Disk management utility for GNOME")
363 (description "Disk management utility for GNOME.")
364 (license license:gpl2+)))
365
8ff49011
RW
366(define-public gcr
367 (package
368 (name "gcr")
6983ba56 369 (version "3.20.0")
8ff49011
RW
370 (source (origin
371 (method url-fetch)
372 (uri (string-append "mirror://gnome/sources/" name "/"
373 (version-major+minor version) "/"
374 name "-" version ".tar.xz"))
375 (sha256
376 (base32
6983ba56 377 "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))))
8ff49011
RW
378 (build-system gnu-build-system)
379 (arguments
380 '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
381 ;not exist
382 #:phases (modify-phases %standard-phases
383 (add-before
384 'check 'pre-check
385 (lambda* (#:key inputs #:allow-other-keys)
386 (substitute* "build/tap-driver"
387 (("/usr/bin/env python") (which "python"))))))))
388 (inputs
389 `(("dbus" ,dbus)
390 ("gnupg" ,gnupg) ;called as a child process during tests
391 ("libgcrypt" ,libgcrypt)))
392 (native-inputs
393 `(("python" ,python-2) ;for tests
394 ("pkg-config" ,pkg-config)
395 ("glib" ,glib "bin")
2af4f5b0
SB
396 ("gobject-introspection" ,gobject-introspection)
397 ("intltool" ,intltool)
398 ("xsltproc" ,libxslt)))
8ff49011
RW
399 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
400 (propagated-inputs
401 `(("p11-kit" ,p11-kit)
402 ("glib" ,glib)
403 ("gtk+" ,gtk+)))
404 (home-page "http://www.gnome.org")
405 (synopsis "Libraries for displaying certificates and accessing key stores")
406 (description
407 "The GCR package contains libraries used for displaying certificates and
408accessing key stores. It also provides the viewer for crypto files on the
409GNOME Desktop.")
410 (license license:lgpl2.1+)))
411
c1354b90
LC
412(define-public libgnome-keyring
413 (package
414 (name "libgnome-keyring")
5e8aec2c 415 (version "3.12.0")
c1354b90
LC
416 (source (origin
417 (method url-fetch)
b38e45d8
EB
418 (uri (string-append "mirror://gnome/sources/" name "/"
419 (version-major+minor version) "/"
420 name "-" version ".tar.xz"))
c1354b90
LC
421 (sha256
422 (base32
5e8aec2c 423 "10vpjhgbjm7z2djy04qakd02qlzpd02xnbfjhk2aqwjzn3xpihf4"))))
c1354b90 424 (build-system gnu-build-system)
c1354b90 425 (inputs
c4c4cc05 426 `(("libgcrypt" ,libgcrypt)
c1354b90 427 ("dbus" ,dbus)))
c4c4cc05
JD
428 (native-inputs
429 `(("pkg-config" ,pkg-config)
426adbe8 430 ("glib" ,glib "bin")
c4c4cc05 431 ("intltool" ,intltool)))
c1354b90
LC
432 (propagated-inputs
433 ;; Referred to in .h files and .pc.
434 `(("glib" ,glib)))
435 (home-page "http://www.gnome.org")
436 (synopsis "Accessing passwords from the GNOME keyring")
437 (description
438 "Client library to access passwords from the GNOME keyring.")
439
440 ;; Though a couple of files are LGPLv2.1+.
1dd26275 441 (license license:lgpl2.0+)))
c1354b90 442
e99a3d6f
RW
443(define-public gnome-keyring
444 (package
445 (name "gnome-keyring")
6983ba56 446 (version "3.20.0")
e99a3d6f
RW
447 (source (origin
448 (method url-fetch)
449 (uri (string-append "mirror://gnome/sources/" name "/"
450 (version-major+minor version) "/"
451 name "-" version ".tar.xz"))
452 (sha256
453 (base32
6983ba56 454 "16gcwwcg91ipxjmiyi4c4njvnxixmv1i278p0bilc3lafk6ww5xw"))))
e99a3d6f
RW
455 (build-system gnu-build-system)
456 (arguments
457 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
458 ;not exist
459 #:configure-flags
460 (list
461 (string-append "--with-pkcs11-config="
462 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
463 (string-append "--with-pkcs11-modules="
464 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
465 #:phases
466 (modify-phases %standard-phases
467 (add-before
468 'check 'pre-check
469 (lambda* (#:key inputs #:allow-other-keys)
470 (substitute* "build/tap-driver"
471 (("/usr/bin/env python") (which "python")))))
472 (add-before
473 'configure 'fix-docbook
474 (lambda* (#:key inputs #:allow-other-keys)
475 (substitute* "docs/Makefile.am"
476 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
477 (string-append (assoc-ref inputs "docbook-xsl")
478 "/xml/xsl/docbook-xsl-"
479 ,(package-version docbook-xsl)
480 "/manpages/docbook.xsl")))
481 (setenv "XML_CATALOG_FILES"
482 (string-append (assoc-ref inputs "docbook-xml")
483 "/xml/dtd/docbook/catalog.xml")))))))
484 (inputs
485 `(("libgcrypt" ,libgcrypt)
1a0b2d82 486 ("linux-pam" ,linux-pam)
e99a3d6f
RW
487 ("dbus" ,dbus)
488 ("gcr" ,gcr)))
489 (native-inputs
490 `(("pkg-config" ,pkg-config)
491 ("glib" ,glib "bin")
492 ("python" ,python-2) ;for tests
493 ("intltool" ,intltool)
494 ("autoconf" ,autoconf)
495 ("automake" ,automake)
496 ("libxslt" ,libxslt) ;for documentation
497 ("docbook-xml" ,docbook-xml-4.2)
498 ("docbook-xsl" ,docbook-xsl)))
499 (home-page "http://www.gnome.org")
500 (synopsis "Daemon to store passwords and encryption keys")
501 (description
502 "gnome-keyring is a program that keeps passwords and other secrets for
503users. It is run as a daemon in the session, similar to ssh-agent, and other
504applications locate it via an environment variable or D-Bus.
505
506The program can manage several keyrings, each with its own master password,
507and there is also a session keyring which is never stored to disk, but
508forgotten when the session ends.")
509 (license license:lgpl2.1+)))
510
c1354b90
LC
511(define-public evince
512 (package
513 (name "evince")
0acaac9e 514 (version "3.22.1")
c1354b90
LC
515 (source (origin
516 (method url-fetch)
b38e45d8
EB
517 (uri (string-append "mirror://gnome/sources/" name "/"
518 (version-major+minor version) "/"
519 name "-" version ".tar.xz"))
c1354b90
LC
520 (sha256
521 (base32
0acaac9e 522 "0713mcrym5ykhl5smqxi6m9578gz3nkibmkmc794amss7gdkkm7k"))))
121de2e1 523 (build-system glib-or-gtk-build-system)
c1354b90
LC
524 (arguments
525 `(#:configure-flags '("--disable-nautilus")
526
527 ;; FIXME: Tests fail with:
528 ;; ImportError: No module named gi.repository
529 ;; Where should that module come from?
554b2dac
SB
530 #:tests? #f
531 #:phases
532 (modify-phases %standard-phases
533 (add-before 'install 'skip-gtk-update-icon-cache
534 ;; Don't create 'icon-theme.cache'.
535 (lambda _
536 (substitute* "data/Makefile"
537 (("gtk-update-icon-cache") "true"))
538 #t)))))
c1354b90
LC
539 (inputs
540 `(("libspectre" ,libspectre)
c769cf9f 541 ("djvulibre" ,djvulibre)
c1354b90
LC
542 ("ghostscript" ,ghostscript)
543 ("poppler" ,poppler)
c769cf9f
SB
544 ("libtiff" ,libtiff)
545 ;; TODO:
546 ;; Add libgxps for XPS support.
547 ;; Build libkpathsea as a shared library for DVI support.
548 ;; ("libkpathsea" ,texlive-bin)
549 ("gnome-desktop" ,gnome-desktop)
c1354b90
LC
550 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
551 ("libgnome-keyring" ,libgnome-keyring)
c769cf9f 552 ("adwaita-icon-theme" ,adwaita-icon-theme)
c1354b90
LC
553 ("gdk-pixbuf" ,gdk-pixbuf)
554 ("atk" ,atk)
555 ("pango" ,pango)
556 ("gtk+" ,gtk+)
557 ("glib" ,glib)
558 ("libxml2" ,libxml2)
c1354b90
LC
559 ("libsm" ,libsm)
560 ("libice" ,libice)
96e42467 561 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
562 ("dconf" ,dconf)
563 ("libcanberra" ,libcanberra)
c769cf9f 564 ("libsecret" ,libsecret)
c1354b90
LC
565 ;; For tests.
566 ("dogtail" ,python2-dogtail)))
96e42467 567 (native-inputs
bcb354ad
SB
568 `(("itstool" ,itstool)
569 ("intltool" ,intltool)
426adbe8 570 ("glib" ,glib "bin")
bcb354ad
SB
571 ("pkg-config" ,pkg-config)
572 ("xmllint" ,libxml2)))
c1354b90
LC
573 (home-page
574 "http://www.gnome.org/projects/evince/")
575 (synopsis "GNOME's document viewer")
576 (description
577 "Evince is a document viewer for multiple document formats. It
578currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
579of Evince is to replace the multiple document viewers that exist
96e42467 580on the GNOME Desktop with a single simple application.")
1dd26275 581 (license license:gpl2+)))
c1354b90 582
22e32e69
AE
583(define-public gsettings-desktop-schemas
584 (package
585 (name "gsettings-desktop-schemas")
707ae4e6 586 (version "3.22.0")
22e32e69
AE
587 (source
588 (origin
589 (method url-fetch)
590 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 591 (version-major+minor version) "/"
22e32e69
AE
592 name "-" version ".tar.xz"))
593 (sha256
594 (base32
707ae4e6 595 "1qgalzqwg0fl0n22vslqcsnsmj9kc54qj25ib16rxaf36jxcf1hg"))))
22e32e69
AE
596 (build-system gnu-build-system)
597 (inputs
c4c4cc05
JD
598 `(("glib" ,glib)))
599 (native-inputs
600 `(("intltool" ,intltool)
426adbe8 601 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 602 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
603 ("pkg-config" ,pkg-config)))
604 (home-page "https://launchpad.net/gsettings-desktop-schemas")
605 (synopsis
606 "GNOME settings for various desktop components")
607 (description
608 "Gsettings-desktop-schemas contains a collection of GSettings schemas
609for settings shared by various components of the GNOME desktop.")
1dd26275 610 (license license:lgpl2.1+)))
22e32e69 611
27477d2d
AE
612(define-public icon-naming-utils
613 (package
614 (name "icon-naming-utils")
615 (version "0.8.90")
616 (source
617 (origin
618 (method url-fetch)
5cc3096c 619 (uri (string-append "https://tango.freedesktop.org/releases/icon-naming-utils-"
27477d2d
AE
620 version ".tar.bz2"))
621 (sha256
622 (base32
623 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
624 (build-system gnu-build-system)
625 (inputs
626 `(("perl" ,perl)
627 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
628 (arguments
629 '(#:phases
630 (alist-cons-after
631 'install 'set-load-paths
632 ;; Tell 'icon-name-mapping' where XML::Simple is.
633 (lambda* (#:key outputs #:allow-other-keys)
634 (let* ((out (assoc-ref outputs "out"))
635 (prog (string-append out "/libexec/icon-name-mapping")))
636 (wrap-program
637 prog
638 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
639 %standard-phases)))
27477d2d
AE
640 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
641 (synopsis
642 "Utility to implement the Freedesktop Icon Naming Specification")
643 (description
644 "To help with the transition to the Freedesktop Icon Naming
645Specification, the icon naming utility maps the icon names used by the
646GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 647 (license license:lgpl2.1+)))
27477d2d 648
686e025d
SB
649(define-public desktop-file-utils
650 (package
651 (name "desktop-file-utils")
562a79de 652 (version "0.23")
686e025d
SB
653 (source (origin
654 (method url-fetch)
5cc3096c 655 (uri (string-append "https://www.freedesktop.org/software/" name
686e025d
SB
656 "/releases/" name "-" version ".tar.xz"))
657 (sha256
658 (base32
562a79de 659 "119kj2w0rrxkhg4f9cf5waa55jz1hj8933vh47vcjipcplql02bc"))))
686e025d
SB
660 (build-system gnu-build-system)
661 (native-inputs
662 `(("pkg-config" ,pkg-config)))
663 (inputs
664 `(("glib" ,glib)))
665 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
666 (synopsis "Utilities for working with desktop entries")
667 (description
668 "This package contains a few command line utilities for working with
669desktop entries:
670
671desktop-file-validate: validates a desktop file and prints warnings/errors
672 about desktop entry specification violations.
673
674desktop-file-install: installs a desktop file to the applications directory,
675 optionally munging it a bit in transit.
676
677update-desktop-database: updates the database containing a cache of MIME types
678 handled by desktop files.")
679 (license license:gpl2+)))
680
7d3f3651
AE
681(define-public gnome-icon-theme
682 (package
683 (name "gnome-icon-theme")
b32f58dd 684 (version "3.12.0")
7d3f3651
AE
685 (source
686 (origin
687 (method url-fetch)
688 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 689 (version-major+minor version) "/"
7d3f3651
AE
690 name "-" version ".tar.xz"))
691 (sha256
692 (base32
b32f58dd 693 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
7d3f3651 694 (build-system gnu-build-system)
5613c27d
SB
695 (arguments
696 '(#:configure-flags
697 ;; Don't create 'icon-theme.cache'.
698 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
699 (true (string-append coreutils "/bin/true")))
700 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
c4c4cc05 701 (native-inputs
5613c27d 702 `(("icon-naming-utils" ,icon-naming-utils)
73b6cf42
SB
703 ("intltool" ,intltool)
704 ("pkg-config" ,pkg-config)))
7d3f3651
AE
705 (home-page "http://art.gnome.org/")
706 (synopsis
707 "GNOME icon theme")
708 (description
709 "Icons for the GNOME desktop.")
1dd26275 710 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 711
14eeefa2
SB
712;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
713(define-public adwaita-icon-theme
714 (package (inherit gnome-icon-theme)
715 (name "adwaita-icon-theme")
ea2c1582 716 (version "3.22.0")
14eeefa2
SB
717 (source (origin
718 (method url-fetch)
719 (uri (string-append "mirror://gnome/sources/" name "/"
720 (version-major+minor version) "/"
721 name "-" version ".tar.xz"))
722 (sha256
723 (base32
ea2c1582 724 "1dyw8mm72wfpkn83vdqr0ifv5yhy565jhxrcjsd83nc7c3igd2y1"))))
5613c27d
SB
725 (native-inputs
726 `(("gtk-encode-symbolic-svg" ,gtk+ "bin")))))
14eeefa2 727
ae792dba
RW
728(define-public tango-icon-theme
729 (package
730 (name "tango-icon-theme")
731 (version "0.8.90")
732 (source (origin
733 (method url-fetch)
734 (uri (string-append "http://tango.freedesktop.org/releases/"
735 "tango-icon-theme-" version ".tar.bz2"))
736 (sha256
737 (base32
738 "034r9s944b4yikyfgn602yv7s54wdzlq0qfvqh52b9x6kbx08h79"))))
739 (build-system gnu-build-system)
740 (native-inputs
741 `(("icon-naming-utils" ,icon-naming-utils)
742 ("intltool" ,intltool)
743 ("imagemagick" ,imagemagick)
744 ("pkg-config" ,pkg-config)))
745 (home-page "http://tango-project.org/")
746 (synopsis "Tango icon theme")
747 (description "This is an icon theme that follows the Tango visual
748guidelines.")
749 (license license:public-domain)))
750
9167f8e6
LC
751(define-public shared-mime-info
752 (package
753 (name "shared-mime-info")
b43b584f 754 (version "1.8")
9167f8e6
LC
755 (source (origin
756 (method url-fetch)
5cc3096c 757 (uri (string-append "https://freedesktop.org/~hadess/"
b38e45d8 758 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
759 (sha256
760 (base32
b43b584f 761 "1sc96lv9dp1lkvs8dh3ngm3hbjb274d363dl9avhb61il3qmxx9a"))))
9167f8e6
LC
762 (build-system gnu-build-system)
763 (arguments
764 ;; The build system appears not to be parallel-safe.
765 '(#:parallel-build? #f))
766 (inputs
767 `(("glib" ,glib)
c4c4cc05 768 ("libxml2" ,libxml2)))
9167f8e6 769 (native-inputs
c4c4cc05
JD
770 `(("intltool" ,intltool)
771 ("pkg-config" ,pkg-config)))
9167f8e6
LC
772 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
773 (synopsis "Database of common MIME types")
774 (description
775 "The shared-mime-info package contains the core database of common types
776and the update-mime-database command used to extend it. It requires glib2 to
777be installed for building the update command. Additionally, it uses intltool
778for translations, though this is only a dependency for the maintainers. This
779database is translated at Transifex.")
1dd26275 780 (license license:gpl2+)))
9167f8e6 781
bef4dd92
AE
782(define-public hicolor-icon-theme
783 (package
784 (name "hicolor-icon-theme")
b62a0070 785 (version "0.15")
bef4dd92
AE
786 (source
787 (origin
788 (method url-fetch)
5cc3096c 789 (uri (string-append "https://icon-theme.freedesktop.org/releases/"
b62a0070 790 "hicolor-icon-theme-" version ".tar.xz"))
bef4dd92
AE
791 (sha256
792 (base32
b62a0070 793 "1k1kf2c5zbqh31nglc3nxs9j6wr083k9kjyql8p22ccc671mmi4w"))))
bef4dd92
AE
794 (build-system gnu-build-system)
795 (arguments
796 `(#:tests? #f)) ; no check target
797 (home-page "http://icon-theme.freedesktop.org/releases/")
798 (synopsis
799 "Freedesktop icon theme")
800 (description
801 "Freedesktop icon theme.")
1dd26275 802 (license license:gpl2)))
bef4dd92 803
d9c1a22b
AE
804(define-public libnotify
805 (package
806 (name "libnotify")
195bfa68 807 (version "0.7.7")
d9c1a22b
AE
808 (source
809 (origin
810 (method url-fetch)
811 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 812 (version-major+minor version) "/"
d9c1a22b
AE
813 name "-" version ".tar.xz"))
814 (sha256
815 (base32
195bfa68 816 "017wgq9n00hx39n0hm784zn18hl721hbaijda868cm96bcqwxd4w"))))
d9c1a22b
AE
817 (build-system gnu-build-system)
818 (inputs
819 `(("gdk-pixbuf" ,gdk-pixbuf)
820 ("glib" ,glib)
821 ("gtk+" ,gtk+)
c4c4cc05
JD
822 ("libpng" ,libpng)))
823 (native-inputs
426adbe8 824 `(("pkg-config" ,pkg-config)
277a7d82
JN
825 ("glib" ,glib "bin")
826 ("gobject-introspection" ,gobject-introspection)))
d9c1a22b
AE
827 (home-page "https://developer-next.gnome.org/libnotify/")
828 (synopsis
829 "GNOME desktop notification library")
830 (description
831 "Libnotify is a library that sends desktop notifications to a
35b9e423 832notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
833notifications can be used to inform the user about an event or display
834some form of information without getting in the user's way.")
1dd26275 835 (license license:lgpl2.1+)))
7a8605ce
CR
836
837(define-public libpeas
838 (package
839 (name "libpeas")
0dd6aed9 840 (version "1.20.0")
7a8605ce
CR
841 (source
842 (origin
843 (method url-fetch)
844 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 845 (version-major+minor version) "/"
7a8605ce
CR
846 name "-" version ".tar.xz"))
847 (sha256
848 (base32
0dd6aed9 849 "0m6k6fcrx40n92nc1cy3z72vs1ja49sb58dj3fjp40605pzgz4pk"))))
7a8605ce 850 (build-system gnu-build-system)
7a8605ce 851 (inputs
2ed6522a
SB
852 `(("gtk+" ,gtk+)
853 ("glade" ,glade3)
854 ("libxml2" ,libxml2) ; XXX: required by gladeui-2.0.pc
855 ("python" ,python)
856 ("python-pygobject" ,python-pygobject)))
141aed80
LC
857 (native-inputs
858 `(("pkg-config" ,pkg-config)
93622993 859 ("glib:bin" ,glib "bin")
141aed80
LC
860 ("gobject-introspection" ,gobject-introspection)
861 ("intltool" ,intltool)))
7a8605ce
CR
862 (home-page "https://wiki.gnome.org/Libpeas")
863 (synopsis "GObject plugin system")
864 (description
35b9e423 865 "Libpeas is a gobject-based plugins engine, and is targetted at giving
7a8605ce
CR
866every application the chance to assume its own extensibility. It also has a
867set of features including, but not limited to: multiple extension points; on
868demand (lazy) programming language support for C, Python and JS; simplicity of
e881752c 869the API.")
1dd26275 870 (license license:lgpl2.0+)))
ed19903d
JD
871
872(define-public gtkglext
873 (package
874 (name "gtkglext")
875 (version "1.2.0")
876 (source (origin
877 (method url-fetch)
0f971a04 878 (uri (string-append "mirror://sourceforge/gtkglext/gtkglext/"
ed19903d
JD
879 version "/gtkglext-" version ".tar.gz"))
880 (sha256
881 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
fc1adab1
AK
882 (patches (search-patches
883 "gtkglext-disable-disable-deprecated.patch"))))
ed19903d
JD
884 (build-system gnu-build-system)
885 (inputs `(("gtk+" ,gtk+-2)
886 ("mesa" ,mesa)
cc8b02f4 887 ("glu" ,glu)
ed19903d
JD
888 ("libx11" ,libx11)
889 ("libxt" ,libxt)))
426adbe8
LC
890 (native-inputs `(("pkg-config" ,pkg-config)
891 ("glib" ,glib "bin")))
a83b6a06 892 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 893 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 894 (synopsis "OpenGL extension to GTK+")
35b9e423 895 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
896additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
897API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 898 (license license:lgpl2.1+)))
3600420e
JD
899
900(define-public glade3
901 (package
902 (name "glade")
6983ba56 903 (version "3.20.0")
b38e45d8
EB
904 (source (origin
905 (method url-fetch)
906 (uri (string-append "mirror://gnome/sources/" name "/"
907 (version-major+minor version) "/"
f5ca44b8 908 name "-" version ".tar.xz"))
3600420e 909 (sha256
f714d9fe 910 (base32
6983ba56
SB
911 "1zhqvhagy0m85p54jfiayfl0v9af7g0lj7glw8sfwh7cbp56vnc2"))))
912 (build-system glib-or-gtk-build-system)
f5ca44b8
RW
913 (arguments
914 `(#:tests? #f ; needs X, GL, and software rendering
915 #:phases
916 (modify-phases %standard-phases
917 (add-before 'configure 'fix-docbook
918 (lambda* (#:key inputs #:allow-other-keys)
919 (substitute* "man/Makefile.in"
920 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
921 (string-append (assoc-ref inputs "docbook-xsl")
922 "/xml/xsl/docbook-xsl-"
923 ,(package-version docbook-xsl)
924 "/manpages/docbook.xsl")))
925 #t)))))
3600420e 926 (inputs
f5ca44b8 927 `(("gtk+" ,gtk+)
3600420e
JD
928 ("libxml2" ,libxml2)))
929 (native-inputs
930 `(("intltool" ,intltool)
f5ca44b8
RW
931 ("itstool" ,itstool)
932 ("libxslt" ,libxslt) ;for xsltproc
933 ("docbook-xml" ,docbook-xml-4.2)
934 ("docbook-xsl" ,docbook-xsl)
935 ("python" ,python-2)
3600420e
JD
936 ("pkg-config" ,pkg-config)))
937 (home-page "https://glade.gnome.org")
938 (synopsis "GTK+ rapid application development tool")
939 (description "Glade is a rapid application development (RAD) tool to
940enable quick & easy development of user interfaces for the GTK+ toolkit and
941the GNOME desktop environment.")
1dd26275
LC
942 (license license:lgpl2.0+)))
943
944(define-public libcroco
945 (package
946 (name "libcroco")
6983ba56 947 (version "0.6.11")
1dd26275
LC
948 (source (origin
949 (method url-fetch)
b38e45d8
EB
950 (uri (string-append "mirror://gnome/sources/" name "/"
951 (version-major+minor version) "/"
952 name "-" version ".tar.xz"))
1dd26275
LC
953 (sha256
954 (base32
6983ba56 955 "0mm0wldbi40am5qn0nv7psisbg01k42rwzjxl3gv11l5jj554aqk"))))
1dd26275
LC
956 (build-system gnu-build-system)
957 (native-inputs
958 `(("pkg-config" ,pkg-config)))
959 (inputs
960 `(("glib" ,glib)
961 ("libxml2" ,libxml2)
962 ("zlib" ,zlib)))
963 (home-page "https://github.com/GNOME/libcroco")
964 (synopsis "CSS2 parsing and manipulation library")
965 (description
966 "Libcroco is a standalone CSS2 parsing and manipulation library.
967The parser provides a low level event driven SAC-like API and a CSS object
968model like API. Libcroco provides a CSS2 selection engine and an experimental
969XML/CSS rendering engine.")
970
971 ;; LGPLv2.1-only.
972 (license license:lgpl2.1)))
25178594
LC
973
974(define-public libgsf
975 (package
976 (name "libgsf")
ef51eb99 977 (version "1.14.41")
25178594
LC
978 (source (origin
979 (method url-fetch)
b38e45d8
EB
980 (uri (string-append "mirror://gnome/sources/" name "/"
981 (version-major+minor version) "/"
982 name "-" version ".tar.xz"))
25178594
LC
983 (sha256
984 (base32
ef51eb99 985 "1lq87wnrsjbjafpk3c8xwd56gqx319fhck9xkg2da88hd9c9h2qm"))))
25178594
LC
986 (build-system gnu-build-system)
987 (native-inputs
988 `(("intltool" ,intltool)
989 ("pkg-config" ,pkg-config)))
990 (inputs
991 `(("python" ,python)
992 ("zlib" ,zlib)
993 ("bzip2" ,bzip2)))
994 (propagated-inputs
995 `(("gdk-pixbuf" ,gdk-pixbuf)
996 ("glib" ,glib)
997 ("libxml2" ,libxml2)))
998 (home-page "http://www.gnome.org/projects/libgsf")
999 (synopsis "GNOME's Structured File Library")
1000 (description
1001 "Libgsf aims to provide an efficient extensible I/O abstraction for
1002dealing with different structured file formats.")
1003
1004 ;; LGPLv2.1-only.
1005 (license license:lgpl2.1)))
63016e7c
LC
1006
1007(define-public librsvg
1008 (package
1009 (name "librsvg")
27880b5e 1010 (version "2.40.16")
63016e7c
LC
1011 (source (origin
1012 (method url-fetch)
b38e45d8
EB
1013 (uri (string-append "mirror://gnome/sources/" name "/"
1014 (version-major+minor version) "/"
1015 name "-" version ".tar.xz"))
63016e7c
LC
1016 (sha256
1017 (base32
27880b5e 1018 "0bpz6gsq8xi1pb5k9ax6vinph460v14znch3y5yz167s0dmwz2yl"))))
63016e7c
LC
1019 (build-system gnu-build-system)
1020 (arguments
ce2df078 1021 `(#:phases
63016e7c 1022 (alist-cons-before
f3045a5b 1023 'configure 'pre-configure
63016e7c 1024 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
1025 (substitute* "gdk-pixbuf-loader/Makefile.in"
1026 ;; By default the gdk-pixbuf loader is installed under
1027 ;; gdk-pixbuf's prefix. Work around that.
1028 (("gdk_pixbuf_moduledir = .*$")
1029 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 1030 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c 1031 "loaders\n"))
f3045a5b 1032 ;; Drop the 'loaders.cache' file, it's in gdk-pixbuf+svg.
63016e7c 1033 (("gdk_pixbuf_cache_file = .*$")
f3045a5b
SB
1034 "gdk_pixbuf_cache_file = $(TMPDIR)/loaders.cache\n")))
1035 %standard-phases)))
63016e7c
LC
1036 (native-inputs
1037 `(("pkg-config" ,pkg-config)
44add1ce 1038 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
1039 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
1040 (inputs
1041 `(("pango" ,pango)
1042 ("libcroco" ,libcroco)
1043 ("bzip2" ,bzip2)
1044 ("libgsf" ,libgsf)
1045 ("libxml2" ,libxml2)))
1046 (propagated-inputs
1047 ;; librsvg-2.0.pc refers to all of that.
1048 `(("cairo" ,cairo)
1049 ("gdk-pixbuf" ,gdk-pixbuf)
1050 ("glib" ,glib)))
1051 (home-page "https://wiki.gnome.org/LibRsvg")
1052 (synopsis "Render SVG files using Cairo")
1053 (description
35b9e423 1054 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
1055library.")
1056 (license license:lgpl2.0+)))
5698b8b8
JD
1057
1058(define-public libidl
1059 (package
1060 (name "libidl")
1061 (version "0.8.14")
1062 (source (origin
1063 (method url-fetch)
1064 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
1065 (string-append "mirror://gnome/sources/" upstream-name "/"
1066 (version-major+minor version) "/"
1067 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1068 (sha256
1069 (base32
1070 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
1071 (build-system gnu-build-system)
1072 (inputs `(("glib" ,glib)))
1073 (native-inputs
1074 `(("pkg-config" ,pkg-config)
b3546174 1075 ("flex" ,flex)
5698b8b8
JD
1076 ("bison" ,bison)))
1077 (home-page "http://freecode.com/projects/libidl")
1078 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 1079 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
1080Definition Language (idl) files, which is a specification for defining
1081portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 1082GNOME project, and the primary means of libidl distribution). However, the
2e6ecc5c 1083functionality was designed to be as reusable and portable as possible.")
5698b8b8
JD
1084 (license license:lgpl2.0+)))
1085
1086
1087(define-public orbit2
1088 (package
1089 (name "orbit2")
1090 (version "2.14.19")
1091 (source (origin
1092 (method url-fetch)
2e6ecc5c 1093 (uri (let ((upstream-name "ORBit2"))
a124bbd2 1094 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1095 (version-major+minor version) "/"
1096 upstream-name "-" version ".tar.bz2")))
5698b8b8 1097 (sha256
a124bbd2
SB
1098 (base32
1099 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
5698b8b8
JD
1100 (build-system gnu-build-system)
1101 (arguments
a124bbd2
SB
1102 `(#:configure-flags
1103 ;; The programmer kindly gives us a hook to turn off deprecation
1104 ;; warnings ...
1105 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1106 ;; ... which they then completly ignore !!
1107 #:phases
1108 (alist-cons-before
1109 'configure 'ignore-deprecations
1110 (lambda _
1111 (substitute* "linc2/src/Makefile.in"
1112 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1113 %standard-phases)))
5698b8b8
JD
1114 (inputs `(("glib" ,glib)
1115 ("libidl" ,libidl)))
1116 (native-inputs
1117 `(("pkg-config" ,pkg-config)))
1118 (home-page "https://projects.gnome.org/orbit2/")
1119 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 1120 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
2e6ecc5c 1121featuring mature C, C++ and Python bindings.")
a124bbd2
SB
1122 ;; Licence notice is unclear. The Web page simply say "GPL" without giving
1123 ;; a version. SOME of the code files have licence notices for GPLv2+.
1124 ;; The tarball contains files of the text of GPLv2 and LGPLv2.
2e6ecc5c 1125 (license license:gpl2+)))
5698b8b8
JD
1126
1127
1128(define-public libbonobo
1129 (package
1130 (name "libbonobo")
1131 (version "2.32.1")
1132 (source (origin
1133 (method url-fetch)
5becd025 1134 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 1135 (version-major+minor version)
5becd025 1136 "/" name "-" version ".tar.bz2"))
5698b8b8 1137 (sha256
f1fc45a9 1138 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
fc1adab1
AK
1139 (patches (search-patches
1140 "libbonobo-activation-test-race.patch"))))
5698b8b8
JD
1141 (build-system gnu-build-system)
1142 (arguments
1143 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
1144 `(#:configure-flags
1145 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1146 ;; ... which they then completly ignore !!
1147 #:phases
1148 (alist-cons-before
1149 'configure 'ignore-deprecations
1150 (lambda _
1151 (substitute* "activation-server/Makefile.in"
1152 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1153 %standard-phases)))
5698b8b8
JD
1154 (inputs `(("popt" ,popt)
1155 ("libxml2" ,libxml2)))
1156 ;; The following are Required by the .pc file
44add1ce 1157 (propagated-inputs
5698b8b8
JD
1158 `(("glib" ,glib)
1159 ("orbit2" ,orbit2)))
1160 (native-inputs
1161 `(("intltool" ,intltool)
1162 ("pkg-config" ,pkg-config)
221ed17a 1163 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1164 ("flex" ,flex)
1165 ("bison" ,bison)))
1166 (home-page "https://developer.gnome.org/libbonobo/")
1167 (synopsis "Framework for creating reusable components for use in GNOME applications")
1168 (description "Bonobo is a framework for creating reusable components for
2e6ecc5c 1169use in GNOME applications, built on top of CORBA.")
5698b8b8
JD
1170 ;; Licence not explicitly stated. Source files contain no licence notices.
1171 ;; Tarball contains text of both GPLv2 and LGPLv2
1172 ;; GPLv2 covers both conditions
1173 (license license:gpl2+)))
1174
1175
1176(define-public gconf
1177 (package
1178 (name "gconf")
1179 (version "3.2.6")
1180 (source (origin
1181 (method url-fetch)
a124bbd2
SB
1182 (uri
1183 (let ((upstream-name "GConf"))
1184 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1185 (version-major+minor version) "/"
1186 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
1187 (sha256
1188 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
1189 (build-system gnu-build-system)
2e88d113 1190 (inputs `(("dbus-glib" ,dbus-glib)
5698b8b8 1191 ("libxml2" ,libxml2)))
2e6ecc5c
AE
1192 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
1193 ("orbit2" ,orbit2)))
5698b8b8
JD
1194 (native-inputs
1195 `(("intltool" ,intltool)
221ed17a 1196 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1197 ("pkg-config" ,pkg-config)))
1198 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
1199 (synopsis "Store application preferences")
1200 (description "Gconf is a system for storing application preferences. It
1201is intended for user preferences; not arbitrary data storage.")
29d2f451
LC
1202 (license license:lgpl2.0+)
1203 (properties '((upstream-name . "GConf")))))
5698b8b8
JD
1204
1205
1206(define-public gnome-mime-data
1207 (package
1208 (name "gnome-mime-data")
1209 (version "2.18.0")
1210 (source (origin
1211 (method url-fetch)
b38e45d8
EB
1212 (uri (string-append "mirror://gnome/sources/" name "/"
1213 (version-major+minor version) "/"
1214 name "-" version ".tar.bz2"))
5698b8b8
JD
1215 (sha256
1216 (base32
1217 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
1218 (build-system gnu-build-system)
1219 (native-inputs
1220 `(("perl" ,perl)
1221 ("intltool" ,intltool)))
1222 (home-page "http://www.gnome.org")
35b9e423 1223 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
1224 (description "GNOME Mime Data is a module which contains the base MIME
1225and Application database for GNOME. The data stored by this module is
1226designed to be accessed through the MIME functions in GnomeVFS.")
1227 (license license:gpl2+)))
1228
1229
1230(define-public gnome-vfs
1231 (package
1232 (name "gnome-vfs")
1233 (version "2.24.4")
1234 (source (origin
1235 (method url-fetch)
b38e45d8
EB
1236 (uri (string-append "mirror://gnome/sources/" name "/"
1237 (version-major+minor version) "/"
1238 name "-" version ".tar.bz2"))
5698b8b8 1239 (sha256
9e12bc34
MW
1240 (base32
1241 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
5698b8b8
JD
1242 (build-system gnu-build-system)
1243 (arguments
db5127d8 1244 `(#:phases
9e12bc34
MW
1245 (alist-cons-before
1246 'configure 'ignore-deprecations
1247 (lambda _
1248 (substitute* '("libgnomevfs/Makefile.in"
1249 "daemon/Makefile.in")
1250 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1251 #t)
db5127d8
MW
1252 (alist-cons-before
1253 'configure 'patch-test-async-cancel-to-never-fail
1254 (lambda _
1255 (substitute* "test/test-async-cancel.c"
1256 (("EXIT_FAILURE") "77")))
1257 %standard-phases))))
2e6ecc5c 1258 (inputs `(("libxml2" ,libxml2)
5698b8b8 1259 ("dbus-glib" ,dbus-glib)
5698b8b8
JD
1260 ("gconf" ,gconf)
1261 ("gnome-mime-data" ,gnome-mime-data)
1262 ("zlib" ,zlib)))
1263 (native-inputs
221ed17a
EB
1264 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1265 ("intltool" ,intltool)
5698b8b8
JD
1266 ("pkg-config" ,pkg-config)))
1267 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 1268 (synopsis "Access files and folders in GNOME applications")
9e12bc34
MW
1269 (description
1270 "GnomeVFS is the core library used to access files and folders in GNOME
1271applications. It provides a file system abstraction which allows applications
1272to access local and remote files with a single consistent API.")
5698b8b8
JD
1273 (license license:lgpl2.0+)))
1274
1275
1276
1277(define-public libgnome
1278 (package
1279 (name "libgnome")
1280 (version "2.32.1")
1281 (source (origin
1282 (method url-fetch)
b38e45d8
EB
1283 (uri (string-append "mirror://gnome/sources/" name "/"
1284 (version-major+minor version) "/"
1285 name "-" version ".tar.bz2"))
5698b8b8
JD
1286 (sha256
1287 (base32
1288 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1289 (build-system gnu-build-system)
1290 (arguments
1291 `(#:phases
1292 (alist-cons-before
1293 'configure 'enable-deprecated
2e6ecc5c 1294 (lambda _
5698b8b8
JD
1295 (substitute* "libgnome/Makefile.in"
1296 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1297 %standard-phases)))
25338e9f 1298 (inputs `(("libxml2" ,libxml2)))
5698b8b8 1299 (native-inputs
221ed17a
EB
1300 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1301 ("intltool" ,intltool)
5698b8b8
JD
1302 ("pkg-config" ,pkg-config)))
1303 ;; The following are listed as Required in the .pc file
1304 ;; (except for libcanberra -- which seems to be oversight on the part
1305 ;; of the upstream developers -- anything that links against libgnome,
1306 ;; must also link against libcanberra
1307 (propagated-inputs
1308 `(("libcanberra" ,libcanberra)
1309 ("libbonobo" ,libbonobo)
1310 ("gconf" ,gconf)
a640d3d5
LC
1311 ("gnome-vfs" ,gnome-vfs)
1312 ("popt" ,popt))) ;gnome-program.h includes popt.h
5698b8b8
JD
1313 (home-page "https://developer.gnome.org/libgnome/")
1314 (synopsis "Useful routines for building applications")
1315 (description "The libgnome library provides a number of useful routines
1316for building modern applications, including session management, activation of
1317files and URIs, and displaying help.")
1318 (license license:lgpl2.0+)))
1319
1320
1321(define-public libart-lgpl
1322 (package
1323 (name "libart-lgpl")
76c9b6aa 1324 (version "2.3.21")
5698b8b8
JD
1325 (source (origin
1326 (method url-fetch)
1327 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
1328 (string-append "mirror://gnome/sources/" upstream-name "/"
1329 (version-major+minor version) "/"
1330 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1331 (sha256
1332 (base32
76c9b6aa 1333 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
1334 (build-system gnu-build-system)
1335 (native-inputs
1336 `(("pkg-config" ,pkg-config)))
1337 (home-page "https://people.gnome.org/~mathieu/libart")
1338 (synopsis "2D drawing library")
2e6ecc5c 1339 (description "Libart is a 2D drawing library intended as a
5698b8b8
JD
1340high-quality vector-based 2D library with antialiasing and alpha composition.")
1341 (license license:lgpl2.0+)))
1342
1343
1344
1345(define-public libgnomecanvas
1346 (package
1347 (name "libgnomecanvas")
1348 (version "2.30.3")
1349 (source (origin
1350 (method url-fetch)
b38e45d8
EB
1351 (uri (string-append "mirror://gnome/sources/" name "/"
1352 (version-major+minor version) "/"
1353 name "-" version ".tar.gz"))
5698b8b8
JD
1354 (sha256
1355 (base32
1356 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1357 (build-system gnu-build-system)
1358 ;; Mentioned as Required in the .pc file
1359 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1360 ("gtk+" ,gtk+-2)))
1361 (native-inputs
1362 `(("intltool" ,intltool)
221ed17a 1363 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1364 ("pkg-config" ,pkg-config)))
1365 (home-page "https://developer.gnome.org/libgnomecanvas/")
1366 (synopsis "Flexible widget for creating interactive structured graphics")
1367 (description "The GnomeCanvas widget provides a flexible widget for
1368creating interactive structured graphics.")
1369 (license license:lgpl2.0+)))
1370
eadc734e
RW
1371(define-public libgnomecanvasmm
1372 (package
1373 (name "libgnomecanvasmm")
1374 (version "2.26.0")
1375 (source (origin
1376 (method url-fetch)
1377 (uri (string-append "mirror://gnome/sources/" name "/"
1378 (version-major+minor version) "/"
1379 name "-" version ".tar.bz2"))
1380 (sha256
1381 (base32
1382 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1383 (build-system gnu-build-system)
6e4512c4
SB
1384 (arguments
1385 '(#:configure-flags '("CXXFLAGS=-std=c++11"))) ; required by gtkmm
eadc734e
RW
1386 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1387 (native-inputs
1388 `(("gtkmm-2" ,gtkmm-2)
1389 ("pkg-config" ,pkg-config)))
1390 (home-page "http://gtkmm.org")
1391 (synopsis "C++ bindings to the GNOME Canvas library")
1392 (description "C++ bindings to the GNOME Canvas library.")
1393 (license license:lgpl2.0+)))
1394
5698b8b8
JD
1395(define-public libgnomeui
1396 (package
1397 (name "libgnomeui")
1398 (version "2.24.5")
1399 (source (origin
1400 (method url-fetch)
b38e45d8
EB
1401 (uri (string-append "mirror://gnome/sources/" name "/"
1402 (version-major+minor version) "/"
1403 name "-" version ".tar.bz2"))
5698b8b8
JD
1404 (sha256
1405 (base32
1406 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1407 (build-system gnu-build-system)
1408 ;; Mentioned as Required in the .pc file
0a38a497
AE
1409 (propagated-inputs `(("libbonoboui" ,libbonoboui)
1410 ("libgnome" ,libgnome)
1411 ("libgnomecanvas" ,libgnomecanvas)
5698b8b8 1412 ("libgnome-keyring" ,libgnome-keyring)))
0a38a497 1413 (inputs `(("libjpeg" ,libjpeg)
5698b8b8
JD
1414 ("popt" ,popt)
1415 ("libbonobo" ,libbonobo)
1416 ("libxml2" ,libxml2)
1417 ("libglade" ,libglade)))
1418 (native-inputs
221ed17a
EB
1419 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1420 ("intltool" ,intltool)
5698b8b8
JD
1421 ("pkg-config" ,pkg-config)))
1422 (home-page "https://developer.gnome.org/libgnomeui/")
1423 (synopsis "Additional widgets for applications")
35b9e423 1424 (description "The libgnomeui library provides additional widgets for
e881752c
AK
1425applications. Many of the widgets from libgnomeui have already been
1426ported to GTK+.")
5698b8b8
JD
1427 (license license:lgpl2.0+)))
1428
1429(define-public libglade
1430 (package
1431 (name "libglade")
1432 (version "2.6.4")
1433 (source (origin
1434 (method url-fetch)
b38e45d8
EB
1435 (uri (string-append "mirror://gnome/sources/" name "/"
1436 (version-major+minor version) "/"
1437 name "-" version ".tar.bz2"))
5698b8b8
JD
1438 (sha256
1439 (base32
1440 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1441 (build-system gnu-build-system)
1442 (inputs
92dcc23d
AE
1443 `(("python" ,python))) ;; needed for the optional libglade-convert program
1444 (propagated-inputs
5698b8b8 1445 `(("gtk+-2" ,gtk+-2)
92dcc23d 1446 ("libxml2" ,libxml2))) ; required by libglade-2.0.pc
5698b8b8
JD
1447 (native-inputs
1448 `(("pkg-config" ,pkg-config)))
1449 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1450 (synopsis "Load glade interfaces and access the glade built widgets")
1451 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1452graphical interfaces described in glade files and for accessing the
1453widgets built in the loading process.")
1454 (license license:gpl2+))) ; This is correct. GPL not LGPL
1455
1456(define-public libgnomeprint
eb497b66
LC
1457 ;; This library has been deprecated since 2006; see
1458 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1459 (package
1460 (name "libgnomeprint")
1461 (version "2.8.2")
1462 (source (origin
1463 (method url-fetch)
b38e45d8
EB
1464 (uri (string-append "mirror://gnome/sources/" name "/"
1465 (version-major+minor version) "/"
1466 name "-" version ".tar.bz2"))
5698b8b8
JD
1467 (sha256
1468 (base32
6983ba56 1469 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))))
5698b8b8
JD
1470 (build-system gnu-build-system)
1471 (inputs
1472 `(("popt" ,popt)
1473 ("libart-lgpl" ,libart-lgpl)
1474 ("gtk+" ,gtk+-2)
44add1ce 1475 ("libxml2" ,libxml2)))
5698b8b8
JD
1476 (native-inputs
1477 `(("intltool" ,intltool)
221ed17a 1478 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1479 ("pkg-config" ,pkg-config)))
1480 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1481 (synopsis "Printing framework for GNOME")
eb497b66
LC
1482 (description
1483 "GNOME-print was a printing framework for GNOME. It has been deprecated
1484since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1485 (license license:lgpl2.0+)))
1486
1487
1488(define-public libgnomeprintui
eb497b66 1489 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1490 (package
1491 (name "libgnomeprintui")
1492 (version "2.8.2")
1493 (source (origin
1494 (method url-fetch)
b38e45d8
EB
1495 (uri (string-append "mirror://gnome/sources/" name "/"
1496 (version-major+minor version) "/"
1497 name "-" version ".tar.bz2"))
5698b8b8
JD
1498 (sha256
1499 (base32
1500 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1501 (build-system gnu-build-system)
1502 ;; Mentioned as Required in the .pc file
1503 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1504 (inputs `(("gtk+" ,gtk+-2)
1505 ("glib" ,glib)
1506 ("gnome-icon-theme" ,gnome-icon-theme)
1507 ("libgnomecanvas" ,libgnomecanvas)
2e6ecc5c 1508 ("libxml2" ,libxml2)))
5698b8b8
JD
1509 (native-inputs
1510 `(("intltool" ,intltool)
1511 ("pkg-config" ,pkg-config)))
1512 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1513 (synopsis "Printing framework for GNOME")
eb497b66 1514 (description (package-description libgnomeprint))
5698b8b8
JD
1515 (license license:lgpl2.0+)))
1516
5698b8b8
JD
1517(define-public libbonoboui
1518 (package
1519 (name "libbonoboui")
1520 (version "2.24.5")
1521 (source (origin
1522 (method url-fetch)
b38e45d8
EB
1523 (uri (string-append "mirror://gnome/sources/" name "/"
1524 (version-major+minor version) "/"
1525 name "-" version ".tar.bz2"))
5698b8b8
JD
1526 (sha256
1527 (base32
1528 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1529 (build-system gnu-build-system)
1530 (arguments
1531 `(#:phases
1532 (alist-cons-before
1533 'check 'start-xserver
1534 (lambda* (#:key inputs #:allow-other-keys)
1535 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1536 (disp ":1"))
2e6ecc5c 1537
5698b8b8
JD
1538 (setenv "HOME" (getcwd))
1539 (setenv "DISPLAY" disp)
1540 ;; There must be a running X server and make check doesn't start one.
1541 ;; Therefore we must do it.
1542 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1543 %standard-phases)))
1544 ;; Mentioned as Required by the .pc file
1545 (propagated-inputs `(("libxml2" ,libxml2)))
1546 (inputs
1547 `(("popt" ,popt)
1548 ("pangox-compat" ,pangox-compat)
1549 ("libgnome" ,libgnome)
1550 ("libgnomecanvas" ,libgnomecanvas)
1551 ("libglade" ,libglade)))
1552 (native-inputs
221ed17a
EB
1553 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1554 ("intltool" ,intltool)
5698b8b8
JD
1555 ("xorg-server" ,xorg-server) ; For running the tests
1556 ("pkg-config" ,pkg-config)))
1557 (home-page "https://developer.gnome.org/libbonoboui/")
1558 (synopsis "Some user interface controls using Bonobo")
1559 (description "The Bonobo UI library provides a number of user interface
1560controls using the Bonobo component framework.")
1561 (license license:lgpl2.0+)))
1562
fecbf86e
SB
1563(define-public libwnck
1564 (package
1565 (name "libwnck")
cf047019 1566 (version "3.20.1")
fecbf86e
SB
1567 (source (origin
1568 (method url-fetch)
1569 (uri (string-append "mirror://gnome/sources/" name "/"
1570 (version-major+minor version) "/"
1571 name "-" version ".tar.xz"))
1572 (sha256
cf047019 1573 (base32 "0wms3hli6y0b9l3cszq6maqi6fyy6kss9gryvzgmhw27phb3gc0w"))))
fecbf86e
SB
1574 (build-system gnu-build-system)
1575 (native-inputs
1576 `(("pkg-config" ,pkg-config)
1577 ("intltool" ,intltool)))
1578 (propagated-inputs
427476d5
SB
1579 `(("gtk+" ,gtk+)
1580 ("libxres" ,libxres)
1581 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1582 (home-page "https://developer.gnome.org/libwnck/")
1583 (synopsis "Window Navigator Construction Kit")
1584 (description
1585 "Libwnck is the Window Navigator Construction Kit, a library for use in
1586writing pagers, tasklists, and more generally applications that are dealing
1587with window management. It tries hard to respect the Extended Window Manager
1588Hints specification (EWMH).")
1589 (license license:lgpl2.0+)))
1590
1591;; stable version for gtk2, required by xfwm4.
dbb7a081 1592(define-public libwnck-2
fecbf86e
SB
1593 (package (inherit libwnck)
1594 (name "libwnck")
1595 (version "2.30.7")
1596 (source (origin
1597 (method url-fetch)
1598 (uri (string-append "mirror://gnome/sources/" name "/"
1599 (version-major+minor version) "/"
1600 name "-" version ".tar.xz"))
1601 (sha256
1602 (base32
1603 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1604 (propagated-inputs
427476d5
SB
1605 `(("gtk+" ,gtk+-2)
1606 ("libxres" ,libxres)
1607 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1608
1609(define-public goffice
1610 (package
1611 (name "goffice")
8e320dea 1612 (version "0.10.34")
b804c61e
JD
1613 (source (origin
1614 (method url-fetch)
b38e45d8
EB
1615 (uri (string-append "mirror://gnome/sources/" name "/"
1616 (version-major+minor version) "/"
1617 name "-" version ".tar.xz"))
b804c61e 1618 (sha256
8e320dea 1619 (base32 "00yn5ly1x50ynrwgl783pwnjy4k2ckp8n54mfnqv6qsq5fi7ajjm"))))
b804c61e 1620 (build-system gnu-build-system)
72a06d3e
LC
1621 (outputs '("out"
1622 "doc")) ;4.1 MiB of gtk-doc
1623 (arguments
1624 '(#:configure-flags (list (string-append "--with-html-dir="
1625 (assoc-ref %outputs "doc")
1626 "/share/gtk-doc/html"))))
b804c61e
JD
1627 (inputs
1628 `(("gtk+" ,gtk+)
1629 ("libgsf" ,libgsf)
1630 ("librsvg" ,librsvg)
1631 ("libxslt" ,libxslt)
1632 ("libxml2" ,libxml2)))
1633 (native-inputs
1634 `(("intltool" ,intltool)
f280cdb1 1635 ("glib" ,glib "bin")
b804c61e
JD
1636 ("pkg-config" ,pkg-config)))
1637 (home-page "https://developer.gnome.org/goffice/")
1638 (synopsis "Document-centric objects and utilities")
1639 (description "A GLib/GTK+ set of document-centric objects and utilities.")
2e6ecc5c 1640 (license
b804c61e
JD
1641 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1642 ;; Note: NOT LGPL
1643 (list license:gpl2 license:gpl3))))
1644
c024ae36
RW
1645(define-public goffice-0.8
1646 (package (inherit goffice)
1647 (version "0.8.17")
1648 (source (origin
1649 (method url-fetch)
1650 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1651 (version-major+minor version) "/"
1652 (package-name goffice) "-" version ".tar.xz"))
1653 (sha256
1654 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1655 (arguments
1656 `(#:phases
1657 (alist-cons-after
1658 'unpack 'fix-pcre-check
1659 (lambda _
1660 ;; Only glib.h can be included directly. See
1661 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1662 (substitute* "configure"
1663 (("glib/gregex\\.h") "glib.h")) #t)
72a06d3e
LC
1664 %standard-phases)
1665
1666 ,@(package-arguments goffice)))
c024ae36
RW
1667 (propagated-inputs
1668 ;; libgoffice-0.8.pc mentions libgsf-1
1669 `(("libgsf" ,libgsf)))
1670 (inputs
1671 `(("gtk" ,gtk+-2)
1672 ,@(alist-delete "gtk" (package-inputs goffice))))))
1673
b804c61e
JD
1674(define-public gnumeric
1675 (package
1676 (name "gnumeric")
24c91e2f 1677 (version "1.12.32")
b804c61e
JD
1678 (source (origin
1679 (method url-fetch)
b38e45d8
EB
1680 (uri (string-append "mirror://gnome/sources/" name "/"
1681 (version-major+minor version) "/"
1682 name "-" version ".tar.xz"))
b804c61e
JD
1683 (sha256
1684 (base32
24c91e2f 1685 "1s3dxvdwzmppsp2dfg90rccilf4hknhwjdy7lazr9sys58zchyx0"))))
bd1b1e05 1686 (build-system glib-or-gtk-build-system)
b804c61e
JD
1687 (arguments
1688 `(;; The gnumeric developers don't worry much about failing tests.
1689 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
2e6ecc5c 1690 #:tests? #f
b804c61e 1691 #:phases
7bcbd40d
EF
1692 (modify-phases %standard-phases
1693 (add-before
1694 'configure 'pre-conf
1695 (lambda* (#:key outputs #:allow-other-keys)
1696 ;; Make install tries to write into the directory of goffice
1697 ;; I am informed that this only affects the possibility to embed a
1698 ;; spreadsheet inside an Abiword document. So presumably when we
1699 ;; package Abiword we'll have to refer it to this directory.
1700 (substitute* "configure"
1701 (("^GOFFICE_PLUGINS_DIR=.*")
1702 (string-append "GOFFICE_PLUGINS_DIR="
1703 (assoc-ref outputs "out")
1704 "/goffice/plugins"))))))))
b804c61e
JD
1705 (inputs
1706 `(("glib" ,glib)
1707 ("gtk+" ,gtk+)
1708 ("goffice" ,goffice)
1709 ("libgsf" ,libgsf)
7bcbd40d 1710 ("librsvg" ,librsvg)
b804c61e 1711 ("libxml2" ,libxml2)
7bcbd40d 1712 ("libxslt" ,libxslt)
2e4c5457 1713 ("python" ,python-2)
6983ba56 1714 ("python2-pygobject" ,python2-pygobject)
b804c61e
JD
1715 ("zlib" ,zlib)))
1716 (native-inputs
6983ba56
SB
1717 `(("bison" ,bison)
1718 ("intltool" ,intltool)
b9663471 1719 ("glib:bin" ,glib "bin")
b804c61e
JD
1720 ("pkg-config" ,pkg-config)))
1721 (home-page "http://www.gnumeric.org")
66672a45
LC
1722 (synopsis "Spreadsheet application")
1723 (description
1724 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1725interoperable with other spreadsheet applications. It has a vast array of
1726features beyond typical spreadsheet functionality, such as support for linear
1727and non-linear solvers, statistical analysis, and telecommunication
1728engineering.")
1729 (license
b804c61e
JD
1730 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1731 (list license:gpl2 license:gpl3))))
6f885c05
FB
1732
1733(define-public gnome-themes-standard
1734 (package
1735 (name "gnome-themes-standard")
41d54c15 1736 (version "3.22.2")
6f885c05
FB
1737 (source
1738 (origin
1739 (method url-fetch)
2e6ecc5c 1740 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1741 (version-major+minor version) "/" name "-"
1742 version ".tar.xz"))
1743 (sha256
1744 (base32
41d54c15 1745 "19bxw69ms46px5xgvwbjlhq2vkmrqfx2az49q63w2wxqb76icidk"))))
6f885c05 1746 (build-system gnu-build-system)
8ac70c7f
SB
1747 (arguments
1748 '(#:configure-flags
1749 ;; Don't create 'icon-theme.cache'.
1750 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
1751 (true (string-append coreutils "/bin/true")))
1752 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
6f885c05
FB
1753 (inputs
1754 `(("gtk+" ,gtk+)
1755 ("gtk+-2" ,gtk+-2)
1756 ("librsvg" ,librsvg)
1757 ("libxml2" ,libxml2)
1758 ("glib" ,glib)))
1759 (native-inputs
1760 `(("intltool" ,intltool)
1761 ("glib:bin" ,glib "bin")
1762 ("pkg-config" ,pkg-config)))
6f885c05
FB
1763 (home-page "https://launchpad.net/gnome-themes-standard")
1764 (synopsis "Default GNOME 3 themes")
1765 (description
1766 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1767 (license license:lgpl2.1+)))
5a659a48 1768
df90c701
RW
1769(define-public seahorse
1770 (package
1771 (name "seahorse")
6983ba56 1772 (version "3.20.0")
df90c701
RW
1773 (source
1774 (origin
1775 (method url-fetch)
1776 (uri (string-append "mirror://gnome/sources/" name "/"
1777 (version-major+minor version) "/" name "-"
1778 version ".tar.xz"))
1779 (sha256
1780 (base32
6983ba56 1781 "1py6fj19kb8aaxvg6yrpd0876azc2zjvis98aqz37a2lxmhp9c72"))))
df90c701
RW
1782 (build-system glib-or-gtk-build-system)
1783 (inputs
1784 `(("gtk+" ,gtk+)
1785 ("gcr" ,gcr)
34b979b9 1786 ("gnupg" ,gnupg)
df90c701 1787 ("gpgme" ,gpgme)
34b979b9 1788 ("openldap" ,openldap)
4a1bf090 1789 ("openssh" ,openssh)
34b979b9
EF
1790 ("libsecret" ,libsecret)
1791 ("libsoup" ,libsoup)))
df90c701
RW
1792 (native-inputs
1793 `(("intltool" ,intltool)
1794 ("glib:bin" ,glib "bin")
1795 ("itstool" ,itstool)
bcb354ad
SB
1796 ("pkg-config" ,pkg-config)
1797 ("xmllint" ,libxml2)))
df90c701
RW
1798 (home-page "https://launchpad.net/gnome-themes-standard")
1799 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1800 (description
1801 "Seahorse is a GNOME application for managing encryption keys and
1802passwords in the GNOME keyring.")
1803 (license license:gpl2+)))
1804
5a659a48
SB
1805(define-public vala
1806 (package
1807 (name "vala")
40a62e60 1808 (version "0.34.4")
5a659a48
SB
1809 (source (origin
1810 (method url-fetch)
1811 (uri (string-append "mirror://gnome/sources/" name "/"
1812 (version-major+minor version) "/"
1813 name "-" version ".tar.xz"))
1814 (sha256
1815 (base32
40a62e60 1816 "10vbd74jazc3vhfagzx8v197bshrg61hnjzna6y3wmhljhrvs5vb"))))
5a659a48 1817 (build-system gnu-build-system)
1ea90625
SB
1818 (arguments
1819 '(#:phases
1820 (modify-phases %standard-phases
f4925a4f 1821 (add-before 'check 'pre-check
1ea90625
SB
1822 (lambda _
1823 (setenv "CC" "gcc")
f4925a4f
SB
1824 ;; For missing '/etc/machine-id'.
1825 (setenv "DBUS_FATAL_WARNINGS" "0")
0a387b14
LF
1826 #t)))
1827 ;; Build the Vala API generator
1828 #:configure-flags '("--enable-vapigen")))
5a659a48
SB
1829 (native-inputs
1830 `(("pkg-config" ,pkg-config)
1831 ("flex" ,flex)
1832 ("bison" ,bison)
1833 ("xsltproc" ,libxslt)
1834 ("dbus" ,dbus) ; for dbus tests
1835 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1836 (propagated-inputs
1837 `(("glib" ,glib))) ; required by libvala-0.26.pc
1838 (home-page "http://live.gnome.org/Vala/")
1839 (synopsis "Compiler for the GObject type system")
1840 (description
1841 "Vala is a programming language that aims to bring modern programming
1842language features to GNOME developers without imposing any additional runtime
1843requirements and without using a different ABI compared to applications and
1844libraries written in C.")
1845 (license license:lgpl2.1+)))
ea57378f
SB
1846
1847(define-public vte
1848 (package
1849 (name "vte")
de1215e2 1850 (version "0.46.1")
ea57378f
SB
1851 (source (origin
1852 (method url-fetch)
1853 (uri (string-append "mirror://gnome/sources/" name "/"
1854 (version-major+minor version) "/"
1855 name "-" version ".tar.xz"))
1856 (sha256
1857 (base32
de1215e2 1858 "1ipmnfazvhzjp5pjw90mmxbkizivnh7gnlqqml94lw2rqa5wy048"))))
ea57378f 1859 (build-system gnu-build-system)
6983ba56
SB
1860 (arguments
1861 ;; XXX: fails to compile tests with the default flags.
1862 ;; vteconv.cc:774:40:
1863 ;; error: missing sentinel in function call [-Werror=format=]
1864 ;; g_test_init (&argc, &argv, NULL);
1865 ;;
1866 ;; cc1plus: some warnings being treated as errors
1867 '(#:configure-flags '("CXXFLAGS=-Wformat=0")))
ea57378f
SB
1868 (native-inputs
1869 `(("pkg-config" ,pkg-config)
1870 ("intltool" ,intltool)
1871 ("vala" ,vala)
1872 ("gobject-introspection" ,gobject-introspection)
1873 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1874 ("xmllint" ,libxml2)))
1875 (propagated-inputs
302393bc 1876 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
de1215e2
MW
1877 ("gnutls" ,gnutls) ;ditto
1878 ("pcre2" ,pcre2))) ;ditto
ea57378f
SB
1879 (home-page "http://www.gnome.org/")
1880 (synopsis "Virtual Terminal Emulator")
1881 (description
1882 "VTE is a library (libvte) implementing a terminal emulator widget for
1883GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1884gnome-terminal, but can also be used to embed a console/terminal in games,
1885editors, IDEs, etc.")
1886 (license license:lgpl2.1+)))
1887
c44fb4df
MO
1888(define-public vte-ng
1889 (package
1890 (inherit vte)
1891 (name "vte-ng")
890795c7 1892 (version "0.46.1.a")
c44fb4df
MO
1893 (native-inputs
1894 `(("gtk-doc" ,gtk-doc)
14d0db40 1895 ("gperf" ,gperf-3.0)
c44fb4df
MO
1896 ("autoconf" ,autoconf)
1897 ("automake" ,automake)
1898 ("libtool" ,libtool)
1899 ,@(package-native-inputs vte)))
1900 (source (origin
1901 (method url-fetch)
1902 (uri (string-append "https://github.com/thestinger/"
1903 name "/archive/" version ".tar.gz"))
1904 (file-name (string-append name "-" version ".tar.gz"))
1905 (sha256
1906 (base32
890795c7 1907 "1c0czhsn28b5h4pk3kx89jjbdc5d2qkxhl4ywqvxfivphf2nicbp"))))
c44fb4df
MO
1908 (arguments
1909 `(#:configure-flags '("CXXFLAGS=-Wformat=0")
1910 #:phases (modify-phases %standard-phases
1911 (add-after 'unpack 'bootstrap
1912 (lambda _
1913 (setenv "NOCONFIGURE" "true")
1914 (zero? (system* "sh" "autogen.sh")))))))
1915 (synopsis "Enhanced VTE terminal widget")
1916 (description
1917 "VTE is a library (libvte) implementing a terminal emulator widget for
1918GTK+, this fork provides additional functions exposed for keyboard text
1919selection and URL hints.")))
1920
2776d72c
EF
1921;; provides vte 2.90, required for some terminal emulators
1922;; tilda bug: https://github.com/lanoxx/tilda/issues/94
1923;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
1924;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
1925;; pantheon-terminal, roxterm are not currently packaged
1926(define-public vte-0.36
1927 (package (inherit vte)
1928 (name "vte")
1929 (version "0.36.5")
1930 (source (origin
1931 (method url-fetch)
1932 (uri (string-append "mirror://gnome/sources/" name "/"
1933 (version-major+minor version) "/"
1934 name "-" version ".tar.xz"))
1935 (sha256
1936 (base32
1937 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
1938 (propagated-inputs
1939 `(("gtk" ,gtk+)
1940 ("ncurses" ,ncurses)))))
1941
ea57378f
SB
1942;; stable version for gtk2, required by xfce4-terminal.
1943(define-public vte/gtk+-2
1944 (package (inherit vte)
1945 (name "vte")
1946 (version "0.28.2")
1947 (source (origin
1948 (method url-fetch)
1949 (uri (string-append "mirror://gnome/sources/" name "/"
1950 (version-major+minor version) "/"
1951 name "-" version ".tar.xz"))
1952 (sha256
1953 (base32
7d48938a
EF
1954 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))
1955 (patches (search-patches
1956 "vte-CVE-2012-2738-pt1.patch"
1957 "vte-CVE-2012-2738-pt2.patch"))))
ea57378f
SB
1958 (arguments
1959 '(#:configure-flags '("--disable-python")))
1960 (native-inputs
1961 `(("pkg-config" ,pkg-config)
1962 ("intltool" ,intltool)
1963 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1964 (propagated-inputs
1965 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1966 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20 1967
cce0da5e
TD
1968(define-public vinagre
1969 (package
1970 (name "vinagre")
1971 (version "3.22.0")
1972 (source (origin
1973 (method url-fetch)
1974 (uri (string-append "mirror://gnome/sources/" name "/"
1975 (version-major+minor version) "/"
1976 name "-" version ".tar.xz"))
1977 (sha256
1978 (base32
1979 "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d"))))
1980 (build-system glib-or-gtk-build-system)
1981 (native-inputs
1982 `(("pkg-config" ,pkg-config)
1983 ("intltool" ,intltool)
1984 ("itstool" ,itstool)
1985 ("glib-bin" ,glib "bin") ;for glib-compile-schemas
1986 ("gtk+-bin" ,gtk+ "bin"))) ;for gtk-update-icon-cache
1987 (inputs
1988 `(("libxml2" ,libxml2)
1989 ("gtk-vnc" ,gtk-vnc)
1990 ("gnome-keyring" ,gnome-keyring)
1991 ("libsecret" ,libsecret)
1992 ("freerdp" ,freerdp)
1993 ("spice" ,spice)
1994 ("spice-gtk" ,spice-gtk)
1995 ("telepathy-glib" ,telepathy-glib)
1996 ("vte" ,vte)))
1997 (arguments
1998 `(#:configure-flags '("--enable-rdp")))
1999 (home-page "https://wiki.gnome.org/Apps/Vinagre")
2000 (synopsis "Remote desktop viewer for GNOME")
2001 (description "Vinagre is a remote display client supporting the VNC, SPICE
2002and RDP protocols.")
2003 (license license:gpl3+)))
2004
b47e1b20
FB
2005(define-public dconf
2006 (package
2007 (name "dconf")
6983ba56 2008 (version "0.26.0")
b47e1b20
FB
2009 (source (origin
2010 (method url-fetch)
2011 (uri (string-append
2e6ecc5c 2012 "mirror://gnome/sources/" name "/"
b47e1b20
FB
2013 (version-major+minor version) "/"
2014 name "-" version ".tar.xz"))
2015 (sha256
f05c809f 2016 (base32
6983ba56 2017 "1jaqsr1r0grpd25rbsc2v3vb0sc51lia9w31wlqswgqsncp2k0w6"))))
b47e1b20
FB
2018 (build-system glib-or-gtk-build-system)
2019 (inputs
2020 `(("gtk+" ,gtk+)
2021 ("glib" ,glib)
2022 ("dbus" ,dbus)
2023 ("libxml2" ,libxml2)))
2024 (native-inputs
2025 `(("libxslt" ,libxslt)
2026 ("docbook-xml" ,docbook-xml-4.2)
2027 ("docbook-xsl" ,docbook-xsl)
2028 ("intltool" ,intltool)
2029 ("pkg-config" ,pkg-config)))
2030 (arguments
2031 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
2032 ; or /etc/machine-id.
2033 #:configure-flags
2034 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 2035 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
2036 (assoc-ref %outputs "out") "/lib")
2037 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
2038 #:phases
2039 (alist-cons-before
2040 'configure 'fix-docbook
2041 (lambda* (#:key inputs #:allow-other-keys)
2042 (substitute* "docs/Makefile.in"
2043 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 2044 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
2045 "/xml/xsl/docbook-xsl-"
2046 ,(package-version docbook-xsl)
2047 "/manpages/docbook.xsl")))
2e6ecc5c
AE
2048 (setenv "XML_CATALOG_FILES"
2049 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
2050 "/xml/dtd/docbook/catalog.xml")))
2051 %standard-phases)))
2052 (home-page "https://developer.gnome.org/dconf")
2053 (synopsis "Low-level GNOME configuration system")
2054 (description "Dconf is a low-level configuration system. Its main purpose
2055is to provide a backend to GSettings on platforms that don't already have
2056configuration storage systems.")
2057 (license license:lgpl2.1)))
109da1c0
AE
2058
2059(define-public json-glib
2060 (package
2061 (name "json-glib")
eef1ad01 2062 (version "1.2.2")
109da1c0
AE
2063 (source (origin
2064 (method url-fetch)
2065 (uri (string-append "mirror://gnome/sources/" name "/"
2066 (version-major+minor version) "/"
2067 name "-" version ".tar.xz"))
2068 (sha256
2069 (base32
eef1ad01 2070 "08d6449sgnwfh92x8rhwsm03g8frv0mvp3s4wl3cskw25asql4pa"))
4955ab7d
SB
2071 (modules '((guix build utils)))
2072 (snippet
2073 ;; Don't duplicate test names.
2074 ;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
2075 '(substitute* "json-glib/tests/builder.c"
2076 (("\"/builder/complex\", test_builder_empty")
2077 "\"/builder/empty\", test_builder_empty")))))
109da1c0
AE
2078 (build-system gnu-build-system)
2079 (native-inputs
88c6b580 2080 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
2081 ("gobject-introspection" ,gobject-introspection)
2082 ("pkg-config" ,pkg-config)))
2083 (propagated-inputs
88c6b580 2084 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
2085 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
2086 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
2087 (description
2088 "JSON-GLib is a C library based on GLib providing serialization and
2089deserialization support for the JavaScript Object Notation (JSON) format
2090described by RFC 4627. It provides parser and generator GObject classes and
2091various wrappers for the complex data types employed by JSON, such as arrays
2092and objects.")
109da1c0 2093 (license license:lgpl2.1+)))
6f96a359
SB
2094
2095(define-public libxklavier
2096 (package
2097 (name "libxklavier")
2098 (version "5.3")
2099 (source (origin
2100 (method url-fetch)
2101 (uri (string-append "mirror://gnome/sources/" name "/"
2102 version "/" name "-" version ".tar.xz"))
2103 (sha256
2104 (base32
2105 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
2106 (build-system gnu-build-system)
2107 (arguments
2108 '(#:configure-flags
2109 (list (string-append "--with-xkb-base="
2110 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 2111 "/share/X11/xkb"))))
6f96a359
SB
2112 (native-inputs
2113 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
2114 ("gobject-introspection" ,gobject-introspection)
2115 ("pkg-config" ,pkg-config)))
2116 (propagated-inputs
2117 ;; Required by libxklavier.pc.
2118 `(("glib" ,glib)
2119 ("libxml2" ,libxml2)))
2120 (inputs
2121 `(("iso-codes" ,iso-codes)
2122 ("libxi" ,libxi)
2123 ("libxkbfile" ,libxkbfile)
2124 ("xkbcomp" ,xkbcomp)
2125 ("xkeyboard-config" ,xkeyboard-config)))
2126 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
2127 (synopsis "High-level API for X Keyboard Extension")
2128 (description
2129 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
2130Extension known as XKB. This library is intended to support XFree86 and other
2131commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
2132indicators etc).")
2133 (license license:lgpl2.0+)))
619936a4
LC
2134
2135(define-public python2-rsvg
2136 ;; XXX: This is actually a subset of gnome-python-desktop.
2137 (package
2138 (name "python2-rsvg")
2139 (version "2.32.0")
2140 (source
2141 (origin
2142 (method url-fetch)
2143 (uri (string-append
2144 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
2145 version ".tar.bz2"))
2146 (sha256
2147 (base32
2148 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
2149 (build-system gnu-build-system)
2150 (native-inputs
2151 `(("pkg-config" ,pkg-config)))
2152 (inputs
2153 `(("python" ,python-2)
2154 ("python2-pygtk" ,python2-pygtk)
2155 ("librsvg" ,librsvg)))
2156 (home-page "http://www.gnome.org")
2157 (synopsis "Python bindings to librsvg")
2158 (description
2159 "This packages provides Python bindings to librsvg, the SVG rendering
2160library.")
2161
2162 ;; This is the license of the rsvg bindings. The license of each module
2163 ;; of gnome-python-desktop is given in 'COPYING'.
2164 (license license:lgpl2.1+)))
a31a6d22 2165
f2ca414a
SB
2166(define-public glib-networking
2167 (package
2168 (name "glib-networking")
532cbe22 2169 (version "2.50.0")
f2ca414a
SB
2170 (source (origin
2171 (method url-fetch)
2172 (uri (string-append "mirror://gnome/sources/glib-networking/"
2173 (version-major+minor version) "/"
2174 name "-" version ".tar.xz"))
2175 (sha256
2176 (base32
532cbe22 2177 "1vkb53jxawy38y29635izlch64j9xmcwwcimk134jwra7hpl86iz"))
907f939b 2178 (patches
fc1adab1 2179 (search-patches "glib-networking-ssl-cert-file.patch"))))
f2ca414a
SB
2180 (build-system gnu-build-system)
2181 (arguments
2182 `(#:configure-flags
907f939b 2183 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
2184 #:phases
2185 (modify-phases %standard-phases
3a4de6b2 2186 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
2187 ;; Install GIO modules into $out/lib/gio/modules.
2188 (lambda _
2189 (substitute* "configure"
2190 (("GIO_MODULE_DIR=.*")
2191 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
2192 "/lib/gio/modules\n")))))
2193 (add-before 'check 'use-empty-ssl-cert-file
2194 (lambda _
2195 ;; The ca-certificates.crt is not available in the build
2196 ;; environment.
2197 (setenv "SSL_CERT_FILE" "/dev/null")
2198 #t)))))
f2ca414a
SB
2199 (native-inputs
2200 `(("pkg-config" ,pkg-config)
2201 ("intltool" ,intltool)))
2202 (inputs
2203 `(("glib" ,glib)
2204 ("gnutls" ,gnutls)
2205 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2206 ("p11-kit" ,p11-kit)))
2207 (home-page "http://www.gnome.org")
2208 (synopsis "Network-related GIO modules")
2209 (description
2210 "This package contains various network related extensions for the GIO
2211library.")
2212 (license license:lgpl2.0+)))
2213
ca649680 2214(define-public rest
4510b2da 2215 (package
ca649680 2216 (name "rest")
90000d4b 2217 (version "0.8.0")
4510b2da
SB
2218 (source (origin
2219 (method url-fetch)
2220 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
2221 (version-major+minor version) "/"
2222 name "-" version ".tar.xz"))
4510b2da
SB
2223 (sha256
2224 (base32
90000d4b 2225 "0iznvzhab1jq9z3nwy97dh2pid9azwkqm7kkxwx0f5ql1hh9pf77"))))
4510b2da
SB
2226 (build-system gnu-build-system)
2227 (arguments
2228 '(#:tests? #f ; tests require internet connection
2229 #:configure-flags
2230 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
2231 (native-inputs
2232 `(("glib-mkenums" ,glib "bin")
2233 ("gobject-introspection" ,gobject-introspection)
2234 ("pkg-config" ,pkg-config)))
2235 (propagated-inputs
2236 ;; rest-0.7.pc refers to all these.
2237 `(("glib" ,glib)
2238 ("libsoup" ,libsoup)
2239 ("libxml2" ,libxml2)))
2240 (home-page "http://www.gtk.org/")
2241 (synopsis "RESTful web api query library")
2242 (description
2243 "This library was designed to make it easier to access web services that
2244claim to be \"RESTful\". It includes convenience wrappers for libsoup and
2245libxml to ease remote use of the RESTful API.")
2246 (license license:lgpl2.1+)))
2247
6e1bb642
SB
2248(define-public libsoup
2249 (package
2250 (name "libsoup")
72c0b687 2251 (version "2.56.0")
6e1bb642
SB
2252 (source (origin
2253 (method url-fetch)
2254 (uri (string-append "mirror://gnome/sources/libsoup/"
2255 (version-major+minor version) "/"
2256 name "-" version ".tar.xz"))
2257 (sha256
2258 (base32
72c0b687 2259 "1r8zz270qdg92gbsvy61d51y1cj7hp059h2f4xpvqiw2vrqnn8fq"))))
6e1bb642
SB
2260 (build-system gnu-build-system)
2261 (outputs '("out" "doc"))
2262 (arguments
b19d6805 2263 `(#:configure-flags
6e1bb642
SB
2264 (list (string-append "--with-html-dir="
2265 (assoc-ref %outputs "doc")
fd730590 2266 "/share/gtk-doc/html"))
6e1bb642
SB
2267 #:phases
2268 (modify-phases %standard-phases
3a4de6b2 2269 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2270 ;; This test fails due to missing /etc/nsswitch.conf
2271 ;; in the build environment.
2272 (lambda _
2273 (substitute* "tests/socket-test.c"
2274 ((".*/sockets/unconnected.*") ""))
2275 #t))
907f939b 2276 (add-before 'check 'pre-check
6e1bb642 2277 (lambda _
907f939b
SB
2278 ;; The 'check-local' target runs 'env LANG=C sort -u',
2279 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2280 (unsetenv "LC_ALL")
907f939b
SB
2281 ;; The ca-certificates.crt is not available in the build
2282 ;; environment.
2283 (setenv "SSL_CERT_FILE" "/dev/null")
fd730590
SB
2284 #t))
2285 (replace 'install
2286 (lambda _
2287 (zero?
2288 (system* "make"
2289 ;; Install vala bindings into $out.
2290 (string-append "vapidir=" %output
2291 "/share/vala/vapi")
2292 "install")))))))
6e1bb642
SB
2293 (native-inputs
2294 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2295 ("gobject-introspection" ,gobject-introspection)
2296 ("intltool" ,intltool)
2297 ("pkg-config" ,pkg-config)
2298 ("python" ,python-wrapper)
fd730590 2299 ("vala" ,vala)
6e1bb642
SB
2300 ;; These are needed for the tests.
2301 ;; FIXME: Add PHP once available.
2302 ("curl" ,curl)
2303 ("httpd" ,httpd)))
2304 (propagated-inputs
2305 ;; libsoup-2.4.pc refers to all these.
2306 `(("glib" ,glib)
2307 ("libxml2" ,libxml2)))
2308 (inputs
2309 `(("glib-networking" ,glib-networking)
2310 ("sqlite" ,sqlite)))
2311 (home-page "https://live.gnome.org/LibSoup/")
2312 (synopsis "GLib-based HTTP Library")
2313 (description
2314 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2315and the GLib main loop, to integrate well with GNOME applications.")
2316 (license license:lgpl2.0+)))
2317
bba229a3
SB
2318(define-public libsecret
2319 (package
2320 (name "libsecret")
6983ba56 2321 (version "0.18.5")
bba229a3
SB
2322 (source (origin
2323 (method url-fetch)
2324 (uri (string-append
896dcbc7
EF
2325 "mirror://gnome/sources/libsecret/"
2326 (version-major+minor version) "/"
bba229a3
SB
2327 name "-" version ".tar.xz"))
2328 (sha256
2329 (base32
6983ba56 2330 "1cychxc3ff8fp857iikw0n2s13s2mhw2dn1mr632f7w3sn6vvrww"))))
bba229a3
SB
2331 (build-system gnu-build-system)
2332 (outputs '("out" "doc"))
2333 (arguments
2334 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2335 #:configure-flags
2336 (list (string-append "--with-html-dir="
2337 (assoc-ref %outputs "doc")
2338 "/share/gtk-doc/html"))))
2339 (native-inputs
2340 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2341 ("gobject-introspection" ,gobject-introspection)
2342 ("intltool" ,intltool)
2343 ("pkg-config" ,pkg-config)
2344 ("vala" ,vala)
2345 ("xsltproc" ,libxslt)))
2346 ;; These are needed for the tests.
2347 ;; FIXME: Add gjs once available.
2348 ;("dbus" ,dbus)
2349 ;("python2" ,python-2)
2350 ;("python2-dbus" ,python2-dbus)
2351 ;("python2-pygobject" ,python2-pygobject)
2352 ;("python2-pygobject-2" ,python2-pygobject-2)))
2353 (propagated-inputs
2354 `(("glib" ,glib))) ; required by libsecret-1.pc
2355 (inputs
2356 `(("docbook-xsl" ,docbook-xsl)
2357 ("libgcrypt" ,libgcrypt)
2358 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2359 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2360 (synopsis "GObject bindings for \"Secret Service\" API")
2361 (description
2362 "Libsecret is a GObject based library for storing and retrieving passwords
2363and other secrets. It communicates with the \"Secret Service\" using DBus.")
2364 (license license:lgpl2.1+)))
2365
a31a6d22
SB
2366(define-public gnome-mines
2367 (package
2368 (name "gnome-mines")
73992962 2369 (version "3.22.2")
a31a6d22
SB
2370 (source
2371 (origin
2372 (method url-fetch)
2373 (uri (string-append "mirror://gnome/sources/" name "/"
2374 (version-major+minor version) "/"
2375 name "-" version ".tar.xz"))
2376 (sha256
2377 (base32
73992962 2378 "1wia0nj5i244m6pq3lridvk3vx9yipsa9l921nsskd97115mnyza"))))
a31a6d22
SB
2379 (build-system glib-or-gtk-build-system)
2380 (arguments
2381 '(#:phases
2382 (modify-phases %standard-phases
f8503e2b 2383 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2384 (lambda _
2385 (substitute* "configure"
6983ba56 2386 (("/bin/true") (which "true"))))))))
a31a6d22
SB
2387 (native-inputs
2388 `(("pkg-config" ,pkg-config)
2389 ("desktop-file-utils" ,desktop-file-utils)
2390 ("intltool" ,intltool)
bcb354ad
SB
2391 ("itstool" ,itstool)
2392 ("xmllint" ,libxml2)))
a31a6d22
SB
2393 (inputs
2394 `(("gtk+" ,gtk+)
73992962 2395 ("libgnome-games-support" ,libgnome-games-support)
a31a6d22
SB
2396 ("librsvg" ,librsvg)))
2397 (home-page "https://wiki.gnome.org/Apps/Mines")
2398 (synopsis "Minesweeper game")
2399 (description
2400 "Mines (previously gnomine) is a puzzle game where you locate mines
2401floating in an ocean using only your brain and a little bit of luck.")
2402 (license license:gpl2+)))
88f70665 2403
dfc407f3
KY
2404(define-public gnome-sudoku
2405 (package
2406 (name "gnome-sudoku")
d56bea89 2407 (version "3.22.2")
dfc407f3
KY
2408 (source
2409 (origin
2410 (method url-fetch)
2411 (uri (string-append "mirror://gnome/sources/" name "/"
2412 (version-major+minor version) "/"
2413 name "-" version ".tar.xz"))
2414 (sha256
2415 (base32
d56bea89 2416 "1sz2ln2nc9ff7zigghil32vbmr2qhb98dc0rbrz755rlrsh8pi08"))))
dfc407f3
KY
2417 (build-system glib-or-gtk-build-system)
2418 (native-inputs
2419 `(("pkg-config" ,pkg-config)
2420 ("desktop-file-utils" ,desktop-file-utils)
2421 ("intltool" ,intltool)
2422 ("itstool" ,itstool)
2423 ("xmllint" ,libxml2)))
2424 (inputs
2425 `(("gtk+" ,gtk+)
2426 ("json-glib" ,json-glib)
2427 ("libgee" ,libgee)
2428 ("librsvg" ,librsvg)
2429 ("qqwing" ,qqwing)))
2430 (home-page "https://wiki.gnome.org/Apps/Sudoku")
2431 (synopsis "Japanese logic game")
2432 (description
2433 "Sudoku is a Japanese logic game that exploded in popularity in 2005.
2434GNOME Sudoku is meant to have an interface as simple and unobstrusive as
2435possible while still providing features that make playing difficult Sudoku
2436more fun.")
2437 (license license:gpl2+)))
2438
88f70665
AW
2439(define-public gnome-terminal
2440 (package
2441 (name "gnome-terminal")
59339bb4 2442 (version "3.22.1")
88f70665
AW
2443 (source
2444 (origin
2445 (method url-fetch)
2446 (uri (string-append "mirror://gnome/sources/" name "/"
2447 (version-major+minor version) "/"
2448 name "-" version ".tar.xz"))
2449 (sha256
2450 (base32
59339bb4 2451 "1m5h3ck7wcvq1kfap05jwhnbpp3kmikc2qy822gnsbdjdqrm41xh"))))
88f70665
AW
2452 (build-system glib-or-gtk-build-system)
2453 (arguments
2454 '(#:configure-flags
2455 (list "--disable-migration" "--disable-search-provider"
2456 "--without-nautilus-extension")
2457 #:phases
2458 (modify-phases %standard-phases
3a4de6b2 2459 (add-before 'configure 'patch-/bin/true
88f70665
AW
2460 (lambda _
2461 (substitute* "configure"
2462 (("/bin/true") (which "true"))))))))
2463 (native-inputs
2464 `(("pkg-config" ,pkg-config)
2465 ("desktop-file-utils" ,desktop-file-utils)
2466 ("intltool" ,intltool)
bcb354ad
SB
2467 ("itstool" ,itstool)
2468 ("xmllint" ,libxml2)))
68702167
MW
2469 (propagated-inputs
2470 `(("dconf" ,dconf)))
88f70665
AW
2471 (inputs
2472 `(("gtk+" ,gtk+)
2473 ("vte" ,vte)
2474 ("gnutls" ,gnutls)
88f70665
AW
2475 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2476 ("util-linux" ,util-linux)
2477 ("vala" ,vala)))
2478 (home-page "https://wiki.gnome.org/Apps/Terminal")
2479 (synopsis "Terminal emulator")
2480 (description
2481 "GNOME Terminal is a terminal emulator application for accessing a
2482UNIX shell environment which can be used to run programs available on
2483your system.
2484
2485It supports several profiles, multiple tabs and implements several
2486keyboard shortcuts.")
2487 (license license:gpl3+)))
75016d07
AW
2488
2489(define-public colord
2490 (package
2491 (name "colord")
2492 (version "1.1.8")
2493 (source
2494 (origin
2495 (method url-fetch)
5cc3096c 2496 (uri (string-append "https://www.freedesktop.org/software/colord/releases/"
75016d07
AW
2497 name "-" version ".tar.xz"))
2498 (sha256
2499 (base32
2500 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2501 (build-system glib-or-gtk-build-system)
2502 (arguments
2503 '(;; The tests want to run valgrind. Punt for now.
2504 #:tests? #f
2505 #:configure-flags (list "--localstatedir=/var"
2506 ;; GUSB not packaged yet.
2507 "--disable-gusb"
2508 ;; No dep on systemd.
2509 "--disable-systemd-login"
2510 ;; Wants to install to global completion dir;
2511 ;; punt.
2512 "--disable-bash-completion"
2513 ;; colord-gtk not packaged yet.
2514 "--disable-session-example"
2515 "--with-daemon-user=colord"
2516 "--enable-sane"
2517 (string-append "--with-udevrulesdir="
2518 (assoc-ref %outputs "out")
2519 "/lib/udev/rules.d"))
2520 #:phases
2521 (modify-phases %standard-phases
3a4de6b2 2522 (add-before 'configure 'patch-/bin/true
75016d07
AW
2523 (lambda _
2524 (substitute* "configure"
2525 (("/bin/true") (which "true")))
2526 (substitute* "src/Makefile.in"
2527 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2528 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2529 (native-inputs
2530 `(("pkg-config" ,pkg-config)
2531 ("gobject-introspection" ,gobject-introspection)
2532 ("libtool" ,libtool)
2533 ("intltool" ,intltool)))
65cb2d61
SB
2534 (propagated-inputs
2535 ;; colord.pc refers to all these.
2536 `(("glib" ,glib)
2537 ("udev" ,eudev)
2538 ("lcms" ,lcms)))
75016d07 2539 (inputs
65cb2d61 2540 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2541 ("libgudev" ,libgudev)
75016d07 2542 ("libusb" ,libusb)
75016d07
AW
2543 ("sqlite" ,sqlite)
2544 ("polkit" ,polkit)
4c928743 2545 ("sane-backends" ,sane-backends)))
75016d07
AW
2546 (home-page "http://www.freedesktop.org/software/colord/")
2547 (synopsis "Color management service")
2548 (description "Colord is a system service that makes it easy to manage,
2549install and generate color profiles to accurately color manage input and
2550output devices.")
2551 (license license:gpl2+)))
7b2abd00
AW
2552
2553(define-public geoclue
2554 (package
2555 (name "geoclue")
ccfac09c 2556 (version "2.4.6")
7b2abd00
AW
2557 (source
2558 (origin
2559 (method url-fetch)
5cc3096c 2560 (uri (string-append "https://www.freedesktop.org/software/" name
7b2abd00
AW
2561 "/releases/" (version-major+minor version) "/"
2562 name "-" version ".tar.xz"))
2563 (sha256
2564 (base32
ccfac09c 2565 "1dnknrwln159dj7pdprnfa4zjprgslabxngmn11jyjwvbi2zfzf5"))
fc1adab1 2566 (patches (search-patches "geoclue-config.patch"))))
7b2abd00
AW
2567 (build-system glib-or-gtk-build-system)
2568 (arguments
2569 '(;; The tests want to run the system bus.
2570 #:tests? #f
2571 #:configure-flags (list ;; Disable bits requiring ModemManager.
2572 "--disable-3g-source"
2573 "--disable-cdma-source"
2574 "--disable-modem-gps-source"
2575 "--with-dbus-service-user=geoclue")
2576 #:phases
2577 (modify-phases %standard-phases
3a4de6b2 2578 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2579 (lambda _
2580 (substitute* "configure"
2581 (("/bin/true") (which "true"))))))))
2582 (native-inputs
2583 `(("pkg-config" ,pkg-config)
2584 ("intltool" ,intltool)))
2585 (inputs
54e911bc
SB
2586 `(("avahi" ,avahi)
2587 ("glib" ,glib)
7b2abd00
AW
2588 ("json-glib" ,json-glib)
2589 ("libsoup" ,libsoup)))
2590 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2591 (synopsis "Geolocation service")
2592 (description "Geoclue is a D-Bus service that provides location
2593information. The primary goal of the Geoclue project is to make creating
2594location-aware applications as simple as possible, while the secondary goal is
2595to ensure that no application can access location information without explicit
e881752c 2596permission from user.")
7b2abd00 2597 (license license:gpl2+)))
2bfe7437
AW
2598
2599(define-public geocode-glib
2600 (package
2601 (name "geocode-glib")
3ffd46bd 2602 (version "3.20.1")
2bfe7437
AW
2603 (source (origin
2604 (method url-fetch)
2605 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2606 (version-major+minor version) "/"
2607 name "-" version ".tar.xz"))
2608 (sha256
2609 (base32
3ffd46bd 2610 "18iphsx3bybw7lssbb7rxc1rrnsc8vxai521zkqc535zr8rci7v6"))))
2bfe7437
AW
2611 (build-system gnu-build-system)
2612 (arguments
2613 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2614 ;; work for the builder. Punt.
a124bbd2 2615 #:tests? #f))
2bfe7437
AW
2616 (native-inputs
2617 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2618 ("gobject-introspection" ,gobject-introspection)
2619 ("pkg-config" ,pkg-config)
2620 ("json-glib" ,json-glib)))
2621 (propagated-inputs
2622 ;; geocode-glib-1.0.pc refers to GIO.
2623 `(("glib" ,glib)))
2624 (inputs
2625 `(("libsoup" ,libsoup)))
2626 (home-page "https://github.com/GNOME/geocode-glib/")
2627 (synopsis "Geocoding and reverse-geocoding library")
2628 (description
2629 "geocode-glib is a convenience library for geocoding (finding longitude,
2630and latitude from an address) and reverse geocoding (finding an address from
2631coordinates) using the Nominatim service. geocode-glib caches requests for
2632faster results and to avoid unnecessary server load.")
2633 (license license:lgpl2.0+)))
a1d5bb0e
AW
2634
2635(define-public upower
2636 (package
2637 (name "upower")
5e503e73 2638 (version "0.99.4")
a1d5bb0e
AW
2639 (source (origin
2640 (method url-fetch)
5cc3096c 2641 (uri (string-append "https://upower.freedesktop.org/releases/"
a1d5bb0e
AW
2642 name "-" version ".tar.xz"))
2643 (sha256
2644 (base32
5e503e73 2645 "1c1ph1j1fnrf3vipxb7ncmdfc36dpvcvpsv8n8lmal7grjk2b8ww"))
fc1adab1 2646 (patches (search-patches "upower-builddir.patch"))))
a1d5bb0e
AW
2647 (build-system glib-or-gtk-build-system)
2648 (arguments
2649 '( ;; The tests want to contact the system bus, which can't be done in the
2650 ;; build environment. The integration test can run, but the last of
2651 ;; the up-self-tests doesn't. Disable tests for now.
2652 #:tests? #f
2653 #:configure-flags (list "--localstatedir=/var"
2654 (string-append "--with-udevrulesdir="
2655 (assoc-ref %outputs "out")
2656 "/lib/udev/rules.d"))
2657 #:phases
2658 (modify-phases %standard-phases
2659 (add-before 'configure 'patch-/bin/true
2660 (lambda _
2661 (substitute* "configure"
2662 (("/bin/true") (which "true")))))
2663 (add-before 'configure 'patch-integration-test
2664 (lambda _
2665 (substitute* "src/linux/integration-test"
2666 (("/usr/bin/python3") (which "python3"))))))))
2667 (native-inputs
ebeabe2d
SB
2668 `(("gobject-introspection" ,gobject-introspection)
2669 ("pkg-config" ,pkg-config)
a1d5bb0e 2670 ("intltool" ,intltool)
55409295
LC
2671 ("python" ,python)
2672
2673 ;; For man pages.
2674 ("libxslt" ,libxslt) ;for 'xsltproc'
2675 ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES'
2676 ("docbook-xsl" ,docbook-xsl)))
a1d5bb0e 2677 (inputs
ea226291
SB
2678 `(("dbus-glib" ,dbus-glib)
2679 ("libgudev" ,libgudev)
a1d5bb0e
AW
2680 ("libusb" ,libusb)))
2681 (home-page "http://upower.freedesktop.org/")
2682 (synopsis "System daemon for managing power devices")
2683 (description
2684 "UPower is an abstraction for enumerating power devices,
2685listening to device events and querying history and statistics. Any
2686application or service on the system can access the org.freedesktop.UPower
2687service via the system message bus.")
2688 (license license:gpl2+)))
6a180f6f
AW
2689
2690(define-public libgweather
2691 (package
2692 (name "libgweather")
bd03f9db 2693 (version "3.20.4")
6a180f6f
AW
2694 (source (origin
2695 (method url-fetch)
2696 (uri (string-append "mirror://gnome/sources/" name "/"
2697 (version-major+minor version) "/"
2698 name "-" version ".tar.xz"))
2699 (sha256
2700 (base32
bd03f9db 2701 "1higj4nmn3srqjbzl4iva7c0b4fkdq74xi4b35xd0qc4qiawbkbx"))))
6a180f6f
AW
2702 (build-system gnu-build-system)
2703 (arguments
b6072e6b
SB
2704 `(#:configure-flags
2705 `(,(string-append "--with-zoneinfo-dir="
2706 (assoc-ref %build-inputs "tzdata")
2707 "/share/zoneinfo"))
2708 #:phases
2709 (modify-phases %standard-phases
8b8dfa7f
LC
2710 (add-before 'check 'pre-check
2711 (lambda* (#:key inputs #:allow-other-keys)
2712 (substitute* "data/check-timezones.sh"
2713 (("/usr/share/zoneinfo/zone.tab")
2714 (string-append (assoc-ref inputs "tzdata")
2715 "/share/zoneinfo/zone.tab")))
2716
2717 ;; 'Asia/Rangoon' was renamed in tzdata-2016:
2718 ;; <https://github.com/eggert/tz/commit/4368251ebf11310a4aadccd1910daeac9080c501>.
2719 (substitute* "data/Locations.xml"
2720 (("Asia/Rangoon")
2721 "Asia/Yangon"))
b6072e6b 2722 #t)))))
6a180f6f
AW
2723 (native-inputs
2724 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2725 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2726 ("pkg-config" ,pkg-config)
2727 ("intltool" ,intltool)))
2728 (propagated-inputs
2729 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2730 ;; libsoup.
2731 `(("gtk+" ,gtk+)
2732 ("gdk-pixbuf" ,gdk-pixbuf)
2733 ("libxml2" ,libxml2)
2734 ("libsoup" ,libsoup)))
2735 (inputs
2736 `(("tzdata" ,tzdata)
2737 ("geocode-glib" ,geocode-glib)))
2738 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2739 (synopsis "Location, time zone, and weather library for GNOME")
2740 (description
2741 "libgweather is a library to access weather information from online
2742services for numerous locations.")
2743 (license license:gpl2+)))
23a22af6
AW
2744
2745(define-public gnome-settings-daemon
2746 (package
2747 (name "gnome-settings-daemon")
e1f3c790 2748 (version "3.22.1")
23a22af6
AW
2749 (source
2750 (origin
2751 (method url-fetch)
2752 (uri (string-append "mirror://gnome/sources/" name "/"
2753 (version-major+minor version) "/"
2754 name "-" version ".tar.xz"))
2755 (sha256
2756 (base32
e1f3c790 2757 "1finsr7yqvix6n3rdwclv4fpgagmz6xyrk3qzapkn9ljv76rfzdm"))))
23a22af6
AW
2758 (build-system glib-or-gtk-build-system)
2759 (arguments
eee7878f 2760 `(;; Color management test can't reach the colord system service.
23a22af6
AW
2761 #:tests? #f))
2762 (native-inputs
2763 `(("pkg-config" ,pkg-config)
2764 ("intltool" ,intltool)
2765 ("xsltproc" ,libxslt)
2766 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2767 ("docbook-xml" ,docbook-xml-4.2)
2768 ("docbook-xsl" ,docbook-xsl)))
2769 (inputs
2770 `(("colord" ,colord)
ea226291 2771 ("libgudev" ,libgudev)
23a22af6
AW
2772 ("upower" ,upower)
2773 ("polkit" ,polkit)
2774 ("pulseaudio" ,pulseaudio)
2775 ("libcanberra" ,libcanberra)
2776 ("libx11" ,libx11)
2777 ("libxtst" ,libxtst)
2778 ("lcms" ,lcms)
2779 ("libnotify" ,libnotify)
2780 ("geoclue" ,geoclue)
2781 ("geocode-glib" ,geocode-glib)
2782 ("libgweather" ,libgweather)
2783 ("gnome-desktop" ,gnome-desktop)
2784 ("nss" ,nss)
2785 ("cups" ,cups)
ec2b1921
AW
2786 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2787 ("libwacom" ,libwacom)
2788 ("librsvg" ,librsvg)
eee7878f
CM
2789 ("xf86-input-wacom" ,xf86-input-wacom)
2790 ("network-manager" ,network-manager)))
23a22af6
AW
2791 (home-page "http://www.gnome.org")
2792 (synopsis "GNOME settings daemon")
2793 (description
2794 "This package contains the daemon responsible for setting the various
2795parameters of a GNOME session and the applications that run under it. It
2796handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2797settings, themes, mouse settings, and startup of other daemons.")
2798 (license license:gpl2+)))
1e7464a9
DH
2799
2800(define-public totem-pl-parser
2801 (package
2802 (name "totem-pl-parser")
e980cbe9 2803 (version "3.10.7")
1e7464a9
DH
2804 (source (origin
2805 (method url-fetch)
e980cbe9
MW
2806 (uri (string-append "mirror://gnome/sources/totem-pl-parser/"
2807 (version-major+minor version) "/"
1e7464a9
DH
2808 "totem-pl-parser-" version ".tar.xz"))
2809 (sha256
2810 (base32
e980cbe9 2811 "17089sqyh6w6zr8ci865ihmvqshnslcsk9fbsl4s7yii66y8b0lw"))))
1e7464a9
DH
2812 (build-system gnu-build-system)
2813 (arguments
2814 ;; FIXME: Tests require gvfs.
2815 `(#:tests? #f))
2816 (native-inputs
2817 `(("intltool" ,intltool)
2818 ("glib" ,glib "bin")
4d6d8281 2819 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2820 ("pkg-config" ,pkg-config)))
22a6ad6a 2821 (propagated-inputs
1e7464a9
DH
2822 `(("glib" ,glib)
2823 ("gmime" ,gmime)
22a6ad6a
MW
2824 ("libxml2" ,libxml2)))
2825 (inputs
2826 `(("libarchive" ,libarchive)
1e7464a9
DH
2827 ("libgcrypt" ,libgcrypt)
2828 ("nettle" ,nettle)
22a6ad6a 2829 ("libsoup" ,libsoup)))
1e7464a9
DH
2830 (home-page "https://projects.gnome.org/totem")
2831 (synopsis "Library to parse and save media playlists for GNOME")
2832 (description "Totem-pl-parser is a GObjects-based library to parse and save
2833playlists in a variety of formats.")
2834 (license license:lgpl2.0+)))
2835
6b888eff
SB
2836(define-public aisleriot
2837 (package
2838 (name "aisleriot")
c88e669a 2839 (version "3.22.1")
6b888eff
SB
2840 (source (origin
2841 (method url-fetch)
2842 (uri (string-append "mirror://gnome/sources/" name "/"
2843 (version-major+minor version) "/"
2844 name "-" version ".tar.xz"))
2845 (sha256
2846 (base32
c88e669a 2847 "01ydq39kk8xvv8nbqqbh458gpmvx676sms71r1iix42z40a13caj"))))
6b888eff
SB
2848 (build-system glib-or-gtk-build-system)
2849 (arguments
2850 '(#:configure-flags
2851 '("--with-platform=gtk-only"
2852 "--with-card-theme-formats=svg")))
2853 (native-inputs
2854 `(("desktop-file-utils" ,desktop-file-utils)
2855 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2856 ("intltool" ,intltool)
2857 ("itstool" ,itstool)
2858 ("pkg-config" ,pkg-config)
2859 ("xmllint" ,libxml2)))
2860 (inputs
2861 `(("gtk+" ,gtk+)
2862 ("guile" ,guile-2.0)
2863 ("libcanberra" ,libcanberra)
2864 ("librsvg" ,librsvg)))
2865 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2866 (synopsis "Solitaire card games")
2867 (description
2868 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2869which are easy to play with the aid of a mouse.")
2870 (license license:gpl3+)))
4a79e256
SB
2871
2872(define-public devhelp
2873 (package
2874 (name "devhelp")
76aea80d 2875 (version "3.22.0")
4a79e256
SB
2876 (source (origin
2877 (method url-fetch)
2878 (uri (string-append "mirror://gnome/sources/" name "/"
2879 (version-major+minor version) "/"
2880 name "-" version ".tar.xz"))
2881 (sha256
2882 (base32
76aea80d 2883 "1c7zqn8apm1lnpsp74bd880rga2vi5wxfjghqdgwqf6j28pf1jjr"))))
4a79e256
SB
2884 (build-system glib-or-gtk-build-system)
2885 (native-inputs
2886 `(("intltool" ,intltool)
2887 ("pkg-config" ,pkg-config)))
2888 (inputs
2889 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2890 ("webkitgtk" ,webkitgtk)))
2891 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2892 (synopsis "API documentation browser for GNOME")
2893 (description
2894 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2895natively with GTK-Doc (the API reference system developed for GTK+ and used
2896throughout GNOME for API documentation).")
2897 (license license:gpl2+)))
ba421ab7
MW
2898
2899(define-public cogl
2900 (package
2901 (name "cogl")
6a55accc 2902 (version "1.22.2")
ba421ab7
MW
2903 (source
2904 (origin
2905 (method url-fetch)
2906 (uri (string-append "mirror://gnome/sources/" name "/"
2907 (version-major+minor version) "/"
2908 name "-" version ".tar.xz"))
2909 (sha256
2910 (base32
6a55accc 2911 "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr"))))
a88d5a0c
MW
2912 ;; NOTE: mutter exports a bundled fork of cogl, so when making changes to
2913 ;; cogl, corresponding changes may be appropriate in mutter as well.
ba421ab7
MW
2914 (build-system gnu-build-system)
2915 (native-inputs
2916 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2917 ("gobject-introspection" ,gobject-introspection)
2918 ;;("xorg-server" ,xorg-server) ; for the test suite
2919 ("pkg-config" ,pkg-config)))
2920 (propagated-inputs
2921 `(("glib" ,glib)
2922 ("gdk-pixbuf" ,gdk-pixbuf)
2923 ("libx11" ,libx11)
2924 ("libxext" ,libxext)
2925 ("libxfixes" ,libxfixes)
2926 ("libxdamage" ,libxdamage)
2927 ("libxcomposite" ,libxcomposite)
2928 ("libxrandr" ,libxrandr)))
2929 (inputs
2930 `(("mesa" ,mesa)
2931 ("cairo" ,cairo)
2932 ("pango" ,pango)
2933 ("gstreamer" ,gstreamer)
2934 ("gst-plugins-base" ,gst-plugins-base)))
2935 (arguments
2936 `(#:configure-flags (list "--enable-cogl-gst"
2937 ;; Arrange to pass an absolute file name to
2938 ;; dlopen for libGL.so.
2939 (string-append "--with-gl-libname="
2940 (assoc-ref %build-inputs "mesa")
2941 "/lib/libGL.so"))
2942 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2943 ;; _FontTransOpen: Unable to Parse address
2944 ;; ${prefix}/share/fonts/X11/misc/
2945 #:tests? #f
2946 #; #:phases
2947 #;
2948 (modify-phases %standard-phases
2949 (add-before 'check 'start-xorg-server
2950 (lambda* (#:key inputs #:allow-other-keys)
2951 ;; The test suite requires a running X server.
2952 (system (format #f "~a/bin/Xvfb :1 &"
2953 (assoc-ref inputs "xorg-server")))
2954 (setenv "DISPLAY" ":1")
2955 #t)))))
2956 (home-page "http://www.cogl3d.org")
2957 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2958 (description
2959 "Cogl is a small library for using 3D graphics hardware to draw pretty
2960pictures. The API departs from the flat state machine style of OpenGL and is
2961designed to make it easy to write orthogonal components that can render
2962without stepping on each others toes.")
2963 (license (list license:expat ; most of the code
2964 license:bsd-3 ; cogl/cogl-point-in-poly.c
2965 license:sgifreeb2.0 ; cogl-path/tesselator/
2966 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2967
2968(define-public clutter
2969 (package
2970 (name "clutter")
6983ba56 2971 (version "1.26.0")
fb182b8a
MW
2972 (source
2973 (origin
2974 (method url-fetch)
2975 (uri (string-append "mirror://gnome/sources/" name "/"
2976 (version-major+minor version) "/"
2977 name "-" version ".tar.xz"))
2978 (sha256
2979 (base32
6983ba56 2980 "01nfjd4k7j2n3agpx2d9ncff86nfsqv4n23465rb9zmk4iw4wlb7"))))
a88d5a0c
MW
2981 ;; NOTE: mutter exports a bundled fork of clutter, so when making changes
2982 ;; to clutter, corresponding changes may be appropriate in mutter as well.
fb182b8a 2983 (build-system gnu-build-system)
600233bd
LC
2984 (outputs '("out"
2985 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2986 (native-inputs
2987 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2988 ("gobject-introspection" ,gobject-introspection)
2989 ("pkg-config" ,pkg-config)
2990 ("xsltproc" ,libxslt)))
2991 (propagated-inputs
2992 `(("cogl" ,cogl)
2993 ("cairo" ,cairo)
2994 ("atk" ,atk)
2995 ("gtk+" ,gtk+)
2996 ("json-glib" ,json-glib)
2997 ("glib" ,glib)
2998 ("libxcomposite" ,libxcomposite)
2999 ("libxdamage" ,libxdamage)
3000 ("libxext" ,libxext)
3001 ("xinput" ,xinput)))
3002 (inputs
3003 `(("libxkbcommon" ,libxkbcommon)
3004 ("udev" ,eudev)))
3005 (arguments
600233bd
LC
3006 `(#:configure-flags (list "--enable-x11-backend=yes"
3007
3008 ;; This produces share/doc/{clutter,cally}.
3009 (string-append "--with-html-dir="
3010 (assoc-ref %outputs "doc")
3011 "/share/doc"))
fb182b8a
MW
3012 ;; XXX FIXME: Get test suite working. It would probably fail in the
3013 ;; same way the cogl tests fail, since clutter is based on cogl.
3014 #:tests? #f))
3015 (home-page "http://www.clutter-project.org")
3016 (synopsis "Open GL based interactive canvas library")
3017 (description
3018 "Clutter is an Open GL based interactive canvas library, designed for
3019creating fast, mainly 2D single window applications such as media box UIs,
3020presentations, kiosk style applications and so on.")
3021 (license license:lgpl2.0+)))
bf7f17ba
MW
3022
3023(define-public clutter-gtk
3024 (package
3025 (name "clutter-gtk")
a6e44835 3026 (version "1.8.2")
bf7f17ba
MW
3027 (source
3028 (origin
3029 (method url-fetch)
3030 (uri (string-append "mirror://gnome/sources/" name "/"
3031 (version-major+minor version) "/"
3032 name "-" version ".tar.xz"))
3033 (sha256
3034 (base32
a6e44835 3035 "153bl9256yjnfcplp7jmgf7lm2zb790zkayjclzsv42l6a3d89ys"))))
bf7f17ba
MW
3036 (build-system gnu-build-system)
3037 (native-inputs
3038 `(("pkg-config" ,pkg-config)
3039 ("gobject-introspection" ,gobject-introspection)))
9a3a8b8e
SB
3040 (propagated-inputs
3041 ;; clutter-gtk.pc refers to all these.
bf7f17ba
MW
3042 `(("clutter" ,clutter)
3043 ("gtk+" ,gtk+)))
3044 (home-page "http://www.clutter-project.org")
3045 (synopsis "Open GL based interactive canvas library GTK+ widget")
3046 (description
3047 "Clutter is an Open GL based interactive canvas library, designed for
3048creating fast, mainly 2D single window applications such as media box UIs,
3049presentations, kiosk style applications and so on.")
3050 (license license:lgpl2.0+)))
86d6a893
MW
3051
3052(define-public clutter-gst
3053 (package
3054 (name "clutter-gst")
70241d9d 3055 (version "3.0.22")
86d6a893
MW
3056 (source
3057 (origin
3058 (method url-fetch)
3059 (uri (string-append "mirror://gnome/sources/" name "/"
3060 (version-major+minor version) "/"
3061 name "-" version ".tar.xz"))
3062 (sha256
3063 (base32
70241d9d 3064 "1m6zwc7xr7lmbwiqav961g7jhc7gp5gb73dm6j93szpa6bxmgz7i"))))
86d6a893
MW
3065 (build-system gnu-build-system)
3066 (native-inputs
3067 `(("glib:bin" ,glib "bin") ; for glib-mkenums
3068 ("pkg-config" ,pkg-config)
3069 ("gobject-introspection" ,gobject-introspection)))
3070 (inputs
3071 `(("clutter" ,clutter)
3072 ("gstreamer" ,gstreamer)
3073 ("gst-plugins-base" ,gst-plugins-base)))
3074 (home-page "http://www.clutter-project.org")
3075 (synopsis "Integration library for using GStreamer with Clutter")
3076 (description
3077 "Clutter-Gst is an integration library for using GStreamer with Clutter.
3078It provides a GStreamer sink to upload frames to GL and an actor that
3079implements the ClutterGstPlayer interface using playbin. Clutter is an Open
3080GL based interactive canvas library.")
3081 (license license:lgpl2.0+)))
607a04ae 3082
30dc88d9
LC
3083(define-public libchamplain
3084 (package
3085 (name "libchamplain")
80f2d23a 3086 (version "0.12.14")
30dc88d9
LC
3087 (source (origin
3088 (method url-fetch)
3089 (uri (string-append
3090 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
3091 version ".tar.xz"))
3092 (sha256
3093 (base32
80f2d23a 3094 "13snnka1jqc5qrgij8bm22xy02pncf3dn5ij3jh4rrpzq7g1sqpi"))))
30dc88d9 3095 (build-system gnu-build-system)
f7c6833f
LF
3096 (arguments '(#:configure-flags '("--enable-vala")))
3097 (native-inputs
3098 `(("gobject-introspection" ,gobject-introspection)
3099 ("pkg-config" ,pkg-config)
3100 ("vala" ,vala)))
30dc88d9
LC
3101 (propagated-inputs
3102 `(("libsoup" ,libsoup)
3103 ("sqlite" ,sqlite)
3104 ("clutter" ,clutter)
3105 ("clutter-gtk" ,clutter-gtk)
3106 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
3107 ("cairo" ,cairo)
3108 ("gtk+3" ,gtk+)
3109 ("glib" ,glib)))
3110 (home-page "http://projects.gnome.org/libchamplain/")
3111 (synopsis "C library providing a ClutterActor to display maps")
3112 (description
3113 "libchamplain is a C library providing a ClutterActor to display maps.
3114It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
3115and Perl bindings are also available. It supports numerous free map sources
3116such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
3117 (license license:lgpl2.1+)))
3118
607a04ae
MW
3119(define-public gom
3120 (package
3121 (name "gom")
0510440b 3122 (version "0.3.2")
607a04ae
MW
3123 (source
3124 (origin
3125 (method url-fetch)
3126 (uri (string-append "mirror://gnome/sources/" name "/"
3127 (version-major+minor version) "/"
3128 name "-" version ".tar.xz"))
3129 (sha256
3130 (base32
0510440b 3131 "1zaqqwwkyiswib3v1v8wafpbifpbpak0nn2kp13pizzn9bwz1s5w"))))
607a04ae
MW
3132 (build-system gnu-build-system)
3133 (native-inputs
3134 `(("intltool" ,intltool)
3135 ("pkg-config" ,pkg-config)
3136 ("gobject-introspection" ,gobject-introspection)))
3137 (inputs
3138 `(("glib" ,glib)
3139 ("gdk-pixbuf" ,gdk-pixbuf)
3140 ("sqlite" ,sqlite)))
3141 ;; XXX TODO: Figure out how to run the test suite.
3142 (arguments `(#:tests? #f))
3143 (home-page "https://wiki.gnome.org/Projects/Gom")
3144 (synopsis "Object mapper from GObjects to SQLite")
3145 (description
3146 "Gom provides an object mapper from GObjects to SQLite. It helps you
3147write applications that need to store structured data as well as make complex
3148queries upon that data.")
3149 (license license:lgpl2.1+)))
b7a3cf11 3150
f09520db
SB
3151(define-public libgames-support
3152 (package
3153 (name "libgames-support")
3154 (version "1.0.2")
3155 (source (origin
3156 (method url-fetch)
3157 (uri (string-append "mirror://gnome/sources/" name "/"
3158 (version-major+minor version) "/"
3159 name "-" version ".tar.xz"))
3160 (sha256
3161 (base32
3162 "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh"))))
3163 (build-system gnu-build-system)
3164 (arguments
3165 '(#:phases
3166 (modify-phases %standard-phases
3167 (add-before 'check 'pre-check
3168 (lambda _
3169 ;; tests require a writable HOME.
3170 (setenv "HOME" (getcwd))
3171 #t)))))
3172 (native-inputs
3173 `(("intltool" ,intltool)
3174 ("pkg-config" ,pkg-config)
3175 ("vala" ,vala)))
3176 (propagated-inputs
3177 ;; Required by libgames-support-1.0.pc
3178 `(("gtk+" ,gtk+)
3179 ("libgee" ,libgee)))
3180 (home-page "https://www.gnome.org/")
3181 (synopsis "Useful functionality shared among GNOME games")
3182 (description
3183 "libgames-support is a small library intended for internal use by
3184GNOME Games, but it may be used by others.")
3185 (license license:lgpl3+)))
3186
43ec2604
MW
3187(define-public libgnome-games-support
3188 (package
3189 (inherit libgames-support)
3190 (name "libgnome-games-support")
3191 (version "1.2.1")
3192 (source (origin
3193 (method url-fetch)
3194 (uri (string-append "mirror://gnome/sources/" name "/"
3195 (version-major+minor version) "/"
3196 name "-" version ".tar.xz"))
3197 (sha256
3198 (base32
3199 "1rsyf5hbjim7zpk1yar3gv65g1nmw6zbbc0smrmxsfk0f9n3j9m6"))))))
3200
b7a3cf11
SB
3201(define-public gnome-klotski
3202 (package
3203 (name "gnome-klotski")
f4eae76f 3204 (version "3.22.1")
b7a3cf11
SB
3205 (source (origin
3206 (method url-fetch)
3207 (uri (string-append "mirror://gnome/sources/" name "/"
3208 (version-major+minor version) "/"
3209 name "-" version ".tar.xz"))
3210 (sha256
3211 (base32
f4eae76f 3212 "04ragvrz29sydi2kf1zk2aimi3b3hn34jrndfd2lx6h8l45anq3q"))))
b7a3cf11
SB
3213 (build-system glib-or-gtk-build-system)
3214 (native-inputs
3215 `(("desktop-file-utils" ,desktop-file-utils)
3216 ("intltool" ,intltool)
3217 ("itstool" ,itstool)
bcb354ad
SB
3218 ("pkg-config" ,pkg-config)
3219 ("xmllint" ,libxml2)))
b7a3cf11
SB
3220 (inputs
3221 `(("gtk+" ,gtk+)
f4eae76f 3222 ("libgnome-games-support" ,libgnome-games-support)
b7a3cf11
SB
3223 ("librsvg" ,librsvg)))
3224 (home-page "https://wiki.gnome.org/Apps/Klotski")
3225 (synopsis "Sliding block puzzles")
3226 (description
3227 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
3228the patterned block to the area bordered by green markers. To do so, you will
3229need to slide other blocks out of the way. Complete each puzzle in as few moves
3230as possible!")
3231 (license license:gpl2+)))
8d4791bf
MW
3232
3233(define-public grilo
3234 (package
3235 (name "grilo")
e7305878 3236 (version "0.3.2")
8d4791bf
MW
3237 (source
3238 (origin
3239 (method url-fetch)
3240 (uri (string-append "mirror://gnome/sources/" name "/"
3241 (version-major+minor version) "/"
3242 name "-" version ".tar.xz"))
3243 (sha256
3244 (base32
e7305878 3245 "0nvzr2gfk2mpzf99442zawv0n5yjcyy50rqkrvdsibknbm56hvzj"))))
8d4791bf
MW
3246 (build-system gnu-build-system)
3247 (native-inputs
3248 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3249 ("intltool" ,intltool)
3250 ("pkg-config" ,pkg-config)
3251 ("gobject-introspection" ,gobject-introspection)))
3252 (inputs
3253 `(("glib" ,glib)
3254 ("gtk+" ,gtk+)
3255 ("libxml2" ,libxml2)
3256 ;; XXX TODO: Add oauth
3257 ("libsoup" ,libsoup)
e7305878 3258 ("nettle" ,nettle)
8d4791bf
MW
3259 ("totem-pl-parser" ,totem-pl-parser)))
3260 (arguments
3261 `(#:phases
3262 (modify-phases %standard-phases
3263 (add-after 'unpack 'fix-introspection-install-dir
3264 (lambda* (#:key outputs #:allow-other-keys)
3265 (let ((out (assoc-ref outputs "out")))
3266 (substitute* '("src/Makefile.in"
3267 "libs/pls/Makefile.in"
3268 "libs/net/Makefile.in")
3269 (("@INTROSPECTION_GIRDIR@")
3270 (string-append out "/share/gir-1.0/"))
3271 (("@INTROSPECTION_TYPELIBDIR@")
3272 (string-append out "/lib/girepository-1.0/")))))))))
3273 (native-search-paths
3274 (list (search-path-specification
3275 (variable "GRL_PLUGIN_PATH")
3276 (files (list (string-append "lib/grilo-"
3277 (version-major+minor version)))))))
3278 (home-page "http://live.gnome.org/Grilo")
3279 (synopsis "Framework for discovering and browsing media")
3280 (description
3281 "Grilo is a framework focused on making media discovery and browsing easy
3282for application developers.")
3283 (license license:lgpl2.1+)))
7b212526
MW
3284
3285(define-public grilo-plugins
3286 (package
3287 (name "grilo-plugins")
22753632 3288 (version "0.3.3")
7b212526
MW
3289 (source
3290 (origin
3291 (method url-fetch)
3292 (uri (string-append "mirror://gnome/sources/" name "/"
3293 (version-major+minor version) "/"
3294 name "-" version ".tar.xz"))
3295 (sha256
3296 (base32
22753632 3297 "172vr1y98d2mzlmg5akjn4ibrcj3gh22cwnb3cv9rvvzhj3yhrpy"))))
7b212526
MW
3298 (build-system gnu-build-system)
3299 (native-inputs
3300 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3301 ("intltool" ,intltool)
3302 ("itstool" ,itstool)
3303 ("pkg-config" ,pkg-config)))
3304 (inputs
3305 `(("grilo" ,grilo)
924ae80f 3306 ("nettle" ,nettle) ; XXX: required by libgrlpls-0.3.la
7b212526
MW
3307 ("glib" ,glib)
3308 ("libxml2" ,libxml2)
3309 ("sqlite" ,sqlite)
3310 ("gom" ,gom)
3311 ;; XXX TODO: Add oauth
3312 ;; XXX TODO: Add goa
3313 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
3314 ;; XXX TODO: Add lua (needs help finding it)
3315 ("json-glib" ,json-glib)
3316 ("avahi" ,avahi)
3317 ("gmime" ,gmime)
3318 ("libsoup" ,libsoup)
3319 ("libarchive" ,libarchive)
3320 ("totem-pl-parser" ,totem-pl-parser)))
3321 (arguments
3322 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
3323 %output
3324 "/lib/grilo-"
3325 ,(version-major+minor version)))
3326 ;; XXX FIXME: Try to get the test suite working. It appears to require
3327 ;; a working system dbus. Inside the build container, all tests fail
3328 ;; with: "assertion failed: (source)". Outside of the build container,
3329 ;; most tests succeed.
3330 #:tests? #f))
3331 (home-page "http://live.gnome.org/Grilo")
3332 (synopsis "Plugins for the Grilo media discovery library")
3333 (description
3334 "Grilo is a framework focused on making media discovery and browsing easy
3335for application developers.")
3336 (license license:lgpl2.1+)))
4e3fc547
MW
3337
3338(define-public totem
3339 (package
3340 (name "totem")
7f760a84 3341 (version "3.22.0")
4e3fc547
MW
3342 (source
3343 (origin
3344 (method url-fetch)
3345 (uri (string-append "mirror://gnome/sources/" name "/"
3346 (version-major+minor version) "/"
3347 name "-" version ".tar.xz"))
3348 (sha256
3349 (base32
7f760a84 3350 "1sjgjqhpsh3kipnbc8y31xz64s61xjayxq98pi0vkgbl2rdmnsh2"))))
4e3fc547
MW
3351 (build-system glib-or-gtk-build-system)
3352 (native-inputs
3353 `(("pkg-config" ,pkg-config)
3354 ("desktop-file-utils" ,desktop-file-utils)
3355 ("gobject-introspection" ,gobject-introspection)
3356 ("intltool" ,intltool)
bcb354ad
SB
3357 ("itstool" ,itstool)
3358 ("xmllint" ,libxml2)))
4e3fc547
MW
3359 (propagated-inputs
3360 `(("dconf" ,dconf)))
3361 (inputs
3362 `(("gtk+" ,gtk+)
3363 ("gdk-pixbuf" ,gdk-pixbuf)
3364 ("atk" ,atk)
3365 ("cairo" ,cairo)
3366 ("dbus-glib" ,dbus-glib)
3367 ("clutter" ,clutter)
3368 ("clutter-gtk" ,clutter-gtk)
3369 ("clutter-gst" ,clutter-gst)
3370 ("xproto" ,xproto)
3371 ("libxxf86vm" ,libxxf86vm)
3372 ("libxtst" ,libxtst)
3373 ("libxrandr" ,libxrandr)
3374 ("libxml2" ,libxml2)
3375 ("libsoup" ,libsoup)
3376 ("libpeas" ,libpeas)
3377 ("librsvg" ,librsvg)
3378 ("lirc" ,lirc)
3379 ("gnome-desktop" ,gnome-desktop)
3380 ("gstreamer" ,gstreamer)
3381 ("gst-plugins-base" ,gst-plugins-base)
3382 ("gst-plugins-good" ,gst-plugins-good)
3383 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3384 ("adwaita-icon-theme" ,adwaita-icon-theme)
3385 ;; XXX We use python-2 because libxml2 because itstool (which needs
3386 ;; libxml) currently uses python-2.
3387 ("python" ,python-2)
3388 ("python-pygobject" ,python2-pygobject)
3389 ;; XXX TODO pylint needed for python support
3390 ("totem-pl-parser" ,totem-pl-parser)
3391 ("grilo" ,grilo)
3392 ("grilo-plugins" ,grilo-plugins)
3393 ("nettle" ,nettle)
3394 ("vala" ,vala)))
3395 (arguments
3396 `(#:phases
3397 (modify-phases %standard-phases
3398 (add-after
3399 'install 'wrap-totem
3400 (lambda* (#:key inputs outputs #:allow-other-keys)
3401 (let ((out (assoc-ref outputs "out"))
3402 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3403 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3404 (wrap-program (string-append out "/bin/totem")
3405 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3406 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3407 #t)))))
3408 (home-page "https://wiki.gnome.org/Apps/Videos")
3409 (synopsis "Simple media player for GNOME based on GStreamer")
3410 (description "Totem is a simple yet featureful media player for GNOME
3411which can read a large number of file formats.")
3412 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3413 ;; to be used and distributed together with GStreamer and Totem. See
3414 ;; file://COPYING in the source distribution for details.
3415 (license license:gpl2+)))
f0afb0c8
DH
3416
3417(define-public rhythmbox
3418 (package
3419 (name "rhythmbox")
4faa8abe 3420 (version "3.4.1")
f0afb0c8
DH
3421 (source (origin
3422 (method url-fetch)
3423 (uri (string-append "mirror://gnome/sources/" name "/"
3424 (version-major+minor version) "/"
3425 name "-" version ".tar.xz"))
3426 (sha256
3427 (base32
4faa8abe 3428 "1dj1hgdyhmwzs6h2zr89b1ipk0p6g7x74rfz56a5yjds3ik8d7q3"))))
f0afb0c8
DH
3429 (build-system glib-or-gtk-build-system)
3430 (arguments
3431 `(#:configure-flags
3432 (list "--enable-lirc"
3433 "--enable-python"
3434 "--enable-vala"
3435 "--with-brasero"
3436 "--with-gudev"
3437 "--with-libsecret")
3438 #:phases
3439 (modify-phases %standard-phases
3440 (add-after
3441 'install 'wrap-rhythmbox
3442 (lambda* (#:key inputs outputs #:allow-other-keys)
3443 (let ((out (assoc-ref outputs "out"))
3444 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3445 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
349cef58
TGR
3446 (grl-plugin-path (getenv "GRL_PLUGIN_PATH"))
3447 (python-path (getenv "PYTHONPATH")))
f0afb0c8
DH
3448 (wrap-program (string-append out "/bin/rhythmbox")
3449 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3450 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
349cef58
TGR
3451 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))
3452 `("PYTHONPATH" ":" prefix (,python-path))))
f0afb0c8
DH
3453 #t)))))
3454 (propagated-inputs
3455 `(("dconf" ,dconf)))
3456 (native-inputs
bcb354ad
SB
3457 `(("itstool" ,itstool)
3458 ("intltool" ,intltool)
f0afb0c8
DH
3459 ("glib" ,glib "bin")
3460 ("gobject-introspection" ,gobject-introspection)
3461 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3462 ("pkg-config" ,pkg-config)
3463 ("xmllint" ,libxml2)))
f0afb0c8
DH
3464 (inputs
3465 `(("json-glib" ,json-glib)
3466 ("tdb" ,tdb)
3467 ("gnome-desktop" ,gnome-desktop)
3468 ("python" ,python)
3469 ("python-pygobject" ,python2-pygobject)
3470 ("vala" ,vala)
3471 ("gmime" ,gmime)
3472 ("nettle" ,nettle)
f0afb0c8
DH
3473 ("adwaita-icon-theme" ,adwaita-icon-theme)
3474 ("grilo" ,grilo)
3475 ("grilo-plugins" ,grilo-plugins)
3476 ("gstreamer" ,gstreamer)
3477 ("gst-plugins-base" ,gst-plugins-base)
3478 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3479 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3480 ("libgudev" ,libgudev)
f0afb0c8
DH
3481 ;;("libmtp" ,libmtp) FIXME: Not detected
3482 ("libsecret" ,libsecret)
3483 ("libsoup" ,libsoup)
3484 ("libnotify" ,libnotify)
3485 ("libpeas" ,libpeas)
3486 ("lirc" ,lirc)
3487 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3488 ;;("clutter" ,clutter)
3489 ;;("clutter-gtk" ,clutter-gtk)
3490 ;;("clutter-gst" ,clutter-gst)
3491 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3492 ("atk" ,atk)
3493 ("pango" ,pango)
3494 ("gtk+" ,gtk+)
3495 ;; TODO:
3496 ;; * libgpod
3497 ;; * mx
f0afb0c8
DH
3498 ("brasero" ,brasero)))
3499 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3500 (synopsis "Music player for GNOME")
3501 (description "Rhythmbox is a music playing application for GNOME. It
3502supports playlists, song ratings, and any codecs installed through gstreamer.")
3503 (license license:gpl2+)))
f70d8383
DH
3504
3505(define-public eog
3506 (package
3507 (name "eog")
f635aa8c 3508 (version "3.20.5")
f70d8383
DH
3509 (source (origin
3510 (method url-fetch)
3511 (uri (string-append "mirror://gnome/sources/" name "/"
3512 (version-major+minor version) "/"
3513 name "-" version ".tar.xz"))
3514 (sha256
3515 (base32
f635aa8c 3516 "0fqvfc4y1lbv0awh8dbx9khfha0hdkmnj1lzw5jq0l7jmahwbrz6"))))
f70d8383
DH
3517 (build-system glib-or-gtk-build-system)
3518 (arguments
3519 `(#:phases
3520 (modify-phases %standard-phases
3521 (add-after
3522 'install 'wrap-eog
3523 (lambda* (#:key outputs #:allow-other-keys)
3524 (let ((out (assoc-ref outputs "out"))
3525 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3526 (wrap-program (string-append out "/bin/eog")
3527 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3528 #t)))))
3529 (propagated-inputs
3530 `(("dconf" ,dconf)))
3531 (native-inputs
3532 `(("intltool" ,intltool)
b3546174 3533 ("itstool" ,itstool)
f70d8383
DH
3534 ("glib" ,glib "bin")
3535 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3536 ("pkg-config" ,pkg-config)
3537 ("xmllint" ,libxml2)))
f70d8383
DH
3538 (inputs
3539 `(("gnome-desktop" ,gnome-desktop)
3540 ("shared-mime-info" ,shared-mime-info)
3541 ("adwaita-icon-theme" ,adwaita-icon-theme)
3542 ("exempi" ,exempi)
3543 ("lcms" ,lcms)
3544 ("libexif" ,libexif)
3545 ("libpeas" ,libpeas)
3546 ("libjpeg" ,libjpeg)
3547 ("librsvg" ,librsvg)
3548 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3549 ("gtk+" ,gtk+)))
3550 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3551 (synopsis "GNOME image viewer")
3552 (description "Eye of GNOME is the GNOME image viewer. It
3553supports image conversion, rotation, and slideshows.")
3554 (license license:gpl2+)))
41af5e7b
SB
3555
3556(define-public libgudev
3557 (package
3558 (name "libgudev")
3559 (version "230")
3560 (source (origin
3561 (method url-fetch)
3562 (uri (string-append "mirror://gnome/sources/" name "/"
3563 version "/" name "-" version ".tar.xz"))
3564 (sha256
3565 (base32
3566 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3567 (build-system gnu-build-system)
3568 (native-inputs
3569 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3570 ("gobject-introspection" ,gobject-introspection)
3571 ("pkg-config" ,pkg-config)))
3572 (propagated-inputs
3573 `(("glib" ,glib))) ; required by gudev-1.0.pc
3574 (inputs
3575 `(("udev" ,eudev)))
3576 (home-page "https://wiki.gnome.org/Projects/libgudev")
3577 (synopsis "GObject bindings for libudev")
3578 (description
3579 "This library provides GObject bindings for libudev. It was originally
3580part of udev-extras, then udev, then systemd. It's now a project on its own.")
3581 (license license:lgpl2.1+)))
3dc8828f
SB
3582
3583(define-public gvfs
3584 (package
3585 (name "gvfs")
8852ca24 3586 (version "1.30.3")
3dc8828f
SB
3587 (source (origin
3588 (method url-fetch)
3589 (uri (string-append "mirror://gnome/sources/" name "/"
3590 (version-major+minor version) "/"
3591 name "-" version ".tar.xz"))
3592 (sha256
3593 (base32
8852ca24 3594 "0xgis1kgglnazy1vm66xiqyz8yvvmiad3h0g3agg7ryai6aa495q"))))
3dc8828f
SB
3595 (build-system gnu-build-system)
3596 (arguments
3597 '(#:tests? #f)) ; XXX: requiring `pidof'
3598 (native-inputs
3599 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3600 ("intltool" ,intltool)
3601 ("pkg-config" ,pkg-config)
3602 ("xsltproc" ,libxslt)))
3603 (inputs
3604 `(("avahi" ,avahi)
3605 ("docbook-xml" ,docbook-xml-4.2)
3606 ("docbook-xsl" ,docbook-xsl)
3607 ("dbus" ,dbus)
3608 ("fuse" ,fuse)
24a78aa6 3609 ("gcr" ,gcr)
3dc8828f
SB
3610 ("glib" ,glib)
3611 ("libarchive" ,libarchive)
3612 ("libbluray" ,libbluray)
8852ca24 3613 ("libcap" ,libcap)
3dc8828f
SB
3614 ("libcdio-paranoia" ,libcdio-paranoia)
3615 ("libgcrypt" ,libgcrypt)
3616 ("libgphoto2" ,libgphoto2)
3617 ("libgudev" ,libgudev)
3618 ("libmtp" ,libmtp)
3619 ("libsecret" ,libsecret)
3620 ("libsmbclient" ,samba)
3621 ("libsoup" ,libsoup)
3622 ("libxml2" ,libxml2)
3623 ("nettle" ,nettle) ; XXX: required by libarchive.pc
8852ca24 3624 ("polkit" ,polkit)
3dc8828f
SB
3625 ("udisks" ,udisks)))
3626 (home-page "https://wiki.gnome.org/gvfs/")
8f65585b 3627 (synopsis "Userspace virtual file system for GIO")
3dc8828f 3628 (description
8f65585b 3629 "GVFS is a userspace virtual file system designed to work with the I/O
3dc8828f
SB
3630abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3631to all applications using the GIO API. It also supports exposing the GVFS
3632mounts to non-GIO applications using FUSE.
3633
3634GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3635DAV, and others.")
3636 (license license:lgpl2.0+)))
7c88b6bd
AW
3637
3638(define-public gusb
3639 (package
3640 (name "gusb")
6b7d7e9b 3641 (version "0.2.9")
7c88b6bd
AW
3642 (source (origin
3643 (method url-fetch)
3644 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3645 "gusb_"
3646 (string-join (string-split version #\.)
3647 "_")
3648 ".tar.gz"))
3649 (sha256
3650 (base32
6b7d7e9b 3651 "1500mgpidmnjfkcz1fzqkbqv547iy1cvr8bwf3k9vqgqcjx3844n"))))
7c88b6bd
AW
3652 (build-system gnu-build-system)
3653 (native-inputs
3654 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3655 ("gobject-introspection" ,gobject-introspection)
3656 ("pkg-config" ,pkg-config)
3657 ("vala" ,vala)
3658 ("autoconf" ,autoconf)
3659 ("automake" ,automake)
3660 ("libtool" ,libtool)
3661 ("gtk-doc" ,gtk-doc)))
3662 (propagated-inputs
3663 ;; Both of these are required by gusb.pc.
3664 `(("glib" ,glib)
3665 ("libusb" ,libusb)))
3666 (arguments
3667 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3668 #:phases
3669 (modify-phases %standard-phases
3670 (add-after 'unpack 'autogen
3671 (lambda _
3672 (and (zero? (system* "gtkdocize"))
3673 (zero? (system* "autoreconf" "-vif"))))))))
8f1640ed 3674 (home-page "https://github.com/hughsie/libgusb")
a124bbd2 3675 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3676 (description
3677 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3678asynchronous control, bulk and interrupt transfers with proper cancellation
3679and integration into a mainloop. This makes it easy to integrate low level
3680USB transfers with your high-level application or system daemon.")
3681 (license license:lgpl2.1+)))
0abe1d86
AW
3682
3683(define-public simple-scan
3684 (package
3685 (name "simple-scan")
f0bce026 3686 (version "3.24.0")
0abe1d86
AW
3687 (source (origin
3688 (method url-fetch)
3689 (uri (string-append "https://launchpad.net/simple-scan/"
3690 (version-major+minor version) "/"
3691 version "/+download/simple-scan-"
3692 version ".tar.xz"))
3693 (sha256
3694 (base32
f0bce026 3695 "19klldnbnknpq6ikz9x93861ywcyg0pg9ngijvw66ncbnb7lx912"))))
0abe1d86
AW
3696 (build-system glib-or-gtk-build-system)
3697 (inputs
3698 `(("gtk" ,gtk+)
3699 ("zlib" ,zlib)
3700 ("cairo" ,cairo)
3701 ("gdk-pixbuf" ,gdk-pixbuf)
3702 ("gusb" ,gusb)
4c928743 3703 ("libsane" ,sane-backends)))
0abe1d86 3704 (native-inputs
b94a6ca0 3705 `(("gettext" ,gettext-minimal)
0abe1d86
AW
3706 ("itstool" ,itstool)
3707 ("colord" ,colord)
3708 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3709 ("pkg-config" ,pkg-config)
bcb354ad
SB
3710 ("vala" ,vala)
3711 ("xmllint" ,libxml2)))
fb9ca511
TGR
3712 (arguments
3713 '(#:configure-flags '("--disable-packagekit")
3714 #:phases
3715 (modify-phases %standard-phases
3716 (add-after 'unpack 'clean
3717 (lambda _
3718 ;; Remove a left-over reference to PackageKit.
3719
3720 ;; https://bugs.launchpad.net/simple-scan/+bug/1462769
3721
3722 ;; There are some generated C files erroneously
3723 ;; included in the source distribution, and this
3724 ;; one breaks the build by referring to a
3725 ;; non-existent header (packagekit.h)
3726 (delete-file "src/ui.c"))))))
0abe1d86
AW
3727 (home-page "https://launchpad.net/simple-scan")
3728 (synopsis "Document and image scanner")
3729 (description "Simple Scan is an easy-to-use application, designed to let
3730users connect their scanner and quickly have the image/document in an
3731appropriate format. Simple Scan is basically a frontend for SANE - which is
3732the same backend as XSANE uses. This means that all existing scanners will
3733work and the interface is well tested.")
3734 (license license:gpl3+)))
7549f984
SB
3735
3736(define-public epiphany
3737 (package
3738 (name "epiphany")
7aeb4ffa 3739 (version "3.22.7")
7549f984
SB
3740 (source (origin
3741 (method url-fetch)
3742 (uri (string-append "mirror://gnome/sources/" name "/"
3743 (version-major+minor version) "/"
3744 name "-" version ".tar.xz"))
3745 (sha256
3746 (base32
7aeb4ffa 3747 "1167x5s0kawkqngjnzml0a11ib18raxqc4p11kacivj4jv0pwnx1"))))
7549f984
SB
3748 (build-system glib-or-gtk-build-system)
3749 (arguments
3750 ;; FIXME: tests run under Xvfb, but fail with:
3751 ;; /src/bookmarks/ephy-bookmarks/create:
3752 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3753 ;; subsystem
3754 ;; FAIL
6f48d9db
MW
3755 '(#:tests? #f
3756 #:configure-flags '("CFLAGS=-std=gnu99")))
80a747c4
SB
3757 (propagated-inputs
3758 `(("dconf" ,dconf)))
7549f984
SB
3759 (native-inputs
3760 `(("intltool" ,intltool)
3761 ("itstool" ,itstool)
bcb354ad
SB
3762 ("pkg-config" ,pkg-config)
3763 ("xmllint" ,libxml2)))
7549f984
SB
3764 (inputs
3765 `(("avahi" ,avahi)
3766 ("gcr" ,gcr)
3767 ("glib-networking" ,glib-networking)
3768 ("gnome-desktop" ,gnome-desktop)
3769 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3770 ("iso-codes" ,iso-codes)
3771 ("libnotify" ,libnotify)
3772 ("libsecret" ,libsecret)
7549f984 3773 ("libxslt" ,libxslt)
7549f984
SB
3774 ("sqlite" ,sqlite)
3775 ("webkitgtk" ,webkitgtk)))
3776 (home-page "https://wiki.gnome.org/Apps/Web")
3777 (synopsis "GNOME web browser")
3778 (description
3779 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3780principles are simplicity and standards compliance.")
3781 (license license:gpl2+)))
a3856b2c
SB
3782
3783(define-public d-feet
3784 (package
3785 (name "d-feet")
7d04b13c 3786 (version "0.3.11")
a3856b2c
SB
3787 (source (origin
3788 (method url-fetch)
3789 (uri (string-append "mirror://gnome/sources/" name "/"
3790 (version-major+minor version) "/"
3791 name "-" version ".tar.xz"))
3792 (sha256
3793 (base32
7d04b13c 3794 "1hmrijm4d9vwzx2r8qzzsy8ccpj79l1y6cc569n9jjzqcq699p53"))))
a3856b2c
SB
3795 (build-system glib-or-gtk-build-system)
3796 (arguments
3797 '(#:out-of-source? #f ; tests need to run in the source directory.
3798 #:phases
3799 (modify-phases %standard-phases
3800 (add-before
3801 'check 'pre-check
86aff791 3802 (lambda _
a3856b2c
SB
3803 ;; The test suite requires a running X server.
3804 (system "Xvfb :1 &")
3805 (setenv "DISPLAY" ":1")
3806 ;; Don't fail on missing '/etc/machine-id'.
3807 (setenv "DBUS_FATAL_WARNINGS" "0")
3808 ;; tests.py and window.py don't meet E402:
3809 ;; E402 module level import not at top of file
3810 (substitute* "src/tests/Makefile"
86aff791
MW
3811 (("--ignore=E123") "--ignore=E123,E402"))
3812 #t))
a3856b2c
SB
3813 (add-after
3814 'install 'wrap-program
3815 (lambda* (#:key outputs #:allow-other-keys)
3816 (let ((prog (string-append (assoc-ref outputs "out")
3817 "/bin/d-feet")))
3818 (wrap-program prog
3819 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3820 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3821 #t))))))
a3856b2c
SB
3822 (native-inputs
3823 `(("intltool" ,intltool)
3824 ("itstool" ,itstool)
3825 ("pkg-config" ,pkg-config)
3826 ("python-pep8" ,python-pep8)
3827 ("xmllint" ,libxml2)
3828 ("xorg-server" ,xorg-server)))
3829 (inputs
3830 `(("gobject-introspection" ,gobject-introspection)
3831 ("gtk+" ,gtk+)
3832 ("python" ,python-wrapper)
3833 ("python-pygobject" ,python-pygobject)))
3834 (home-page "https://wiki.gnome.org/Apps/DFeet")
3835 (synopsis "D-Bus debugger")
3836 (description
3837 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3838of running programs and invoke methods on those interfaces.")
3839 (license license:gpl2+)))
c3b97bd9
SB
3840
3841(define-public yelp-xsl
3842 (package
3843 (name "yelp-xsl")
27ad5743 3844 (version "3.20.1")
c3b97bd9
SB
3845 (source (origin
3846 (method url-fetch)
3847 (uri (string-append "mirror://gnome/sources/" name "/"
3848 (version-major+minor version) "/"
3849 name "-" version ".tar.xz"))
3850 (sha256
3851 (base32
27ad5743 3852 "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
c3b97bd9
SB
3853 (build-system gnu-build-system)
3854 (native-inputs
3855 `(("intltool" ,intltool)
3856 ("itstool" ,itstool)
3857 ("xmllint" ,libxml2)))
3858 (home-page "https://wiki.gnome.org/Apps/Yelp")
3859 (synopsis "XSL stylesheets for Yelp")
3860 (description
3861 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3862to format Docbook and Mallard documents.")
3863 (license license:gpl2+)))
de3d612a
SB
3864
3865(define-public yelp
3866 (package
3867 (name "yelp")
491cc0dc 3868 (version "3.22.0")
de3d612a
SB
3869 (source (origin
3870 (method url-fetch)
3871 (uri (string-append "mirror://gnome/sources/" name "/"
3872 (version-major+minor version) "/"
3873 name "-" version ".tar.xz"))
3874 (sha256
3875 (base32
491cc0dc 3876 "13kpi0qmnfx2xwizyhmf5i5xaw9ckcn1k7v0289p7als4dybf5l6"))))
de3d612a
SB
3877 (build-system glib-or-gtk-build-system)
3878 (native-inputs
3879 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3880 ("intltool" ,intltool)
3881 ("itstool" ,itstool)
3882 ("pkg-config" ,pkg-config)))
3883 (propagated-inputs
3884 `(("dconf" ,dconf)))
3885 (inputs
ad1b7d8b
SB
3886 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3887 ("libxslt" ,libxslt)
de3d612a 3888 ("sqlite" ,sqlite)
4c28ca1d
SB
3889 ("webkitgtk" ,webkitgtk)
3890 ("yelp-xsl" ,yelp-xsl)))
de3d612a
SB
3891 (home-page "https://wiki.gnome.org/Apps/Yelp")
3892 (synopsis "GNOME help browser")
3893 (description
3894 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3895man, info, and HTML documents. It can locate documents according to the
3896freedesktop.org help system specification.")
3897 (license license:gpl2+)))
122d0d10
SB
3898
3899(define-public yelp-tools
3900 (package
3901 (name "yelp-tools")
50695955 3902 (version "3.18.0")
122d0d10
SB
3903 (source (origin
3904 (method url-fetch)
3905 (uri (string-append "mirror://gnome/sources/" name "/"
3906 (version-major+minor version) "/"
3907 name "-" version ".tar.xz"))
3908 (sha256
3909 (base32
50695955 3910 "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
122d0d10
SB
3911 (build-system gnu-build-system)
3912 (native-inputs
3913 `(("pkg-config" ,pkg-config)))
3914 (propagated-inputs
3915 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3916 `(("itstool" ,itstool)
3917 ("xmllint" ,libxml2)
3918 ("xsltproc" ,libxslt)))
3919 (inputs
3920 `(("yelp-xsl" ,yelp-xsl)))
3921 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3922 (synopsis "Yelp documentation tools")
3923 (description
3924 "Yelp-tools is a collection of scripts and build utilities to help create,
3925manage, and publish documentation for Yelp and the web. Most of the heavy
3926lifting is done by packages like yelp-xsl and itstool. This package just
3927wraps things up in a developer-friendly way.")
3928 (license license:gpl2+)))
af8f9f23
RW
3929
3930(define-public libgee
3931 (package
3932 (name "libgee")
e3167771 3933 (version "0.18.1")
af8f9f23
RW
3934 (source (origin
3935 (method url-fetch)
3936 (uri (string-append "mirror://gnome/sources/" name "/"
3937 (version-major+minor version) "/"
3938 name "-" version ".tar.xz"))
3939 (sha256
3940 (base32
e3167771 3941 "18ir5264bhdg76kcjn8i5bfs1vz89qqn2py20aavm2cwbaz6ns4r"))))
af8f9f23
RW
3942 (build-system gnu-build-system)
3943 (arguments
3944 `(#:phases
3945 (modify-phases %standard-phases
3946 (add-after 'unpack 'fix-introspection-install-dir
3947 (lambda* (#:key outputs #:allow-other-keys)
3948 (let ((out (assoc-ref outputs "out")))
3949 (substitute* "gee/Makefile.in"
3950 (("@INTROSPECTION_GIRDIR@")
3951 (string-append out "/share/gir-1.0/"))
3952 (("@INTROSPECTION_TYPELIBDIR@")
3953 (string-append out "/lib/girepository-1.0/")))))))))
3954 (native-inputs
3955 `(("glib" ,glib "bin")
3956 ("pkg-config" ,pkg-config)))
3957 (inputs
3958 `(("glib" ,glib)
3959 ("gobject-introspection" ,gobject-introspection)))
3960 (home-page "https://wiki.gnome.org/Projects/Libgee")
3961 (synopsis "GObject collection library")
3962 (description
3963 "Libgee is a utility library providing GObject-based interfaces and
3964classes for commonly used data structures.")
3965 (license license:lgpl2.1+)))
b0f9c4b8
RW
3966
3967(define-public gexiv2
3968 (package
3969 (name "gexiv2")
2456d97b 3970 (version "0.10.4")
b0f9c4b8
RW
3971 (source (origin
3972 (method url-fetch)
3973 (uri (string-append "mirror://gnome/sources/" name "/"
3974 (version-major+minor version) "/"
3975 name "-" version ".tar.xz"))
3976 (sha256
3977 (base32
2456d97b 3978 "190www3b61spfgwx42jw8h5hsz2996jcxky48k63468avjpk33dd"))))
b0f9c4b8
RW
3979 (build-system gnu-build-system)
3980 (native-inputs
3981 `(("glib" ,glib "bin")
3982 ("pkg-config" ,pkg-config)))
3983 (propagated-inputs
3984 ;; Listed in "Requires" section of gexiv2.pc
3985 `(("exiv2" ,exiv2)))
3986 (inputs
3987 `(("glib" ,glib)
3988 ("gobject-introspection" ,gobject-introspection)))
3989 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3990 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3991 (description
3992 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3993allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3994metadata in photo and video files of various formats.")
3995 (license license:gpl2+)))
fed5a689
RW
3996
3997(define-public shotwell
3998 (package
3999 (name "shotwell")
b5ed0b9b 4000 (version "0.25.5")
fed5a689
RW
4001 (source (origin
4002 (method url-fetch)
4003 (uri (string-append "mirror://gnome/sources/" name "/"
4004 (version-major+minor version) "/"
4005 name "-" version ".tar.xz"))
4006 (sha256
4007 (base32
b5ed0b9b 4008 "10pv3v789hky8h7ladqzzmgvkmgy3c41n4xz0nnyjmpycwl26g29"))))
fed5a689 4009 (build-system glib-or-gtk-build-system)
735b8db6
TGR
4010 (propagated-inputs
4011 `(("dconf" ,dconf)))
fed5a689
RW
4012 (native-inputs
4013 `(("pkg-config" ,pkg-config)
f819c21d 4014 ("itstool" ,itstool)
b94a6ca0 4015 ("gettext" ,gettext-minimal)
77e9c993 4016 ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
735b8db6
TGR
4017 ("itstool" ,itstool)
4018 ("vala" ,vala)))
fed5a689 4019 (inputs
735b8db6
TGR
4020 `(("glib:bin" ,glib "bin")
4021 ("gstreamer" ,gstreamer)
fed5a689 4022 ("gst-plugins-base" ,gst-plugins-base)
fed5a689
RW
4023 ("libgee" ,libgee)
4024 ("gexiv2" ,gexiv2)
4025 ("libraw" ,libraw)
4026 ("json-glib" ,json-glib)
7108425c 4027 ("webkitgtk" ,webkitgtk)
fed5a689
RW
4028 ("sqlite" ,sqlite)
4029 ("libsoup" ,libsoup)
4030 ("libxml2" ,libxml2)
fed5a689 4031 ("libgudev" ,libgudev)
522fc32e
LF
4032 ("libgphoto2" ,libgphoto2)
4033 ("gcr" ,gcr)))
fed5a689
RW
4034 (home-page "https://wiki.gnome.org/Apps/Shotwell")
4035 (synopsis "Photo manager for GNOME 3")
4036 (description
4037 "Shotwell is a digital photo manager designed for the GNOME desktop
4038environment. It allows you to import photos from disk or camera, organize
4039them by keywords and events, view them in full-window or fullscreen mode, and
4040share them with others via social networking and more.")
4041 (license license:lgpl2.1+)))
293ff8b2
DT
4042
4043(define-public file-roller
4044 (package
4045 (name "file-roller")
e6f5e6b6 4046 (version "3.22.2")
293ff8b2
DT
4047 (source (origin
4048 (method url-fetch)
4049 (uri (string-append "mirror://gnome/sources/" name "/"
4050 (version-major+minor version) "/"
4051 name "-" version ".tar.xz"))
4052 (sha256
4053 (base32
e6f5e6b6 4054 "1yaxd0lqhajszilblkidqfkaffhzml10l7ib64023y36qgf8q597"))))
293ff8b2 4055 (build-system glib-or-gtk-build-system)
c282c55d
SB
4056 (arguments
4057 '(#:phases
4058 (modify-phases %standard-phases
4059 (add-before 'install 'skip-gtk-update-icon-cache
4060 (lambda _
4061 ;; Don't create 'icon-theme.cache'
4062 (substitute* (find-files "data" "^Makefile$")
4063 (("gtk-update-icon-cache") (which "true")))
4064 #t)))))
293ff8b2
DT
4065 (native-inputs
4066 `(("intltool" ,intltool)
4067 ("pkg-config" ,pkg-config)))
4068 ;; TODO: Add libnautilus.
4069 (inputs
4070 `(("gtk+" ,gtk+)
4071 ("gdk-pixbuf" ,gdk-pixbuf)
4072 ("json-glib" ,json-glib)
4073 ("libarchive" ,libarchive)
4074 ("libnotify" ,libnotify)
4075 ("nettle" ,nettle)
4076 ("itstool" ,itstool)
4077 ("libxml2" ,libxml2)))
4078 (synopsis "Graphical archive manager for GNOME")
4079 (description "File Roller is an archive manager for the GNOME desktop
4080environment that allows users to view, unpack, and create compressed archives
4081such as gzip tarballs.")
4082 (home-page "http://fileroller.sourceforge.net/")
4083 (license license:gpl2+)))
7ce49365
SB
4084
4085(define-public gnome-session
4086 (package
4087 (name "gnome-session")
57203ebb 4088 (version "3.22.2")
7ce49365
SB
4089 (source (origin
4090 (method url-fetch)
4091 (uri (string-append "mirror://gnome/sources/" name "/"
4092 (version-major+minor version) "/"
4093 name "-" version ".tar.xz"))
4094 (sha256
4095 (base32
57203ebb 4096 "1xahljysbpnc1zafm1y2lqnmmqi2jh4fx7h2y48d9ipqnknk26in"))))
2914af3c
AW
4097 (arguments
4098 '(#:phases
4099 (modify-phases %standard-phases
4100 (add-before 'configure 'pre-configure
4101 (lambda* (#:key outputs #:allow-other-keys)
4102 ;; Use elogind instead of systemd.
4103 (substitute* "configure"
4104 (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
4105 "libelogind")
4106 (("systemd") "elogind"))
4107 (substitute* "gnome-session/gsm-systemd.c"
4108 (("#include <systemd/sd-login.h>")
4109 "#include <elogind/sd-login.h>"))
4110 ;; Remove uses of the systemd journal.
4111 (substitute* "gnome-session/main.c"
4112 (("#ifdef HAVE_SYSTEMD") "#if 0"))
4113 (substitute* "gnome-session/gsm-manager.c"
4114 (("#ifdef HAVE_SYSTEMD") "#if 0"))
803ab416
SB
4115 (substitute* "gnome-session/gsm-autostart-app.c"
4116 (("#ifdef HAVE_SYSTEMD") "#if 0"))
a0d7baaf
LC
4117 #t))
4118 (add-after 'install 'wrap-gnome-session
4119 (lambda* (#:key inputs outputs #:allow-other-keys)
4120 ;; Make sure 'gnome-session' finds the 'gsettings' program.
4121 (let ((glib (assoc-ref inputs "glib:bin"))
4122 (out (assoc-ref outputs "out")))
4123 (wrap-program (string-append out "/bin/gnome-session")
4124 `("PATH" ":" prefix (,(string-append glib "/bin"))))
6cbc8d57
LC
4125 #t)))
4126 (add-after 'install 'disable-hardware-acceleration-check
4127 (lambda* (#:key outputs #:allow-other-keys)
4128 ;; Do not abort if hardware acceleration is missing. This allows
4129 ;; GNOME to run in QEMU and on low-end devices.
4130 (let ((out (assoc-ref outputs "out")))
4131 (substitute* (string-append out
4132 "/share/xsessions/gnome.desktop")
4133 (("gnome-session")
4134 "gnome-session --disable-acceleration-check"))
a0d7baaf 4135 #t))))
6cbc8d57 4136
2914af3c
AW
4137 #:configure-flags
4138 '("--enable-elogind")))
ba3cb5ab 4139 (build-system glib-or-gtk-build-system)
7ce49365
SB
4140 (native-inputs
4141 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4142 ("pkg-config" ,pkg-config)
4143 ("intltool" ,intltool)
4144 ("xsltproc" ,libxslt)))
4145 (inputs
2914af3c
AW
4146 `(("elogind" ,elogind)
4147 ("gnome-desktop" ,gnome-desktop)
ba3cb5ab 4148 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
7ce49365
SB
4149 ("gtk+" ,gtk+)
4150 ("json-glib" ,json-glib)
4151 ("libsm" ,libsm)
4152 ("libxcomposite" ,libxcomposite)
4153 ("libxtst" ,libxtst)
4154 ("mesa" ,mesa)
4155 ("upower" ,upower)
4156 ("xtrans" ,xtrans)))
4157 (synopsis "Session manager for GNOME")
4158 (description
4159 "This package contains the GNOME session manager, as well as a
4160configuration program to choose applications starting on login.")
4161 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
4162 (license license:gpl2+)))
f47ba77e
SB
4163
4164(define-public gjs
4165 (package
4166 (name "gjs")
fc119619 4167 (version "1.46.0")
f47ba77e
SB
4168 (source (origin
4169 (method url-fetch)
4170 (uri (string-append "mirror://gnome/sources/" name "/"
4171 (version-major+minor version) "/"
4172 name "-" version ".tar.xz"))
4173 (sha256
4174 (base32
fc119619 4175 "1m2ssa6qsipbp8lz4xbhf0nhadhv0xkdpmz1jcvl9187lwgmk0r2"))
f47ba77e
SB
4176 (modules '((guix build utils)))
4177 (snippet '(substitute* "test/run-with-dbus"
4178 (("/bin/rm") "rm")))))
4179 (build-system gnu-build-system)
4180 (arguments
4181 '(#:phases
4182 (modify-phases %standard-phases
4183 (add-before
4184 'check 'pre-check
4185 (lambda _
fc119619
MW
4186 ;; The test suite requires a running X server.
4187 (system "Xvfb :1 &")
4188 (setenv "DISPLAY" ":1")
4189
f47ba77e
SB
4190 ;; For the missing /etc/machine-id.
4191 (setenv "DBUS_FATAL_WARNINGS" "0")
ba666b07
SB
4192
4193 ;; XXX: fails with:
4194 ;; Failed to convert UTF-8 string to JS string: ...
4195 ;; TODO: actually fix it.
4196 (substitute* "installed-tests/js/testEverythingBasic.js"
4197 ((".*test_utf8_inout.*") ""))
f47ba77e
SB
4198 #t)))))
4199 (native-inputs
4200 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
4201 ("pkg-config" ,pkg-config)
4202 ("xmllint" ,libxml2)
4203 ;; For testing
4204 ("dbus-launch" ,dbus)
4205 ("uuidgen" ,util-linux)
4206 ("xvfb" ,xorg-server)))
4207 (propagated-inputs
4208 ;; These are all in the Requires.private field of gjs-1.0.pc.
4209 `(("gobject-introspection" ,gobject-introspection)
4210 ("mozjs" ,mozjs-24)))
4211 (inputs
4212 `(("gtk+" ,gtk+)
4213 ("readline" ,readline)))
4214 (synopsis "Javascript bindings for GNOME")
4215 (home-page "http://live.gnome.org/Gjs")
4216 (description
4217 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
4218javascript engine and the GObject introspection framework.")
4219 (license license:gpl2+)))
329d731b
DH
4220
4221(define-public gedit
4222 (package
4223 (name "gedit")
9beae2a2 4224 (version "3.22.0")
329d731b
DH
4225 (source (origin
4226 (method url-fetch)
4227 (uri (string-append "mirror://gnome/sources/" name "/"
4228 (version-major+minor version) "/"
4229 name "-" version ".tar.xz"))
4230 (sha256
4231 (base32
9beae2a2 4232 "0i9z5d31vibb3dd329gwvyga38zq5k1a2glcdq7m93ycbl5mlfq6"))))
329d731b
DH
4233 (build-system glib-or-gtk-build-system)
4234 (arguments
33cd9bef
SB
4235 `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet
4236 #:phases
329d731b
DH
4237 (modify-phases %standard-phases
4238 (add-after
4239 'install 'wrap-gedit
4240 (lambda* (#:key inputs outputs #:allow-other-keys)
4241 (let ((out (assoc-ref outputs "out"))
4242 (gtksourceview (assoc-ref inputs "gtksourceview"))
afc25242
SB
4243 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4244 (python-path (getenv "PYTHONPATH")))
329d731b 4245 (wrap-program (string-append out "/bin/gedit")
afc25242 4246 ;; For plugins.
329d731b 4247 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
afc25242 4248 `("PYTHONPATH" ":" prefix (,python-path))
329d731b
DH
4249 ;; For language-specs.
4250 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
4251 "/share")))))
4252 #t)))))
4253 (propagated-inputs
4254 `(("dconf" ,dconf)))
4255 (native-inputs
4256 `(("intltool" ,intltool)
b3546174 4257 ("itstool" ,itstool)
329d731b
DH
4258 ("gobject-introspection" ,gobject-introspection)
4259 ("pkg-config" ,pkg-config)))
4260 (inputs
4261 `(("glib" ,glib)
4262 ("gtk+" ,gtk+)
4263 ("gtksourceview" ,gtksourceview)
4264 ("libpeas" ,libpeas)
4265 ("libxml2" ,libxml2)
329d731b
DH
4266 ("iso-codes" ,iso-codes)
4267 ("python-pygobject" ,python-pygobject)
4268 ("python" ,python)
4269 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4270 ("libx11" ,libx11)
4271 ("vala" ,vala)
4272 ("adwaita-icon-theme" ,adwaita-icon-theme)
4273 ("libsoup" ,libsoup)
4274 ("gnome-desktop" ,gnome-desktop)))
4275 (home-page "https://wiki.gnome.org/Apps/Gedit")
4276 (synopsis "GNOME text editor")
4277 (description "While aiming at simplicity and ease of use, gedit is a
4278powerful general purpose text editor.")
4279 (license license:gpl2+)))
b7179363
SB
4280
4281(define-public zenity
4282 (package
4283 (name "zenity")
ee0f4e78 4284 (version "3.22.0")
b7179363
SB
4285 (source (origin
4286 (method url-fetch)
4287 (uri (string-append "mirror://gnome/sources/" name "/"
4288 (version-major+minor version) "/"
4289 name "-" version ".tar.xz"))
4290 (sha256
4291 (base32
ee0f4e78 4292 "0rp4l0vgyjhlkpk2imfwf7b05m1qxjrm8n8kp1rv70ykf48gmk8y"))))
b7179363
SB
4293 (build-system gnu-build-system)
4294 (native-inputs
b94a6ca0 4295 `(("gettext" ,gettext-minimal)
b7179363
SB
4296 ("itstool" ,itstool)
4297 ("pkg-config" ,pkg-config)))
4298 (inputs
4299 `(("libnotify" ,libnotify)
4300 ("webkitgtk" ,webkitgtk)))
4301 (synopsis "Display graphical dialog boxes from shell scripts")
4302 (home-page "http://www.gnome.org")
4303 (description
4304 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
4305to display dialog boxes from the commandline and shell scripts.")
4306 (license license:lgpl2.0+)))
60c3627c
SB
4307
4308(define-public mutter
f23052a6
DC
4309 ;; Uses the gnome 3.22 branch that only contains bug fixes.
4310 (let ((commit "23c315ea7121e9bd108e2837d0b4beeba53c5e18"))
60c3627c
SB
4311 (package
4312 (name "mutter")
f23052a6 4313 (version (git-version "3.22.2" "1" commit))
60c3627c 4314 (source (origin
f23052a6
DC
4315 (method git-fetch)
4316 (uri (git-reference
4317 (url "git://git.gnome.org/mutter")
4318 (commit commit)))
4319 (file-name (git-file-name name version))
60c3627c
SB
4320 (sha256
4321 (base32
f23052a6 4322 "1v1f9xyzjr1ihmfwpq9kzlv2lyr9qn63ck8zny699mbp5hsi11mb"))))
a88d5a0c
MW
4323 ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
4324 ;; versions of cogl and clutter. As a result, many of the inputs,
4325 ;; propagated-inputs, and configure flags used in cogl and clutter are
4326 ;; needed here as well.
60c3627c
SB
4327 (build-system gnu-build-system)
4328 (arguments
4329 '(#:configure-flags
4330 ;; XXX: build fails with [-Werror]:
4331 ;; backends/meta-cursor-renderer.c:112:5: error:
4332 ;; implicit declaration of function ?roundf?
a88d5a0c
MW
4333 (list "--enable-compile-warnings=minimum"
4334
4335 "--disable-wayland" ; TODO enable wayland
4336 ;; "--enable-native-backend" ; TODO enable the native backend
4337
4338 ;; The following flags are needed for the bundled clutter
4339 "--enable-x11-backend=yes"
4340
4341 ;; the remaining flags are needed for the bundled cogl
4342 "--enable-cogl-gst"
4343 (string-append "--with-gl-libname="
4344 (assoc-ref %build-inputs "mesa")
f23052a6
DC
4345 "/lib/libGL.so"))
4346 #:phases
4347 (modify-phases %standard-phases
4348 (add-after 'unpack 'autoreconf
4349 (lambda _
4350 (zero? (system* "autoreconf" "-vfi")))))))
60c3627c
SB
4351 (native-inputs
4352 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4353 ("gobject-introspection" ,gobject-introspection)
4354 ("intltool" ,intltool)
f23052a6
DC
4355 ("pkg-config" ,pkg-config)
4356 ;; For git build
4357 ("autoconf" ,autoconf)
4358 ("automake" ,automake)
4359 ("libtool" ,libtool)))
60c3627c 4360 (propagated-inputs
a88d5a0c
MW
4361 `(;; libmutter.pc refers to these:
4362 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4363 ("gtk+" ,gtk+)
4364 ;; mutter-clutter-1.0.pc and mutter-cogl-1.0.pc refer to these:
4365 ("atk" ,atk)
4366 ("cairo" ,cairo)
4367 ("gdk-pixbuf" ,gdk-pixbuf)
4368 ("glib" ,glib)
4369 ("glib" ,glib)
60c3627c 4370 ("gtk+" ,gtk+)
a88d5a0c
MW
4371 ("json-glib" ,json-glib)
4372 ("libinput" ,libinput)
4373 ("libx11" ,libx11)
4374 ("libxcomposite" ,libxcomposite)
4375 ("libxdamage" ,libxdamage)
4376 ("libxext" ,libxext)
4377 ("libxfixes" ,libxfixes)
4378 ("libxkbcommon" ,libxkbcommon)
4379 ("libxrandr" ,libxrandr)
4380 ("mesa" ,mesa)
4381 ("pango" ,pango)
4382 ("udev" ,eudev)
4383 ("wayland" ,wayland)
4384 ("wayland-protocols" ,wayland-protocols)
4385 ("xinput" ,xinput)))
60c3627c
SB
4386 (inputs
4387 `(("gnome-desktop" ,gnome-desktop)
4388 ("libcanberra-gtk" ,libcanberra)
a88d5a0c 4389 ("libgudev" ,libgudev)
60c3627c
SB
4390 ("libice" ,libice)
4391 ("libsm" ,libsm)
60c3627c 4392 ("libxkbfile" ,libxkbfile)
a88d5a0c 4393 ("libxrandr" ,libxrandr)
60c3627c
SB
4394 ("startup-notification" ,startup-notification)
4395 ("upower-glib" ,upower)
4396 ("xkeyboard-config" ,xkeyboard-config)
4397 ("zenity" ,zenity)))
4398 (synopsis "Window and compositing manager")
4399 (home-page "http://www.gnome.org")
4400 (description
4401 "Mutter is a window and compositing manager that displays and manages your
4402desktop via OpenGL. Mutter combines a sophisticated display engine using the
4403Clutter toolkit with solid window-management logic inherited from the Metacity
4404window manager.")
f23052a6 4405 (license license:gpl2+))))
685cee87
SB
4406
4407(define-public gnome-online-accounts
4408 (package
4409 (name "gnome-online-accounts")
b1cd747b 4410 (version "3.22.3")
685cee87
SB
4411 (source (origin
4412 (method url-fetch)
4413 (uri (string-append "mirror://gnome/sources/" name "/"
4414 (version-major+minor version) "/"
4415 name "-" version ".tar.xz"))
4416 (sha256
4417 (base32
b1cd747b 4418 "13wvnfh3hnasdnb6fhjssybj2327qihd32kpdjjb3r1qiyc8dvqb"))))
685cee87
SB
4419 (build-system glib-or-gtk-build-system)
4420 (native-inputs
4421 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4422 ("gobject-introspection" ,gobject-introspection)
4423 ("intltool" ,intltool)
4424 ("pkg-config" ,pkg-config)
4425 ("xsltproc" ,libxslt)))
4426 (propagated-inputs
4427 `(("glib" ,glib) ; required by goa-1.0.pc
4428 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
4429 (inputs
4430 `(("docbook-xsl" ,docbook-xsl)
4431 ("json-glib" ,json-glib)
4432 ("libsecret" ,libsecret)
4433 ("rest" ,rest)
4434 ("telepathy-glib" ,telepathy-glib)
4435 ("webkitgtk" ,webkitgtk)))
4436 (synopsis "Single sign-on framework for GNOME")
4437 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
4438 (description
4439 "GNOME Online Accounts provides interfaces so that applications and
4440libraries in GNOME can access the user's online accounts. It has providers for
4441Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
4442Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
4443 (license license:lgpl2.0+)))
df217748
SB
4444
4445(define-public evolution-data-server
4446 (package
4447 (name "evolution-data-server")
aab951cd 4448 (version "3.22.3")
df217748
SB
4449 (source (origin
4450 (method url-fetch)
4451 (uri (string-append "mirror://gnome/sources/" name "/"
4452 (version-major+minor version) "/"
4453 name "-" version ".tar.xz"))
4454 (sha256
4455 (base32
aab951cd 4456 "0kygd46s0is6i451bqykagrfx34wjvrgjbjyyszaabnppp1dyn0c"))))
df217748
SB
4457 (build-system gnu-build-system)
4458 (arguments
4459 '(;; XXX: fails with:
4460 ;; /Fixture/Calendar0: cleaning up pid xxxx
4461 ;; t status: 139)
4462 #:tests? #f
4463 #:configure-flags
4464 (let ((nss (assoc-ref %build-inputs "nss"))
4465 (nspr (assoc-ref %build-inputs "nspr")))
4466 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
4467 "--disable-google" ; disable Google Contacts support
c1387d36 4468 "--disable-google-auth" ; disable Google authentication
a73c1cf8 4469 "--enable-vala-bindings"
df217748
SB
4470 (string-append "--with-nspr-includes=" nspr "/include/nspr")
4471 (string-append "--with-nss-includes=" nss "/include/nss")
4472 (string-append "--with-nss-libs=" nss "/lib/nss")))
4473 #:phases
4474 (modify-phases %standard-phases
4475 (add-before 'check 'pre-check
4476 (lambda _
4477 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4478 (("/bin/rm") (which "rm")))
4479 #t)))))
4480 (native-inputs
4481 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4482 ("gobject-introspection" ,gobject-introspection)
4483 ("gperf" ,gperf)
4484 ("intltool" ,intltool)
4485 ("pkg-config" ,pkg-config)
a73c1cf8 4486 ("vala" ,vala)
df217748
SB
4487 ("python" ,python)))
4488 (propagated-inputs
4489 ;; These are all in the Requires field of .pc files.
4490 `(("gtk+" ,gtk+)
4491 ("libical" ,libical)
4492 ("libsecret" ,libsecret)
4493 ("libsoup" ,libsoup)
4494 ("nss" ,nss)
4495 ("sqlite" ,sqlite)))
4496 (inputs
4497 `(("bdb" ,bdb)
4498 ("gcr" ,gcr)
4499 ("gnome-online-accounts" ,gnome-online-accounts)
4500 ("libgweather" ,libgweather)))
4501 (synopsis "Store address books and calendars")
4502 (home-page "https://wiki.gnome.org/Apps/Evolution")
4503 (description
4504 "This package provides a unified backend for programs that work with
4505contacts, tasks, and calendar information. It was originally developed for
4506Evolution (hence the name), but is now used by other packages as well.")
4507 (license license:lgpl2.0)))
bd7dfafa
SB
4508
4509(define-public caribou
4510 (package
4511 (name "caribou")
fe964bb5 4512 (version "0.4.21")
bd7dfafa
SB
4513 (source (origin
4514 (method url-fetch)
4515 (uri (string-append "mirror://gnome/sources/" name "/"
4516 (version-major+minor version) "/"
4517 name "-" version ".tar.xz"))
4518 (sha256
4519 (base32
fe964bb5 4520 "0mfychh1q3dx0b96pjz9a9y112bm9yqyim40yykzxx1hppsdjhww"))))
bd7dfafa
SB
4521 (build-system glib-or-gtk-build-system)
4522 (arguments
4523 '(#:phases
4524 (modify-phases %standard-phases
4525 (add-before
4526 'build 'pre-build
4527 (lambda* (#:key outputs #:allow-other-keys)
4528 (let ((out (assoc-ref outputs "out")))
4529 ;; Use absolute shared library path in Caribou-1.0.typelib.
4530 (substitute* "libcaribou/Makefile"
4531 (("--shared-library=libcaribou.so")
4532 (string-append "--shared-library="
4533 out "/lib/libcaribou.so")))
4534 #t)))
4535 (add-after 'install 'wrap-programs
4536 (lambda* (#:key outputs #:allow-other-keys)
4537 (let* ((out (assoc-ref outputs "out"))
4538 (python-path (getenv "PYTHONPATH"))
4539 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4540 (for-each
4541 (lambda (prog)
4542 (wrap-program prog
4543 `("PYTHONPATH" ":" prefix (,python-path))
4544 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4545 (list (string-append out "/bin/caribou-preferences")
4546 (string-append out "/libexec/antler-keyboard"))))
4547 #t)))))
4548 (native-inputs
4549 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4550 ("gobject-introspection" ,gobject-introspection)
4551 ("intltool" ,intltool)
4552 ("pkg-config" ,pkg-config)
4553 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4554 ("vala" ,vala)
4555 ("xsltproc" ,libxslt)))
4556 (propagated-inputs
4557 ;; caribou-1.0.pc refers to all these.
4558 `(("libgee" ,libgee)
4559 ("libxklavier" ,libxklavier)
4560 ("libxtst" ,libxtst)
4561 ("gtk+" ,gtk+)))
4562 (inputs
4563 `(("clutter" ,clutter)
4564 ("dconf" ,dconf)
4565 ("gtk+-2" ,gtk+-2)
4566 ("python-pygobject" ,python2-pygobject)))
4567 (synopsis "Text entry and UI navigation application")
4568 (home-page "https://wiki.gnome.org/Projects/Caribou")
4569 (description
4570 "Caribou is an input assistive technology intended for switch and pointer
4571users.")
4572 (license license:lgpl2.1)))
ba5dd105 4573
ba5dd105
SB
4574(define-public network-manager
4575 (package
4576 (name "network-manager")
d04687dc 4577 (version "1.6.2")
ba5dd105
SB
4578 (source (origin
4579 (method url-fetch)
4580 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4581 (version-major+minor version) "/"
4582 "NetworkManager-" version ".tar.xz"))
4583 (sha256
4584 (base32
d04687dc 4585 "1y96k82rav8if334jl500zc024d210c4pgprh94yqyz3rmanyaxj"))
fd070f35
CM
4586 (snippet
4587 '(begin
4588 (use-modules (guix build utils))
4589 (substitute* "configure"
4590 ;; Replace libsystemd-login with libelogind.
4591 (("libsystemd-login") "libelogind"))
4592 (substitute* "src/devices/wwan/nm-modem-manager.c"
4593 (("systemd") "elogind"))
4594 (substitute* "src/nm-session-monitor.c"
4595 (("systemd") "elogind"))
4596 (substitute* "./src/nm-logging.c"
4597 (("systemd") "elogind"))))))
ba5dd105
SB
4598 (build-system gnu-build-system)
4599 (outputs '("out"
4600 "doc")) ; 8 MiB of gtk-doc HTML
4601 (arguments
4602 '(#:configure-flags
4603 (let ((out (assoc-ref %outputs "out"))
4604 (doc (assoc-ref %outputs "doc"))
4605 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4606 "/sbin/dhclient")))
fd070f35
CM
4607 (list "--with-systemd-logind=yes" ;In GuixSD, this is provided by elogind.
4608 "--with-consolekit=no"
4609 "--with-crypto=gnutls"
ba5dd105
SB
4610 "--disable-config-plugin-ibft"
4611 "--sysconfdir=/etc"
4612 "--localstatedir=/var"
4613 (string-append "--with-udev-dir="
4614 out "/lib/udev")
4615 (string-append "--with-dbus-sys-dir="
4616 out "/etc/dbus-1/system.d")
4617 (string-append "--with-html-dir="
4618 doc "/share/gtk-doc/html")
4619 (string-append "--with-dhclient=" dhclient)))
4620 #:phases
4621 (modify-phases %standard-phases
b4f59d87
AW
4622 (add-before 'configure 'pre-configure
4623 (lambda _
4624 ;; These tests try to test aspects of network-manager's
4625 ;; functionality within restricted containers, but they don't
4626 ;; cope with being already in the Guix build jail as that jail
4627 ;; lacks some features that they would like to proxy over (like
4628 ;; a /sys mount).
d04687dc
HG
4629 (substitute* '("Makefile.in")
4630 (("src/platform/tests/test-address-linux") " ")
4631 (("src/platform/tests/test-cleanup-linux") " ")
4632 (("src/platform/tests/test-link-linux") " ")
4633 (("src/platform/tests/test-route-linux") " ")
4634 (("src/devices/tests/test-arping") " ")
4635 (("src/devices/tests/test-lldp") " ")
4636 (("src/tests/test-route-manager-linux") " "))
b4f59d87 4637 #t))
ba5dd105
SB
4638 (add-before 'check 'pre-check
4639 (lambda _
4640 ;; For the missing /etc/machine-id.
4641 (setenv "DBUS_FATAL_WARNINGS" "0")
4642 #t))
4643 (replace 'install
4644 (lambda _
4645 (zero? (system* "make"
4646 "sysconfdir=/tmp"
142bdcbc
SB
4647 "rundir=/tmp"
4648 "statedir=/tmp"
d04687dc 4649 "nmstatedir=/tmp/nm"
ba5dd105 4650 "install")))))))
b93502d6
DC
4651 (propagated-inputs
4652 `(("glib" ,glib)))
ba5dd105
SB
4653 (native-inputs
4654 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4655 ("gobject-introspection" ,gobject-introspection)
d04687dc 4656 ("docbook-xsl" ,docbook-xsl)
ba5dd105 4657 ("intltool" ,intltool)
d04687dc
HG
4658 ("libxslt" ,libxslt)
4659 ("libxml2" ,libxml2)
ba5dd105
SB
4660 ("pkg-config" ,pkg-config)
4661 ;; For testing.
4662 ("python" ,python-wrapper)
4663 ("python-dbus" ,python-dbus)
4664 ("python-pygobject" ,python-pygobject)))
4665 (inputs
4666 `(("dbus-glib" ,dbus-glib)
4667 ("dnsmasq" ,dnsmasq)
4668 ("gnutls" ,gnutls)
4669 ("iptables" ,iptables)
4670 ("isc-dhcp" ,isc-dhcp)
d04687dc 4671 ("jansson" ,jansson)
ba5dd105
SB
4672 ("libgcrypt" ,libgcrypt)
4673 ("libgudev" ,libgudev)
4674 ("libndp" ,libndp)
4675 ("libnl" ,libnl)
4676 ("libsoup" ,libsoup)
142bdcbc 4677 ("modem-manager" ,modem-manager)
ba5dd105
SB
4678 ("polkit" ,polkit)
4679 ("ppp" ,ppp)
4680 ("readline" ,readline)
fd070f35
CM
4681 ("util-linux" ,util-linux)
4682 ("elogind" ,elogind)))
ba5dd105
SB
4683 (synopsis "Network connection manager")
4684 (home-page "http://www.gnome.org/projects/NetworkManager/")
4685 (description
4686 "NetworkManager is a system network service that manages your network
4687devices and connections, attempting to keep active network connectivity when
4688available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4689devices, and provides VPN integration with a variety of different VPN
4690services.")
29d2f451
LC
4691 (license license:gpl2+)
4692 (properties '((upstream-name . "NetworkManager")))))
4d62a9d3 4693
e5e1df4d
DC
4694(define-public mobile-broadband-provider-info
4695 (package
4696 (name "mobile-broadband-provider-info")
4697 (version "20151214")
4698 (source (origin
4699 (method url-fetch)
4700 (uri (string-append
4701 "mirror://gnome/sources/"
4702 "mobile-broadband-provider-info/" version "/"
4703 "mobile-broadband-provider-info-" version ".tar.xz"))
4704 (sha256
4705 (base32
4706 "1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a"))))
4707 (build-system gnu-build-system)
4708 (arguments
4709 `(#:tests? #f)) ; No tests
4710 (home-page "https://wiki.gnome.org/Projects/NetworkManager")
4711 (synopsis "Database of broadband connection configuration")
4712 (description "Database of broadband connection configuration.")
4713 (license license:public-domain)))
4714
4d62a9d3
SB
4715(define-public network-manager-applet
4716 (package
4717 (name "network-manager-applet")
2116bfb3 4718 (version "1.4.2")
4d62a9d3
SB
4719 (source (origin
4720 (method url-fetch)
4721 (uri (string-append "mirror://gnome/sources/" name "/"
4722 (version-major+minor version) "/"
4723 name "-" version ".tar.xz"))
4724 (sha256
4725 (base32
2116bfb3 4726 "16a43sl9aijmvxbb08hbjqyjnlshj8dckycbgi9nm333fr47n6s3"))))
4d62a9d3 4727 (build-system glib-or-gtk-build-system)
2116bfb3 4728 ;; TODO: WWAN support supposedly requires an update of glibmm which in turn
4729 ;; requires an update of the its dependencies (glib and others).
4730 (arguments '(#:configure-flags '("--disable-migration"
4731 "--without-wwan")))
4d62a9d3
SB
4732 (native-inputs
4733 `(("intltool" ,intltool)
4734 ("gobject-introspection" ,gobject-introspection)
4735 ("pkg-config" ,pkg-config)))
4736 (propagated-inputs
4737 ;; libnm-gtk.pc refers to all these.
4738 `(("dbus-glib" ,dbus-glib)
4739 ("gtk+" ,gtk+)
4740 ("network-manager" ,network-manager)))
4741 (inputs
4742 `(("iso-codes" ,iso-codes)
4743 ("libgudev" ,libgudev)
4744 ("libnotify" ,libnotify)
2116bfb3 4745 ("libsecret" ,libsecret)
4746 ("jansson" ,jansson))) ;for team support
4d62a9d3
SB
4747 (synopsis "Applet for managing network connections")
4748 (home-page "http://www.gnome.org/projects/NetworkManager/")
4749 (description
4750 "This package contains a systray applet for NetworkManager. It displays
4751the available networks and allows users to easily switch between them.")
4752 (license license:gpl2+)))
56196594
RW
4753
4754(define-public libxml++
4755 (package
4756 (name "libxml++")
8344a85e 4757 (version "3.0.1")
56196594
RW
4758 (source (origin
4759 (method url-fetch)
4760 (uri (string-append "mirror://gnome/sources/" name "/"
4761 (version-major+minor version) "/"
4762 name "-" version ".tar.xz"))
4763 (sha256
4764 (base32
8344a85e 4765 "19kik79fmg61nv0by0a5f9wchrcfjwzvih4v2waw01hqflhqvp0r"))))
56196594
RW
4766 (build-system gnu-build-system)
4767 ;; libxml++-3.0.pc refers to all these.
4768 (propagated-inputs
4769 `(("libxml2" ,libxml2)
4770 ("glibmm" ,glibmm)))
4771 (native-inputs
4772 `(("perl" ,perl)
4773 ("pkg-config" ,pkg-config)))
4774 (home-page "http://libxmlplusplus.sourceforge.net/")
4775 (synopsis "C++ wrapper for XML parser library libxml2")
4776 (description
4777 "This package provides a C++ wrapper for the XML parser library
4778libxml2.")
4779 (license license:lgpl2.1+)))
df12f04a 4780
b61d9627
AW
4781(define-public libxml++-2
4782 (package
4783 (inherit libxml++)
4784 (name "libxml++")
4785 (version "2.40.1")
4786 (source (origin
4787 (method url-fetch)
4788 (uri (string-append "mirror://gnome/sources/" name "/"
4789 (version-major+minor version) "/"
4790 name "-" version ".tar.xz"))
4791 (sha256
4792 (base32
4793 "1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a"))))))
4794
df12f04a
SB
4795(define-public gdm
4796 (package
4797 (name "gdm")
4edc6a9c 4798 (version "3.22.1")
df12f04a
SB
4799 (source (origin
4800 (method url-fetch)
4801 (uri (string-append "mirror://gnome/sources/" name "/"
4802 (version-major+minor version) "/"
4803 name "-" version ".tar.xz"))
4804 (sha256
4805 (base32
4edc6a9c 4806 "17wnsrv91mx14xp96wrc21g2hsjjc38yhbkw55kf7hk3yliychva"))))
df12f04a
SB
4807 (build-system gnu-build-system)
4808 (arguments
4809 '(#:configure-flags
4810 '("--without-plymouth")
4811 #:phases
4812 (modify-phases %standard-phases
4813 (add-before
4814 'configure 'pre-configure
4815 (lambda _
4816 ;; We don't have <systemd/sd-daemon.h>.
4817 (substitute* '("common/gdm-log.c"
4818 "daemon/gdm-server.c"
4819 "daemon/gdm-session-worker.c"
4820 "daemon/gdm-session-worker-job.c")
4821 (("#include <systemd/sd-daemon\\.h>") ""))
4822 ;; Use elogind for sd-login.
4823 (substitute* '("common/gdm-common.c"
4824 "daemon/gdm-manager.c"
4825 "libgdm/gdm-user-switching.c")
4826 (("#include <systemd/sd-login\\.h>")
4827 "#include <elogind/sd-login.h>"))
4828 ;; Avoid checking SYSTEMD using pkg-config.
4829 (setenv "SYSTEMD_CFLAGS" " ")
4830 (setenv "SYSTEMD_LIBS" "-lelogind")
4831 #t)))))
4832 (native-inputs
4833 `(("dconf" ,dconf)
4834 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4835 ("gobject-introspection" ,gobject-introspection)
4836 ("intltool" ,intltool)
4837 ("itstool" ,itstool)
4838 ("pkg-config" ,pkg-config)
4839 ("xmllint" ,libxml2)))
4840 (inputs
4841 `(("accountsservice" ,accountsservice)
4842 ("check" ,check) ; for testing
4843 ("elogind" ,elogind)
4844 ("gtk+" ,gtk+)
4845 ("iso-codes" ,iso-codes)
4846 ("libcanberra" ,libcanberra)
4847 ("linux-pam" ,linux-pam)))
4848 (synopsis "Display manager for GNOME")
4849 (home-page "http://wiki.gnome.org/Projects/GDM/")
4850 (description
4851 "GNOME Display Manager is a system service that is responsible for
4852providing graphical log-ins and managing local and remote displays.")
4853 (license license:gpl2+)))
8e1dd04f
SB
4854
4855(define-public libgtop
4856 (package
4857 (name "libgtop")
8785e484 4858 (version "2.34.1")
8e1dd04f
SB
4859 (source (origin
4860 (method url-fetch)
4861 (uri (string-append "mirror://gnome/sources/" name "/"
4862 (version-major+minor version) "/"
4863 name "-" version ".tar.xz"))
4864 (sha256
4865 (base32
8785e484 4866 "1qh9srg8pqmrsl12mwnclncs7agmjjvx3q6v5qwqvcb2cskpi6f8"))))
8e1dd04f
SB
4867 (build-system gnu-build-system)
4868 (native-inputs
4869 `(("gobject-introspection" ,gobject-introspection)
4870 ("intltool" ,intltool)
4871 ("perl" ,perl)
4872 ("pkg-config" ,pkg-config)))
4873 (propagated-inputs
4874 `(("glib" ,glib))) ; required by libgtop-2.0.pc
4875 (synopsis "Portable system access library")
4876 (home-page "https://www.gnome.org/")
4877 (description
4878 "LibGTop is a library to get system specific data such as CPU and memory
4879usage and information about running processes.")
4880 (license license:gpl2+)))
b96c4260
SB
4881
4882(define-public gnome-bluetooth
4883 (package
4884 (name "gnome-bluetooth")
3e93ddcc 4885 (version "3.20.0")
b96c4260
SB
4886 (source (origin
4887 (method url-fetch)
4888 (uri (string-append "mirror://gnome/sources/" name "/"
4889 (version-major+minor version) "/"
4890 name "-" version ".tar.xz"))
4891 (sha256
4892 (base32
3e93ddcc 4893 "0lzbwk2kn7kp39sv5bf4ja92mfkxkc27gxxk8k86i8a8ncbcmcwk"))))
b96c4260
SB
4894 (build-system glib-or-gtk-build-system)
4895 (native-inputs
4896 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
4897 ("gobject-introspection" ,gobject-introspection)
4898 ("intltool" ,intltool)
4899 ("pkg-config" ,pkg-config)
4900 ("xmllint" ,libxml2)))
4901 (propagated-inputs
4902 ;; gnome-bluetooth-1.0.pc refers to all these.
4903 `(("gtk+" ,gtk+)
4904 ("udev" ,eudev)))
4905 (inputs
4906 `(("libcanberra" ,libcanberra)
4907 ("libnotify" ,libnotify)))
4908 (synopsis "GNOME Bluetooth subsystem")
4909 (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth")
4910 (description
4911 "This package contains tools for managing and manipulating Bluetooth
4912devices using the GNOME desktop.")
4913 (license license:lgpl2.1+)))
b645146f
SB
4914
4915(define-public gnome-control-center
4916 (package
4917 (name "gnome-control-center")
7a6cd578 4918 (version "3.22.1")
b645146f
SB
4919 (source (origin
4920 (method url-fetch)
4921 (uri (string-append "mirror://gnome/sources/" name "/"
4922 (version-major+minor version) "/"
4923 name "-" version ".tar.xz"))
4924 (sha256
4925 (base32
7a6cd578 4926 "06h9937sjfrzjf36pxqybg4wmkc5xdhbxgdkclnkjxiiqidjjsax"))))
b645146f
SB
4927 (build-system glib-or-gtk-build-system)
4928 (arguments
4929 '(#:phases
4930 (modify-phases %standard-phases
4931 (add-before 'configure 'patch-paths
4932 (lambda* (#:key inputs #:allow-other-keys)
4933 (let ((libc (assoc-ref inputs "libc"))
4934 (tzdata (assoc-ref inputs "tzdata")))
4935 (substitute* "panels/datetime/tz.h"
4936 (("/usr/share/zoneinfo/zone.tab")
4937 (string-append tzdata "/share/zoneinfo/zone.tab")))
4938 (substitute* "panels/datetime/test-endianess.c"
4939 (("/usr/share/locale")
4940 (string-append libc "/share/locale")))
4941 #t))))))
4942 (native-inputs
4943 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4944 ("intltool" ,intltool)
4945 ("pkg-config" ,pkg-config)
4946 ("xsltproc" ,libxslt)))
4947 (inputs
4948 `(("accountsservice" ,accountsservice)
4949 ("clutter-gtk" ,clutter-gtk)
4950 ("colord-gtk" ,colord-gtk)
4951 ("cups" ,cups)
4952 ("dconf" ,dconf)
4953 ("docbook-xsl" ,docbook-xsl)
3446ffb5 4954 ("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files
b645146f
SB
4955 ("gnome-bluetooth" ,gnome-bluetooth)
4956 ("gnome-desktop" ,gnome-desktop)
4957 ("gnome-online-accounts" ,gnome-online-accounts)
4958 ("gnome-settings-daemon" ,gnome-settings-daemon)
4959 ("grilo" ,grilo)
4960 ("ibus" ,ibus)
4961 ("libcanberra" ,libcanberra)
4962 ("libgudev" ,libgudev)
4963 ("libgtop" ,libgtop)
4964 ("libpwquality" ,libpwquality)
4965 ("libsoup" ,libsoup)
4966 ("libxml2" ,libxml2)
4967 ("libwacom" ,libwacom)
4968 ("mesa" ,mesa)
4969 ("mit-krb5" ,mit-krb5)
4970 ("modem-manager" ,modem-manager)
4971 ("network-manager-applet" ,network-manager-applet)
4972 ("polkit" ,polkit)
4973 ("pulseaudio" ,pulseaudio)
4974 ("smbclient" ,samba)
4975 ("tzdata" ,tzdata)
4976 ("upower" ,upower)))
4977 (synopsis "Utilities to configure the GNOME desktop")
4978 (home-page "https://www.gnome.org/")
4979 (description
4980 "This package contains configuration applets for the GNOME desktop,
4981allowing to set accessibility configuration, desktop fonts, keyboard and mouse
4982properties, sound setup, desktop theme and background, user interface
4983properties, screen resolution, and other GNOME parameters.")
4984 (license license:gpl2+)))
a4df5756
SB
4985
4986(define-public gnome-shell
4987 (package
4988 (name "gnome-shell")
759a077c 4989 (version "3.22.2")
a4df5756
SB
4990 (source (origin
4991 (method url-fetch)
4992 (uri (string-append "mirror://gnome/sources/" name "/"
4993 (version-major+minor version) "/"
4994 name "-" version ".tar.xz"))
4995 (sha256
4996 (base32
759a077c 4997 "16smvjfrpyfphv479hjky5261hgl4kli4q86bcb2b8xdcav4w3yq"))))
a4df5756
SB
4998 (build-system glib-or-gtk-build-system)
4999 (arguments
5000 '(#:phases
5001 (modify-phases %standard-phases
5002 (replace 'install
5003 (lambda* (#:key outputs #:allow-other-keys)
5004 (let* ((out (assoc-ref outputs "out"))
5005 (keysdir (string-append
5006 out "/share/gnome-control-center/keybindings")))
5007 (zero? (system* "make"
5008 (string-append "keysdir=" keysdir)
5009 "install")))))
5010 (add-after
5011 'install 'wrap-programs
5012 (lambda* (#:key outputs #:allow-other-keys)
5013 (let ((out (assoc-ref outputs "out"))
5014 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
5015 (python-path (getenv "PYTHONPATH")))
5016 (wrap-program (string-append out "/bin/gnome-shell")
5017 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
5018 (for-each
5019 (lambda (prog)
5020 (wrap-program (string-append out "/bin/" prog)
5021 `("PYTHONPATH" ":" prefix (,python-path))
5022 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5023 '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
5024 #t))))))
5025 (native-inputs
5026 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5027 ("gobject-introspection" ,gobject-introspection)
5028 ("intltool" ,intltool)
5029 ("pkg-config" ,pkg-config)
5030 ("python" ,python)
5031 ("xsltproc" ,libxslt)))
5032 (inputs
5033 `(("accountsservice" ,accountsservice)
5034 ("caribou" ,caribou)
5035 ("docbook-xsl" ,docbook-xsl)
5036 ("evolution-data-server" ,evolution-data-server)
5037 ("gcr" ,gcr)
5038 ("gdm" ,gdm)
5039 ("gjs" ,gjs)
5040 ("gnome-bluetooth" ,gnome-bluetooth)
5041 ("gnome-control-center" ,gnome-control-center)
5042 ("gnome-desktop" ,gnome-desktop)
5043 ("gnome-settings-daemon" ,gnome-settings-daemon)
5044 ("gst-plugins-base" ,gst-plugins-base)
5045 ("ibus" ,ibus)
5046 ("libcanberra" ,libcanberra)
5047 ("libcroco" ,libcroco)
5048 ("libgweather" ,libgweather)
5049 ("libsoup" ,libsoup)
5050 ("mesa-headers" ,mesa-headers)
5051 ("mutter" ,mutter)
5052 ("network-manager-applet" ,network-manager-applet)
5053 ("polkit" ,polkit)
5054 ("pulseaudio" ,pulseaudio)
5055 ("python-pygobject" ,python-pygobject)
5056 ("startup-notification" ,startup-notification)
5057 ("telepathy-logger" ,telepathy-logger)
5058 ("upower" ,upower)
5059 ;; XXX: required by libgjs.la.
5060 ("readline" ,readline)))
5061 (synopsis "Desktop shell for GNOME")
5062 (home-page "https://wiki.gnome.org/Projects/GnomeShell")
5063 (description
5064 "GNOME Shell provides core user interface functions for the GNOME desktop,
5065like switching to windows and launching applications.")
5066 (license license:gpl2+)))
c3f29bc9
RS
5067
5068(define-public gtk-vnc
5069 (package
5070 (name "gtk-vnc")
26653538 5071 (version "0.7.0")
c3f29bc9
RS
5072 (source
5073 (origin
5074 (method url-fetch)
5075 (uri (string-append "mirror://gnome/sources/" name "/"
5076 (version-major+minor version) "/"
5077 name "-" version ".tar.xz"))
5078 (sha256
5079 (base32
26653538 5080 "0gj8dpy3sj4dp810gy67spzh5f0jd8aqg69clcwqjcskj1yawbiw"))))
c3f29bc9
RS
5081 (build-system gnu-build-system)
5082 (arguments
5083 '(#:configure-flags '("--with-gtk=3.0")))
5084 (propagated-inputs
5085 `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc.
5086 (inputs
5087 `(("cyrus-sasl" ,cyrus-sasl)
5088 ("gnutls" ,gnutls)
5089 ("libgcrypt" ,libgcrypt)
5090 ("pulseaudio" ,pulseaudio)))
5091 (native-inputs
5092 `(("glib:bin" ,glib "bin")
5093 ("gobject-introspection" ,gobject-introspection)
5094 ("intltool" ,intltool)
5095 ("pkg-config" ,pkg-config)
5096 ("vala" ,vala)))
5097 (home-page "https://wiki.gnome.org/Projects/gtk-vnc")
5098 (synopsis "VNC viewer widget for GTK+")
5099 (description
5100 "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing
5101applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.
5102GTK-VNC implements client side RFB protocol and authentication extensions such
5103as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.")
5104 (license license:lgpl2.1+)))
8b877545 5105
dc69fe18
MW
5106(define-public gnome-autoar
5107 (package
5108 (name "gnome-autoar")
5109 (version "0.1.1")
5110 (source (origin
5111 (method url-fetch)
5112 (uri (string-append "mirror://gnome/sources/" name "/"
5113 (version-major+minor version) "/"
5114 name "-" version ".tar.xz"))
5115 (sha256
5116 (base32
5117 "1jcs6jgysg9n3zi3d1l4iqddzmczfdcvz7vkxn607p32nl8bhp7n"))))
5118 (build-system glib-or-gtk-build-system)
5119 (native-inputs
5120 `(("gnome-common" ,gnome-common)
5121 ("gobject-introspection" ,gobject-introspection)
5122 ("pkg-config" ,pkg-config)))
5123 (propagated-inputs
5124 `(("libarchive" ,libarchive))) ; XXX document why
5125 (inputs
5126 `(("gtk+" ,gtk+)
5127 ("nettle" ,nettle))) ; XXX: required by libarchive.pc
5128 (synopsis "Archives integration support for GNOME")
5129 (home-page "https://git.gnome.org/browse/gnome-autoar/")
5130 (description
5131 "GNOME Autoar is a library which makes creating and extracting archives
5132easy, safe, and automatic.")
5133 (license license:lgpl2.1+)))
5134
b64e217f
MW
5135(define-public tracker
5136 (package
5137 (name "tracker")
5138 (version "1.10.3")
5139 (source (origin
5140 (method url-fetch)
5141 (uri (string-append "mirror://gnome/sources/" name "/"
5142 (version-major+minor version) "/"
5143 name "-" version ".tar.xz"))
5144 (sha256
5145 (base32
5146 "03ch3ndmxghfr9wnw9hfmpkjfa7k5v5cwwf3y1ja6ihk3c5avgbb"))))
5147 (build-system glib-or-gtk-build-system)
5148 (native-inputs
5149 `(("gnome-common" ,gnome-common)
5150 ("gobject-introspection" ,gobject-introspection)
5151 ("intltool" ,intltool)
5152 ("pkg-config" ,pkg-config)
5153 ("vala" ,vala)))
5154 (inputs
5155 `(("gtk+" ,gtk+)
5156 ("dbus" ,dbus)
5157 ("gstreamer" ,gstreamer)
5158 ("gst-plugins-base" ,gst-plugins-base)
5159 ("sqlite" ,sqlite)
5160 ("nettle" ,nettle) ; XXX why is this needed?
5161 ("poppler" ,poppler)
5162 ("libgsf" ,libgsf)
5163 ("libexif" ,libexif)
5164 ("libpng" ,libpng)
5165 ("libtiff" ,libtiff)
5166 ("libvorbis" ,libvorbis)
5167 ("flac" ,flac)
5168 ("totem-pl-parser" ,totem-pl-parser)
5169 ("zlib" ,zlib)
5170 ("exempi" ,exempi)
5171 ("libxml2" ,libxml2)
5172 ("upower" ,upower)
5173 ("libgee" ,libgee)
5174 ("libunistring" ,libunistring)
5175 ("giflib" ,giflib)
5176 ("openjpeg" ,openjpeg-1)
5177 ("libosinfo" ,libosinfo)
5178 ("libcue" ,libcue)
5179 ("libseccomp" ,libseccomp)
5180 ("libuuid" ,util-linux)))
5181 (arguments `(#:tests? #f)) ; XXX FIXME enable tests (some fail)
5182 (synopsis "Metadata database, indexer and search tool")
5183 (home-page "https://wiki.gnome.org/Projects/Tracker")
5184 (description
5185 "Tracker is an advanced framework for first class objects with associated
5186metadata and tags. It provides a one stop solution for all metadata, tags,
5187shared object databases, search tools and indexing.")
5188 ;; src/libtracker-*/* and src/tracker-extract/* are covered by lgpl2.1+,
5189 ;; src/gvdb/* are covered by lgpl2.0+, and the rest is gpl2+.
5190 (license (list license:gpl2+
5191 license:lgpl2.1+
5192 license:lgpl2.0+))))
5193
8b877545
RS
5194(define-public nautilus
5195 (package
5196 (name "nautilus")
09d88905 5197 (version "3.22.2")
8b877545
RS
5198 (source (origin
5199 (method url-fetch)
5200 (uri (string-append "mirror://gnome/sources/" name "/"
5201 (version-major+minor version) "/"
5202 name "-" version ".tar.xz"))
5203 (sha256
5204 (base32
09d88905 5205 "1cv5xsah04svxx0b6di7iah9gcwk6na2c6lp442pal9v2ybrw76f"))))
8b877545
RS
5206 (build-system glib-or-gtk-build-system)
5207 (arguments
6983ba56 5208 '(#:configure-flags
09d88905 5209 '("--disable-selinux") ; XXX: not packaged
8b877545
RS
5210 ;; XXX: FAIL: check-nautilus
5211 ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
5212 #:tests? #f))
5213 (native-inputs
5214 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
5215 ("gobject-introspection" ,gobject-introspection)
5216 ("intltool" ,intltool)
5217 ("pkg-config" ,pkg-config)))
8b877545 5218 (inputs
8b877545 5219 `(("dconf" ,dconf)
dd05e731 5220 ("gvfs" ,gvfs)
8b877545
RS
5221 ("exempi" ,exempi)
5222 ("gnome-desktop" ,gnome-desktop)
09d88905
MW
5223 ("gnome-autoar" ,gnome-autoar)
5224 ("nettle" ,nettle) ; XXX required by libarchive.pc via gnome-autoar
5225 ("tracker" ,tracker)
ce6027bf
SB
5226 ;; XXX: gtk+ is required by libnautilus-extension.pc
5227 ;;
5228 ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
5229 ;; package. See:
5230 ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
5231 ("gtk+" ,gtk+)
8b877545
RS
5232 ("libexif" ,libexif)
5233 ("libxml2" ,libxml2)))
5234 (synopsis "File manager for GNOME")
5235 (home-page "https://wiki.gnome.org/Apps/Nautilus")
5236 (description
5237 "Nautilus (Files) is a file manager designed to fit the GNOME desktop
5238design and behaviour, giving the user a simple way to navigate and manage its
5239files.")
5240 (license license:gpl2+)))
3c697ffd
JR
5241
5242(define-public baobab
5243 (package
5244 (name "baobab")
3edeaeb2 5245 (version "3.22.1")
3c697ffd
JR
5246 (source (origin
5247 (method url-fetch)
5248 (uri (string-append
5249 "mirror://gnome/sources/" name "/"
5250 (version-major+minor version) "/"
5251 name "-" version ".tar.xz"))
5252 (sha256
5253 (base32
3edeaeb2 5254 "1zwpzj6hbvcyw1ymqzn3zw8w4h29ad7411crbkbh71c8jwbwpssv"))))
3c697ffd
JR
5255 (build-system glib-or-gtk-build-system)
5256 (native-inputs
5257 `(("intltool" ,intltool)
5258 ("pkg-config" ,pkg-config)
5259 ("itstool" ,itstool)
5260 ("xmllint" ,libxml2)
5261 ("glib" ,glib "bin")
5262 ("vala" ,vala)))
5263 (inputs
5264 `(("gtk+" ,gtk+)))
5265 (synopsis "Disk usage analyzer for GNOME")
5266 (description
5267 "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk
5268usage in the GNOME desktop environment. It can easily scan device volumes or
5269a specific user-requested directory branch (local or remote). Once the scan
5270is complete it provides a graphical representation of each selected folder.")
5271 (home-page "https://wiki.gnome.org/Apps/Baobab")
5272 (license license:gpl2+)))
dc050251 5273
fdba447c
RS
5274(define-public gnome-backgrounds
5275 (package
5276 (name "gnome-backgrounds")
b9e63fc9 5277 (version "3.22.1")
fdba447c
RS
5278 (source
5279 (origin
5280 (method url-fetch)
5281 (uri (string-append "mirror://gnome/sources/" name "/"
5282 (version-major+minor version) "/"
5283 name "-" version ".tar.xz"))
5284 (sha256
5285 (base32
b9e63fc9 5286 "09gfdrm1kaz2knyghhjb0ka1kklgbcbnqgy4c90bg0v3n899ij5z"))))
fdba447c
RS
5287 (build-system glib-or-gtk-build-system)
5288 (native-inputs
5289 `(("intltool" ,intltool)))
5290 (home-page "https://git.gnome.org/browse/gnome-backgrounds")
5291 (synopsis "Background images for the GNOME desktop")
5292 (description
5293 "GNOME backgrounds package contains a collection of graphics files which
5294can be used as backgrounds in the GNOME Desktop environment. Additionally,
5295the package creates the proper framework and directory structure so that you
5296can add your own files to the collection.")
5297 (license (list license:gpl2+
5298 license:cc-by2.0
5299 license:cc-by-sa2.0
5300 license:cc-by-sa3.0))))
5301
b784b1a9
RS
5302(define-public gnome-screenshot
5303 (package
5304 (name "gnome-screenshot")
efa355bc 5305 (version "3.22.0")
b784b1a9
RS
5306 (source
5307 (origin
5308 (method url-fetch)
5309 (uri (string-append "mirror://gnome/sources/" name "/"
5310 (version-major+minor version) "/"
5311 name "-" version ".tar.xz"))
5312 (sha256
5313 (base32
efa355bc 5314 "0c02n1hgv21m4082jx399b1yazsc0cr07ba8k0pv8v3w7i5z21ca"))))
b784b1a9
RS
5315 (build-system glib-or-gtk-build-system)
5316 (native-inputs
5317 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5318 ("intltool" ,intltool)
5319 ("pkg-config" ,pkg-config)))
5320 (inputs
5321 `(("gtk+" ,gtk+)
5322 ("libcanberra" ,libcanberra)
5323 ("libx11" ,libx11)
5324 ("libxext" ,libxext)))
5325 (home-page "https://git.gnome.org/browse/gnome-screenshot")
5326 (synopsis "Take pictures of your screen")
5327 (description
5328 "GNOME Screenshot is a utility used for taking screenshots of the entire
5329screen, a window or a user defined area of the screen, with optional
5330beautifying border effects.")
5331 (license license:gpl2+)))
5332
66d59111
RS
5333(define-public dconf-editor
5334 (package
5335 (name "dconf-editor")
fd408e29 5336 (version "3.22.1")
66d59111
RS
5337 (source
5338 (origin
5339 (method url-fetch)
5340 (uri (string-append "mirror://gnome/sources/" name "/"
5341 (version-major+minor version) "/"
5342 name "-" version ".tar.xz"))
5343 (sha256
5344 (base32
fd408e29 5345 "09n1ljryjgkmxwly542zb2dh9j7h76chc0br2bbhrhkwvjjmc3ha"))))
66d59111 5346 (build-system glib-or-gtk-build-system)
d25c1836
SB
5347 (arguments
5348 '(#:phases
5349 (modify-phases %standard-phases
5350 (add-before 'install 'skip-gtk-update-icon-cache
5351 (lambda _
5352 ;; Don't create 'icon-theme.cache'.
5353 (substitute* "editor/Makefile"
5354 (("gtk-update-icon-cache") "true"))
5355 #t)))))
66d59111
RS
5356 (native-inputs
5357 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
5358 ("intltool" ,intltool)
5359 ("pkg-config" ,pkg-config)))
5360 (inputs
5361 `(("dconf" ,dconf)
5362 ("gtk+" ,gtk+)
5363 ("libxml2" ,libxml2)))
5364 (home-page "https://git.gnome.org/browse/dconf-editor")
5365 (synopsis "Graphical editor for GNOME's dconf configuration system")
5366 (description
5367 "Dconf-editor is a graphical tool for browsing and editing the dconf
5368configuration system for GNOME. It allows users to configure desktop
5369software that do not provide their own configuration interface.")
5370 (license license:lgpl2.1+)))
5371
dc050251
SB
5372(define-public gnome
5373 (package
5374 (name "gnome")
5375 (version (package-version gnome-shell))
5376 (source #f)
5377 (build-system trivial-build-system)
5378 (arguments '(#:builder (mkdir %output)))
5379 (propagated-inputs
5380 ;; TODO: Add more packages according to:
5381 ;; <https://packages.debian.org/jessie/gnome-core>.
5382 `(("adwaita-icon-theme" ,adwaita-icon-theme)
05f651c4 5383 ("baobab" ,baobab)
0bd3597b 5384 ("font-cantarell" ,font-cantarell)
dc050251
SB
5385 ("at-spi2-core" ,at-spi2-core)
5386 ("dbus" ,dbus)
5387 ("dconf" ,dconf)
72360453 5388 ("desktop-file-utils" ,desktop-file-utils)
dc050251
SB
5389 ("eog" ,eog)
5390 ("epiphany" ,epiphany)
5391 ("evince" ,evince)
71d9b980 5392 ("file-roller" ,file-roller)
dc050251
SB
5393 ("gedit" ,gedit)
5394 ("glib-networking" ,glib-networking)
05f651c4 5395 ("gnome-backgrounds" ,gnome-backgrounds)
dc050251
SB
5396 ("gnome-control-center" ,gnome-control-center)
5397 ("gnome-keyring" ,gnome-keyring)
5398 ("gnome-session" ,gnome-session)
5399 ("gnome-settings-daemon" ,gnome-settings-daemon)
5400 ("gnome-shell" ,gnome-shell)
5401 ("gnome-terminal" ,gnome-terminal)
5402 ("gnome-themes-standard" ,gnome-themes-standard)
05f651c4 5403 ("gvfs" ,gvfs)
dc050251
SB
5404 ("hicolor-icon-theme" ,hicolor-icon-theme)
5405 ("nautilus" ,nautilus)
69308043 5406 ("pinentry-gnome3" ,pinentry-gnome3)
dc050251
SB
5407 ("pulseaudio" ,pulseaudio)
5408 ("shared-mime-info" ,shared-mime-info)
5409 ("totem" ,totem)
5410 ("yelp" ,yelp)
5411 ("zenity" ,zenity)))
fe4e698d 5412 (synopsis "The GNU desktop environment")
dc050251
SB
5413 (home-page "https://www.gnome.org/")
5414 (description
fe4e698d
LC
5415 "GNOME is the graphical desktop for GNU. It includes a wide variety of
5416applications for browsing the web, editing text and images, creating
5417documents and diagrams, playing media, scanning, and much more.")
dc050251 5418 (license license:gpl2+)))
4a526711
DT
5419
5420(define-public byzanz
5421 ;; The last stable release of Byzanz was in 2011, but there have been many
5422 ;; useful commits made to the Byzanz repository since then that it would be
5423 ;; silly to use such an old release.
5424 (let ((commit "f7af3a5bd252db84af8365bd059c117a7aa5c4af"))
5425 (package
5426 (name "byzanz")
5427 (version (string-append "0.2-1." (string-take commit 7)))
5428 (source (origin
5429 (method git-fetch)
5430 (uri (git-reference
5431 (url "git://git.gnome.org/byzanz")
5432 (commit commit)))
5433 (sha256
5434 (base32
5435 "1l60myzxf9cav27v5v3nsijlslz9r7ip6d5kiirfpkf9k0w26hz3"))))
5436 (build-system glib-or-gtk-build-system)
5437 (arguments
5438 '(#:phases
5439 (modify-phases %standard-phases
5440 (add-after 'unpack 'bootstrap
5441 (lambda _
5442 ;; The build system cleverly detects that we're not building from
5443 ;; a release tarball and turns on -Werror for GCC.
5444 ;; Unsurprisingly, there is a warning during compilation that
5445 ;; causes the build to fail unnecessarily, so we remove the flag.
5446 (substitute* '("configure.ac")
5447 (("-Werror") ""))
5448 ;; The autogen.sh script in gnome-common will run ./configure
5449 ;; by default, which is problematic because source shebangs
5450 ;; have not yet been patched.
5451 (setenv "NOCONFIGURE" "t")
5452 (zero? (system* "sh" "autogen.sh")))))))
5453 (native-inputs
5454 `(("autoconf" ,autoconf)
5455 ("automake" ,automake)
5456 ("gnome-common" ,gnome-common)
5457 ("intltool" ,intltool)
5458 ("libtool" ,libtool)
5459 ("pkg-config" ,pkg-config)
5460 ("which" ,which)))
5461 (inputs
5462 `(("glib" ,glib)
5463 ("gstreamer" ,gstreamer)
5464 ("gst-plugins-base" ,gst-plugins-base)
5465 ("gtk+" ,gtk+)))
5466 (synopsis "Desktop recording program")
5467 (description "Byzanz is a simple desktop recording program with a
5468command-line interface. It can record part or all of an X display for a
5469specified duration and save it as a GIF encoded animated image file.")
5470 (home-page "https://git.gnome.org/browse/byzanz")
5471 (license license:gpl2+))))
3a9a4c51
RS
5472
5473(define-public libzapojit
5474 (package
5475 (name "libzapojit")
5476 (version "0.0.3")
5477 (source (origin
5478 (method url-fetch)
5479 (uri (string-append "mirror://gnome/sources/" name "/"
5480 (version-major+minor version) "/"
5481 name "-" version ".tar.xz"))
5482 (sha256
5483 (base32
5484 "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x"))))
5485 (build-system gnu-build-system)
5486 (native-inputs
5487 `(("gobject-introspection" ,gobject-introspection)
5488 ("intltool" ,intltool)
5489 ("pkg-config" ,pkg-config)))
5490 (inputs
5491 `(("gnome-online-accounts" ,gnome-online-accounts)
5492 ("json-glib" ,json-glib)
5493 ("rest" ,rest)))
5494 (home-page "https://wiki.gnome.org/Projects/Zapojit")
5495 (synopsis "Library for accessing SkyDrive and Hotmail")
5496 (description
5497 "Libzapojit is a GLib-based library for accessing online service APIs of
5498Microsoft SkyDrive and Hotmail, using their REST protocols.")
5499 (license license:lgpl2.1+)))
9365ee1c 5500
3c474897
KY
5501(define-public gnome-calendar
5502 (package
5503 (name "gnome-calendar")
4b8aae41 5504 (version "3.22.2")
3c474897
KY
5505 (source (origin
5506 (method url-fetch)
5507 (uri (string-append "mirror://gnome/sources/" name "/"
5508 (version-major+minor version) "/"
5509 name "-" version ".tar.xz"))
5510 (sha256
5511 (base32
4b8aae41 5512 "03wivk7hbyqrqcrd7jg0m2xj6q13248la2184qkf7zncnj72g5ih"))))
3c474897
KY
5513 (build-system glib-or-gtk-build-system)
5514 (native-inputs
5515 `(("intltool" ,intltool)
5516 ("pkg-config" ,pkg-config)))
5517 (inputs
5518 `(("bdb" ,bdb)
5519 ("desktop-file-utils" ,desktop-file-utils)
5520 ("evolution-data-server" ,evolution-data-server)
4b8aae41
MW
5521 ("gnome-online-accounts" ,gnome-online-accounts)
5522 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
3c474897
KY
5523 (home-page "https://wiki.gnome.org/Apps/Calendar")
5524 (synopsis "GNOME's calendar application")
5525 (description
5526 "GNOME Calendar is a simple calendar application designed to fit the GNOME
5527desktop. It supports multiple calendars, monthly view and yearly view.")
5528 (license license:gpl3+)))
5529
ab179eaf
SB
5530(define-public gnome-dictionary
5531 (package
5532 (name "gnome-dictionary")
5533 (version "3.20.0")
5534 (source (origin
5535 (method url-fetch)
5536 (uri (string-append "mirror://gnome/sources/" name "/"
5537 (version-major+minor version) "/"
5538 name "-" version ".tar.xz"))
5539 (sha256
5540 (base32
5541 "08b1f5s5aqka3dwxnzmwr2fmyddjm9xw7zmqsf8r5zvfsivn7czg"))))
5542 (build-system glib-or-gtk-build-system)
5543 (native-inputs
5544 `(("glib:bin" ,glib "bin")
5545 ("gobject-introspection" ,gobject-introspection)
5546 ("intltool" ,intltool)
5547 ("itstool" ,itstool)
5548 ("pkg-config" ,pkg-config)
5549 ("xmllint" ,libxml2)))
5550 (inputs
5551 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5552 ("gtk+" ,gtk+)))
5553 (home-page "https://wiki.gnome.org/Apps/Dictionary")
5554 (synopsis "Look up words in dictionary sources")
5555 (description
5556 "GNOME Dictionary can look for the definition or translation of a word in
5557existing databases over the internet.")
5558 (license license:gpl3+)))
5559
9365ee1c
JN
5560(define-public gnome-tweak-tool
5561 (package
5562 (name "gnome-tweak-tool")
f169ad10 5563 (version "3.22.0")
9365ee1c
JN
5564 (source (origin
5565 (method url-fetch)
5566 (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
5567 (version-major+minor version) "/"
5568 "gnome-tweak-tool-" version ".tar.xz"))
5569 (patches (list
5570 (search-patch "gnome-tweak-tool-search-paths.patch")))
5571 (sha256
5572 (base32
f169ad10 5573 "1frs16p2284mdw65g1ldmf9cz5sn3rg16wz58gjrw5pn2cgf2six"))))
7ef335b0 5574 (build-system glib-or-gtk-build-system)
9365ee1c
JN
5575 (arguments
5576 `(#:configure-flags '("--localstatedir=/tmp"
5577 "--sysconfdir=/tmp")
5578 #:imported-modules ((guix build python-build-system)
7ef335b0 5579 ,@%glib-or-gtk-build-system-modules)
9365ee1c 5580 #:phases (modify-phases %standard-phases
9af6bce1
CB
5581 (add-after 'install 'wrap-program
5582 (lambda* (#:key outputs #:allow-other-keys)
5583 (let ((out (assoc-ref outputs "out"))
5584 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
5585 (wrap-program (string-append out "/bin/gnome-tweak-tool")
5586 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5587 #t))
9365ee1c
JN
5588 (add-after 'install 'wrap
5589 (@@ (guix build python-build-system) wrap)))))
5590 (native-inputs
5591 `(("intltool" ,intltool)
5592 ("pkg-config" ,pkg-config)))
5593 (inputs
5594 `(("python" ,python-2)
adb41527 5595 ("python2-pygobject" ,python2-pygobject)
fab2784d
CB
5596 ("gnome-desktop" ,gnome-desktop)
5597 ("libsoup" ,libsoup)
adb41527 5598 ("libnotify" ,libnotify)
9365ee1c
JN
5599 ("gobject-introspection" ,gobject-introspection)
5600 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5601 ("gtk+" ,gtk+)))
5602 (synopsis "Customize advanced GNOME 3 options")
5603 (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
5604 (description
5605 "GNOME Tweak Tool allows adjusting advanced configuration settings in
5606GNOME 3. This includes things like the fonts used in user interface elements,
5607alternative user interface themes, changes in window management behavior,
5608GNOME Shell appearance and extension, etc.")
5609 (license license:gpl3+)))
813f814a 5610
32ac717c
DT
5611(define-public gnome-shell-extensions
5612 (package
5613 (name "gnome-shell-extensions")
2e45916c 5614 (version "3.22.2")
32ac717c
DT
5615 (source (origin
5616 (method url-fetch)
5617 (uri (string-append "mirror://gnome/sources/" name "/"
5618 (version-major+minor version) "/"
5619 name "-" version ".tar.xz"))
5620 (sha256
5621 (base32
2e45916c 5622 "11wa4f9arr89a4y8nsvla5j58dzwlawjb2q1lz0jn5i9kv324z6z"))))
32ac717c
DT
5623 (build-system gnu-build-system)
5624 (arguments
5625 '(#:configure-flags '("--enable-extensions=all")))
5626 (native-inputs
5627 `(("intltool" ,intltool)
5628 ("pkg-config" ,pkg-config)))
5629 (propagated-inputs
5630 `(("glib" ,glib)
5631 ("glib" ,glib "bin")))
5632 (synopsis "Extensions for GNOME Shell")
5633 (description "GNOME Shell extensions modify and extend GNOME Shell
5634functionality and behavior.")
5635 (home-page "https://extensions.gnome.org/")
5636 (license license:gpl3+)))
5637
813f814a
DT
5638(define-public arc-theme
5639 (package
5640 (name "arc-theme")
7967efc1 5641 (version "20170302")
813f814a
DT
5642 (source (origin
5643 (method url-fetch)
5644 (uri (string-append "https://github.com/horst3180/arc-theme"
5645 "/archive/" version ".tar.gz"))
5646 (file-name (string-append name "-" version ".tar.gz"))
5647 (sha256
5648 (base32
7967efc1 5649 "0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw"))))
813f814a
DT
5650 (build-system gnu-build-system)
5651 (arguments
5652 '(#:phases
5653 (modify-phases %standard-phases
5654 (add-after 'unpack 'bootstrap
5655 (lambda _
5656 (zero? (system* "autoreconf" "-vif")))))))
5657 (native-inputs
5658 `(("autoconf" ,autoconf)
5659 ("automake" ,automake)
5660 ("pkg-config" ,pkg-config)))
5661 (inputs
5662 `(("gtk+" ,gtk+)))
5663 (synopsis "A flat GTK+ theme with transparent elements")
5664 (description "Arc is a flat theme with transparent elements for GTK 3, GTK
56652, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
5666like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
5667 (home-page "https://github.com/horst3180/arc-theme")
5668 ;; No "or later" language found.
5669 (license license:gpl3)))
9987c57c
DT
5670
5671(define-public moka-icon-theme
5672 (package
5673 (name "moka-icon-theme")
0f9bb61b 5674 (version "5.3.5")
9987c57c
DT
5675 (source (origin
5676 (method url-fetch)
5677 (uri (string-append "https://github.com/moka-project"
5678 "/moka-icon-theme/archive/v"
5679 version ".tar.gz"))
5680 (file-name (string-append name "-" version ".tar.gz"))
5681 (sha256
5682 (base32
0f9bb61b 5683 "062rab0ggmgb3y0d6b3k5d47wsadi28cdnyyr2vqbjhza01dglci"))))
9987c57c
DT
5684 (build-system gnu-build-system)
5685 (arguments
5686 '(#:phases
5687 (modify-phases %standard-phases
5688 (add-after 'unpack 'patch-makefile.am
5689 (lambda _
5690 (substitute* '("Makefile.am")
5691 (("\\$\\(DESTDIR\\)/usr/share")
5692 "$(datadir)"))
5693 #t))
5694 (add-after 'patch-makefile.am 'bootstrap
5695 (lambda _
5696 (zero? (system* "autoreconf" "-vif")))))))
5697 (native-inputs
5698 `(("autoconf" ,autoconf)
5699 ("automake" ,automake)))
5700 (synopsis "Moka icon theme")
5701 (description "Moka is a stylized desktop icon set, designed to be clear,
5702simple and consistent.")
5703 (home-page "http://snwh.org/moka")
5704 (license license:gpl3+)))
6fd8f8d6
DT
5705
5706(define-public arc-icon-theme
5707 (package
5708 (name "arc-icon-theme")
c4180240 5709 (version "20161122")
6fd8f8d6
DT
5710 (source (origin
5711 (method url-fetch)
5712 (uri (string-append "https://github.com/horst3180/arc-icon-theme"
5713 "/archive/" version ".tar.gz"))
5714 (file-name (string-append name "-" version ".tar.gz"))
5715 (sha256
5716 (base32
c4180240 5717 "1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b"))))
6fd8f8d6
DT
5718 (build-system gnu-build-system)
5719 (arguments
5720 '(#:phases
5721 (modify-phases %standard-phases
5722 (add-after 'unpack 'bootstrap
5723 (lambda _
5724 (zero? (system* "autoreconf" "-vif")))))))
5725 (native-inputs
5726 `(("autoconf" ,autoconf)
5727 ("automake" ,automake)))
5728 ;; When Arc is missing an icon, it looks in the Moka icon theme for it.
5729 (propagated-inputs
5730 `(("moka-icon-theme" ,moka-icon-theme)))
5731 (synopsis "Arc icon theme")
5732 (description "The Arc icon theme provides a set of icons matching the
5733style of the Arc GTK theme. Icons missing from the Arc theme are provided by
5734the Moka icon theme.")
5735 (home-page "https://github.com/horst3180/arc-icon-theme")
5736 (license license:gpl3+)))
6064a4e8
LF
5737
5738(define-public folks
5739 (package
5740 (name "folks")
5741 (version "0.11.2")
5742 (source (origin
5743 (method url-fetch)
5744 (uri (string-append
5745 "mirror://gnome/sources/" name "/"
5746 (version-major+minor version) "/"
5747 name "-" version ".tar.xz"))
5748 (sha256
5749 (base32
5750 "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
5751 (build-system glib-or-gtk-build-system)
5752 (inputs
5753 `(("bdb" ,bdb)
5754 ("dbus-glib" ,dbus-glib)
5755 ("evolution-data-server" ,evolution-data-server)
5756 ("glib" ,glib)
5757 ("libgee" ,libgee)
5758 ("telepathy-glib" ,telepathy-glib)))
5759 (native-inputs
5760 `(("gobject-introspection" ,gobject-introspection)
5761 ("intltool" ,intltool)
5762 ("pkg-config" ,pkg-config)
5763 ("vala" ,vala)))
5764 (synopsis "Library to aggregate data about people")
5765 (description "Libfolks is a library that aggregates information about people
5766from multiple sources (e.g., Telepathy connection managers for IM contacts,
5767Evolution Data Server for local contacts, libsocialweb for web service contacts,
5768etc.) to create metacontacts. It's written in Vala, which generates C code when
5769compiled.")
5770 (home-page "https://wiki.gnome.org/Projects/Folks")
5771 (license license:lgpl2.1+)))
01ea778f
LF
5772
5773(define-public gfbgraph
5774 (package
5775 (name "gfbgraph")
5776 (version "0.2.3")
5777 (source (origin
5778 (method url-fetch)
5779 (uri (string-append
5780 "mirror://gnome/sources/" name "/"
5781 (version-major+minor version) "/"
5782 name "-" version ".tar.xz"))
5783 (sha256
5784 (base32
5785 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
5786 (build-system glib-or-gtk-build-system)
5787 (arguments
5788 `(#:tests? #f ; Tests appear to require the network.
5789 ;; FIXME --enable-gtk-doc fails even with gtk-doc as a native-input.
5790 #:configure-flags '("--disable-gtk-doc"
5791 "--disable-static"
5792 "--enable-introspection")))
5793 (native-inputs
5794 `(("pkg-config" ,pkg-config)
5795 ("gobject-introspection" ,gobject-introspection)))
5796 (inputs
5797 `(("json-glib" ,json-glib)
5798 ("gnome-online-accounts" ,gnome-online-accounts)
5799 ("rest" ,rest)))
5800 (synopsis "GLib/GObject wrapper for the Facebook API")
5801 (description "This library allows you to use the Facebook API from
5802GLib/GObject code.")
5803 (home-page "https://wiki.gnome.org/Projects/GFBGraph")
5804 (license license:lgpl2.1+)))
3920868c 5805
5806(define-public libgnomekbd
5807 (package
5808 (name "libgnomekbd")
0abc6634 5809 (version "3.22.0")
3920868c 5810 (source (origin
5811 (method url-fetch)
5812 (uri (string-append "mirror://gnome/sources/" name "/"
5813 (version-major+minor version) "/"
5814 name "-" version ".tar.xz"))
5815 (sha256
5816 (base32
0abc6634 5817 "1pvpbljvxc0riamraiflnm05dpb6i4vlmqqgdh74xggbpzd302rl"))))
3920868c 5818 (build-system gnu-build-system)
5819 (native-inputs
5820 `(("pkg-config" ,pkg-config)
5821 ("glib" ,glib "bin")
5822 ("intltool" ,intltool)))
5823 (propagated-inputs
5824 ;; Referred to in .h files and .pc.
5825 `(("glib" ,glib)
5826 ("gtk+" ,gtk+)
5827 ("libxklavier" ,libxklavier)))
5828 (home-page "https://www.gnome.org")
5829 (synopsis "GNOME keyboard configuration library")
5830 (description
5831 "Libgnomekbd is a keyboard configuration library for the GNOME desktop
5832environment, which can notably display keyboard layouts.")
5833 (license license:lgpl2.0+)))
85327d0d 5834
5835;;; This package is no longer maintained:
5836;;; https://wiki.gnome.org/Attic/LibUnique
5837;;; "Unique is now in maintenance mode, and its usage is strongly discouraged.
5838;;; Applications should use the GtkApplication class provided by GTK+ 3.0."
5839(define-public libunique
5840 (package
5841 (name "libunique")
5842 (version "3.0.2")
5843 (source (origin
5844 (method url-fetch)
5845 (uri (string-append "mirror://gnome/sources/" name "/"
5846 (version-major+minor version) "/"
5847 name "-" version ".tar.xz"))
5848 (sha256
5849 (base32
5850 "0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58"))))
5851 (build-system glib-or-gtk-build-system)
5852 (arguments
5853 `(#:configure-flags '("--disable-static"
5854 "--disable-dbus" ; use gdbus
5855 "--enable-introspection")))
5856 (native-inputs
5857 `(("pkg-config" ,pkg-config)
5858 ("gobject-introspection" ,gobject-introspection)
5859 ("glib:bin" ,glib "bin")
5860 ("gtk-doc" ,gtk-doc)))
5861 (propagated-inputs
5862 ;; Referred to in .h files and .pc.
5863 `(("gtk+" ,gtk+)))
5864 (home-page "https://wiki.gnome.org/Attic/LibUnique")
5865 (synopsis "Library for writing single instance applications")
5866 (description
5867 "Libunique is a library for writing single instance applications. If you
5868launch a single instance application twice, the second instance will either just
5869quit or will send a message to the running instance. Libunique makes it easy to
5870write this kind of application, by providing a base class, taking care of all
5871the IPC machinery needed to send messages to a running instance, and also
5872handling the startup notification side.")
5873 (license license:lgpl2.1+)))
54021cd8
RS
5874
5875(define-public gnome-calculator
5876 (package
5877 (name "gnome-calculator")
de7da4e5 5878 (version "3.22.2")
54021cd8
RS
5879 (source
5880 (origin
5881 (method url-fetch)
5882 (uri (string-append "mirror://gnome/sources/" name "/"
5883 (version-major+minor version) "/"
5884 name "-" version ".tar.xz"))
5885 (sha256
5886 (base32
de7da4e5 5887 "03il7xl4yr6xbzj6x1lbl16yzlb166c9h9wny1w7mj9dccnz99wr"))))
54021cd8
RS
5888 (build-system glib-or-gtk-build-system)
5889 (native-inputs
5890 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
5891 ("intltool" ,intltool)
5892 ("itstool" ,itstool)
5893 ("pkg-config" ,pkg-config)))
5894 (inputs
5895 `(("gtksourceview" ,gtksourceview)
5896 ("libsoup" ,libsoup)
5897 ("mpfr" ,mpfr)))
5898 (home-page "https://wiki.gnome.org/Apps/Calculator")
5899 (synopsis "Desktop calculator")
5900 (description
5901 "Calculator is an application that solves mathematical equations and
5902is suitable as a default application in a Desktop environment.")
5903 (license license:gpl3)))
0bd69759
RS
5904
5905(define-public xpad
5906 (package
5907 (name "xpad")
5908 (version "4.8.0")
5909 (source
5910 (origin
5911 (method url-fetch)
5912 (uri (string-append "https://launchpad.net/xpad/trunk/4.8.0/+download/"
5913 name "-" version ".tar.bz2"))
5914 (sha256
5915 (base32
5916 "17f915yyvfa2fsavq6wh0q0dfhib28b4k1gc0292b9xdlrvy7f22"))))
5917 (build-system gnu-build-system)
5918 (native-inputs
5919 `(("intltool" ,intltool)
5920 ("pkg-config" ,pkg-config)))
5921 (inputs
5922 `(("gtk+" ,gtk+)
5923 ("gtksourceview" ,gtksourceview)
5924 ("libsm" ,libsm)))
5925 (home-page "https://wiki.gnome.org/Apps/Xpad")
5926 (synopsis "Virtual sticky note")
5927 (description
5928 "Xpad is a sticky note that strives to be simple, fault tolerant,
5929and customizable. Xpad consists of independent pad windows, each is
5930basically a text box in which notes can be written.")
5931 (license license:gpl3+)))
3ad7dce1
RS
5932
5933(define-public gucharmap
5934 (package
5935 (name "gucharmap")
5936 (version "3.18.0")
5937 (source
5938 (origin
5939 (method url-fetch)
5940 (uri (string-append "mirror://gnome/sources/" name "/"
5941 (version-major+minor version) "/"
5942 name "-" version ".tar.xz"))
5943 (sha256
5944 (base32
5945 "0c1q9w5vql0vvg6g0knxfnv4ap19fg5cdrwndi1cj9lsym92c78j"))))
5946 (build-system gnu-build-system)
5947 (native-inputs
5948 `(("desktop-file-utils" ,desktop-file-utils)
5949 ("glib:bin" ,glib "bin") ; for glib-compile-resources.
5950 ("gobject-introspection" ,gobject-introspection)
5951 ("intltool" ,intltool)
5952 ("itstool" ,itstool)
5953 ("pkg-config" ,pkg-config)))
5954 (inputs
5955 `(("gtk+" ,gtk+)
5956 ("xmllint" ,libxml2)))
5957 (home-page "https://wiki.gnome.org/Apps/Gucharmap")
5958 (synopsis "Unicode character picker and font browser")
5959 (description
5960 "This program allows you to browse through all the available Unicode
5961characters and categories for the installed fonts, and to examine their
5962detailed properties. It is an easy way to find the character you might
5963only know by its Unicode name or code point.")
5964 (license license:gpl3+)))
04ce840a
RS
5965
5966(define-public bluefish
5967 (package
5968 (name "bluefish")
5969 (version "2.2.9")
5970 (source
5971 (origin
5972 (method url-fetch)
5973 (uri (string-append "http://www.bennewitz.com/bluefish/stable/source/"
5974 name "-" version ".tar.gz"))
5975 (sha256
5976 (base32
5977 "1vnl6raxbvc4hacg3pr6sqyjh707d304dhk5nyhlp7m0m1y3j756"))))
5978 (build-system gnu-build-system)
5979 (native-inputs
5980 `(("desktop-file-utils" ,desktop-file-utils)
5981 ("intltool" ,intltool)
5982 ("pkg-config" ,pkg-config)))
5983 (inputs
5984 `(("enchant" ,enchant)
5985 ("gtk+" ,gtk+)
5986 ("python" ,python-2)
5987 ("xmllint" ,libxml2)
5988 ("gucharmap" ,gucharmap)))
5989 (home-page "http://bluefish.openoffice.nl")
5990 (synopsis "Web development studio")
5991 (description
5992 "Bluefish is an editor targeted towards programmers and web developers,
5993with many options to write web sites, scripts and other code.
5994Bluefish supports many programming and markup languages.")
5995 (license license:gpl3+)))
1f6a73ee
RS
5996
5997(define-public gnome-system-monitor
5998 (package
5999 (name "gnome-system-monitor")
acc5b65e 6000 (version "3.22.2")
1f6a73ee
RS
6001 (source
6002 (origin
6003 (method url-fetch)
6004 (uri (string-append "mirror://gnome/sources/" name "/"
6005 (version-major+minor version) "/"
6006 name "-" version ".tar.xz"))
6007 (sha256
6008 (base32
acc5b65e 6009 "10n9bl2q9xxnd6mfi4scfw5x0xyyzvnblz26q9gl8vks2nbv19b8"))))
1f6a73ee
RS
6010 (build-system glib-or-gtk-build-system)
6011 (native-inputs
6012 `(("glib:bin" ,glib "bin") ; for glib-mkenums.
6013 ("intltool" ,intltool)
6014 ("itstool" ,itstool)
6015 ("libgtop" ,libgtop)
6016 ("pkg-config" ,pkg-config)))
6017 (inputs
6018 `(("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files.
6019 ("gtk+" ,gtk+)
6020 ("gtkmm" ,gtkmm)
6021 ("librsvg" ,librsvg)
6022 ("libxml2" ,libxml2)))
6023 (home-page "https://wiki.gnome.org/Apps/SystemMonitor")
6024 (synopsis "Process viewer and system resource monitor for GNOME")
6025 (description
6026 "GNOME System Monitor is a GNOME process viewer and system monitor with
6027an attractive, easy-to-use interface. It has features, such as a tree view
6028for process dependencies, icons for processes, the ability to hide processes,
6029graphical time histories of CPU/memory/swap usage and the ability to
6030kill/reinice processes.")
6031 (license license:gpl2+)))