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