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