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