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