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