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