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