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