gnu: Add Extempore.
[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>
3a9a4c51 17;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
21f05134 18;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
277a7d82 19;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
a56be436 20;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
6064a4e8 21;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
71d9b980 22;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
3920868c 23;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
e5e1df4d 24;;; Copyright © 2016 David Craven <david@craven.ch>
735b8db6 25;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
995b7261
AE
26;;;
27;;; This file is part of GNU Guix.
28;;;
29;;; GNU Guix is free software; you can redistribute it and/or modify it
30;;; under the terms of the GNU General Public License as published by
31;;; the Free Software Foundation; either version 3 of the License, or (at
32;;; your option) any later version.
33;;;
34;;; GNU Guix is distributed in the hope that it will be useful, but
35;;; WITHOUT ANY WARRANTY; without even the implied warranty of
36;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
37;;; GNU General Public License for more details.
38;;;
39;;; You should have received a copy of the GNU General Public License
40;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
41
42(define-module (gnu packages gnome)
b5b73a82 43 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
44 #:use-module (guix packages)
45 #:use-module (guix download)
4a526711 46 #:use-module (guix git-download)
29a7c98a 47 #:use-module (guix utils)
995b7261 48 #:use-module (guix build-system gnu)
121de2e1 49 #:use-module (guix build-system glib-or-gtk)
dc050251 50 #:use-module (guix build-system trivial)
ed19903d 51 #:use-module (gnu packages)
ba5dd105 52 #:use-module (gnu packages admin)
75016d07 53 #:use-module (gnu packages autotools)
7b212526 54 #:use-module (gnu packages avahi)
6a180f6f 55 #:use-module (gnu packages base)
5698b8b8 56 #:use-module (gnu packages bison)
df217748 57 #:use-module (gnu packages calendar)
df12f04a 58 #:use-module (gnu packages check)
23a22af6 59 #:use-module (gnu packages cups)
6e1bb642 60 #:use-module (gnu packages curl)
c3f29bc9 61 #:use-module (gnu packages cyrus-sasl)
6e1bb642 62 #:use-module (gnu packages databases)
c769cf9f 63 #:use-module (gnu packages djvu)
ba5dd105 64 #:use-module (gnu packages dns)
121de2e1 65 #:use-module (gnu packages flex)
b4ce6300 66 #:use-module (gnu packages docbook)
329d731b 67 #:use-module (gnu packages enchant)
a56be436 68 #:use-module (gnu packages fontutils)
dfc407f3 69 #:use-module (gnu packages game-development)
fed5a689 70 #:use-module (gnu packages gettext)
995b7261 71 #:use-module (gnu packages glib)
c1354b90 72 #:use-module (gnu packages gnupg)
23a22af6 73 #:use-module (gnu packages gnuzilla)
85f5dc19 74 #:use-module (gnu packages gstreamer)
d9c1a22b 75 #:use-module (gnu packages gtk)
df217748 76 #:use-module (gnu packages gperf)
6b888eff 77 #:use-module (gnu packages guile)
34b979b9 78 #:use-module (gnu packages openldap)
c1354b90 79 #:use-module (gnu packages pdf)
75016d07 80 #:use-module (gnu packages polkit)
5698b8b8 81 #:use-module (gnu packages popt)
c1354b90 82 #:use-module (gnu packages ghostscript)
b645146f 83 #:use-module (gnu packages ibus)
9cc98f8a 84 #:use-module (gnu packages iso-codes)
85f5dc19 85 #:use-module (gnu packages libcanberra)
88f70665 86 #:use-module (gnu packages linux)
75016d07 87 #:use-module (gnu packages libusb)
4e3fc547 88 #:use-module (gnu packages lirc)
7b212526 89 #:use-module (gnu packages lua)
e55354b8 90 #:use-module (gnu packages image)
ba5dd105 91 #:use-module (gnu packages networking)
b645146f 92 #:use-module (gnu packages password-utils)
27477d2d 93 #:use-module (gnu packages perl)
f70d8383 94 #:use-module (gnu packages photo)
995b7261 95 #:use-module (gnu packages pkg-config)
23a22af6 96 #:use-module (gnu packages pulseaudio)
995b7261 97 #:use-module (gnu packages python)
75016d07 98 #:use-module (gnu packages scanner)
4a1bf090 99 #:use-module (gnu packages ssh)
85f5dc19 100 #:use-module (gnu packages xml)
b0f9c4b8 101 #:use-module (gnu packages geeqie)
200726ed 102 #:use-module (gnu packages gl)
1dd26275 103 #:use-module (gnu packages compression)
8f9ac901 104 #:use-module (gnu packages tex)
a7fd7b68 105 #:use-module (gnu packages tls)
6e1bb642 106 #:use-module (gnu packages web)
4a79e256 107 #:use-module (gnu packages webkit)
fecbf86e 108 #:use-module (gnu packages xorg)
ea57378f 109 #:use-module (gnu packages xdisorg)
ba421ab7 110 #:use-module (gnu packages freedesktop)
1e7464a9 111 #:use-module (gnu packages mail)
b645146f 112 #:use-module (gnu packages mit-krb5)
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/")
3472 (synopsis "Userspace virtual filesystem for GIO")
3473 (description
3474 "GVFS is a userspace virtual filesystem designed to work with the I/O
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")
316a5d02 3531 (version "3.21.90")
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
316a5d02 3540 "0dmsvq3vviky6851rqiik898r84c7744i7md672ckic3mdv21ap3"))))
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")
e26bec53 3584 (version "3.20.3")
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
e26bec53 3592 "18i4nk4k4q2yaj4zw0gbyp7ja2g67pm05p56bbras52cnjyy37ad"))))
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)
3617 ("libwnck" ,libwnck)
3618 ("libxslt" ,libxslt)
3619 ("nss" ,nss)
3620 ("sqlite" ,sqlite)
3621 ("webkitgtk" ,webkitgtk)))
3622 (home-page "https://wiki.gnome.org/Apps/Web")
3623 (synopsis "GNOME web browser")
3624 (description
3625 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3626principles are simplicity and standards compliance.")
3627 (license license:gpl2+)))
a3856b2c
SB
3628
3629(define-public d-feet
3630 (package
3631 (name "d-feet")
3632 (version "0.3.10")
3633 (source (origin
3634 (method url-fetch)
3635 (uri (string-append "mirror://gnome/sources/" name "/"
3636 (version-major+minor version) "/"
3637 name "-" version ".tar.xz"))
3638 (sha256
3639 (base32
3640 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3641 (build-system glib-or-gtk-build-system)
3642 (arguments
3643 '(#:out-of-source? #f ; tests need to run in the source directory.
3644 #:phases
3645 (modify-phases %standard-phases
3646 (add-before
3647 'check 'pre-check
86aff791 3648 (lambda _
a3856b2c
SB
3649 ;; The test suite requires a running X server.
3650 (system "Xvfb :1 &")
3651 (setenv "DISPLAY" ":1")
3652 ;; Don't fail on missing '/etc/machine-id'.
3653 (setenv "DBUS_FATAL_WARNINGS" "0")
3654 ;; tests.py and window.py don't meet E402:
3655 ;; E402 module level import not at top of file
3656 (substitute* "src/tests/Makefile"
86aff791
MW
3657 (("--ignore=E123") "--ignore=E123,E402"))
3658 #t))
a3856b2c
SB
3659 (add-after
3660 'install 'wrap-program
3661 (lambda* (#:key outputs #:allow-other-keys)
3662 (let ((prog (string-append (assoc-ref outputs "out")
3663 "/bin/d-feet")))
3664 (wrap-program prog
3665 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3666 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3667 #t))))))
a3856b2c
SB
3668 (native-inputs
3669 `(("intltool" ,intltool)
3670 ("itstool" ,itstool)
3671 ("pkg-config" ,pkg-config)
3672 ("python-pep8" ,python-pep8)
3673 ("xmllint" ,libxml2)
3674 ("xorg-server" ,xorg-server)))
3675 (inputs
3676 `(("gobject-introspection" ,gobject-introspection)
3677 ("gtk+" ,gtk+)
3678 ("python" ,python-wrapper)
3679 ("python-pygobject" ,python-pygobject)))
3680 (home-page "https://wiki.gnome.org/Apps/DFeet")
3681 (synopsis "D-Bus debugger")
3682 (description
3683 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3684of running programs and invoke methods on those interfaces.")
3685 (license license:gpl2+)))
c3b97bd9
SB
3686
3687(define-public yelp-xsl
3688 (package
3689 (name "yelp-xsl")
27ad5743 3690 (version "3.20.1")
c3b97bd9
SB
3691 (source (origin
3692 (method url-fetch)
3693 (uri (string-append "mirror://gnome/sources/" name "/"
3694 (version-major+minor version) "/"
3695 name "-" version ".tar.xz"))
3696 (sha256
3697 (base32
27ad5743 3698 "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
c3b97bd9
SB
3699 (build-system gnu-build-system)
3700 (native-inputs
3701 `(("intltool" ,intltool)
3702 ("itstool" ,itstool)
3703 ("xmllint" ,libxml2)))
3704 (home-page "https://wiki.gnome.org/Apps/Yelp")
3705 (synopsis "XSL stylesheets for Yelp")
3706 (description
3707 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3708to format Docbook and Mallard documents.")
3709 (license license:gpl2+)))
de3d612a
SB
3710
3711(define-public yelp
3712 (package
3713 (name "yelp")
79518126 3714 (version "3.20.1")
de3d612a
SB
3715 (source (origin
3716 (method url-fetch)
3717 (uri (string-append "mirror://gnome/sources/" name "/"
3718 (version-major+minor version) "/"
3719 name "-" version ".tar.xz"))
3720 (sha256
3721 (base32
79518126 3722 "1hh8yqbv0scn9nksk9mq94cb4sdczlzxplclv2wqr41jmm8v186x"))))
de3d612a
SB
3723 (build-system glib-or-gtk-build-system)
3724 (native-inputs
3725 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3726 ("intltool" ,intltool)
3727 ("itstool" ,itstool)
3728 ("pkg-config" ,pkg-config)))
3729 (propagated-inputs
3730 `(("dconf" ,dconf)))
3731 (inputs
ad1b7d8b
SB
3732 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3733 ("libxslt" ,libxslt)
de3d612a 3734 ("sqlite" ,sqlite)
4c28ca1d
SB
3735 ("webkitgtk" ,webkitgtk)
3736 ("yelp-xsl" ,yelp-xsl)))
de3d612a
SB
3737 (home-page "https://wiki.gnome.org/Apps/Yelp")
3738 (synopsis "GNOME help browser")
3739 (description
3740 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3741man, info, and HTML documents. It can locate documents according to the
3742freedesktop.org help system specification.")
3743 (license license:gpl2+)))
122d0d10
SB
3744
3745(define-public yelp-tools
3746 (package
3747 (name "yelp-tools")
50695955 3748 (version "3.18.0")
122d0d10
SB
3749 (source (origin
3750 (method url-fetch)
3751 (uri (string-append "mirror://gnome/sources/" name "/"
3752 (version-major+minor version) "/"
3753 name "-" version ".tar.xz"))
3754 (sha256
3755 (base32
50695955 3756 "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
122d0d10
SB
3757 (build-system gnu-build-system)
3758 (native-inputs
3759 `(("pkg-config" ,pkg-config)))
3760 (propagated-inputs
3761 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3762 `(("itstool" ,itstool)
3763 ("xmllint" ,libxml2)
3764 ("xsltproc" ,libxslt)))
3765 (inputs
3766 `(("yelp-xsl" ,yelp-xsl)))
3767 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3768 (synopsis "Yelp documentation tools")
3769 (description
3770 "Yelp-tools is a collection of scripts and build utilities to help create,
3771manage, and publish documentation for Yelp and the web. Most of the heavy
3772lifting is done by packages like yelp-xsl and itstool. This package just
3773wraps things up in a developer-friendly way.")
3774 (license license:gpl2+)))
af8f9f23
RW
3775
3776(define-public libgee
3777 (package
3778 (name "libgee")
3779 (version "0.18.0")
3780 (source (origin
3781 (method url-fetch)
3782 (uri (string-append "mirror://gnome/sources/" name "/"
3783 (version-major+minor version) "/"
3784 name "-" version ".tar.xz"))
3785 (sha256
3786 (base32
3787 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3788 (build-system gnu-build-system)
3789 (arguments
3790 `(#:phases
3791 (modify-phases %standard-phases
3792 (add-after 'unpack 'fix-introspection-install-dir
3793 (lambda* (#:key outputs #:allow-other-keys)
3794 (let ((out (assoc-ref outputs "out")))
3795 (substitute* "gee/Makefile.in"
3796 (("@INTROSPECTION_GIRDIR@")
3797 (string-append out "/share/gir-1.0/"))
3798 (("@INTROSPECTION_TYPELIBDIR@")
3799 (string-append out "/lib/girepository-1.0/")))))))))
3800 (native-inputs
3801 `(("glib" ,glib "bin")
3802 ("pkg-config" ,pkg-config)))
3803 (inputs
3804 `(("glib" ,glib)
3805 ("gobject-introspection" ,gobject-introspection)))
3806 (home-page "https://wiki.gnome.org/Projects/Libgee")
3807 (synopsis "GObject collection library")
3808 (description
3809 "Libgee is a utility library providing GObject-based interfaces and
3810classes for commonly used data structures.")
3811 (license license:lgpl2.1+)))
b0f9c4b8
RW
3812
3813(define-public gexiv2
3814 (package
3815 (name "gexiv2")
2456d97b 3816 (version "0.10.4")
b0f9c4b8
RW
3817 (source (origin
3818 (method url-fetch)
3819 (uri (string-append "mirror://gnome/sources/" name "/"
3820 (version-major+minor version) "/"
3821 name "-" version ".tar.xz"))
3822 (sha256
3823 (base32
2456d97b 3824 "190www3b61spfgwx42jw8h5hsz2996jcxky48k63468avjpk33dd"))))
b0f9c4b8
RW
3825 (build-system gnu-build-system)
3826 (native-inputs
3827 `(("glib" ,glib "bin")
3828 ("pkg-config" ,pkg-config)))
3829 (propagated-inputs
3830 ;; Listed in "Requires" section of gexiv2.pc
3831 `(("exiv2" ,exiv2)))
3832 (inputs
3833 `(("glib" ,glib)
3834 ("gobject-introspection" ,gobject-introspection)))
3835 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3836 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3837 (description
3838 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3839allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3840metadata in photo and video files of various formats.")
3841 (license license:gpl2+)))
fed5a689
RW
3842
3843(define-public shotwell
3844 (package
3845 (name "shotwell")
735b8db6 3846 (version "0.23.5")
fed5a689
RW
3847 (source (origin
3848 (method url-fetch)
3849 (uri (string-append "mirror://gnome/sources/" name "/"
3850 (version-major+minor version) "/"
3851 name "-" version ".tar.xz"))
3852 (sha256
3853 (base32
735b8db6 3854 "0fgs1rgvkmy79bmpxrsvm5w8rvqml4l1vnwma0xqx5zzm02p8a07"))))
fed5a689 3855 (build-system glib-or-gtk-build-system)
735b8db6
TGR
3856 (propagated-inputs
3857 `(("dconf" ,dconf)))
fed5a689
RW
3858 (native-inputs
3859 `(("pkg-config" ,pkg-config)
f819c21d 3860 ("itstool" ,itstool)
fed5a689 3861 ("gettext" ,gnu-gettext)
735b8db6
TGR
3862 ("itstool" ,itstool)
3863 ("vala" ,vala)))
fed5a689 3864 (inputs
735b8db6
TGR
3865 `(("glib:bin" ,glib "bin")
3866 ("gstreamer" ,gstreamer)
fed5a689 3867 ("gst-plugins-base" ,gst-plugins-base)
fed5a689
RW
3868 ("libgee" ,libgee)
3869 ("gexiv2" ,gexiv2)
3870 ("libraw" ,libraw)
3871 ("json-glib" ,json-glib)
7108425c 3872 ("webkitgtk" ,webkitgtk)
fed5a689
RW
3873 ("sqlite" ,sqlite)
3874 ("libsoup" ,libsoup)
3875 ("libxml2" ,libxml2)
fed5a689
RW
3876 ("libgudev" ,libgudev)
3877 ("libgphoto2" ,libgphoto2)))
3878 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3879 (synopsis "Photo manager for GNOME 3")
3880 (description
3881 "Shotwell is a digital photo manager designed for the GNOME desktop
3882environment. It allows you to import photos from disk or camera, organize
3883them by keywords and events, view them in full-window or fullscreen mode, and
3884share them with others via social networking and more.")
3885 (license license:lgpl2.1+)))
293ff8b2
DT
3886
3887(define-public file-roller
3888 (package
3889 (name "file-roller")
e0479f52 3890 (version "3.20.3")
293ff8b2
DT
3891 (source (origin
3892 (method url-fetch)
3893 (uri (string-append "mirror://gnome/sources/" name "/"
3894 (version-major+minor version) "/"
3895 name "-" version ".tar.xz"))
3896 (sha256
3897 (base32
e0479f52 3898 "1sa46vjx78d670m6bikpibgz39a5zb6ri8yjmj632lmxqvj2sp3b"))))
293ff8b2
DT
3899 (build-system glib-or-gtk-build-system)
3900 (native-inputs
3901 `(("intltool" ,intltool)
3902 ("pkg-config" ,pkg-config)))
3903 ;; TODO: Add libnautilus.
3904 (inputs
3905 `(("gtk+" ,gtk+)
3906 ("gdk-pixbuf" ,gdk-pixbuf)
3907 ("json-glib" ,json-glib)
3908 ("libarchive" ,libarchive)
3909 ("libnotify" ,libnotify)
3910 ("nettle" ,nettle)
3911 ("itstool" ,itstool)
3912 ("libxml2" ,libxml2)))
3913 (synopsis "Graphical archive manager for GNOME")
3914 (description "File Roller is an archive manager for the GNOME desktop
3915environment that allows users to view, unpack, and create compressed archives
3916such as gzip tarballs.")
3917 (home-page "http://fileroller.sourceforge.net/")
3918 (license license:gpl2+)))
7ce49365
SB
3919
3920(define-public gnome-session
3921 (package
3922 (name "gnome-session")
803ab416 3923 (version "3.20.1")
7ce49365
SB
3924 (source (origin
3925 (method url-fetch)
3926 (uri (string-append "mirror://gnome/sources/" name "/"
3927 (version-major+minor version) "/"
3928 name "-" version ".tar.xz"))
3929 (sha256
3930 (base32
803ab416 3931 "04w90gyl0kdx5vwmdcgfdk3qr9xhip00vgpgzci151agqwyzbs9a"))))
2914af3c
AW
3932 (arguments
3933 '(#:phases
3934 (modify-phases %standard-phases
3935 (add-before 'configure 'pre-configure
3936 (lambda* (#:key outputs #:allow-other-keys)
3937 ;; Use elogind instead of systemd.
3938 (substitute* "configure"
3939 (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
3940 "libelogind")
3941 (("systemd") "elogind"))
3942 (substitute* "gnome-session/gsm-systemd.c"
3943 (("#include <systemd/sd-login.h>")
3944 "#include <elogind/sd-login.h>"))
3945 ;; Remove uses of the systemd journal.
3946 (substitute* "gnome-session/main.c"
3947 (("#ifdef HAVE_SYSTEMD") "#if 0"))
3948 (substitute* "gnome-session/gsm-manager.c"
3949 (("#ifdef HAVE_SYSTEMD") "#if 0"))
803ab416
SB
3950 (substitute* "gnome-session/gsm-autostart-app.c"
3951 (("#ifdef HAVE_SYSTEMD") "#if 0"))
a0d7baaf
LC
3952 #t))
3953 (add-after 'install 'wrap-gnome-session
3954 (lambda* (#:key inputs outputs #:allow-other-keys)
3955 ;; Make sure 'gnome-session' finds the 'gsettings' program.
3956 (let ((glib (assoc-ref inputs "glib:bin"))
3957 (out (assoc-ref outputs "out")))
3958 (wrap-program (string-append out "/bin/gnome-session")
3959 `("PATH" ":" prefix (,(string-append glib "/bin"))))
6cbc8d57
LC
3960 #t)))
3961 (add-after 'install 'disable-hardware-acceleration-check
3962 (lambda* (#:key outputs #:allow-other-keys)
3963 ;; Do not abort if hardware acceleration is missing. This allows
3964 ;; GNOME to run in QEMU and on low-end devices.
3965 (let ((out (assoc-ref outputs "out")))
3966 (substitute* (string-append out
3967 "/share/xsessions/gnome.desktop")
3968 (("gnome-session")
3969 "gnome-session --disable-acceleration-check"))
a0d7baaf 3970 #t))))
6cbc8d57 3971
2914af3c
AW
3972 #:configure-flags
3973 '("--enable-elogind")))
ba3cb5ab 3974 (build-system glib-or-gtk-build-system)
7ce49365
SB
3975 (native-inputs
3976 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3977 ("pkg-config" ,pkg-config)
3978 ("intltool" ,intltool)
3979 ("xsltproc" ,libxslt)))
3980 (inputs
2914af3c
AW
3981 `(("elogind" ,elogind)
3982 ("gnome-desktop" ,gnome-desktop)
ba3cb5ab 3983 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
7ce49365
SB
3984 ("gtk+" ,gtk+)
3985 ("json-glib" ,json-glib)
3986 ("libsm" ,libsm)
3987 ("libxcomposite" ,libxcomposite)
3988 ("libxtst" ,libxtst)
3989 ("mesa" ,mesa)
3990 ("upower" ,upower)
3991 ("xtrans" ,xtrans)))
3992 (synopsis "Session manager for GNOME")
3993 (description
3994 "This package contains the GNOME session manager, as well as a
3995configuration program to choose applications starting on login.")
3996 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3997 (license license:gpl2+)))
f47ba77e
SB
3998
3999(define-public gjs
4000 (package
4001 (name "gjs")
4002 (version "1.44.0")
4003 (source (origin
4004 (method url-fetch)
4005 (uri (string-append "mirror://gnome/sources/" name "/"
4006 (version-major+minor version) "/"
4007 name "-" version ".tar.xz"))
4008 (sha256
4009 (base32
4010 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
4011 (modules '((guix build utils)))
4012 (snippet '(substitute* "test/run-with-dbus"
4013 (("/bin/rm") "rm")))))
4014 (build-system gnu-build-system)
4015 (arguments
4016 '(#:phases
4017 (modify-phases %standard-phases
4018 (add-before
4019 'check 'pre-check
4020 (lambda _
4021 ;; For the missing /etc/machine-id.
4022 (setenv "DBUS_FATAL_WARNINGS" "0")
ba666b07
SB
4023
4024 ;; XXX: fails with:
4025 ;; Failed to convert UTF-8 string to JS string: ...
4026 ;; TODO: actually fix it.
4027 (substitute* "installed-tests/js/testEverythingBasic.js"
4028 ((".*test_utf8_inout.*") ""))
f47ba77e
SB
4029 #t)))))
4030 (native-inputs
4031 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
4032 ("pkg-config" ,pkg-config)
4033 ("xmllint" ,libxml2)
4034 ;; For testing
4035 ("dbus-launch" ,dbus)
4036 ("uuidgen" ,util-linux)
4037 ("xvfb" ,xorg-server)))
4038 (propagated-inputs
4039 ;; These are all in the Requires.private field of gjs-1.0.pc.
4040 `(("gobject-introspection" ,gobject-introspection)
4041 ("mozjs" ,mozjs-24)))
4042 (inputs
4043 `(("gtk+" ,gtk+)
4044 ("readline" ,readline)))
4045 (synopsis "Javascript bindings for GNOME")
4046 (home-page "http://live.gnome.org/Gjs")
4047 (description
4048 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
4049javascript engine and the GObject introspection framework.")
4050 (license license:gpl2+)))
329d731b
DH
4051
4052(define-public gedit
4053 (package
4054 (name "gedit")
6983ba56 4055 (version "3.20.1")
329d731b
DH
4056 (source (origin
4057 (method url-fetch)
4058 (uri (string-append "mirror://gnome/sources/" name "/"
4059 (version-major+minor version) "/"
4060 name "-" version ".tar.xz"))
4061 (sha256
4062 (base32
6983ba56 4063 "1i0x1jd9x1vpv8lwdlzwf0ml8jxh3b3l6nlg6pbnfjw47w3y6iws"))))
329d731b
DH
4064 (build-system glib-or-gtk-build-system)
4065 (arguments
33cd9bef
SB
4066 `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet
4067 #:phases
329d731b
DH
4068 (modify-phases %standard-phases
4069 (add-after
4070 'install 'wrap-gedit
4071 (lambda* (#:key inputs outputs #:allow-other-keys)
4072 (let ((out (assoc-ref outputs "out"))
4073 (gtksourceview (assoc-ref inputs "gtksourceview"))
afc25242
SB
4074 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4075 (python-path (getenv "PYTHONPATH")))
329d731b 4076 (wrap-program (string-append out "/bin/gedit")
afc25242 4077 ;; For plugins.
329d731b 4078 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
afc25242 4079 `("PYTHONPATH" ":" prefix (,python-path))
329d731b
DH
4080 ;; For language-specs.
4081 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
4082 "/share")))))
4083 #t)))))
4084 (propagated-inputs
4085 `(("dconf" ,dconf)))
4086 (native-inputs
4087 `(("intltool" ,intltool)
b3546174 4088 ("itstool" ,itstool)
329d731b
DH
4089 ("gobject-introspection" ,gobject-introspection)
4090 ("pkg-config" ,pkg-config)))
4091 (inputs
4092 `(("glib" ,glib)
4093 ("gtk+" ,gtk+)
4094 ("gtksourceview" ,gtksourceview)
4095 ("libpeas" ,libpeas)
4096 ("libxml2" ,libxml2)
329d731b
DH
4097 ("iso-codes" ,iso-codes)
4098 ("python-pygobject" ,python-pygobject)
4099 ("python" ,python)
4100 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4101 ("libx11" ,libx11)
4102 ("vala" ,vala)
4103 ("adwaita-icon-theme" ,adwaita-icon-theme)
4104 ("libsoup" ,libsoup)
4105 ("gnome-desktop" ,gnome-desktop)))
4106 (home-page "https://wiki.gnome.org/Apps/Gedit")
4107 (synopsis "GNOME text editor")
4108 (description "While aiming at simplicity and ease of use, gedit is a
4109powerful general purpose text editor.")
4110 (license license:gpl2+)))
b7179363
SB
4111
4112(define-public zenity
4113 (package
4114 (name "zenity")
6983ba56 4115 (version "3.20.0")
b7179363
SB
4116 (source (origin
4117 (method url-fetch)
4118 (uri (string-append "mirror://gnome/sources/" name "/"
4119 (version-major+minor version) "/"
4120 name "-" version ".tar.xz"))
4121 (sha256
4122 (base32
6983ba56 4123 "0j2sy6imwp41l75hy3fwr68n35drvanbwgmr42kc04zqjy9pbs02"))))
b7179363
SB
4124 (build-system gnu-build-system)
4125 (native-inputs
4126 `(("gettext" ,gnu-gettext)
4127 ("itstool" ,itstool)
4128 ("pkg-config" ,pkg-config)))
4129 (inputs
4130 `(("libnotify" ,libnotify)
4131 ("webkitgtk" ,webkitgtk)))
4132 (synopsis "Display graphical dialog boxes from shell scripts")
4133 (home-page "http://www.gnome.org")
4134 (description
4135 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
4136to display dialog boxes from the commandline and shell scripts.")
4137 (license license:lgpl2.0+)))
60c3627c
SB
4138
4139(define-public mutter
4140 (package
4141 (name "mutter")
4a8573ad 4142 (version "3.20.1")
60c3627c
SB
4143 (source (origin
4144 (method url-fetch)
4145 (uri (string-append "mirror://gnome/sources/" name "/"
4146 (version-major+minor version) "/"
4147 name "-" version ".tar.xz"))
4148 (sha256
4149 (base32
4a8573ad 4150 "0752vkkmaaay8ziczqrf7z3735bq3brx2djw36arqsdhwawh6jba"))))
60c3627c
SB
4151 (build-system gnu-build-system)
4152 (arguments
4153 '(#:configure-flags
4154 ;; XXX: build fails with [-Werror]:
4155 ;; backends/meta-cursor-renderer.c:112:5: error:
4156 ;; implicit declaration of function ?roundf?
4157 '("--enable-compile-warnings=minimum")))
4158 (native-inputs
4159 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4160 ("gobject-introspection" ,gobject-introspection)
4161 ("intltool" ,intltool)
4162 ("pkg-config" ,pkg-config)))
4163 (propagated-inputs
4164 ;; libmutter.pc refers to all these.
4165 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4166 ("gtk+" ,gtk+)
4167 ("clutter" ,clutter)))
4168 (inputs
4169 `(("gnome-desktop" ,gnome-desktop)
4170 ("libcanberra-gtk" ,libcanberra)
4171 ("libice" ,libice)
4172 ("libsm" ,libsm)
4173 ("libxkbcommon" ,libxkbcommon)
4174 ("libxkbfile" ,libxkbfile)
4175 ("mesa-headers" ,mesa-headers)
4176 ("startup-notification" ,startup-notification)
4177 ("upower-glib" ,upower)
4178 ("xkeyboard-config" ,xkeyboard-config)
4179 ("zenity" ,zenity)))
4180 (synopsis "Window and compositing manager")
4181 (home-page "http://www.gnome.org")
4182 (description
4183 "Mutter is a window and compositing manager that displays and manages your
4184desktop via OpenGL. Mutter combines a sophisticated display engine using the
4185Clutter toolkit with solid window-management logic inherited from the Metacity
4186window manager.")
4187 (license license:gpl2+)))
685cee87
SB
4188
4189(define-public gnome-online-accounts
4190 (package
4191 (name "gnome-online-accounts")
223f5d5d 4192 (version "3.20.1")
685cee87
SB
4193 (source (origin
4194 (method url-fetch)
4195 (uri (string-append "mirror://gnome/sources/" name "/"
4196 (version-major+minor version) "/"
4197 name "-" version ".tar.xz"))
4198 (sha256
4199 (base32
223f5d5d 4200 "14qcih1g136sn2aklzagv83jl82d3qc598rkdm8zac9gw70ynyn3"))))
685cee87
SB
4201 (build-system glib-or-gtk-build-system)
4202 (native-inputs
4203 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4204 ("gobject-introspection" ,gobject-introspection)
4205 ("intltool" ,intltool)
4206 ("pkg-config" ,pkg-config)
4207 ("xsltproc" ,libxslt)))
4208 (propagated-inputs
4209 `(("glib" ,glib) ; required by goa-1.0.pc
4210 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
4211 (inputs
4212 `(("docbook-xsl" ,docbook-xsl)
4213 ("json-glib" ,json-glib)
4214 ("libsecret" ,libsecret)
4215 ("rest" ,rest)
4216 ("telepathy-glib" ,telepathy-glib)
4217 ("webkitgtk" ,webkitgtk)))
4218 (synopsis "Single sign-on framework for GNOME")
4219 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
4220 (description
4221 "GNOME Online Accounts provides interfaces so that applications and
4222libraries in GNOME can access the user's online accounts. It has providers for
4223Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
4224Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
4225 (license license:lgpl2.0+)))
df217748
SB
4226
4227(define-public evolution-data-server
4228 (package
4229 (name "evolution-data-server")
c1387d36 4230 (version "3.20.1")
df217748
SB
4231 (source (origin
4232 (method url-fetch)
4233 (uri (string-append "mirror://gnome/sources/" name "/"
4234 (version-major+minor version) "/"
4235 name "-" version ".tar.xz"))
4236 (sha256
4237 (base32
c1387d36 4238 "0lsbhzacr2bs90z8sx44vf403r0h2yqsy4l2svrh5hjnassgdyqx"))))
df217748
SB
4239 (build-system gnu-build-system)
4240 (arguments
4241 '(;; XXX: fails with:
4242 ;; /Fixture/Calendar0: cleaning up pid xxxx
4243 ;; t status: 139)
4244 #:tests? #f
4245 #:configure-flags
4246 (let ((nss (assoc-ref %build-inputs "nss"))
4247 (nspr (assoc-ref %build-inputs "nspr")))
4248 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
4249 "--disable-google" ; disable Google Contacts support
c1387d36 4250 "--disable-google-auth" ; disable Google authentication
a73c1cf8 4251 "--enable-vala-bindings"
df217748
SB
4252 (string-append "--with-nspr-includes=" nspr "/include/nspr")
4253 (string-append "--with-nss-includes=" nss "/include/nss")
4254 (string-append "--with-nss-libs=" nss "/lib/nss")))
4255 #:phases
4256 (modify-phases %standard-phases
4257 (add-before 'check 'pre-check
4258 (lambda _
4259 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4260 (("/bin/rm") (which "rm")))
4261 #t)))))
4262 (native-inputs
4263 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4264 ("gobject-introspection" ,gobject-introspection)
4265 ("gperf" ,gperf)
4266 ("intltool" ,intltool)
4267 ("pkg-config" ,pkg-config)
a73c1cf8 4268 ("vala" ,vala)
df217748
SB
4269 ("python" ,python)))
4270 (propagated-inputs
4271 ;; These are all in the Requires field of .pc files.
4272 `(("gtk+" ,gtk+)
4273 ("libical" ,libical)
4274 ("libsecret" ,libsecret)
4275 ("libsoup" ,libsoup)
4276 ("nss" ,nss)
4277 ("sqlite" ,sqlite)))
4278 (inputs
4279 `(("bdb" ,bdb)
4280 ("gcr" ,gcr)
4281 ("gnome-online-accounts" ,gnome-online-accounts)
4282 ("libgweather" ,libgweather)))
4283 (synopsis "Store address books and calendars")
4284 (home-page "https://wiki.gnome.org/Apps/Evolution")
4285 (description
4286 "This package provides a unified backend for programs that work with
4287contacts, tasks, and calendar information. It was originally developed for
4288Evolution (hence the name), but is now used by other packages as well.")
4289 (license license:lgpl2.0)))
bd7dfafa
SB
4290
4291(define-public caribou
4292 (package
4293 (name "caribou")
6983ba56 4294 (version "0.4.20")
bd7dfafa
SB
4295 (source (origin
4296 (method url-fetch)
4297 (uri (string-append "mirror://gnome/sources/" name "/"
4298 (version-major+minor version) "/"
4299 name "-" version ".tar.xz"))
4300 (sha256
4301 (base32
6983ba56 4302 "1nahpfs5ap9f9wsvn93kg8isqffk60v785f1q6k64awcd7an8ris"))))
bd7dfafa
SB
4303 (build-system glib-or-gtk-build-system)
4304 (arguments
4305 '(#:phases
4306 (modify-phases %standard-phases
4307 (add-before
4308 'build 'pre-build
4309 (lambda* (#:key outputs #:allow-other-keys)
4310 (let ((out (assoc-ref outputs "out")))
4311 ;; Use absolute shared library path in Caribou-1.0.typelib.
4312 (substitute* "libcaribou/Makefile"
4313 (("--shared-library=libcaribou.so")
4314 (string-append "--shared-library="
4315 out "/lib/libcaribou.so")))
4316 #t)))
4317 (add-after 'install 'wrap-programs
4318 (lambda* (#:key outputs #:allow-other-keys)
4319 (let* ((out (assoc-ref outputs "out"))
4320 (python-path (getenv "PYTHONPATH"))
4321 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4322 (for-each
4323 (lambda (prog)
4324 (wrap-program prog
4325 `("PYTHONPATH" ":" prefix (,python-path))
4326 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4327 (list (string-append out "/bin/caribou-preferences")
4328 (string-append out "/libexec/antler-keyboard"))))
4329 #t)))))
4330 (native-inputs
4331 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4332 ("gobject-introspection" ,gobject-introspection)
4333 ("intltool" ,intltool)
4334 ("pkg-config" ,pkg-config)
4335 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4336 ("vala" ,vala)
4337 ("xsltproc" ,libxslt)))
4338 (propagated-inputs
4339 ;; caribou-1.0.pc refers to all these.
4340 `(("libgee" ,libgee)
4341 ("libxklavier" ,libxklavier)
4342 ("libxtst" ,libxtst)
4343 ("gtk+" ,gtk+)))
4344 (inputs
4345 `(("clutter" ,clutter)
4346 ("dconf" ,dconf)
4347 ("gtk+-2" ,gtk+-2)
4348 ("python-pygobject" ,python2-pygobject)))
4349 (synopsis "Text entry and UI navigation application")
4350 (home-page "https://wiki.gnome.org/Projects/Caribou")
4351 (description
4352 "Caribou is an input assistive technology intended for switch and pointer
4353users.")
4354 (license license:lgpl2.1)))
ba5dd105 4355
ba5dd105
SB
4356(define-public network-manager
4357 (package
4358 (name "network-manager")
142bdcbc 4359 (version "1.2.0")
ba5dd105
SB
4360 (source (origin
4361 (method url-fetch)
4362 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4363 (version-major+minor version) "/"
4364 "NetworkManager-" version ".tar.xz"))
4365 (sha256
4366 (base32
142bdcbc 4367 "101axwk3bc1pm9m98vwrnxyjna6w0qgzaskgivldq69xz8qcyiz9"))))
ba5dd105
SB
4368 (build-system gnu-build-system)
4369 (outputs '("out"
4370 "doc")) ; 8 MiB of gtk-doc HTML
4371 (arguments
4372 '(#:configure-flags
4373 (let ((out (assoc-ref %outputs "out"))
4374 (doc (assoc-ref %outputs "doc"))
4375 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4376 "/sbin/dhclient")))
4377 (list "--with-crypto=gnutls"
4378 "--disable-config-plugin-ibft"
4379 "--sysconfdir=/etc"
4380 "--localstatedir=/var"
4381 (string-append "--with-udev-dir="
4382 out "/lib/udev")
4383 (string-append "--with-dbus-sys-dir="
4384 out "/etc/dbus-1/system.d")
4385 (string-append "--with-html-dir="
4386 doc "/share/gtk-doc/html")
4387 (string-append "--with-dhclient=" dhclient)))
4388 #:phases
4389 (modify-phases %standard-phases
b4f59d87
AW
4390 (add-before 'configure 'pre-configure
4391 (lambda _
4392 ;; These tests try to test aspects of network-manager's
4393 ;; functionality within restricted containers, but they don't
4394 ;; cope with being already in the Guix build jail as that jail
4395 ;; lacks some features that they would like to proxy over (like
4396 ;; a /sys mount).
142bdcbc
SB
4397 (substitute* '("src/platform/Makefile.in"
4398 "src/devices/Makefile.in")
b4f59d87
AW
4399 (("SUBDIRS = tests") ""))
4400 (substitute* '("src/tests/Makefile.in")
4401 (("\ttest-route-manager-linux") "\t")
4402 (("\ttest-route-manager-fake") "\t"))
4403 #t))
ba5dd105
SB
4404 (add-before 'check 'pre-check
4405 (lambda _
4406 ;; For the missing /etc/machine-id.
4407 (setenv "DBUS_FATAL_WARNINGS" "0")
4408 #t))
4409 (replace 'install
4410 (lambda _
4411 (zero? (system* "make"
4412 "sysconfdir=/tmp"
142bdcbc
SB
4413 "rundir=/tmp"
4414 "statedir=/tmp"
ba5dd105 4415 "install")))))))
b93502d6
DC
4416 (propagated-inputs
4417 `(("glib" ,glib)))
ba5dd105
SB
4418 (native-inputs
4419 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4420 ("gobject-introspection" ,gobject-introspection)
4421 ("intltool" ,intltool)
4422 ("pkg-config" ,pkg-config)
4423 ;; For testing.
4424 ("python" ,python-wrapper)
4425 ("python-dbus" ,python-dbus)
4426 ("python-pygobject" ,python-pygobject)))
4427 (inputs
4428 `(("dbus-glib" ,dbus-glib)
4429 ("dnsmasq" ,dnsmasq)
4430 ("gnutls" ,gnutls)
4431 ("iptables" ,iptables)
4432 ("isc-dhcp" ,isc-dhcp)
4433 ("libgcrypt" ,libgcrypt)
4434 ("libgudev" ,libgudev)
4435 ("libndp" ,libndp)
4436 ("libnl" ,libnl)
4437 ("libsoup" ,libsoup)
142bdcbc 4438 ("modem-manager" ,modem-manager)
ba5dd105
SB
4439 ("polkit" ,polkit)
4440 ("ppp" ,ppp)
4441 ("readline" ,readline)
4442 ("util-linux" ,util-linux)))
4443 (synopsis "Network connection manager")
4444 (home-page "http://www.gnome.org/projects/NetworkManager/")
4445 (description
4446 "NetworkManager is a system network service that manages your network
4447devices and connections, attempting to keep active network connectivity when
4448available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4449devices, and provides VPN integration with a variety of different VPN
4450services.")
4451 (license license:gpl2+)))
4d62a9d3 4452
e5e1df4d
DC
4453(define-public mobile-broadband-provider-info
4454 (package
4455 (name "mobile-broadband-provider-info")
4456 (version "20151214")
4457 (source (origin
4458 (method url-fetch)
4459 (uri (string-append
4460 "mirror://gnome/sources/"
4461 "mobile-broadband-provider-info/" version "/"
4462 "mobile-broadband-provider-info-" version ".tar.xz"))
4463 (sha256
4464 (base32
4465 "1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a"))))
4466 (build-system gnu-build-system)
4467 (arguments
4468 `(#:tests? #f)) ; No tests
4469 (home-page "https://wiki.gnome.org/Projects/NetworkManager")
4470 (synopsis "Database of broadband connection configuration")
4471 (description "Database of broadband connection configuration.")
4472 (license license:public-domain)))
4473
4d62a9d3
SB
4474(define-public network-manager-applet
4475 (package
4476 (name "network-manager-applet")
bbbb77e4 4477 (version "1.2.0")
4d62a9d3
SB
4478 (source (origin
4479 (method url-fetch)
4480 (uri (string-append "mirror://gnome/sources/" name "/"
4481 (version-major+minor version) "/"
4482 name "-" version ".tar.xz"))
4483 (sha256
4484 (base32
bbbb77e4 4485 "0dhvk3dvy6djn6blpkv46dn6yfh28wsh6mpl0v53qxfip97j8kwk"))))
4d62a9d3
SB
4486 (build-system glib-or-gtk-build-system)
4487 (arguments '(#:configure-flags '("--disable-migration")))
4488 (native-inputs
4489 `(("intltool" ,intltool)
4490 ("gobject-introspection" ,gobject-introspection)
4491 ("pkg-config" ,pkg-config)))
4492 (propagated-inputs
4493 ;; libnm-gtk.pc refers to all these.
4494 `(("dbus-glib" ,dbus-glib)
4495 ("gtk+" ,gtk+)
4496 ("network-manager" ,network-manager)))
4497 (inputs
4498 `(("iso-codes" ,iso-codes)
4499 ("libgudev" ,libgudev)
4500 ("libnotify" ,libnotify)
4501 ("libsecret" ,libsecret)))
4502 (synopsis "Applet for managing network connections")
4503 (home-page "http://www.gnome.org/projects/NetworkManager/")
4504 (description
4505 "This package contains a systray applet for NetworkManager. It displays
4506the available networks and allows users to easily switch between them.")
4507 (license license:gpl2+)))
56196594
RW
4508
4509(define-public libxml++
4510 (package
4511 (name "libxml++")
f5821956 4512 (version "3.0.0")
56196594
RW
4513 (source (origin
4514 (method url-fetch)
4515 (uri (string-append "mirror://gnome/sources/" name "/"
4516 (version-major+minor version) "/"
4517 name "-" version ".tar.xz"))
4518 (sha256
4519 (base32
f5821956 4520 "0lkrajbdys5f6w6qwfijih3hnbk4c6809qx2mmxkb7bj2w269wrg"))))
56196594
RW
4521 (build-system gnu-build-system)
4522 ;; libxml++-3.0.pc refers to all these.
4523 (propagated-inputs
4524 `(("libxml2" ,libxml2)
4525 ("glibmm" ,glibmm)))
4526 (native-inputs
4527 `(("perl" ,perl)
4528 ("pkg-config" ,pkg-config)))
4529 (home-page "http://libxmlplusplus.sourceforge.net/")
4530 (synopsis "C++ wrapper for XML parser library libxml2")
4531 (description
4532 "This package provides a C++ wrapper for the XML parser library
4533libxml2.")
4534 (license license:lgpl2.1+)))
df12f04a
SB
4535
4536(define-public gdm
4537 (package
4538 (name "gdm")
906943df 4539 (version "3.20.1")
df12f04a
SB
4540 (source (origin
4541 (method url-fetch)
4542 (uri (string-append "mirror://gnome/sources/" name "/"
4543 (version-major+minor version) "/"
4544 name "-" version ".tar.xz"))
4545 (sha256
4546 (base32
906943df 4547 "17vqcnqnwx7s5xzgn358gsgbmpz7k90sh1qrwrh3wnj5r0pm38hh"))))
df12f04a
SB
4548 (build-system gnu-build-system)
4549 (arguments
4550 '(#:configure-flags
4551 '("--without-plymouth")
4552 #:phases
4553 (modify-phases %standard-phases
4554 (add-before
4555 'configure 'pre-configure
4556 (lambda _
4557 ;; We don't have <systemd/sd-daemon.h>.
4558 (substitute* '("common/gdm-log.c"
4559 "daemon/gdm-server.c"
4560 "daemon/gdm-session-worker.c"
4561 "daemon/gdm-session-worker-job.c")
4562 (("#include <systemd/sd-daemon\\.h>") ""))
4563 ;; Use elogind for sd-login.
4564 (substitute* '("common/gdm-common.c"
4565 "daemon/gdm-manager.c"
4566 "libgdm/gdm-user-switching.c")
4567 (("#include <systemd/sd-login\\.h>")
4568 "#include <elogind/sd-login.h>"))
4569 ;; Avoid checking SYSTEMD using pkg-config.
4570 (setenv "SYSTEMD_CFLAGS" " ")
4571 (setenv "SYSTEMD_LIBS" "-lelogind")
4572 #t)))))
4573 (native-inputs
4574 `(("dconf" ,dconf)
4575 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4576 ("gobject-introspection" ,gobject-introspection)
4577 ("intltool" ,intltool)
4578 ("itstool" ,itstool)
4579 ("pkg-config" ,pkg-config)
4580 ("xmllint" ,libxml2)))
4581 (inputs
4582 `(("accountsservice" ,accountsservice)
4583 ("check" ,check) ; for testing
4584 ("elogind" ,elogind)
4585 ("gtk+" ,gtk+)
4586 ("iso-codes" ,iso-codes)
4587 ("libcanberra" ,libcanberra)
4588 ("linux-pam" ,linux-pam)))
4589 (synopsis "Display manager for GNOME")
4590 (home-page "http://wiki.gnome.org/Projects/GDM/")
4591 (description
4592 "GNOME Display Manager is a system service that is responsible for
4593providing graphical log-ins and managing local and remote displays.")
4594 (license license:gpl2+)))
8e1dd04f
SB
4595
4596(define-public libgtop
4597 (package
4598 (name "libgtop")
6983ba56 4599 (version "2.34.0")
8e1dd04f
SB
4600 (source (origin
4601 (method url-fetch)
4602 (uri (string-append "mirror://gnome/sources/" name "/"
4603 (version-major+minor version) "/"
4604 name "-" version ".tar.xz"))
4605 (sha256
4606 (base32
6983ba56 4607 "0apfnh9k6vmbdm8ms5wxyhagrrl8r88fv48k7q5qq70df2gf72ld"))))
8e1dd04f
SB
4608 (build-system gnu-build-system)
4609 (native-inputs
4610 `(("gobject-introspection" ,gobject-introspection)
4611 ("intltool" ,intltool)
4612 ("perl" ,perl)
4613 ("pkg-config" ,pkg-config)))
4614 (propagated-inputs
4615 `(("glib" ,glib))) ; required by libgtop-2.0.pc
4616 (synopsis "Portable system access library")
4617 (home-page "https://www.gnome.org/")
4618 (description
4619 "LibGTop is a library to get system specific data such as CPU and memory
4620usage and information about running processes.")
4621 (license license:gpl2+)))
b96c4260
SB
4622
4623(define-public gnome-bluetooth
4624 (package
4625 (name "gnome-bluetooth")
6983ba56 4626 (version "3.18.3")
b96c4260
SB
4627 (source (origin
4628 (method url-fetch)
4629 (uri (string-append "mirror://gnome/sources/" name "/"
4630 (version-major+minor version) "/"
4631 name "-" version ".tar.xz"))
4632 (sha256
4633 (base32
6983ba56 4634 "1qwc9q7x22sc71zhqv4db78rqzxl6fqfw6d978ydqap54c2bg0g4"))))
b96c4260
SB
4635 (build-system glib-or-gtk-build-system)
4636 (native-inputs
4637 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
4638 ("gobject-introspection" ,gobject-introspection)
4639 ("intltool" ,intltool)
4640 ("pkg-config" ,pkg-config)
4641 ("xmllint" ,libxml2)))
4642 (propagated-inputs
4643 ;; gnome-bluetooth-1.0.pc refers to all these.
4644 `(("gtk+" ,gtk+)
4645 ("udev" ,eudev)))
4646 (inputs
4647 `(("libcanberra" ,libcanberra)
4648 ("libnotify" ,libnotify)))
4649 (synopsis "GNOME Bluetooth subsystem")
4650 (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth")
4651 (description
4652 "This package contains tools for managing and manipulating Bluetooth
4653devices using the GNOME desktop.")
4654 (license license:lgpl2.1+)))
b645146f
SB
4655
4656(define-public gnome-control-center
4657 (package
4658 (name "gnome-control-center")
8b6b7c73 4659 (version "3.20.1")
b645146f
SB
4660 (source (origin
4661 (method url-fetch)
4662 (uri (string-append "mirror://gnome/sources/" name "/"
4663 (version-major+minor version) "/"
4664 name "-" version ".tar.xz"))
4665 (sha256
4666 (base32
8b6b7c73 4667 "1vd1h31vwyq7ss5f1151gx1vdsy35sjmapjmmz7x73ppc3y78r6f"))))
b645146f
SB
4668 (build-system glib-or-gtk-build-system)
4669 (arguments
4670 '(#:phases
4671 (modify-phases %standard-phases
4672 (add-before 'configure 'patch-paths
4673 (lambda* (#:key inputs #:allow-other-keys)
4674 (let ((libc (assoc-ref inputs "libc"))
4675 (tzdata (assoc-ref inputs "tzdata")))
4676 (substitute* "panels/datetime/tz.h"
4677 (("/usr/share/zoneinfo/zone.tab")
4678 (string-append tzdata "/share/zoneinfo/zone.tab")))
4679 (substitute* "panels/datetime/test-endianess.c"
4680 (("/usr/share/locale")
4681 (string-append libc "/share/locale")))
4682 #t))))))
4683 (native-inputs
4684 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4685 ("intltool" ,intltool)
4686 ("pkg-config" ,pkg-config)
4687 ("xsltproc" ,libxslt)))
4688 (inputs
4689 `(("accountsservice" ,accountsservice)
4690 ("clutter-gtk" ,clutter-gtk)
4691 ("colord-gtk" ,colord-gtk)
4692 ("cups" ,cups)
4693 ("dconf" ,dconf)
4694 ("docbook-xsl" ,docbook-xsl)
4695 ("gnome-bluetooth" ,gnome-bluetooth)
4696 ("gnome-desktop" ,gnome-desktop)
4697 ("gnome-online-accounts" ,gnome-online-accounts)
4698 ("gnome-settings-daemon" ,gnome-settings-daemon)
4699 ("grilo" ,grilo)
4700 ("ibus" ,ibus)
4701 ("libcanberra" ,libcanberra)
4702 ("libgudev" ,libgudev)
4703 ("libgtop" ,libgtop)
4704 ("libpwquality" ,libpwquality)
4705 ("libsoup" ,libsoup)
4706 ("libxml2" ,libxml2)
4707 ("libwacom" ,libwacom)
4708 ("mesa" ,mesa)
4709 ("mit-krb5" ,mit-krb5)
4710 ("modem-manager" ,modem-manager)
4711 ("network-manager-applet" ,network-manager-applet)
4712 ("polkit" ,polkit)
4713 ("pulseaudio" ,pulseaudio)
4714 ("smbclient" ,samba)
4715 ("tzdata" ,tzdata)
4716 ("upower" ,upower)))
4717 (synopsis "Utilities to configure the GNOME desktop")
4718 (home-page "https://www.gnome.org/")
4719 (description
4720 "This package contains configuration applets for the GNOME desktop,
4721allowing to set accessibility configuration, desktop fonts, keyboard and mouse
4722properties, sound setup, desktop theme and background, user interface
4723properties, screen resolution, and other GNOME parameters.")
4724 (license license:gpl2+)))
a4df5756
SB
4725
4726(define-public gnome-shell
4727 (package
4728 (name "gnome-shell")
82ab7647 4729 (version "3.20.1")
a4df5756
SB
4730 (source (origin
4731 (method url-fetch)
4732 (uri (string-append "mirror://gnome/sources/" name "/"
4733 (version-major+minor version) "/"
4734 name "-" version ".tar.xz"))
4735 (sha256
4736 (base32
82ab7647 4737 "08cgbr15cim3rgcngrv98rm48pkdxwj4nqx5za1lsnv376m4x5bs"))))
a4df5756
SB
4738 (build-system glib-or-gtk-build-system)
4739 (arguments
4740 '(#:phases
4741 (modify-phases %standard-phases
4742 (replace 'install
4743 (lambda* (#:key outputs #:allow-other-keys)
4744 (let* ((out (assoc-ref outputs "out"))
4745 (keysdir (string-append
4746 out "/share/gnome-control-center/keybindings")))
4747 (zero? (system* "make"
4748 (string-append "keysdir=" keysdir)
4749 "install")))))
4750 (add-after
4751 'install 'wrap-programs
4752 (lambda* (#:key outputs #:allow-other-keys)
4753 (let ((out (assoc-ref outputs "out"))
4754 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4755 (python-path (getenv "PYTHONPATH")))
4756 (wrap-program (string-append out "/bin/gnome-shell")
4757 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
4758 (for-each
4759 (lambda (prog)
4760 (wrap-program (string-append out "/bin/" prog)
4761 `("PYTHONPATH" ":" prefix (,python-path))
4762 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4763 '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
4764 #t))))))
4765 (native-inputs
4766 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4767 ("gobject-introspection" ,gobject-introspection)
4768 ("intltool" ,intltool)
4769 ("pkg-config" ,pkg-config)
4770 ("python" ,python)
4771 ("xsltproc" ,libxslt)))
4772 (inputs
4773 `(("accountsservice" ,accountsservice)
4774 ("caribou" ,caribou)
4775 ("docbook-xsl" ,docbook-xsl)
4776 ("evolution-data-server" ,evolution-data-server)
4777 ("gcr" ,gcr)
4778 ("gdm" ,gdm)
4779 ("gjs" ,gjs)
4780 ("gnome-bluetooth" ,gnome-bluetooth)
4781 ("gnome-control-center" ,gnome-control-center)
4782 ("gnome-desktop" ,gnome-desktop)
4783 ("gnome-settings-daemon" ,gnome-settings-daemon)
4784 ("gst-plugins-base" ,gst-plugins-base)
4785 ("ibus" ,ibus)
4786 ("libcanberra" ,libcanberra)
4787 ("libcroco" ,libcroco)
4788 ("libgweather" ,libgweather)
4789 ("libsoup" ,libsoup)
4790 ("mesa-headers" ,mesa-headers)
4791 ("mutter" ,mutter)
4792 ("network-manager-applet" ,network-manager-applet)
4793 ("polkit" ,polkit)
4794 ("pulseaudio" ,pulseaudio)
4795 ("python-pygobject" ,python-pygobject)
4796 ("startup-notification" ,startup-notification)
4797 ("telepathy-logger" ,telepathy-logger)
4798 ("upower" ,upower)
4799 ;; XXX: required by libgjs.la.
4800 ("readline" ,readline)))
4801 (synopsis "Desktop shell for GNOME")
4802 (home-page "https://wiki.gnome.org/Projects/GnomeShell")
4803 (description
4804 "GNOME Shell provides core user interface functions for the GNOME desktop,
4805like switching to windows and launching applications.")
4806 (license license:gpl2+)))
c3f29bc9
RS
4807
4808(define-public gtk-vnc
4809 (package
4810 (name "gtk-vnc")
4811 (version "0.5.4")
4812 (source
4813 (origin
4814 (method url-fetch)
4815 (uri (string-append "mirror://gnome/sources/" name "/"
4816 (version-major+minor version) "/"
4817 name "-" version ".tar.xz"))
4818 (sha256
4819 (base32
4820 "1rwwdh7lb16xdmy76ca6mpqfc3zfl3a4bkcr0qb6hs6ffrxak2j8"))))
4821 (build-system gnu-build-system)
4822 (arguments
4823 '(#:configure-flags '("--with-gtk=3.0")))
4824 (propagated-inputs
4825 `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc.
4826 (inputs
4827 `(("cyrus-sasl" ,cyrus-sasl)
4828 ("gnutls" ,gnutls)
4829 ("libgcrypt" ,libgcrypt)
4830 ("pulseaudio" ,pulseaudio)))
4831 (native-inputs
4832 `(("glib:bin" ,glib "bin")
4833 ("gobject-introspection" ,gobject-introspection)
4834 ("intltool" ,intltool)
4835 ("pkg-config" ,pkg-config)
4836 ("vala" ,vala)))
4837 (home-page "https://wiki.gnome.org/Projects/gtk-vnc")
4838 (synopsis "VNC viewer widget for GTK+")
4839 (description
4840 "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing
4841applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.
4842GTK-VNC implements client side RFB protocol and authentication extensions such
4843as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.")
4844 (license license:lgpl2.1+)))
8b877545
RS
4845
4846(define-public nautilus
4847 (package
4848 (name "nautilus")
a829a053 4849 (version "3.20.1")
8b877545
RS
4850 (source (origin
4851 (method url-fetch)
4852 (uri (string-append "mirror://gnome/sources/" name "/"
4853 (version-major+minor version) "/"
4854 name "-" version ".tar.xz"))
4855 (sha256
4856 (base32
a829a053 4857 "1s41bsihacs7cywm60vqgv46m22gmga4b0bwxnki4r02jjwhgagj"))))
8b877545
RS
4858 (build-system glib-or-gtk-build-system)
4859 (arguments
6983ba56
SB
4860 '(#:configure-flags
4861 '("--disable-tracker" "--disable-selinux") ; XXX: not packaged
8b877545
RS
4862 ;; XXX: FAIL: check-nautilus
4863 ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
4864 #:tests? #f))
4865 (native-inputs
4866 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4867 ("gobject-introspection" ,gobject-introspection)
4868 ("intltool" ,intltool)
4869 ("pkg-config" ,pkg-config)))
8b877545 4870 (inputs
8b877545 4871 `(("dconf" ,dconf)
dd05e731 4872 ("gvfs" ,gvfs)
8b877545
RS
4873 ("exempi" ,exempi)
4874 ("gnome-desktop" ,gnome-desktop)
ce6027bf
SB
4875 ;; XXX: gtk+ is required by libnautilus-extension.pc
4876 ;;
4877 ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
4878 ;; package. See:
4879 ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
4880 ("gtk+" ,gtk+)
8b877545
RS
4881 ("libexif" ,libexif)
4882 ("libxml2" ,libxml2)))
4883 (synopsis "File manager for GNOME")
4884 (home-page "https://wiki.gnome.org/Apps/Nautilus")
4885 (description
4886 "Nautilus (Files) is a file manager designed to fit the GNOME desktop
4887design and behaviour, giving the user a simple way to navigate and manage its
4888files.")
4889 (license license:gpl2+)))
3c697ffd
JR
4890
4891(define-public baobab
4892 (package
4893 (name "baobab")
758da0fe 4894 (version "3.20.1")
3c697ffd
JR
4895 (source (origin
4896 (method url-fetch)
4897 (uri (string-append
4898 "mirror://gnome/sources/" name "/"
4899 (version-major+minor version) "/"
4900 name "-" version ".tar.xz"))
4901 (sha256
4902 (base32
758da0fe 4903 "07wx4jb3nmipd4caybv21hl8h0gb282qc5a24b731mxhfqmg3pz9"))))
3c697ffd
JR
4904 (build-system glib-or-gtk-build-system)
4905 (native-inputs
4906 `(("intltool" ,intltool)
4907 ("pkg-config" ,pkg-config)
4908 ("itstool" ,itstool)
4909 ("xmllint" ,libxml2)
4910 ("glib" ,glib "bin")
4911 ("vala" ,vala)))
4912 (inputs
4913 `(("gtk+" ,gtk+)))
4914 (synopsis "Disk usage analyzer for GNOME")
4915 (description
4916 "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk
4917usage in the GNOME desktop environment. It can easily scan device volumes or
4918a specific user-requested directory branch (local or remote). Once the scan
4919is complete it provides a graphical representation of each selected folder.")
4920 (home-page "https://wiki.gnome.org/Apps/Baobab")
4921 (license license:gpl2+)))
dc050251 4922
fdba447c
RS
4923(define-public gnome-backgrounds
4924 (package
4925 (name "gnome-backgrounds")
6983ba56 4926 (version "3.20")
fdba447c
RS
4927 (source
4928 (origin
4929 (method url-fetch)
4930 (uri (string-append "mirror://gnome/sources/" name "/"
4931 (version-major+minor version) "/"
4932 name "-" version ".tar.xz"))
4933 (sha256
4934 (base32
6983ba56 4935 "09viag7q53lfwrp074a1w7j0r8izlwpi10xbwjgbf5jwbqb6wv6n"))))
fdba447c
RS
4936 (build-system glib-or-gtk-build-system)
4937 (native-inputs
4938 `(("intltool" ,intltool)))
4939 (home-page "https://git.gnome.org/browse/gnome-backgrounds")
4940 (synopsis "Background images for the GNOME desktop")
4941 (description
4942 "GNOME backgrounds package contains a collection of graphics files which
4943can be used as backgrounds in the GNOME Desktop environment. Additionally,
4944the package creates the proper framework and directory structure so that you
4945can add your own files to the collection.")
4946 (license (list license:gpl2+
4947 license:cc-by2.0
4948 license:cc-by-sa2.0
4949 license:cc-by-sa3.0))))
4950
b784b1a9
RS
4951(define-public gnome-screenshot
4952 (package
4953 (name "gnome-screenshot")
8930fe62 4954 (version "3.20.1")
b784b1a9
RS
4955 (source
4956 (origin
4957 (method url-fetch)
4958 (uri (string-append "mirror://gnome/sources/" name "/"
4959 (version-major+minor version) "/"
4960 name "-" version ".tar.xz"))
4961 (sha256
4962 (base32
8930fe62 4963 "0hz1ywgb5vbfqr0p0cr20hmz5b11msyi3psanszdnv0lhxl9pa06"))))
b784b1a9
RS
4964 (build-system glib-or-gtk-build-system)
4965 (native-inputs
4966 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4967 ("intltool" ,intltool)
4968 ("pkg-config" ,pkg-config)))
4969 (inputs
4970 `(("gtk+" ,gtk+)
4971 ("libcanberra" ,libcanberra)
4972 ("libx11" ,libx11)
4973 ("libxext" ,libxext)))
4974 (home-page "https://git.gnome.org/browse/gnome-screenshot")
4975 (synopsis "Take pictures of your screen")
4976 (description
4977 "GNOME Screenshot is a utility used for taking screenshots of the entire
4978screen, a window or a user defined area of the screen, with optional
4979beautifying border effects.")
4980 (license license:gpl2+)))
4981
66d59111
RS
4982(define-public dconf-editor
4983 (package
4984 (name "dconf-editor")
0ddba707 4985 (version "3.20.1")
66d59111
RS
4986 (source
4987 (origin
4988 (method url-fetch)
4989 (uri (string-append "mirror://gnome/sources/" name "/"
4990 (version-major+minor version) "/"
4991 name "-" version ".tar.xz"))
4992 (sha256
4993 (base32
0ddba707 4994 "0pfpmvpv57a01nsd1fah3np33avihm5ic43fi6b60dyw6c5z953p"))))
66d59111
RS
4995 (build-system glib-or-gtk-build-system)
4996 (native-inputs
4997 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
4998 ("intltool" ,intltool)
4999 ("pkg-config" ,pkg-config)))
5000 (inputs
5001 `(("dconf" ,dconf)
5002 ("gtk+" ,gtk+)
5003 ("libxml2" ,libxml2)))
5004 (home-page "https://git.gnome.org/browse/dconf-editor")
5005 (synopsis "Graphical editor for GNOME's dconf configuration system")
5006 (description
5007 "Dconf-editor is a graphical tool for browsing and editing the dconf
5008configuration system for GNOME. It allows users to configure desktop
5009software that do not provide their own configuration interface.")
5010 (license license:lgpl2.1+)))
5011
dc050251
SB
5012(define-public gnome
5013 (package
5014 (name "gnome")
5015 (version (package-version gnome-shell))
5016 (source #f)
5017 (build-system trivial-build-system)
5018 (arguments '(#:builder (mkdir %output)))
5019 (propagated-inputs
5020 ;; TODO: Add more packages according to:
5021 ;; <https://packages.debian.org/jessie/gnome-core>.
5022 `(("adwaita-icon-theme" ,adwaita-icon-theme)
05f651c4 5023 ("baobab" ,baobab)
0bd3597b 5024 ("font-cantarell" ,font-cantarell)
dc050251
SB
5025 ("at-spi2-core" ,at-spi2-core)
5026 ("dbus" ,dbus)
5027 ("dconf" ,dconf)
72360453 5028 ("desktop-file-utils" ,desktop-file-utils)
dc050251
SB
5029 ("eog" ,eog)
5030 ("epiphany" ,epiphany)
5031 ("evince" ,evince)
71d9b980 5032 ("file-roller" ,file-roller)
dc050251
SB
5033 ("gedit" ,gedit)
5034 ("glib-networking" ,glib-networking)
05f651c4 5035 ("gnome-backgrounds" ,gnome-backgrounds)
dc050251
SB
5036 ("gnome-control-center" ,gnome-control-center)
5037 ("gnome-keyring" ,gnome-keyring)
5038 ("gnome-session" ,gnome-session)
5039 ("gnome-settings-daemon" ,gnome-settings-daemon)
5040 ("gnome-shell" ,gnome-shell)
5041 ("gnome-terminal" ,gnome-terminal)
5042 ("gnome-themes-standard" ,gnome-themes-standard)
05f651c4 5043 ("gvfs" ,gvfs)
dc050251
SB
5044 ("hicolor-icon-theme" ,hicolor-icon-theme)
5045 ("nautilus" ,nautilus)
5046 ("pulseaudio" ,pulseaudio)
5047 ("shared-mime-info" ,shared-mime-info)
5048 ("totem" ,totem)
5049 ("yelp" ,yelp)
5050 ("zenity" ,zenity)))
fe4e698d 5051 (synopsis "The GNU desktop environment")
dc050251
SB
5052 (home-page "https://www.gnome.org/")
5053 (description
fe4e698d
LC
5054 "GNOME is the graphical desktop for GNU. It includes a wide variety of
5055applications for browsing the web, editing text and images, creating
5056documents and diagrams, playing media, scanning, and much more.")
dc050251 5057 (license license:gpl2+)))
4a526711
DT
5058
5059(define-public byzanz
5060 ;; The last stable release of Byzanz was in 2011, but there have been many
5061 ;; useful commits made to the Byzanz repository since then that it would be
5062 ;; silly to use such an old release.
5063 (let ((commit "f7af3a5bd252db84af8365bd059c117a7aa5c4af"))
5064 (package
5065 (name "byzanz")
5066 (version (string-append "0.2-1." (string-take commit 7)))
5067 (source (origin
5068 (method git-fetch)
5069 (uri (git-reference
5070 (url "git://git.gnome.org/byzanz")
5071 (commit commit)))
5072 (sha256
5073 (base32
5074 "1l60myzxf9cav27v5v3nsijlslz9r7ip6d5kiirfpkf9k0w26hz3"))))
5075 (build-system glib-or-gtk-build-system)
5076 (arguments
5077 '(#:phases
5078 (modify-phases %standard-phases
5079 (add-after 'unpack 'bootstrap
5080 (lambda _
5081 ;; The build system cleverly detects that we're not building from
5082 ;; a release tarball and turns on -Werror for GCC.
5083 ;; Unsurprisingly, there is a warning during compilation that
5084 ;; causes the build to fail unnecessarily, so we remove the flag.
5085 (substitute* '("configure.ac")
5086 (("-Werror") ""))
5087 ;; The autogen.sh script in gnome-common will run ./configure
5088 ;; by default, which is problematic because source shebangs
5089 ;; have not yet been patched.
5090 (setenv "NOCONFIGURE" "t")
5091 (zero? (system* "sh" "autogen.sh")))))))
5092 (native-inputs
5093 `(("autoconf" ,autoconf)
5094 ("automake" ,automake)
5095 ("gnome-common" ,gnome-common)
5096 ("intltool" ,intltool)
5097 ("libtool" ,libtool)
5098 ("pkg-config" ,pkg-config)
5099 ("which" ,which)))
5100 (inputs
5101 `(("glib" ,glib)
5102 ("gstreamer" ,gstreamer)
5103 ("gst-plugins-base" ,gst-plugins-base)
5104 ("gtk+" ,gtk+)))
5105 (synopsis "Desktop recording program")
5106 (description "Byzanz is a simple desktop recording program with a
5107command-line interface. It can record part or all of an X display for a
5108specified duration and save it as a GIF encoded animated image file.")
5109 (home-page "https://git.gnome.org/browse/byzanz")
5110 (license license:gpl2+))))
3a9a4c51
RS
5111
5112(define-public libzapojit
5113 (package
5114 (name "libzapojit")
5115 (version "0.0.3")
5116 (source (origin
5117 (method url-fetch)
5118 (uri (string-append "mirror://gnome/sources/" name "/"
5119 (version-major+minor version) "/"
5120 name "-" version ".tar.xz"))
5121 (sha256
5122 (base32
5123 "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x"))))
5124 (build-system gnu-build-system)
5125 (native-inputs
5126 `(("gobject-introspection" ,gobject-introspection)
5127 ("intltool" ,intltool)
5128 ("pkg-config" ,pkg-config)))
5129 (inputs
5130 `(("gnome-online-accounts" ,gnome-online-accounts)
5131 ("json-glib" ,json-glib)
5132 ("rest" ,rest)))
5133 (home-page "https://wiki.gnome.org/Projects/Zapojit")
5134 (synopsis "Library for accessing SkyDrive and Hotmail")
5135 (description
5136 "Libzapojit is a GLib-based library for accessing online service APIs of
5137Microsoft SkyDrive and Hotmail, using their REST protocols.")
5138 (license license:lgpl2.1+)))
9365ee1c 5139
3c474897
KY
5140(define-public gnome-calendar
5141 (package
5142 (name "gnome-calendar")
5143 (version "3.20.2")
5144 (source (origin
5145 (method url-fetch)
5146 (uri (string-append "mirror://gnome/sources/" name "/"
5147 (version-major+minor version) "/"
5148 name "-" version ".tar.xz"))
5149 (sha256
5150 (base32
5151 "1vny8fclwglapdyxd2g9fbwdlk5hhnb993k2hvq3rf0hcgswycpi"))))
5152 (build-system glib-or-gtk-build-system)
5153 (native-inputs
5154 `(("intltool" ,intltool)
5155 ("pkg-config" ,pkg-config)))
5156 (inputs
5157 `(("bdb" ,bdb)
5158 ("desktop-file-utils" ,desktop-file-utils)
5159 ("evolution-data-server" ,evolution-data-server)
5160 ("gnome-online-accounts" ,gnome-online-accounts)))
5161 (home-page "https://wiki.gnome.org/Apps/Calendar")
5162 (synopsis "GNOME's calendar application")
5163 (description
5164 "GNOME Calendar is a simple calendar application designed to fit the GNOME
5165desktop. It supports multiple calendars, monthly view and yearly view.")
5166 (license license:gpl3+)))
5167
ab179eaf
SB
5168(define-public gnome-dictionary
5169 (package
5170 (name "gnome-dictionary")
5171 (version "3.20.0")
5172 (source (origin
5173 (method url-fetch)
5174 (uri (string-append "mirror://gnome/sources/" name "/"
5175 (version-major+minor version) "/"
5176 name "-" version ".tar.xz"))
5177 (sha256
5178 (base32
5179 "08b1f5s5aqka3dwxnzmwr2fmyddjm9xw7zmqsf8r5zvfsivn7czg"))))
5180 (build-system glib-or-gtk-build-system)
5181 (native-inputs
5182 `(("glib:bin" ,glib "bin")
5183 ("gobject-introspection" ,gobject-introspection)
5184 ("intltool" ,intltool)
5185 ("itstool" ,itstool)
5186 ("pkg-config" ,pkg-config)
5187 ("xmllint" ,libxml2)))
5188 (inputs
5189 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5190 ("gtk+" ,gtk+)))
5191 (home-page "https://wiki.gnome.org/Apps/Dictionary")
5192 (synopsis "Look up words in dictionary sources")
5193 (description
5194 "GNOME Dictionary can look for the definition or translation of a word in
5195existing databases over the internet.")
5196 (license license:gpl3+)))
5197
9365ee1c
JN
5198(define-public gnome-tweak-tool
5199 (package
5200 (name "gnome-tweak-tool")
5201 (version "3.20.1")
5202 (source (origin
5203 (method url-fetch)
5204 (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
5205 (version-major+minor version) "/"
5206 "gnome-tweak-tool-" version ".tar.xz"))
5207 (patches (list
5208 (search-patch "gnome-tweak-tool-search-paths.patch")))
5209 (sha256
5210 (base32
5211 "1fj6wjvnjygzm9br3sw9gya6d18yly1rm69yaiar9spfbkvv4wai"))))
5212 (build-system gnu-build-system)
5213 (arguments
5214 `(#:configure-flags '("--localstatedir=/tmp"
5215 "--sysconfdir=/tmp")
5216 #:imported-modules ((guix build python-build-system)
5217 ,@%gnu-build-system-modules)
5218 #:phases (modify-phases %standard-phases
5219 (add-after 'install 'wrap
5220 (@@ (guix build python-build-system) wrap)))))
5221 (native-inputs
5222 `(("intltool" ,intltool)
5223 ("pkg-config" ,pkg-config)))
5224 (inputs
5225 `(("python" ,python-2)
5226 ("python2-pygobject" ,python2-pygobject)))
5227 (propagated-inputs
5228 `(("libnotify" ,libnotify)
5229 ("gobject-introspection" ,gobject-introspection)
5230 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5231 ("gtk+" ,gtk+)))
5232 (synopsis "Customize advanced GNOME 3 options")
5233 (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
5234 (description
5235 "GNOME Tweak Tool allows adjusting advanced configuration settings in
5236GNOME 3. This includes things like the fonts used in user interface elements,
5237alternative user interface themes, changes in window management behavior,
5238GNOME Shell appearance and extension, etc.")
5239 (license license:gpl3+)))
813f814a 5240
32ac717c
DT
5241(define-public gnome-shell-extensions
5242 (package
5243 (name "gnome-shell-extensions")
5244 (version "3.20.1")
5245 (source (origin
5246 (method url-fetch)
5247 (uri (string-append "mirror://gnome/sources/" name "/"
5248 (version-major+minor version) "/"
5249 name "-" version ".tar.xz"))
5250 (sha256
5251 (base32
5252 "18rr55krnqx1nzrzlj6kfzh4n67f3crakmwh28rr95y7cg0jwhxw"))))
5253 (build-system gnu-build-system)
5254 (arguments
5255 '(#:configure-flags '("--enable-extensions=all")))
5256 (native-inputs
5257 `(("intltool" ,intltool)
5258 ("pkg-config" ,pkg-config)))
5259 (propagated-inputs
5260 `(("glib" ,glib)
5261 ("glib" ,glib "bin")))
5262 (synopsis "Extensions for GNOME Shell")
5263 (description "GNOME Shell extensions modify and extend GNOME Shell
5264functionality and behavior.")
5265 (home-page "https://extensions.gnome.org/")
5266 (license license:gpl3+)))
5267
813f814a
DT
5268(define-public arc-theme
5269 (package
5270 (name "arc-theme")
5271 (version "20160605")
5272 (source (origin
5273 (method url-fetch)
5274 (uri (string-append "https://github.com/horst3180/arc-theme"
5275 "/archive/" version ".tar.gz"))
5276 (file-name (string-append name "-" version ".tar.gz"))
5277 (sha256
5278 (base32
5279 "0sq2031xda8jn2ws0x2bvhq77jfh7xy0c3kg86v6vm2kbrrss7y6"))))
5280 (build-system gnu-build-system)
5281 (arguments
5282 '(#:phases
5283 (modify-phases %standard-phases
5284 (add-after 'unpack 'bootstrap
5285 (lambda _
5286 (zero? (system* "autoreconf" "-vif")))))))
5287 (native-inputs
5288 `(("autoconf" ,autoconf)
5289 ("automake" ,automake)
5290 ("pkg-config" ,pkg-config)))
5291 (inputs
5292 `(("gtk+" ,gtk+)))
5293 (synopsis "A flat GTK+ theme with transparent elements")
5294 (description "Arc is a flat theme with transparent elements for GTK 3, GTK
52952, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
5296like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
5297 (home-page "https://github.com/horst3180/arc-theme")
5298 ;; No "or later" language found.
5299 (license license:gpl3)))
9987c57c
DT
5300
5301(define-public moka-icon-theme
5302 (package
5303 (name "moka-icon-theme")
5304 (version "5.3.1")
5305 (source (origin
5306 (method url-fetch)
5307 (uri (string-append "https://github.com/moka-project"
5308 "/moka-icon-theme/archive/v"
5309 version ".tar.gz"))
5310 (file-name (string-append name "-" version ".tar.gz"))
5311 (sha256
5312 (base32
5313 "1lnk7p8dsd9xh6cgz5krvlcr457w8yl4m6p6s5c2g5narsjswzrm"))))
5314 (build-system gnu-build-system)
5315 (arguments
5316 '(#:phases
5317 (modify-phases %standard-phases
5318 (add-after 'unpack 'patch-makefile.am
5319 (lambda _
5320 (substitute* '("Makefile.am")
5321 (("\\$\\(DESTDIR\\)/usr/share")
5322 "$(datadir)"))
5323 #t))
5324 (add-after 'patch-makefile.am 'bootstrap
5325 (lambda _
5326 (zero? (system* "autoreconf" "-vif")))))))
5327 (native-inputs
5328 `(("autoconf" ,autoconf)
5329 ("automake" ,automake)))
5330 (synopsis "Moka icon theme")
5331 (description "Moka is a stylized desktop icon set, designed to be clear,
5332simple and consistent.")
5333 (home-page "http://snwh.org/moka")
5334 (license license:gpl3+)))
6fd8f8d6
DT
5335
5336(define-public arc-icon-theme
5337 (package
5338 (name "arc-icon-theme")
5339 (version "20160605")
5340 (source (origin
5341 (method url-fetch)
5342 (uri (string-append "https://github.com/horst3180/arc-icon-theme"
5343 "/archive/" version ".tar.gz"))
5344 (file-name (string-append name "-" version ".tar.gz"))
5345 (sha256
5346 (base32
5347 "1npf0ki0j0llrw9wbffhxxa1cdms0q7b8xlg9m943dd9g7pgdm2p"))))
5348 (build-system gnu-build-system)
5349 (arguments
5350 '(#:phases
5351 (modify-phases %standard-phases
5352 (add-after 'unpack 'bootstrap
5353 (lambda _
5354 (zero? (system* "autoreconf" "-vif")))))))
5355 (native-inputs
5356 `(("autoconf" ,autoconf)
5357 ("automake" ,automake)))
5358 ;; When Arc is missing an icon, it looks in the Moka icon theme for it.
5359 (propagated-inputs
5360 `(("moka-icon-theme" ,moka-icon-theme)))
5361 (synopsis "Arc icon theme")
5362 (description "The Arc icon theme provides a set of icons matching the
5363style of the Arc GTK theme. Icons missing from the Arc theme are provided by
5364the Moka icon theme.")
5365 (home-page "https://github.com/horst3180/arc-icon-theme")
5366 (license license:gpl3+)))
6064a4e8
LF
5367
5368(define-public folks
5369 (package
5370 (name "folks")
5371 (version "0.11.2")
5372 (source (origin
5373 (method url-fetch)
5374 (uri (string-append
5375 "mirror://gnome/sources/" name "/"
5376 (version-major+minor version) "/"
5377 name "-" version ".tar.xz"))
5378 (sha256
5379 (base32
5380 "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
5381 (build-system glib-or-gtk-build-system)
5382 (inputs
5383 `(("bdb" ,bdb)
5384 ("dbus-glib" ,dbus-glib)
5385 ("evolution-data-server" ,evolution-data-server)
5386 ("glib" ,glib)
5387 ("libgee" ,libgee)
5388 ("telepathy-glib" ,telepathy-glib)))
5389 (native-inputs
5390 `(("gobject-introspection" ,gobject-introspection)
5391 ("intltool" ,intltool)
5392 ("pkg-config" ,pkg-config)
5393 ("vala" ,vala)))
5394 (synopsis "Library to aggregate data about people")
5395 (description "Libfolks is a library that aggregates information about people
5396from multiple sources (e.g., Telepathy connection managers for IM contacts,
5397Evolution Data Server for local contacts, libsocialweb for web service contacts,
5398etc.) to create metacontacts. It's written in Vala, which generates C code when
5399compiled.")
5400 (home-page "https://wiki.gnome.org/Projects/Folks")
5401 (license license:lgpl2.1+)))
01ea778f
LF
5402
5403(define-public gfbgraph
5404 (package
5405 (name "gfbgraph")
5406 (version "0.2.3")
5407 (source (origin
5408 (method url-fetch)
5409 (uri (string-append
5410 "mirror://gnome/sources/" name "/"
5411 (version-major+minor version) "/"
5412 name "-" version ".tar.xz"))
5413 (sha256
5414 (base32
5415 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
5416 (build-system glib-or-gtk-build-system)
5417 (arguments
5418 `(#:tests? #f ; Tests appear to require the network.
5419 ;; FIXME --enable-gtk-doc fails even with gtk-doc as a native-input.
5420 #:configure-flags '("--disable-gtk-doc"
5421 "--disable-static"
5422 "--enable-introspection")))
5423 (native-inputs
5424 `(("pkg-config" ,pkg-config)
5425 ("gobject-introspection" ,gobject-introspection)))
5426 (inputs
5427 `(("json-glib" ,json-glib)
5428 ("gnome-online-accounts" ,gnome-online-accounts)
5429 ("rest" ,rest)))
5430 (synopsis "GLib/GObject wrapper for the Facebook API")
5431 (description "This library allows you to use the Facebook API from
5432GLib/GObject code.")
5433 (home-page "https://wiki.gnome.org/Projects/GFBGraph")
5434 (license license:lgpl2.1+)))
3920868c 5435
5436(define-public libgnomekbd
5437 (package
5438 (name "libgnomekbd")
5439 (version "3.6.0")
5440 (source (origin
5441 (method url-fetch)
5442 (uri (string-append "mirror://gnome/sources/" name "/"
5443 (version-major+minor version) "/"
5444 name "-" version ".tar.xz"))
5445 (sha256
5446 (base32
5447 "02bahnl3vaqyqyr99r9kwka84sxj8qdrz7x0bf97192dysqaa7n4"))))
5448 (build-system gnu-build-system)
5449 (native-inputs
5450 `(("pkg-config" ,pkg-config)
5451 ("glib" ,glib "bin")
5452 ("intltool" ,intltool)))
5453 (propagated-inputs
5454 ;; Referred to in .h files and .pc.
5455 `(("glib" ,glib)
5456 ("gtk+" ,gtk+)
5457 ("libxklavier" ,libxklavier)))
5458 (home-page "https://www.gnome.org")
5459 (synopsis "GNOME keyboard configuration library")
5460 (description
5461 "Libgnomekbd is a keyboard configuration library for the GNOME desktop
5462environment, which can notably display keyboard layouts.")
5463 (license license:lgpl2.0+)))
85327d0d 5464
5465;;; This package is no longer maintained:
5466;;; https://wiki.gnome.org/Attic/LibUnique
5467;;; "Unique is now in maintenance mode, and its usage is strongly discouraged.
5468;;; Applications should use the GtkApplication class provided by GTK+ 3.0."
5469(define-public libunique
5470 (package
5471 (name "libunique")
5472 (version "3.0.2")
5473 (source (origin
5474 (method url-fetch)
5475 (uri (string-append "mirror://gnome/sources/" name "/"
5476 (version-major+minor version) "/"
5477 name "-" version ".tar.xz"))
5478 (sha256
5479 (base32
5480 "0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58"))))
5481 (build-system glib-or-gtk-build-system)
5482 (arguments
5483 `(#:configure-flags '("--disable-static"
5484 "--disable-dbus" ; use gdbus
5485 "--enable-introspection")))
5486 (native-inputs
5487 `(("pkg-config" ,pkg-config)
5488 ("gobject-introspection" ,gobject-introspection)
5489 ("glib:bin" ,glib "bin")
5490 ("gtk-doc" ,gtk-doc)))
5491 (propagated-inputs
5492 ;; Referred to in .h files and .pc.
5493 `(("gtk+" ,gtk+)))
5494 (home-page "https://wiki.gnome.org/Attic/LibUnique")
5495 (synopsis "Library for writing single instance applications")
5496 (description
5497 "Libunique is a library for writing single instance applications. If you
5498launch a single instance application twice, the second instance will either just
5499quit or will send a message to the running instance. Libunique makes it easy to
5500write this kind of application, by providing a base class, taking care of all
5501the IPC machinery needed to send messages to a running instance, and also
5502handling the startup notification side.")
5503 (license license:lgpl2.1+)))