gnu: Add folks.
[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")
1ea90625 1732 #t)))))
5a659a48
SB
1733 (native-inputs
1734 `(("pkg-config" ,pkg-config)
1735 ("flex" ,flex)
1736 ("bison" ,bison)
1737 ("xsltproc" ,libxslt)
1738 ("dbus" ,dbus) ; for dbus tests
1739 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1740 (propagated-inputs
1741 `(("glib" ,glib))) ; required by libvala-0.26.pc
1742 (home-page "http://live.gnome.org/Vala/")
1743 (synopsis "Compiler for the GObject type system")
1744 (description
1745 "Vala is a programming language that aims to bring modern programming
1746language features to GNOME developers without imposing any additional runtime
1747requirements and without using a different ABI compared to applications and
1748libraries written in C.")
1749 (license license:lgpl2.1+)))
ea57378f
SB
1750
1751(define-public vte
1752 (package
1753 (name "vte")
b8f551d9 1754 (version "0.44.1")
ea57378f
SB
1755 (source (origin
1756 (method url-fetch)
1757 (uri (string-append "mirror://gnome/sources/" name "/"
1758 (version-major+minor version) "/"
1759 name "-" version ".tar.xz"))
1760 (sha256
1761 (base32
b8f551d9 1762 "0kjxzqcwqxky0l7bl8ydn9hl6fm1f0k2pl91wbbhyq4z6d4dabbi"))))
ea57378f 1763 (build-system gnu-build-system)
6983ba56
SB
1764 (arguments
1765 ;; XXX: fails to compile tests with the default flags.
1766 ;; vteconv.cc:774:40:
1767 ;; error: missing sentinel in function call [-Werror=format=]
1768 ;; g_test_init (&argc, &argv, NULL);
1769 ;;
1770 ;; cc1plus: some warnings being treated as errors
1771 '(#:configure-flags '("CXXFLAGS=-Wformat=0")))
ea57378f
SB
1772 (native-inputs
1773 `(("pkg-config" ,pkg-config)
1774 ("intltool" ,intltool)
1775 ("vala" ,vala)
1776 ("gobject-introspection" ,gobject-introspection)
1777 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1778 ("xmllint" ,libxml2)))
1779 (propagated-inputs
302393bc
LC
1780 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1781 ("gnutls" ,gnutls))) ;ditto
ea57378f
SB
1782 (home-page "http://www.gnome.org/")
1783 (synopsis "Virtual Terminal Emulator")
1784 (description
1785 "VTE is a library (libvte) implementing a terminal emulator widget for
1786GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1787gnome-terminal, but can also be used to embed a console/terminal in games,
1788editors, IDEs, etc.")
1789 (license license:lgpl2.1+)))
1790
c44fb4df
MO
1791(define-public vte-ng
1792 (package
1793 (inherit vte)
1794 (name "vte-ng")
1795 (version "0.44.1.b")
1796 (native-inputs
1797 `(("gtk-doc" ,gtk-doc)
1798 ("gperf" ,gperf)
1799 ("autoconf" ,autoconf)
1800 ("automake" ,automake)
1801 ("libtool" ,libtool)
1802 ,@(package-native-inputs vte)))
1803 (source (origin
1804 (method url-fetch)
1805 (uri (string-append "https://github.com/thestinger/"
1806 name "/archive/" version ".tar.gz"))
1807 (file-name (string-append name "-" version ".tar.gz"))
1808 (sha256
1809 (base32
1810 "1mhz4i1qkdlrs49vgm7nsrb60lry9v6wsgwsmji7fln1nyrp1pag"))))
1811 (arguments
1812 `(#:configure-flags '("CXXFLAGS=-Wformat=0")
1813 #:phases (modify-phases %standard-phases
1814 (add-after 'unpack 'bootstrap
1815 (lambda _
1816 (setenv "NOCONFIGURE" "true")
1817 (zero? (system* "sh" "autogen.sh")))))))
1818 (synopsis "Enhanced VTE terminal widget")
1819 (description
1820 "VTE is a library (libvte) implementing a terminal emulator widget for
1821GTK+, this fork provides additional functions exposed for keyboard text
1822selection and URL hints.")))
1823
2776d72c
EF
1824;; provides vte 2.90, required for some terminal emulators
1825;; tilda bug: https://github.com/lanoxx/tilda/issues/94
1826;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
1827;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
1828;; pantheon-terminal, roxterm are not currently packaged
1829(define-public vte-0.36
1830 (package (inherit vte)
1831 (name "vte")
1832 (version "0.36.5")
1833 (source (origin
1834 (method url-fetch)
1835 (uri (string-append "mirror://gnome/sources/" name "/"
1836 (version-major+minor version) "/"
1837 name "-" version ".tar.xz"))
1838 (sha256
1839 (base32
1840 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
1841 (propagated-inputs
1842 `(("gtk" ,gtk+)
1843 ("ncurses" ,ncurses)))))
1844
ea57378f
SB
1845;; stable version for gtk2, required by xfce4-terminal.
1846(define-public vte/gtk+-2
1847 (package (inherit vte)
1848 (name "vte")
1849 (version "0.28.2")
1850 (source (origin
1851 (method url-fetch)
1852 (uri (string-append "mirror://gnome/sources/" name "/"
1853 (version-major+minor version) "/"
1854 name "-" version ".tar.xz"))
1855 (sha256
1856 (base32
7d48938a
EF
1857 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))
1858 (patches (search-patches
1859 "vte-CVE-2012-2738-pt1.patch"
1860 "vte-CVE-2012-2738-pt2.patch"))))
ea57378f
SB
1861 (arguments
1862 '(#:configure-flags '("--disable-python")))
1863 (native-inputs
1864 `(("pkg-config" ,pkg-config)
1865 ("intltool" ,intltool)
1866 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1867 (propagated-inputs
1868 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1869 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1870
1871(define-public dconf
1872 (package
1873 (name "dconf")
6983ba56 1874 (version "0.26.0")
b47e1b20
FB
1875 (source (origin
1876 (method url-fetch)
1877 (uri (string-append
2e6ecc5c 1878 "mirror://gnome/sources/" name "/"
b47e1b20
FB
1879 (version-major+minor version) "/"
1880 name "-" version ".tar.xz"))
1881 (sha256
f05c809f 1882 (base32
6983ba56 1883 "1jaqsr1r0grpd25rbsc2v3vb0sc51lia9w31wlqswgqsncp2k0w6"))))
b47e1b20
FB
1884 (build-system glib-or-gtk-build-system)
1885 (inputs
1886 `(("gtk+" ,gtk+)
1887 ("glib" ,glib)
1888 ("dbus" ,dbus)
1889 ("libxml2" ,libxml2)))
1890 (native-inputs
1891 `(("libxslt" ,libxslt)
1892 ("docbook-xml" ,docbook-xml-4.2)
1893 ("docbook-xsl" ,docbook-xsl)
1894 ("intltool" ,intltool)
1895 ("pkg-config" ,pkg-config)))
1896 (arguments
1897 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1898 ; or /etc/machine-id.
1899 #:configure-flags
1900 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 1901 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
1902 (assoc-ref %outputs "out") "/lib")
1903 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1904 #:phases
1905 (alist-cons-before
1906 'configure 'fix-docbook
1907 (lambda* (#:key inputs #:allow-other-keys)
1908 (substitute* "docs/Makefile.in"
1909 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 1910 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
1911 "/xml/xsl/docbook-xsl-"
1912 ,(package-version docbook-xsl)
1913 "/manpages/docbook.xsl")))
2e6ecc5c
AE
1914 (setenv "XML_CATALOG_FILES"
1915 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
1916 "/xml/dtd/docbook/catalog.xml")))
1917 %standard-phases)))
1918 (home-page "https://developer.gnome.org/dconf")
1919 (synopsis "Low-level GNOME configuration system")
1920 (description "Dconf is a low-level configuration system. Its main purpose
1921is to provide a backend to GSettings on platforms that don't already have
1922configuration storage systems.")
1923 (license license:lgpl2.1)))
109da1c0
AE
1924
1925(define-public json-glib
1926 (package
1927 (name "json-glib")
6983ba56 1928 (version "1.2.0")
109da1c0
AE
1929 (source (origin
1930 (method url-fetch)
1931 (uri (string-append "mirror://gnome/sources/" name "/"
1932 (version-major+minor version) "/"
1933 name "-" version ".tar.xz"))
1934 (sha256
1935 (base32
6983ba56 1936 "1lx7p1c7cl21byvfgw92n8dhm09vi6qxrs0zkx9dg3y096zdzmlr"))
4955ab7d
SB
1937 (modules '((guix build utils)))
1938 (snippet
1939 ;; Don't duplicate test names.
1940 ;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
1941 '(substitute* "json-glib/tests/builder.c"
1942 (("\"/builder/complex\", test_builder_empty")
1943 "\"/builder/empty\", test_builder_empty")))))
109da1c0
AE
1944 (build-system gnu-build-system)
1945 (native-inputs
88c6b580 1946 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
1947 ("gobject-introspection" ,gobject-introspection)
1948 ("pkg-config" ,pkg-config)))
1949 (propagated-inputs
88c6b580 1950 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
1951 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1952 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
1953 (description
1954 "JSON-GLib is a C library based on GLib providing serialization and
1955deserialization support for the JavaScript Object Notation (JSON) format
1956described by RFC 4627. It provides parser and generator GObject classes and
1957various wrappers for the complex data types employed by JSON, such as arrays
1958and objects.")
109da1c0 1959 (license license:lgpl2.1+)))
6f96a359
SB
1960
1961(define-public libxklavier
1962 (package
1963 (name "libxklavier")
1964 (version "5.3")
1965 (source (origin
1966 (method url-fetch)
1967 (uri (string-append "mirror://gnome/sources/" name "/"
1968 version "/" name "-" version ".tar.xz"))
1969 (sha256
1970 (base32
1971 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1972 (build-system gnu-build-system)
1973 (arguments
1974 '(#:configure-flags
1975 (list (string-append "--with-xkb-base="
1976 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 1977 "/share/X11/xkb"))))
6f96a359
SB
1978 (native-inputs
1979 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1980 ("gobject-introspection" ,gobject-introspection)
1981 ("pkg-config" ,pkg-config)))
1982 (propagated-inputs
1983 ;; Required by libxklavier.pc.
1984 `(("glib" ,glib)
1985 ("libxml2" ,libxml2)))
1986 (inputs
1987 `(("iso-codes" ,iso-codes)
1988 ("libxi" ,libxi)
1989 ("libxkbfile" ,libxkbfile)
1990 ("xkbcomp" ,xkbcomp)
1991 ("xkeyboard-config" ,xkeyboard-config)))
1992 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1993 (synopsis "High-level API for X Keyboard Extension")
1994 (description
1995 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
1996Extension known as XKB. This library is intended to support XFree86 and other
1997commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
1998indicators etc).")
1999 (license license:lgpl2.0+)))
619936a4
LC
2000
2001(define-public python2-rsvg
2002 ;; XXX: This is actually a subset of gnome-python-desktop.
2003 (package
2004 (name "python2-rsvg")
2005 (version "2.32.0")
2006 (source
2007 (origin
2008 (method url-fetch)
2009 (uri (string-append
2010 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
2011 version ".tar.bz2"))
2012 (sha256
2013 (base32
2014 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
2015 (build-system gnu-build-system)
2016 (native-inputs
2017 `(("pkg-config" ,pkg-config)))
2018 (inputs
2019 `(("python" ,python-2)
2020 ("python2-pygtk" ,python2-pygtk)
2021 ("librsvg" ,librsvg)))
2022 (home-page "http://www.gnome.org")
2023 (synopsis "Python bindings to librsvg")
2024 (description
2025 "This packages provides Python bindings to librsvg, the SVG rendering
2026library.")
2027
2028 ;; This is the license of the rsvg bindings. The license of each module
2029 ;; of gnome-python-desktop is given in 'COPYING'.
2030 (license license:lgpl2.1+)))
a31a6d22 2031
f2ca414a
SB
2032(define-public glib-networking
2033 (package
2034 (name "glib-networking")
7958a55d 2035 (version "2.48.1")
f2ca414a
SB
2036 (source (origin
2037 (method url-fetch)
2038 (uri (string-append "mirror://gnome/sources/glib-networking/"
2039 (version-major+minor version) "/"
2040 name "-" version ".tar.xz"))
2041 (sha256
2042 (base32
7958a55d 2043 "0jm4pr91kbq7rcyll08840zkagb9vfhhm2ymyrd1q0b0k2mj76fg"))
907f939b 2044 (patches
fc1adab1 2045 (search-patches "glib-networking-ssl-cert-file.patch"))))
f2ca414a
SB
2046 (build-system gnu-build-system)
2047 (arguments
2048 `(#:configure-flags
907f939b 2049 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
2050 #:phases
2051 (modify-phases %standard-phases
3a4de6b2 2052 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
2053 ;; Install GIO modules into $out/lib/gio/modules.
2054 (lambda _
2055 (substitute* "configure"
2056 (("GIO_MODULE_DIR=.*")
2057 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
2058 "/lib/gio/modules\n")))))
2059 (add-before 'check 'use-empty-ssl-cert-file
2060 (lambda _
2061 ;; The ca-certificates.crt is not available in the build
2062 ;; environment.
2063 (setenv "SSL_CERT_FILE" "/dev/null")
2064 #t)))))
f2ca414a
SB
2065 (native-inputs
2066 `(("pkg-config" ,pkg-config)
2067 ("intltool" ,intltool)))
2068 (inputs
2069 `(("glib" ,glib)
2070 ("gnutls" ,gnutls)
2071 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2072 ("p11-kit" ,p11-kit)))
2073 (home-page "http://www.gnome.org")
2074 (synopsis "Network-related GIO modules")
2075 (description
2076 "This package contains various network related extensions for the GIO
2077library.")
2078 (license license:lgpl2.0+)))
2079
ca649680 2080(define-public rest
4510b2da 2081 (package
ca649680 2082 (name "rest")
90000d4b 2083 (version "0.8.0")
4510b2da
SB
2084 (source (origin
2085 (method url-fetch)
2086 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
2087 (version-major+minor version) "/"
2088 name "-" version ".tar.xz"))
4510b2da
SB
2089 (sha256
2090 (base32
90000d4b 2091 "0iznvzhab1jq9z3nwy97dh2pid9azwkqm7kkxwx0f5ql1hh9pf77"))))
4510b2da
SB
2092 (build-system gnu-build-system)
2093 (arguments
2094 '(#:tests? #f ; tests require internet connection
2095 #:configure-flags
2096 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
2097 (native-inputs
2098 `(("glib-mkenums" ,glib "bin")
2099 ("gobject-introspection" ,gobject-introspection)
2100 ("pkg-config" ,pkg-config)))
2101 (propagated-inputs
2102 ;; rest-0.7.pc refers to all these.
2103 `(("glib" ,glib)
2104 ("libsoup" ,libsoup)
2105 ("libxml2" ,libxml2)))
2106 (home-page "http://www.gtk.org/")
2107 (synopsis "RESTful web api query library")
2108 (description
2109 "This library was designed to make it easier to access web services that
2110claim to be \"RESTful\". It includes convenience wrappers for libsoup and
2111libxml to ease remote use of the RESTful API.")
2112 (license license:lgpl2.1+)))
2113
6e1bb642
SB
2114(define-public libsoup
2115 (package
2116 (name "libsoup")
a28bf6b4 2117 (version "2.54.1")
6e1bb642
SB
2118 (source (origin
2119 (method url-fetch)
2120 (uri (string-append "mirror://gnome/sources/libsoup/"
2121 (version-major+minor version) "/"
2122 name "-" version ".tar.xz"))
2123 (sha256
2124 (base32
a28bf6b4 2125 "0cyn5pq4xl1gb8413h2p4d5wrn558dc054zhwmk4swrl40ijrd27"))))
6e1bb642
SB
2126 (build-system gnu-build-system)
2127 (outputs '("out" "doc"))
2128 (arguments
b19d6805 2129 `(#:configure-flags
6e1bb642
SB
2130 (list (string-append "--with-html-dir="
2131 (assoc-ref %outputs "doc")
fd730590 2132 "/share/gtk-doc/html"))
6e1bb642
SB
2133 #:phases
2134 (modify-phases %standard-phases
3a4de6b2 2135 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2136 ;; This test fails due to missing /etc/nsswitch.conf
2137 ;; in the build environment.
2138 (lambda _
2139 (substitute* "tests/socket-test.c"
2140 ((".*/sockets/unconnected.*") ""))
2141 #t))
907f939b 2142 (add-before 'check 'pre-check
6e1bb642 2143 (lambda _
907f939b
SB
2144 ;; The 'check-local' target runs 'env LANG=C sort -u',
2145 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2146 (unsetenv "LC_ALL")
907f939b
SB
2147 ;; The ca-certificates.crt is not available in the build
2148 ;; environment.
2149 (setenv "SSL_CERT_FILE" "/dev/null")
fd730590
SB
2150 #t))
2151 (replace 'install
2152 (lambda _
2153 (zero?
2154 (system* "make"
2155 ;; Install vala bindings into $out.
2156 (string-append "vapidir=" %output
2157 "/share/vala/vapi")
2158 "install")))))))
6e1bb642
SB
2159 (native-inputs
2160 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2161 ("gobject-introspection" ,gobject-introspection)
2162 ("intltool" ,intltool)
2163 ("pkg-config" ,pkg-config)
2164 ("python" ,python-wrapper)
fd730590 2165 ("vala" ,vala)
6e1bb642
SB
2166 ;; These are needed for the tests.
2167 ;; FIXME: Add PHP once available.
2168 ("curl" ,curl)
2169 ("httpd" ,httpd)))
2170 (propagated-inputs
2171 ;; libsoup-2.4.pc refers to all these.
2172 `(("glib" ,glib)
2173 ("libxml2" ,libxml2)))
2174 (inputs
2175 `(("glib-networking" ,glib-networking)
2176 ("sqlite" ,sqlite)))
2177 (home-page "https://live.gnome.org/LibSoup/")
2178 (synopsis "GLib-based HTTP Library")
2179 (description
2180 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2181and the GLib main loop, to integrate well with GNOME applications.")
2182 (license license:lgpl2.0+)))
2183
bba229a3
SB
2184(define-public libsecret
2185 (package
2186 (name "libsecret")
6983ba56 2187 (version "0.18.5")
bba229a3
SB
2188 (source (origin
2189 (method url-fetch)
2190 (uri (string-append
896dcbc7
EF
2191 "mirror://gnome/sources/libsecret/"
2192 (version-major+minor version) "/"
bba229a3
SB
2193 name "-" version ".tar.xz"))
2194 (sha256
2195 (base32
6983ba56 2196 "1cychxc3ff8fp857iikw0n2s13s2mhw2dn1mr632f7w3sn6vvrww"))))
bba229a3
SB
2197 (build-system gnu-build-system)
2198 (outputs '("out" "doc"))
2199 (arguments
2200 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2201 #:configure-flags
2202 (list (string-append "--with-html-dir="
2203 (assoc-ref %outputs "doc")
2204 "/share/gtk-doc/html"))))
2205 (native-inputs
2206 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2207 ("gobject-introspection" ,gobject-introspection)
2208 ("intltool" ,intltool)
2209 ("pkg-config" ,pkg-config)
2210 ("vala" ,vala)
2211 ("xsltproc" ,libxslt)))
2212 ;; These are needed for the tests.
2213 ;; FIXME: Add gjs once available.
2214 ;("dbus" ,dbus)
2215 ;("python2" ,python-2)
2216 ;("python2-dbus" ,python2-dbus)
2217 ;("python2-pygobject" ,python2-pygobject)
2218 ;("python2-pygobject-2" ,python2-pygobject-2)))
2219 (propagated-inputs
2220 `(("glib" ,glib))) ; required by libsecret-1.pc
2221 (inputs
2222 `(("docbook-xsl" ,docbook-xsl)
2223 ("libgcrypt" ,libgcrypt)
2224 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2225 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2226 (synopsis "GObject bindings for \"Secret Service\" API")
2227 (description
2228 "Libsecret is a GObject based library for storing and retrieving passwords
2229and other secrets. It communicates with the \"Secret Service\" using DBus.")
2230 (license license:lgpl2.1+)))
2231
a31a6d22
SB
2232(define-public gnome-mines
2233 (package
2234 (name "gnome-mines")
6983ba56 2235 (version "3.20.0")
a31a6d22
SB
2236 (source
2237 (origin
2238 (method url-fetch)
2239 (uri (string-append "mirror://gnome/sources/" name "/"
2240 (version-major+minor version) "/"
2241 name "-" version ".tar.xz"))
2242 (sha256
2243 (base32
6983ba56 2244 "19khp4ckqbdgk6828gprxy52fsg8klf957dnwsin75nskk8whxbp"))))
a31a6d22
SB
2245 (build-system glib-or-gtk-build-system)
2246 (arguments
2247 '(#:phases
2248 (modify-phases %standard-phases
f8503e2b 2249 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2250 (lambda _
2251 (substitute* "configure"
6983ba56 2252 (("/bin/true") (which "true"))))))))
a31a6d22
SB
2253 (native-inputs
2254 `(("pkg-config" ,pkg-config)
2255 ("desktop-file-utils" ,desktop-file-utils)
2256 ("intltool" ,intltool)
bcb354ad
SB
2257 ("itstool" ,itstool)
2258 ("xmllint" ,libxml2)))
a31a6d22
SB
2259 (inputs
2260 `(("gtk+" ,gtk+)
2261 ("librsvg" ,librsvg)))
2262 (home-page "https://wiki.gnome.org/Apps/Mines")
2263 (synopsis "Minesweeper game")
2264 (description
2265 "Mines (previously gnomine) is a puzzle game where you locate mines
2266floating in an ocean using only your brain and a little bit of luck.")
2267 (license license:gpl2+)))
88f70665 2268
dfc407f3
KY
2269(define-public gnome-sudoku
2270 (package
2271 (name "gnome-sudoku")
319549c2 2272 (version "3.20.0")
dfc407f3
KY
2273 (source
2274 (origin
2275 (method url-fetch)
2276 (uri (string-append "mirror://gnome/sources/" name "/"
2277 (version-major+minor version) "/"
2278 name "-" version ".tar.xz"))
2279 (sha256
2280 (base32
319549c2 2281 "1n8hp3pl56p9s0c5kldk11zg1vg7ykhgn3ndp8nf375h1q49ldh8"))))
dfc407f3
KY
2282 (build-system glib-or-gtk-build-system)
2283 (native-inputs
2284 `(("pkg-config" ,pkg-config)
2285 ("desktop-file-utils" ,desktop-file-utils)
2286 ("intltool" ,intltool)
2287 ("itstool" ,itstool)
2288 ("xmllint" ,libxml2)))
2289 (inputs
2290 `(("gtk+" ,gtk+)
2291 ("json-glib" ,json-glib)
2292 ("libgee" ,libgee)
2293 ("librsvg" ,librsvg)
2294 ("qqwing" ,qqwing)))
2295 (home-page "https://wiki.gnome.org/Apps/Sudoku")
2296 (synopsis "Japanese logic game")
2297 (description
2298 "Sudoku is a Japanese logic game that exploded in popularity in 2005.
2299GNOME Sudoku is meant to have an interface as simple and unobstrusive as
2300possible while still providing features that make playing difficult Sudoku
2301more fun.")
2302 (license license:gpl2+)))
2303
88f70665
AW
2304(define-public gnome-terminal
2305 (package
2306 (name "gnome-terminal")
e3cf0c71 2307 (version "3.20.1")
88f70665
AW
2308 (source
2309 (origin
2310 (method url-fetch)
2311 (uri (string-append "mirror://gnome/sources/" name "/"
2312 (version-major+minor version) "/"
2313 name "-" version ".tar.xz"))
2314 (sha256
2315 (base32
e3cf0c71 2316 "1508nm35znlfq9v1s2j4ypx5x608yq391c565b4hazxk2f5z9dwq"))))
88f70665
AW
2317 (build-system glib-or-gtk-build-system)
2318 (arguments
2319 '(#:configure-flags
2320 (list "--disable-migration" "--disable-search-provider"
2321 "--without-nautilus-extension")
2322 #:phases
2323 (modify-phases %standard-phases
3a4de6b2 2324 (add-before 'configure 'patch-/bin/true
88f70665
AW
2325 (lambda _
2326 (substitute* "configure"
2327 (("/bin/true") (which "true"))))))))
2328 (native-inputs
2329 `(("pkg-config" ,pkg-config)
2330 ("desktop-file-utils" ,desktop-file-utils)
2331 ("intltool" ,intltool)
bcb354ad
SB
2332 ("itstool" ,itstool)
2333 ("xmllint" ,libxml2)))
68702167
MW
2334 (propagated-inputs
2335 `(("dconf" ,dconf)))
88f70665
AW
2336 (inputs
2337 `(("gtk+" ,gtk+)
2338 ("vte" ,vte)
2339 ("gnutls" ,gnutls)
88f70665
AW
2340 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2341 ("util-linux" ,util-linux)
2342 ("vala" ,vala)))
2343 (home-page "https://wiki.gnome.org/Apps/Terminal")
2344 (synopsis "Terminal emulator")
2345 (description
2346 "GNOME Terminal is a terminal emulator application for accessing a
2347UNIX shell environment which can be used to run programs available on
2348your system.
2349
2350It supports several profiles, multiple tabs and implements several
2351keyboard shortcuts.")
2352 (license license:gpl3+)))
75016d07
AW
2353
2354(define-public colord
2355 (package
2356 (name "colord")
2357 (version "1.1.8")
2358 (source
2359 (origin
2360 (method url-fetch)
5cc3096c 2361 (uri (string-append "https://www.freedesktop.org/software/colord/releases/"
75016d07
AW
2362 name "-" version ".tar.xz"))
2363 (sha256
2364 (base32
2365 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2366 (build-system glib-or-gtk-build-system)
2367 (arguments
2368 '(;; The tests want to run valgrind. Punt for now.
2369 #:tests? #f
2370 #:configure-flags (list "--localstatedir=/var"
2371 ;; GUSB not packaged yet.
2372 "--disable-gusb"
2373 ;; No dep on systemd.
2374 "--disable-systemd-login"
2375 ;; Wants to install to global completion dir;
2376 ;; punt.
2377 "--disable-bash-completion"
2378 ;; colord-gtk not packaged yet.
2379 "--disable-session-example"
2380 "--with-daemon-user=colord"
2381 "--enable-sane"
2382 (string-append "--with-udevrulesdir="
2383 (assoc-ref %outputs "out")
2384 "/lib/udev/rules.d"))
2385 #:phases
2386 (modify-phases %standard-phases
3a4de6b2 2387 (add-before 'configure 'patch-/bin/true
75016d07
AW
2388 (lambda _
2389 (substitute* "configure"
2390 (("/bin/true") (which "true")))
2391 (substitute* "src/Makefile.in"
2392 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2393 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2394 (native-inputs
2395 `(("pkg-config" ,pkg-config)
2396 ("gobject-introspection" ,gobject-introspection)
2397 ("libtool" ,libtool)
2398 ("intltool" ,intltool)))
65cb2d61
SB
2399 (propagated-inputs
2400 ;; colord.pc refers to all these.
2401 `(("glib" ,glib)
2402 ("udev" ,eudev)
2403 ("lcms" ,lcms)))
75016d07 2404 (inputs
65cb2d61 2405 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2406 ("libgudev" ,libgudev)
75016d07 2407 ("libusb" ,libusb)
75016d07
AW
2408 ("sqlite" ,sqlite)
2409 ("polkit" ,polkit)
2410 ("sane-backends" ,sane-backends)))
2411 (home-page "http://www.freedesktop.org/software/colord/")
2412 (synopsis "Color management service")
2413 (description "Colord is a system service that makes it easy to manage,
2414install and generate color profiles to accurately color manage input and
2415output devices.")
2416 (license license:gpl2+)))
7b2abd00
AW
2417
2418(define-public geoclue
2419 (package
2420 (name "geoclue")
54e911bc 2421 (version "2.4.3")
7b2abd00
AW
2422 (source
2423 (origin
2424 (method url-fetch)
5cc3096c 2425 (uri (string-append "https://www.freedesktop.org/software/" name
7b2abd00
AW
2426 "/releases/" (version-major+minor version) "/"
2427 name "-" version ".tar.xz"))
2428 (sha256
2429 (base32
54e911bc 2430 "0pk07k65dlw37nz8z5spksivsv5nh96xmbi336rf2yfxf2ldpadd"))
fc1adab1 2431 (patches (search-patches "geoclue-config.patch"))))
7b2abd00
AW
2432 (build-system glib-or-gtk-build-system)
2433 (arguments
2434 '(;; The tests want to run the system bus.
2435 #:tests? #f
2436 #:configure-flags (list ;; Disable bits requiring ModemManager.
2437 "--disable-3g-source"
2438 "--disable-cdma-source"
2439 "--disable-modem-gps-source"
2440 "--with-dbus-service-user=geoclue")
2441 #:phases
2442 (modify-phases %standard-phases
3a4de6b2 2443 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2444 (lambda _
2445 (substitute* "configure"
2446 (("/bin/true") (which "true"))))))))
2447 (native-inputs
2448 `(("pkg-config" ,pkg-config)
2449 ("intltool" ,intltool)))
2450 (inputs
54e911bc
SB
2451 `(("avahi" ,avahi)
2452 ("glib" ,glib)
7b2abd00
AW
2453 ("json-glib" ,json-glib)
2454 ("libsoup" ,libsoup)))
2455 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2456 (synopsis "Geolocation service")
2457 (description "Geoclue is a D-Bus service that provides location
2458information. The primary goal of the Geoclue project is to make creating
2459location-aware applications as simple as possible, while the secondary goal is
2460to ensure that no application can access location information without explicit
e881752c 2461permission from user.")
7b2abd00 2462 (license license:gpl2+)))
2bfe7437
AW
2463
2464(define-public geocode-glib
2465 (package
2466 (name "geocode-glib")
3ffd46bd 2467 (version "3.20.1")
2bfe7437
AW
2468 (source (origin
2469 (method url-fetch)
2470 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2471 (version-major+minor version) "/"
2472 name "-" version ".tar.xz"))
2473 (sha256
2474 (base32
3ffd46bd 2475 "18iphsx3bybw7lssbb7rxc1rrnsc8vxai521zkqc535zr8rci7v6"))))
2bfe7437
AW
2476 (build-system gnu-build-system)
2477 (arguments
2478 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2479 ;; work for the builder. Punt.
a124bbd2 2480 #:tests? #f))
2bfe7437
AW
2481 (native-inputs
2482 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2483 ("gobject-introspection" ,gobject-introspection)
2484 ("pkg-config" ,pkg-config)
2485 ("json-glib" ,json-glib)))
2486 (propagated-inputs
2487 ;; geocode-glib-1.0.pc refers to GIO.
2488 `(("glib" ,glib)))
2489 (inputs
2490 `(("libsoup" ,libsoup)))
2491 (home-page "https://github.com/GNOME/geocode-glib/")
2492 (synopsis "Geocoding and reverse-geocoding library")
2493 (description
2494 "geocode-glib is a convenience library for geocoding (finding longitude,
2495and latitude from an address) and reverse geocoding (finding an address from
2496coordinates) using the Nominatim service. geocode-glib caches requests for
2497faster results and to avoid unnecessary server load.")
2498 (license license:lgpl2.0+)))
a1d5bb0e
AW
2499
2500(define-public upower
2501 (package
2502 (name "upower")
d777e048 2503 (version "0.99.3")
a1d5bb0e
AW
2504 (source (origin
2505 (method url-fetch)
5cc3096c 2506 (uri (string-append "https://upower.freedesktop.org/releases/"
a1d5bb0e
AW
2507 name "-" version ".tar.xz"))
2508 (sha256
2509 (base32
d777e048 2510 "0f6x9mi1jzgqdpycaikyhjljnw3aacsl3gxndyg0dfqkq6y9jwb9"))
fc1adab1 2511 (patches (search-patches "upower-builddir.patch"))))
a1d5bb0e
AW
2512 (build-system glib-or-gtk-build-system)
2513 (arguments
2514 '( ;; The tests want to contact the system bus, which can't be done in the
2515 ;; build environment. The integration test can run, but the last of
2516 ;; the up-self-tests doesn't. Disable tests for now.
2517 #:tests? #f
2518 #:configure-flags (list "--localstatedir=/var"
2519 (string-append "--with-udevrulesdir="
2520 (assoc-ref %outputs "out")
2521 "/lib/udev/rules.d"))
2522 #:phases
2523 (modify-phases %standard-phases
2524 (add-before 'configure 'patch-/bin/true
2525 (lambda _
2526 (substitute* "configure"
2527 (("/bin/true") (which "true")))))
2528 (add-before 'configure 'patch-integration-test
2529 (lambda _
2530 (substitute* "src/linux/integration-test"
2531 (("/usr/bin/python3") (which "python3"))))))))
2532 (native-inputs
ebeabe2d
SB
2533 `(("gobject-introspection" ,gobject-introspection)
2534 ("pkg-config" ,pkg-config)
a1d5bb0e 2535 ("intltool" ,intltool)
55409295
LC
2536 ("python" ,python)
2537
2538 ;; For man pages.
2539 ("libxslt" ,libxslt) ;for 'xsltproc'
2540 ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES'
2541 ("docbook-xsl" ,docbook-xsl)))
a1d5bb0e 2542 (inputs
ea226291
SB
2543 `(("dbus-glib" ,dbus-glib)
2544 ("libgudev" ,libgudev)
a1d5bb0e
AW
2545 ("libusb" ,libusb)))
2546 (home-page "http://upower.freedesktop.org/")
2547 (synopsis "System daemon for managing power devices")
2548 (description
2549 "UPower is an abstraction for enumerating power devices,
2550listening to device events and querying history and statistics. Any
2551application or service on the system can access the org.freedesktop.UPower
2552service via the system message bus.")
2553 (license license:gpl2+)))
6a180f6f
AW
2554
2555(define-public libgweather
2556 (package
2557 (name "libgweather")
6983ba56 2558 (version "3.20.0")
6a180f6f
AW
2559 (source (origin
2560 (method url-fetch)
2561 (uri (string-append "mirror://gnome/sources/" name "/"
2562 (version-major+minor version) "/"
2563 name "-" version ".tar.xz"))
2564 (sha256
2565 (base32
6983ba56 2566 "1mmqg7wf0bhk450akyj0x71x75kh1v7j68isyivr75ydky79nqjj"))))
6a180f6f
AW
2567 (build-system gnu-build-system)
2568 (arguments
b6072e6b
SB
2569 `(#:configure-flags
2570 `(,(string-append "--with-zoneinfo-dir="
2571 (assoc-ref %build-inputs "tzdata")
2572 "/share/zoneinfo"))
2573 #:phases
2574 (modify-phases %standard-phases
2575 (add-before
2576 'check 'pre-check
2577 (lambda* (#:key inputs #:allow-other-keys)
2578 (substitute* "data/check-timezones.sh"
2579 (("/usr/share/zoneinfo/zone.tab")
2580 (string-append (assoc-ref inputs "tzdata")
2581 "/share/zoneinfo/zone.tab")))
2582 #t)))))
6a180f6f
AW
2583 (native-inputs
2584 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2585 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2586 ("pkg-config" ,pkg-config)
2587 ("intltool" ,intltool)))
2588 (propagated-inputs
2589 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2590 ;; libsoup.
2591 `(("gtk+" ,gtk+)
2592 ("gdk-pixbuf" ,gdk-pixbuf)
2593 ("libxml2" ,libxml2)
2594 ("libsoup" ,libsoup)))
2595 (inputs
2596 `(("tzdata" ,tzdata)
2597 ("geocode-glib" ,geocode-glib)))
2598 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2599 (synopsis "Location, time zone, and weather library for GNOME")
2600 (description
2601 "libgweather is a library to access weather information from online
2602services for numerous locations.")
2603 (license license:gpl2+)))
23a22af6
AW
2604
2605(define-public gnome-settings-daemon
2606 (package
2607 (name "gnome-settings-daemon")
35907ce1 2608 (version "3.20.1")
23a22af6
AW
2609 (source
2610 (origin
2611 (method url-fetch)
2612 (uri (string-append "mirror://gnome/sources/" name "/"
2613 (version-major+minor version) "/"
2614 name "-" version ".tar.xz"))
2615 (sha256
2616 (base32
35907ce1 2617 "1rvqisrh3lridsb8rvm7spvncyq206ly0245zgpbm8swi5fhfjp8"))))
23a22af6
AW
2618 (build-system glib-or-gtk-build-system)
2619 (arguments
ec2b1921 2620 `(;; Network manager not yet packaged.
23a22af6
AW
2621 #:configure-flags '("--disable-network-manager")
2622 ;; Color management test can't reach the colord system service.
2623 #:tests? #f))
2624 (native-inputs
2625 `(("pkg-config" ,pkg-config)
2626 ("intltool" ,intltool)
2627 ("xsltproc" ,libxslt)
2628 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2629 ("docbook-xml" ,docbook-xml-4.2)
2630 ("docbook-xsl" ,docbook-xsl)))
2631 (inputs
2632 `(("colord" ,colord)
ea226291 2633 ("libgudev" ,libgudev)
23a22af6
AW
2634 ("upower" ,upower)
2635 ("polkit" ,polkit)
2636 ("pulseaudio" ,pulseaudio)
2637 ("libcanberra" ,libcanberra)
2638 ("libx11" ,libx11)
2639 ("libxtst" ,libxtst)
2640 ("lcms" ,lcms)
2641 ("libnotify" ,libnotify)
2642 ("geoclue" ,geoclue)
2643 ("geocode-glib" ,geocode-glib)
2644 ("libgweather" ,libgweather)
2645 ("gnome-desktop" ,gnome-desktop)
2646 ("nss" ,nss)
2647 ("cups" ,cups)
ec2b1921
AW
2648 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2649 ("libwacom" ,libwacom)
2650 ("librsvg" ,librsvg)
2651 ("xf86-input-wacom" ,xf86-input-wacom)))
23a22af6
AW
2652 (home-page "http://www.gnome.org")
2653 (synopsis "GNOME settings daemon")
2654 (description
2655 "This package contains the daemon responsible for setting the various
2656parameters of a GNOME session and the applications that run under it. It
2657handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2658settings, themes, mouse settings, and startup of other daemons.")
2659 (license license:gpl2+)))
1e7464a9
DH
2660
2661(define-public totem-pl-parser
2662 (package
2663 (name "totem-pl-parser")
6983ba56 2664 (version "3.10.6")
1e7464a9
DH
2665 (source (origin
2666 (method url-fetch)
2667 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2668 "totem-pl-parser-" version ".tar.xz"))
2669 (sha256
2670 (base32
6983ba56 2671 "0mv7aw9mw77w04zg95zjf0zmk6ckshpysbb9nap15h5is6zdk9cq"))))
1e7464a9
DH
2672 (build-system gnu-build-system)
2673 (arguments
2674 ;; FIXME: Tests require gvfs.
2675 `(#:tests? #f))
2676 (native-inputs
2677 `(("intltool" ,intltool)
2678 ("glib" ,glib "bin")
4d6d8281 2679 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2680 ("pkg-config" ,pkg-config)))
22a6ad6a 2681 (propagated-inputs
1e7464a9
DH
2682 `(("glib" ,glib)
2683 ("gmime" ,gmime)
22a6ad6a
MW
2684 ("libxml2" ,libxml2)))
2685 (inputs
2686 `(("libarchive" ,libarchive)
1e7464a9
DH
2687 ("libgcrypt" ,libgcrypt)
2688 ("nettle" ,nettle)
22a6ad6a 2689 ("libsoup" ,libsoup)))
1e7464a9
DH
2690 (home-page "https://projects.gnome.org/totem")
2691 (synopsis "Library to parse and save media playlists for GNOME")
2692 (description "Totem-pl-parser is a GObjects-based library to parse and save
2693playlists in a variety of formats.")
2694 (license license:lgpl2.0+)))
2695
6b888eff
SB
2696(define-public aisleriot
2697 (package
2698 (name "aisleriot")
6983ba56 2699 (version "3.20.1")
6b888eff
SB
2700 (source (origin
2701 (method url-fetch)
2702 (uri (string-append "mirror://gnome/sources/" name "/"
2703 (version-major+minor version) "/"
2704 name "-" version ".tar.xz"))
2705 (sha256
2706 (base32
6983ba56 2707 "1nipky336jj81mhm8wwxp96zilgcrarihf95dnyj3r1pw8kpg7gy"))))
6b888eff
SB
2708 (build-system glib-or-gtk-build-system)
2709 (arguments
2710 '(#:configure-flags
2711 '("--with-platform=gtk-only"
2712 "--with-card-theme-formats=svg")))
2713 (native-inputs
2714 `(("desktop-file-utils" ,desktop-file-utils)
2715 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2716 ("intltool" ,intltool)
2717 ("itstool" ,itstool)
2718 ("pkg-config" ,pkg-config)
2719 ("xmllint" ,libxml2)))
2720 (inputs
2721 `(("gtk+" ,gtk+)
2722 ("guile" ,guile-2.0)
2723 ("libcanberra" ,libcanberra)
2724 ("librsvg" ,librsvg)))
2725 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2726 (synopsis "Solitaire card games")
2727 (description
2728 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2729which are easy to play with the aid of a mouse.")
2730 (license license:gpl3+)))
4a79e256
SB
2731
2732(define-public devhelp
2733 (package
2734 (name "devhelp")
6983ba56 2735 (version "3.20.0")
4a79e256
SB
2736 (source (origin
2737 (method url-fetch)
2738 (uri (string-append "mirror://gnome/sources/" name "/"
2739 (version-major+minor version) "/"
2740 name "-" version ".tar.xz"))
2741 (sha256
2742 (base32
6983ba56 2743 "078zr92xs5ifp862v1vdmw1j9m6gr9zk5hjbk5065vxjwb17acx2"))))
4a79e256
SB
2744 (build-system glib-or-gtk-build-system)
2745 (native-inputs
2746 `(("intltool" ,intltool)
2747 ("pkg-config" ,pkg-config)))
2748 (inputs
2749 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2750 ("webkitgtk" ,webkitgtk)))
2751 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2752 (synopsis "API documentation browser for GNOME")
2753 (description
2754 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2755natively with GTK-Doc (the API reference system developed for GTK+ and used
2756throughout GNOME for API documentation).")
2757 (license license:gpl2+)))
ba421ab7
MW
2758
2759(define-public cogl
2760 (package
2761 (name "cogl")
b3e91e02 2762 (version "1.22.0")
ba421ab7
MW
2763 (source
2764 (origin
2765 (method url-fetch)
2766 (uri (string-append "mirror://gnome/sources/" name "/"
2767 (version-major+minor version) "/"
2768 name "-" version ".tar.xz"))
2769 (sha256
2770 (base32
b3e91e02 2771 "14daxqrid5039xmq9yl4pk86awng1n9zgl6ysblhc4gw2ifzp7b8"))))
ba421ab7
MW
2772 (build-system gnu-build-system)
2773 (native-inputs
2774 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2775 ("gobject-introspection" ,gobject-introspection)
2776 ;;("xorg-server" ,xorg-server) ; for the test suite
2777 ("pkg-config" ,pkg-config)))
2778 (propagated-inputs
2779 `(("glib" ,glib)
2780 ("gdk-pixbuf" ,gdk-pixbuf)
2781 ("libx11" ,libx11)
2782 ("libxext" ,libxext)
2783 ("libxfixes" ,libxfixes)
2784 ("libxdamage" ,libxdamage)
2785 ("libxcomposite" ,libxcomposite)
2786 ("libxrandr" ,libxrandr)))
2787 (inputs
2788 `(("mesa" ,mesa)
2789 ("cairo" ,cairo)
2790 ("pango" ,pango)
2791 ("gstreamer" ,gstreamer)
2792 ("gst-plugins-base" ,gst-plugins-base)))
2793 (arguments
2794 `(#:configure-flags (list "--enable-cogl-gst"
2795 ;; Arrange to pass an absolute file name to
2796 ;; dlopen for libGL.so.
2797 (string-append "--with-gl-libname="
2798 (assoc-ref %build-inputs "mesa")
2799 "/lib/libGL.so"))
2800 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2801 ;; _FontTransOpen: Unable to Parse address
2802 ;; ${prefix}/share/fonts/X11/misc/
2803 #:tests? #f
2804 #; #:phases
2805 #;
2806 (modify-phases %standard-phases
2807 (add-before 'check 'start-xorg-server
2808 (lambda* (#:key inputs #:allow-other-keys)
2809 ;; The test suite requires a running X server.
2810 (system (format #f "~a/bin/Xvfb :1 &"
2811 (assoc-ref inputs "xorg-server")))
2812 (setenv "DISPLAY" ":1")
2813 #t)))))
2814 (home-page "http://www.cogl3d.org")
2815 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2816 (description
2817 "Cogl is a small library for using 3D graphics hardware to draw pretty
2818pictures. The API departs from the flat state machine style of OpenGL and is
2819designed to make it easy to write orthogonal components that can render
2820without stepping on each others toes.")
2821 (license (list license:expat ; most of the code
2822 license:bsd-3 ; cogl/cogl-point-in-poly.c
2823 license:sgifreeb2.0 ; cogl-path/tesselator/
2824 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2825
2826(define-public clutter
2827 (package
2828 (name "clutter")
6983ba56 2829 (version "1.26.0")
fb182b8a
MW
2830 (source
2831 (origin
2832 (method url-fetch)
2833 (uri (string-append "mirror://gnome/sources/" name "/"
2834 (version-major+minor version) "/"
2835 name "-" version ".tar.xz"))
2836 (sha256
2837 (base32
6983ba56 2838 "01nfjd4k7j2n3agpx2d9ncff86nfsqv4n23465rb9zmk4iw4wlb7"))))
fb182b8a 2839 (build-system gnu-build-system)
600233bd
LC
2840 (outputs '("out"
2841 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2842 (native-inputs
2843 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2844 ("gobject-introspection" ,gobject-introspection)
2845 ("pkg-config" ,pkg-config)
2846 ("xsltproc" ,libxslt)))
2847 (propagated-inputs
2848 `(("cogl" ,cogl)
2849 ("cairo" ,cairo)
2850 ("atk" ,atk)
2851 ("gtk+" ,gtk+)
2852 ("json-glib" ,json-glib)
2853 ("glib" ,glib)
2854 ("libxcomposite" ,libxcomposite)
2855 ("libxdamage" ,libxdamage)
2856 ("libxext" ,libxext)
2857 ("xinput" ,xinput)))
2858 (inputs
2859 `(("libxkbcommon" ,libxkbcommon)
2860 ("udev" ,eudev)))
2861 (arguments
600233bd
LC
2862 `(#:configure-flags (list "--enable-x11-backend=yes"
2863
2864 ;; This produces share/doc/{clutter,cally}.
2865 (string-append "--with-html-dir="
2866 (assoc-ref %outputs "doc")
2867 "/share/doc"))
fb182b8a
MW
2868 ;; XXX FIXME: Get test suite working. It would probably fail in the
2869 ;; same way the cogl tests fail, since clutter is based on cogl.
2870 #:tests? #f))
2871 (home-page "http://www.clutter-project.org")
2872 (synopsis "Open GL based interactive canvas library")
2873 (description
2874 "Clutter is an Open GL based interactive canvas library, designed for
2875creating fast, mainly 2D single window applications such as media box UIs,
2876presentations, kiosk style applications and so on.")
2877 (license license:lgpl2.0+)))
bf7f17ba
MW
2878
2879(define-public clutter-gtk
2880 (package
2881 (name "clutter-gtk")
6983ba56 2882 (version "1.8.0")
bf7f17ba
MW
2883 (source
2884 (origin
2885 (method url-fetch)
2886 (uri (string-append "mirror://gnome/sources/" name "/"
2887 (version-major+minor version) "/"
2888 name "-" version ".tar.xz"))
2889 (sha256
2890 (base32
6983ba56 2891 "07dzvx0b3fsswxnpxgk0adjgccnrvbxsd971naqwndnfivbgjbkl"))))
bf7f17ba
MW
2892 (build-system gnu-build-system)
2893 (native-inputs
2894 `(("pkg-config" ,pkg-config)
2895 ("gobject-introspection" ,gobject-introspection)))
9a3a8b8e
SB
2896 (propagated-inputs
2897 ;; clutter-gtk.pc refers to all these.
bf7f17ba
MW
2898 `(("clutter" ,clutter)
2899 ("gtk+" ,gtk+)))
2900 (home-page "http://www.clutter-project.org")
2901 (synopsis "Open GL based interactive canvas library GTK+ widget")
2902 (description
2903 "Clutter is an Open GL based interactive canvas library, designed for
2904creating fast, mainly 2D single window applications such as media box UIs,
2905presentations, kiosk style applications and so on.")
2906 (license license:lgpl2.0+)))
86d6a893
MW
2907
2908(define-public clutter-gst
2909 (package
2910 (name "clutter-gst")
6983ba56 2911 (version "3.0.18")
86d6a893
MW
2912 (source
2913 (origin
2914 (method url-fetch)
2915 (uri (string-append "mirror://gnome/sources/" name "/"
2916 (version-major+minor version) "/"
2917 name "-" version ".tar.xz"))
2918 (sha256
2919 (base32
6983ba56 2920 "14w0pi9myvcn1yxzmk9sk8dghj17m5ji3aqdpfjikk90c060vv0a"))))
86d6a893
MW
2921 (build-system gnu-build-system)
2922 (native-inputs
2923 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2924 ("pkg-config" ,pkg-config)
2925 ("gobject-introspection" ,gobject-introspection)))
2926 (inputs
2927 `(("clutter" ,clutter)
2928 ("gstreamer" ,gstreamer)
2929 ("gst-plugins-base" ,gst-plugins-base)))
2930 (home-page "http://www.clutter-project.org")
2931 (synopsis "Integration library for using GStreamer with Clutter")
2932 (description
2933 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2934It provides a GStreamer sink to upload frames to GL and an actor that
2935implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2936GL based interactive canvas library.")
2937 (license license:lgpl2.0+)))
607a04ae 2938
30dc88d9
LC
2939(define-public libchamplain
2940 (package
2941 (name "libchamplain")
6983ba56 2942 (version "0.12.13")
30dc88d9
LC
2943 (source (origin
2944 (method url-fetch)
2945 (uri (string-append
2946 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
2947 version ".tar.xz"))
2948 (sha256
2949 (base32
6983ba56 2950 "1arzd1hsgq14rbiwa1ih2g250x6ljna2s2kiqfrw155c612s9cxk"))))
30dc88d9
LC
2951 (build-system gnu-build-system)
2952 (native-inputs `(("pkg-config" ,pkg-config)))
2953 (propagated-inputs
2954 `(("libsoup" ,libsoup)
2955 ("sqlite" ,sqlite)
2956 ("clutter" ,clutter)
2957 ("clutter-gtk" ,clutter-gtk)
2958 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
2959 ("cairo" ,cairo)
2960 ("gtk+3" ,gtk+)
2961 ("glib" ,glib)))
2962 (home-page "http://projects.gnome.org/libchamplain/")
2963 (synopsis "C library providing a ClutterActor to display maps")
2964 (description
2965 "libchamplain is a C library providing a ClutterActor to display maps.
2966It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
2967and Perl bindings are also available. It supports numerous free map sources
2968such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
2969 (license license:lgpl2.1+)))
2970
607a04ae
MW
2971(define-public gom
2972 (package
2973 (name "gom")
0510440b 2974 (version "0.3.2")
607a04ae
MW
2975 (source
2976 (origin
2977 (method url-fetch)
2978 (uri (string-append "mirror://gnome/sources/" name "/"
2979 (version-major+minor version) "/"
2980 name "-" version ".tar.xz"))
2981 (sha256
2982 (base32
0510440b 2983 "1zaqqwwkyiswib3v1v8wafpbifpbpak0nn2kp13pizzn9bwz1s5w"))))
607a04ae
MW
2984 (build-system gnu-build-system)
2985 (native-inputs
2986 `(("intltool" ,intltool)
2987 ("pkg-config" ,pkg-config)
2988 ("gobject-introspection" ,gobject-introspection)))
2989 (inputs
2990 `(("glib" ,glib)
2991 ("gdk-pixbuf" ,gdk-pixbuf)
2992 ("sqlite" ,sqlite)))
2993 ;; XXX TODO: Figure out how to run the test suite.
2994 (arguments `(#:tests? #f))
2995 (home-page "https://wiki.gnome.org/Projects/Gom")
2996 (synopsis "Object mapper from GObjects to SQLite")
2997 (description
2998 "Gom provides an object mapper from GObjects to SQLite. It helps you
2999write applications that need to store structured data as well as make complex
3000queries upon that data.")
3001 (license license:lgpl2.1+)))
b7a3cf11 3002
f09520db
SB
3003(define-public libgames-support
3004 (package
3005 (name "libgames-support")
3006 (version "1.0.2")
3007 (source (origin
3008 (method url-fetch)
3009 (uri (string-append "mirror://gnome/sources/" name "/"
3010 (version-major+minor version) "/"
3011 name "-" version ".tar.xz"))
3012 (sha256
3013 (base32
3014 "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh"))))
3015 (build-system gnu-build-system)
3016 (arguments
3017 '(#:phases
3018 (modify-phases %standard-phases
3019 (add-before 'check 'pre-check
3020 (lambda _
3021 ;; tests require a writable HOME.
3022 (setenv "HOME" (getcwd))
3023 #t)))))
3024 (native-inputs
3025 `(("intltool" ,intltool)
3026 ("pkg-config" ,pkg-config)
3027 ("vala" ,vala)))
3028 (propagated-inputs
3029 ;; Required by libgames-support-1.0.pc
3030 `(("gtk+" ,gtk+)
3031 ("libgee" ,libgee)))
3032 (home-page "https://www.gnome.org/")
3033 (synopsis "Useful functionality shared among GNOME games")
3034 (description
3035 "libgames-support is a small library intended for internal use by
3036GNOME Games, but it may be used by others.")
3037 (license license:lgpl3+)))
3038
b7a3cf11
SB
3039(define-public gnome-klotski
3040 (package
3041 (name "gnome-klotski")
41150c7d 3042 (version "3.20.1")
b7a3cf11
SB
3043 (source (origin
3044 (method url-fetch)
3045 (uri (string-append "mirror://gnome/sources/" name "/"
3046 (version-major+minor version) "/"
3047 name "-" version ".tar.xz"))
3048 (sha256
3049 (base32
41150c7d 3050 "1130v6sk9h74b3xgv0bq43anaw7xs9x8vdab3q7p9db6w0px02wj"))))
b7a3cf11
SB
3051 (build-system glib-or-gtk-build-system)
3052 (native-inputs
3053 `(("desktop-file-utils" ,desktop-file-utils)
3054 ("intltool" ,intltool)
3055 ("itstool" ,itstool)
bcb354ad
SB
3056 ("pkg-config" ,pkg-config)
3057 ("xmllint" ,libxml2)))
b7a3cf11
SB
3058 (inputs
3059 `(("gtk+" ,gtk+)
4e823eae 3060 ("libgames-support" ,libgames-support)
b7a3cf11
SB
3061 ("librsvg" ,librsvg)))
3062 (home-page "https://wiki.gnome.org/Apps/Klotski")
3063 (synopsis "Sliding block puzzles")
3064 (description
3065 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
3066the patterned block to the area bordered by green markers. To do so, you will
3067need to slide other blocks out of the way. Complete each puzzle in as few moves
3068as possible!")
3069 (license license:gpl2+)))
8d4791bf
MW
3070
3071(define-public grilo
3072 (package
3073 (name "grilo")
5ed159c5 3074 (version "0.3.0")
8d4791bf
MW
3075 (source
3076 (origin
3077 (method url-fetch)
3078 (uri (string-append "mirror://gnome/sources/" name "/"
3079 (version-major+minor version) "/"
3080 name "-" version ".tar.xz"))
3081 (sha256
3082 (base32
5ed159c5 3083 "0q5wcvnckpfks48hy0gvlfdmvqm67vnblm3912rssmkgc1ysil8z"))))
8d4791bf
MW
3084 (build-system gnu-build-system)
3085 (native-inputs
3086 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3087 ("intltool" ,intltool)
3088 ("pkg-config" ,pkg-config)
3089 ("gobject-introspection" ,gobject-introspection)))
3090 (inputs
3091 `(("glib" ,glib)
3092 ("gtk+" ,gtk+)
3093 ("libxml2" ,libxml2)
3094 ;; XXX TODO: Add oauth
3095 ("libsoup" ,libsoup)
3096 ("totem-pl-parser" ,totem-pl-parser)))
3097 (arguments
3098 `(#:phases
3099 (modify-phases %standard-phases
3100 (add-after 'unpack 'fix-introspection-install-dir
3101 (lambda* (#:key outputs #:allow-other-keys)
3102 (let ((out (assoc-ref outputs "out")))
3103 (substitute* '("src/Makefile.in"
3104 "libs/pls/Makefile.in"
3105 "libs/net/Makefile.in")
3106 (("@INTROSPECTION_GIRDIR@")
3107 (string-append out "/share/gir-1.0/"))
3108 (("@INTROSPECTION_TYPELIBDIR@")
3109 (string-append out "/lib/girepository-1.0/")))))))))
3110 (native-search-paths
3111 (list (search-path-specification
3112 (variable "GRL_PLUGIN_PATH")
3113 (files (list (string-append "lib/grilo-"
3114 (version-major+minor version)))))))
3115 (home-page "http://live.gnome.org/Grilo")
3116 (synopsis "Framework for discovering and browsing media")
3117 (description
3118 "Grilo is a framework focused on making media discovery and browsing easy
3119for application developers.")
3120 (license license:lgpl2.1+)))
7b212526
MW
3121
3122(define-public grilo-plugins
3123 (package
3124 (name "grilo-plugins")
924ae80f 3125 (version "0.3.1")
7b212526
MW
3126 (source
3127 (origin
3128 (method url-fetch)
3129 (uri (string-append "mirror://gnome/sources/" name "/"
3130 (version-major+minor version) "/"
3131 name "-" version ".tar.xz"))
3132 (sha256
3133 (base32
924ae80f 3134 "1akd7q6pqnkcnayrdfjb0qx5w5yyl06kxzwhqp2gxm4y1b208pb0"))))
7b212526
MW
3135 (build-system gnu-build-system)
3136 (native-inputs
3137 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3138 ("intltool" ,intltool)
3139 ("itstool" ,itstool)
3140 ("pkg-config" ,pkg-config)))
3141 (inputs
3142 `(("grilo" ,grilo)
924ae80f 3143 ("nettle" ,nettle) ; XXX: required by libgrlpls-0.3.la
7b212526
MW
3144 ("glib" ,glib)
3145 ("libxml2" ,libxml2)
3146 ("sqlite" ,sqlite)
3147 ("gom" ,gom)
3148 ;; XXX TODO: Add oauth
3149 ;; XXX TODO: Add goa
3150 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
3151 ;; XXX TODO: Add lua (needs help finding it)
3152 ("json-glib" ,json-glib)
3153 ("avahi" ,avahi)
3154 ("gmime" ,gmime)
3155 ("libsoup" ,libsoup)
3156 ("libarchive" ,libarchive)
3157 ("totem-pl-parser" ,totem-pl-parser)))
3158 (arguments
3159 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
3160 %output
3161 "/lib/grilo-"
3162 ,(version-major+minor version)))
3163 ;; XXX FIXME: Try to get the test suite working. It appears to require
3164 ;; a working system dbus. Inside the build container, all tests fail
3165 ;; with: "assertion failed: (source)". Outside of the build container,
3166 ;; most tests succeed.
3167 #:tests? #f))
3168 (home-page "http://live.gnome.org/Grilo")
3169 (synopsis "Plugins for the Grilo media discovery library")
3170 (description
3171 "Grilo is a framework focused on making media discovery and browsing easy
3172for application developers.")
3173 (license license:lgpl2.1+)))
4e3fc547
MW
3174
3175(define-public totem
3176 (package
3177 (name "totem")
88e88997 3178 (version "3.20.1")
4e3fc547
MW
3179 (source
3180 (origin
3181 (method url-fetch)
3182 (uri (string-append "mirror://gnome/sources/" name "/"
3183 (version-major+minor version) "/"
3184 name "-" version ".tar.xz"))
3185 (sha256
3186 (base32
e2b89203
MW
3187 "09swnhp46cyy2svqx02fzy555pjgc61lyjw56v9rz1mfc41lh8kg"))
3188 (patches (search-patches "totem-debug-format-fix.patch"))))
4e3fc547
MW
3189 (build-system glib-or-gtk-build-system)
3190 (native-inputs
3191 `(("pkg-config" ,pkg-config)
3192 ("desktop-file-utils" ,desktop-file-utils)
3193 ("gobject-introspection" ,gobject-introspection)
3194 ("intltool" ,intltool)
bcb354ad
SB
3195 ("itstool" ,itstool)
3196 ("xmllint" ,libxml2)))
4e3fc547
MW
3197 (propagated-inputs
3198 `(("dconf" ,dconf)))
3199 (inputs
3200 `(("gtk+" ,gtk+)
3201 ("gdk-pixbuf" ,gdk-pixbuf)
3202 ("atk" ,atk)
3203 ("cairo" ,cairo)
3204 ("dbus-glib" ,dbus-glib)
3205 ("clutter" ,clutter)
3206 ("clutter-gtk" ,clutter-gtk)
3207 ("clutter-gst" ,clutter-gst)
3208 ("xproto" ,xproto)
3209 ("libxxf86vm" ,libxxf86vm)
3210 ("libxtst" ,libxtst)
3211 ("libxrandr" ,libxrandr)
3212 ("libxml2" ,libxml2)
3213 ("libsoup" ,libsoup)
3214 ("libpeas" ,libpeas)
3215 ("librsvg" ,librsvg)
3216 ("lirc" ,lirc)
3217 ("gnome-desktop" ,gnome-desktop)
3218 ("gstreamer" ,gstreamer)
3219 ("gst-plugins-base" ,gst-plugins-base)
3220 ("gst-plugins-good" ,gst-plugins-good)
3221 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3222 ("adwaita-icon-theme" ,adwaita-icon-theme)
3223 ;; XXX We use python-2 because libxml2 because itstool (which needs
3224 ;; libxml) currently uses python-2.
3225 ("python" ,python-2)
3226 ("python-pygobject" ,python2-pygobject)
3227 ;; XXX TODO pylint needed for python support
3228 ("totem-pl-parser" ,totem-pl-parser)
3229 ("grilo" ,grilo)
3230 ("grilo-plugins" ,grilo-plugins)
3231 ("nettle" ,nettle)
3232 ("vala" ,vala)))
3233 (arguments
3234 `(#:phases
3235 (modify-phases %standard-phases
3236 (add-after
3237 'install 'wrap-totem
3238 (lambda* (#:key inputs outputs #:allow-other-keys)
3239 (let ((out (assoc-ref outputs "out"))
3240 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3241 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3242 (wrap-program (string-append out "/bin/totem")
3243 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3244 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3245 #t)))))
3246 (home-page "https://wiki.gnome.org/Apps/Videos")
3247 (synopsis "Simple media player for GNOME based on GStreamer")
3248 (description "Totem is a simple yet featureful media player for GNOME
3249which can read a large number of file formats.")
3250 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3251 ;; to be used and distributed together with GStreamer and Totem. See
3252 ;; file://COPYING in the source distribution for details.
3253 (license license:gpl2+)))
f0afb0c8
DH
3254
3255(define-public rhythmbox
3256 (package
3257 (name "rhythmbox")
3258 (version "3.2.1")
3259 (source (origin
3260 (method url-fetch)
3261 (uri (string-append "mirror://gnome/sources/" name "/"
3262 (version-major+minor version) "/"
3263 name "-" version ".tar.xz"))
3264 (sha256
3265 (base32
3266 "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
3267 (build-system glib-or-gtk-build-system)
3268 (arguments
3269 `(#:configure-flags
3270 (list "--enable-lirc"
3271 "--enable-python"
3272 "--enable-vala"
3273 "--with-brasero"
3274 "--with-gudev"
3275 "--with-libsecret")
3276 #:phases
3277 (modify-phases %standard-phases
3278 (add-after
3279 'install 'wrap-rhythmbox
3280 (lambda* (#:key inputs outputs #:allow-other-keys)
3281 (let ((out (assoc-ref outputs "out"))
3282 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3283 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3284 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3285 (wrap-program (string-append out "/bin/rhythmbox")
3286 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3287 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3288 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3289 #t)))))
3290 (propagated-inputs
3291 `(("dconf" ,dconf)))
3292 (native-inputs
bcb354ad
SB
3293 `(("itstool" ,itstool)
3294 ("intltool" ,intltool)
f0afb0c8
DH
3295 ("glib" ,glib "bin")
3296 ("gobject-introspection" ,gobject-introspection)
3297 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3298 ("pkg-config" ,pkg-config)
3299 ("xmllint" ,libxml2)))
f0afb0c8
DH
3300 (inputs
3301 `(("json-glib" ,json-glib)
3302 ("tdb" ,tdb)
3303 ("gnome-desktop" ,gnome-desktop)
3304 ("python" ,python)
3305 ("python-pygobject" ,python2-pygobject)
3306 ("vala" ,vala)
3307 ("gmime" ,gmime)
3308 ("nettle" ,nettle)
f0afb0c8
DH
3309 ("adwaita-icon-theme" ,adwaita-icon-theme)
3310 ("grilo" ,grilo)
3311 ("grilo-plugins" ,grilo-plugins)
3312 ("gstreamer" ,gstreamer)
3313 ("gst-plugins-base" ,gst-plugins-base)
3314 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3315 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3316 ("libgudev" ,libgudev)
f0afb0c8
DH
3317 ;;("libmtp" ,libmtp) FIXME: Not detected
3318 ("libsecret" ,libsecret)
3319 ("libsoup" ,libsoup)
3320 ("libnotify" ,libnotify)
3321 ("libpeas" ,libpeas)
3322 ("lirc" ,lirc)
3323 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3324 ;;("clutter" ,clutter)
3325 ;;("clutter-gtk" ,clutter-gtk)
3326 ;;("clutter-gst" ,clutter-gst)
3327 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3328 ("atk" ,atk)
3329 ("pango" ,pango)
3330 ("gtk+" ,gtk+)
3331 ;; TODO:
3332 ;; * libgpod
3333 ;; * mx
3334 ;; * webkit
3335 ("brasero" ,brasero)))
3336 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3337 (synopsis "Music player for GNOME")
3338 (description "Rhythmbox is a music playing application for GNOME. It
3339supports playlists, song ratings, and any codecs installed through gstreamer.")
3340 (license license:gpl2+)))
f70d8383
DH
3341
3342(define-public eog
3343 (package
3344 (name "eog")
3afeb02c 3345 (version "3.20.1")
f70d8383
DH
3346 (source (origin
3347 (method url-fetch)
3348 (uri (string-append "mirror://gnome/sources/" name "/"
3349 (version-major+minor version) "/"
3350 name "-" version ".tar.xz"))
3351 (sha256
3352 (base32
3afeb02c 3353 "0ll3vz1kyjagiqmrpypk1a4nwjhrjsapiz45bxblsjxjy641j0jg"))))
f70d8383
DH
3354 (build-system glib-or-gtk-build-system)
3355 (arguments
3356 `(#:phases
3357 (modify-phases %standard-phases
3358 (add-after
3359 'install 'wrap-eog
3360 (lambda* (#:key outputs #:allow-other-keys)
3361 (let ((out (assoc-ref outputs "out"))
3362 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3363 (wrap-program (string-append out "/bin/eog")
3364 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3365 #t)))))
3366 (propagated-inputs
3367 `(("dconf" ,dconf)))
3368 (native-inputs
3369 `(("intltool" ,intltool)
b3546174 3370 ("itstool" ,itstool)
f70d8383
DH
3371 ("glib" ,glib "bin")
3372 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3373 ("pkg-config" ,pkg-config)
3374 ("xmllint" ,libxml2)))
f70d8383
DH
3375 (inputs
3376 `(("gnome-desktop" ,gnome-desktop)
3377 ("shared-mime-info" ,shared-mime-info)
3378 ("adwaita-icon-theme" ,adwaita-icon-theme)
3379 ("exempi" ,exempi)
3380 ("lcms" ,lcms)
3381 ("libexif" ,libexif)
3382 ("libpeas" ,libpeas)
3383 ("libjpeg" ,libjpeg)
3384 ("librsvg" ,librsvg)
3385 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3386 ("gtk+" ,gtk+)))
3387 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3388 (synopsis "GNOME image viewer")
3389 (description "Eye of GNOME is the GNOME image viewer. It
3390supports image conversion, rotation, and slideshows.")
3391 (license license:gpl2+)))
41af5e7b
SB
3392
3393(define-public libgudev
3394 (package
3395 (name "libgudev")
3396 (version "230")
3397 (source (origin
3398 (method url-fetch)
3399 (uri (string-append "mirror://gnome/sources/" name "/"
3400 version "/" name "-" version ".tar.xz"))
3401 (sha256
3402 (base32
3403 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3404 (build-system gnu-build-system)
3405 (native-inputs
3406 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3407 ("gobject-introspection" ,gobject-introspection)
3408 ("pkg-config" ,pkg-config)))
3409 (propagated-inputs
3410 `(("glib" ,glib))) ; required by gudev-1.0.pc
3411 (inputs
3412 `(("udev" ,eudev)))
3413 (home-page "https://wiki.gnome.org/Projects/libgudev")
3414 (synopsis "GObject bindings for libudev")
3415 (description
3416 "This library provides GObject bindings for libudev. It was originally
3417part of udev-extras, then udev, then systemd. It's now a project on its own.")
3418 (license license:lgpl2.1+)))
3dc8828f
SB
3419
3420(define-public gvfs
3421 (package
3422 (name "gvfs")
ddfa9131 3423 (version "1.28.1")
3dc8828f
SB
3424 (source (origin
3425 (method url-fetch)
3426 (uri (string-append "mirror://gnome/sources/" name "/"
3427 (version-major+minor version) "/"
3428 name "-" version ".tar.xz"))
3429 (sha256
3430 (base32
ddfa9131 3431 "16bry61hg681bwb0pih86cjayzvc5f89ip5xd8fydcy16nnfbksf"))))
3dc8828f
SB
3432 (build-system gnu-build-system)
3433 (arguments
3434 '(#:tests? #f)) ; XXX: requiring `pidof'
3435 (native-inputs
3436 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3437 ("intltool" ,intltool)
3438 ("pkg-config" ,pkg-config)
3439 ("xsltproc" ,libxslt)))
3440 (inputs
3441 `(("avahi" ,avahi)
3442 ("docbook-xml" ,docbook-xml-4.2)
3443 ("docbook-xsl" ,docbook-xsl)
3444 ("dbus" ,dbus)
3445 ("fuse" ,fuse)
24a78aa6 3446 ("gcr" ,gcr)
3dc8828f
SB
3447 ("glib" ,glib)
3448 ("libarchive" ,libarchive)
3449 ("libbluray" ,libbluray)
3450 ("libcdio-paranoia" ,libcdio-paranoia)
3451 ("libgcrypt" ,libgcrypt)
3452 ("libgphoto2" ,libgphoto2)
3453 ("libgudev" ,libgudev)
3454 ("libmtp" ,libmtp)
3455 ("libsecret" ,libsecret)
3456 ("libsmbclient" ,samba)
3457 ("libsoup" ,libsoup)
3458 ("libxml2" ,libxml2)
3459 ("nettle" ,nettle) ; XXX: required by libarchive.pc
3460 ("udisks" ,udisks)))
3461 (home-page "https://wiki.gnome.org/gvfs/")
3462 (synopsis "Userspace virtual filesystem for GIO")
3463 (description
3464 "GVFS is a userspace virtual filesystem designed to work with the I/O
3465abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3466to all applications using the GIO API. It also supports exposing the GVFS
3467mounts to non-GIO applications using FUSE.
3468
3469GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3470DAV, and others.")
3471 (license license:lgpl2.0+)))
7c88b6bd
AW
3472
3473(define-public gusb
3474 (package
3475 (name "gusb")
3476 (version "0.2.6")
3477 (source (origin
3478 (method url-fetch)
3479 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3480 "gusb_"
3481 (string-join (string-split version #\.)
3482 "_")
3483 ".tar.gz"))
3484 (sha256
3485 (base32
3486 "0h9dzaza81b0mx5jfh5cnc31xdynl0jsxgwvl6vqyhy8mnwfi5nr"))))
3487 (build-system gnu-build-system)
3488 (native-inputs
3489 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3490 ("gobject-introspection" ,gobject-introspection)
3491 ("pkg-config" ,pkg-config)
3492 ("vala" ,vala)
3493 ("autoconf" ,autoconf)
3494 ("automake" ,automake)
3495 ("libtool" ,libtool)
3496 ("gtk-doc" ,gtk-doc)))
3497 (propagated-inputs
3498 ;; Both of these are required by gusb.pc.
3499 `(("glib" ,glib)
3500 ("libusb" ,libusb)))
3501 (arguments
3502 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3503 #:phases
3504 (modify-phases %standard-phases
3505 (add-after 'unpack 'autogen
3506 (lambda _
3507 (and (zero? (system* "gtkdocize"))
3508 (zero? (system* "autoreconf" "-vif"))))))))
8f1640ed 3509 (home-page "https://github.com/hughsie/libgusb")
a124bbd2 3510 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3511 (description
3512 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3513asynchronous control, bulk and interrupt transfers with proper cancellation
3514and integration into a mainloop. This makes it easy to integrate low level
3515USB transfers with your high-level application or system daemon.")
3516 (license license:lgpl2.1+)))
0abe1d86
AW
3517
3518(define-public simple-scan
3519 (package
3520 (name "simple-scan")
fb9ca511 3521 (version "3.19.91")
0abe1d86
AW
3522 (source (origin
3523 (method url-fetch)
3524 (uri (string-append "https://launchpad.net/simple-scan/"
3525 (version-major+minor version) "/"
3526 version "/+download/simple-scan-"
3527 version ".tar.xz"))
3528 (sha256
3529 (base32
fb9ca511 3530 "1c5glf5vxgld41w4jxfqcv17q76qnh43fawpv33hncgh8d283xkf"))))
0abe1d86
AW
3531 (build-system glib-or-gtk-build-system)
3532 (inputs
3533 `(("gtk" ,gtk+)
3534 ("zlib" ,zlib)
3535 ("cairo" ,cairo)
3536 ("gdk-pixbuf" ,gdk-pixbuf)
3537 ("gusb" ,gusb)
3538 ("libgudev" ,libgudev)
3539 ("libsane" ,sane-backends)))
3540 (native-inputs
3541 `(("intltool" ,intltool)
3542 ("itstool" ,itstool)
3543 ("colord" ,colord)
3544 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3545 ("pkg-config" ,pkg-config)
bcb354ad
SB
3546 ("vala" ,vala)
3547 ("xmllint" ,libxml2)))
fb9ca511
TGR
3548 (arguments
3549 '(#:configure-flags '("--disable-packagekit")
3550 #:phases
3551 (modify-phases %standard-phases
3552 (add-after 'unpack 'clean
3553 (lambda _
3554 ;; Remove a left-over reference to PackageKit.
3555
3556 ;; https://bugs.launchpad.net/simple-scan/+bug/1462769
3557
3558 ;; There are some generated C files erroneously
3559 ;; included in the source distribution, and this
3560 ;; one breaks the build by referring to a
3561 ;; non-existent header (packagekit.h)
3562 (delete-file "src/ui.c"))))))
0abe1d86
AW
3563 (home-page "https://launchpad.net/simple-scan")
3564 (synopsis "Document and image scanner")
3565 (description "Simple Scan is an easy-to-use application, designed to let
3566users connect their scanner and quickly have the image/document in an
3567appropriate format. Simple Scan is basically a frontend for SANE - which is
3568the same backend as XSANE uses. This means that all existing scanners will
3569work and the interface is well tested.")
3570 (license license:gpl3+)))
7549f984
SB
3571
3572(define-public epiphany
3573 (package
3574 (name "epiphany")
c51555f4 3575 (version "3.20.1")
7549f984
SB
3576 (source (origin
3577 (method url-fetch)
3578 (uri (string-append "mirror://gnome/sources/" name "/"
3579 (version-major+minor version) "/"
3580 name "-" version ".tar.xz"))
3581 (sha256
3582 (base32
c51555f4 3583 "1ry9z6d51gjbv5n8kspwdyfrdai2hrin2ixdicmyiq6xbryzcwbi"))))
7549f984
SB
3584 (build-system glib-or-gtk-build-system)
3585 (arguments
3586 ;; FIXME: tests run under Xvfb, but fail with:
3587 ;; /src/bookmarks/ephy-bookmarks/create:
3588 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3589 ;; subsystem
3590 ;; FAIL
3591 '(#:tests? #f))
80a747c4
SB
3592 (propagated-inputs
3593 `(("dconf" ,dconf)))
7549f984
SB
3594 (native-inputs
3595 `(("intltool" ,intltool)
3596 ("itstool" ,itstool)
bcb354ad
SB
3597 ("pkg-config" ,pkg-config)
3598 ("xmllint" ,libxml2)))
7549f984
SB
3599 (inputs
3600 `(("avahi" ,avahi)
3601 ("gcr" ,gcr)
3602 ("glib-networking" ,glib-networking)
3603 ("gnome-desktop" ,gnome-desktop)
3604 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3605 ("iso-codes" ,iso-codes)
3606 ("libnotify" ,libnotify)
3607 ("libsecret" ,libsecret)
3608 ("libwnck" ,libwnck)
3609 ("libxslt" ,libxslt)
3610 ("nss" ,nss)
3611 ("sqlite" ,sqlite)
3612 ("webkitgtk" ,webkitgtk)))
3613 (home-page "https://wiki.gnome.org/Apps/Web")
3614 (synopsis "GNOME web browser")
3615 (description
3616 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3617principles are simplicity and standards compliance.")
3618 (license license:gpl2+)))
a3856b2c
SB
3619
3620(define-public d-feet
3621 (package
3622 (name "d-feet")
3623 (version "0.3.10")
3624 (source (origin
3625 (method url-fetch)
3626 (uri (string-append "mirror://gnome/sources/" name "/"
3627 (version-major+minor version) "/"
3628 name "-" version ".tar.xz"))
3629 (sha256
3630 (base32
3631 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3632 (build-system glib-or-gtk-build-system)
3633 (arguments
3634 '(#:out-of-source? #f ; tests need to run in the source directory.
3635 #:phases
3636 (modify-phases %standard-phases
3637 (add-before
3638 'check 'pre-check
86aff791 3639 (lambda _
a3856b2c
SB
3640 ;; The test suite requires a running X server.
3641 (system "Xvfb :1 &")
3642 (setenv "DISPLAY" ":1")
3643 ;; Don't fail on missing '/etc/machine-id'.
3644 (setenv "DBUS_FATAL_WARNINGS" "0")
3645 ;; tests.py and window.py don't meet E402:
3646 ;; E402 module level import not at top of file
3647 (substitute* "src/tests/Makefile"
86aff791
MW
3648 (("--ignore=E123") "--ignore=E123,E402"))
3649 #t))
a3856b2c
SB
3650 (add-after
3651 'install 'wrap-program
3652 (lambda* (#:key outputs #:allow-other-keys)
3653 (let ((prog (string-append (assoc-ref outputs "out")
3654 "/bin/d-feet")))
3655 (wrap-program prog
3656 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3657 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3658 #t))))))
a3856b2c
SB
3659 (native-inputs
3660 `(("intltool" ,intltool)
3661 ("itstool" ,itstool)
3662 ("pkg-config" ,pkg-config)
3663 ("python-pep8" ,python-pep8)
3664 ("xmllint" ,libxml2)
3665 ("xorg-server" ,xorg-server)))
3666 (inputs
3667 `(("gobject-introspection" ,gobject-introspection)
3668 ("gtk+" ,gtk+)
3669 ("python" ,python-wrapper)
3670 ("python-pygobject" ,python-pygobject)))
3671 (home-page "https://wiki.gnome.org/Apps/DFeet")
3672 (synopsis "D-Bus debugger")
3673 (description
3674 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3675of running programs and invoke methods on those interfaces.")
3676 (license license:gpl2+)))
c3b97bd9
SB
3677
3678(define-public yelp-xsl
3679 (package
3680 (name "yelp-xsl")
27ad5743 3681 (version "3.20.1")
c3b97bd9
SB
3682 (source (origin
3683 (method url-fetch)
3684 (uri (string-append "mirror://gnome/sources/" name "/"
3685 (version-major+minor version) "/"
3686 name "-" version ".tar.xz"))
3687 (sha256
3688 (base32
27ad5743 3689 "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
c3b97bd9
SB
3690 (build-system gnu-build-system)
3691 (native-inputs
3692 `(("intltool" ,intltool)
3693 ("itstool" ,itstool)
3694 ("xmllint" ,libxml2)))
3695 (home-page "https://wiki.gnome.org/Apps/Yelp")
3696 (synopsis "XSL stylesheets for Yelp")
3697 (description
3698 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3699to format Docbook and Mallard documents.")
3700 (license license:gpl2+)))
de3d612a
SB
3701
3702(define-public yelp
3703 (package
3704 (name "yelp")
b8967d48 3705 (version "3.20.1")
de3d612a
SB
3706 (source (origin
3707 (method url-fetch)
3708 (uri (string-append "mirror://gnome/sources/" name "/"
3709 (version-major+minor version) "/"
3710 name "-" version ".tar.xz"))
3711 (sha256
3712 (base32
b8967d48 3713 "1hh8yqbv0scn9nksk9mq94cb4sdczlzxplclv2wqr41jmm8v186x"))))
de3d612a
SB
3714 (build-system glib-or-gtk-build-system)
3715 (native-inputs
3716 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3717 ("intltool" ,intltool)
3718 ("itstool" ,itstool)
3719 ("pkg-config" ,pkg-config)))
3720 (propagated-inputs
3721 `(("dconf" ,dconf)))
3722 (inputs
ad1b7d8b
SB
3723 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3724 ("libxslt" ,libxslt)
de3d612a 3725 ("sqlite" ,sqlite)
4c28ca1d
SB
3726 ("webkitgtk" ,webkitgtk)
3727 ("yelp-xsl" ,yelp-xsl)))
de3d612a
SB
3728 (home-page "https://wiki.gnome.org/Apps/Yelp")
3729 (synopsis "GNOME help browser")
3730 (description
3731 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3732man, info, and HTML documents. It can locate documents according to the
3733freedesktop.org help system specification.")
3734 (license license:gpl2+)))
122d0d10
SB
3735
3736(define-public yelp-tools
3737 (package
3738 (name "yelp-tools")
50695955 3739 (version "3.18.0")
122d0d10
SB
3740 (source (origin
3741 (method url-fetch)
3742 (uri (string-append "mirror://gnome/sources/" name "/"
3743 (version-major+minor version) "/"
3744 name "-" version ".tar.xz"))
3745 (sha256
3746 (base32
50695955 3747 "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
122d0d10
SB
3748 (build-system gnu-build-system)
3749 (native-inputs
3750 `(("pkg-config" ,pkg-config)))
3751 (propagated-inputs
3752 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3753 `(("itstool" ,itstool)
3754 ("xmllint" ,libxml2)
3755 ("xsltproc" ,libxslt)))
3756 (inputs
3757 `(("yelp-xsl" ,yelp-xsl)))
3758 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3759 (synopsis "Yelp documentation tools")
3760 (description
3761 "Yelp-tools is a collection of scripts and build utilities to help create,
3762manage, and publish documentation for Yelp and the web. Most of the heavy
3763lifting is done by packages like yelp-xsl and itstool. This package just
3764wraps things up in a developer-friendly way.")
3765 (license license:gpl2+)))
af8f9f23
RW
3766
3767(define-public libgee
3768 (package
3769 (name "libgee")
3770 (version "0.18.0")
3771 (source (origin
3772 (method url-fetch)
3773 (uri (string-append "mirror://gnome/sources/" name "/"
3774 (version-major+minor version) "/"
3775 name "-" version ".tar.xz"))
3776 (sha256
3777 (base32
3778 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3779 (build-system gnu-build-system)
3780 (arguments
3781 `(#:phases
3782 (modify-phases %standard-phases
3783 (add-after 'unpack 'fix-introspection-install-dir
3784 (lambda* (#:key outputs #:allow-other-keys)
3785 (let ((out (assoc-ref outputs "out")))
3786 (substitute* "gee/Makefile.in"
3787 (("@INTROSPECTION_GIRDIR@")
3788 (string-append out "/share/gir-1.0/"))
3789 (("@INTROSPECTION_TYPELIBDIR@")
3790 (string-append out "/lib/girepository-1.0/")))))))))
3791 (native-inputs
3792 `(("glib" ,glib "bin")
3793 ("pkg-config" ,pkg-config)))
3794 (inputs
3795 `(("glib" ,glib)
3796 ("gobject-introspection" ,gobject-introspection)))
3797 (home-page "https://wiki.gnome.org/Projects/Libgee")
3798 (synopsis "GObject collection library")
3799 (description
3800 "Libgee is a utility library providing GObject-based interfaces and
3801classes for commonly used data structures.")
3802 (license license:lgpl2.1+)))
b0f9c4b8
RW
3803
3804(define-public gexiv2
3805 (package
3806 (name "gexiv2")
3807 (version "0.10.3")
3808 (source (origin
3809 (method url-fetch)
3810 (uri (string-append "mirror://gnome/sources/" name "/"
3811 (version-major+minor version) "/"
3812 name "-" version ".tar.xz"))
3813 (sha256
3814 (base32
3815 "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))))
3816 (build-system gnu-build-system)
3817 (native-inputs
3818 `(("glib" ,glib "bin")
3819 ("pkg-config" ,pkg-config)))
3820 (propagated-inputs
3821 ;; Listed in "Requires" section of gexiv2.pc
3822 `(("exiv2" ,exiv2)))
3823 (inputs
3824 `(("glib" ,glib)
3825 ("gobject-introspection" ,gobject-introspection)))
3826 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3827 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3828 (description
3829 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3830allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3831metadata in photo and video files of various formats.")
3832 (license license:gpl2+)))
fed5a689
RW
3833
3834(define-public shotwell
3835 (package
3836 (name "shotwell")
f8b446ca 3837 (version "0.22.1")
fed5a689
RW
3838 (source (origin
3839 (method url-fetch)
3840 (uri (string-append "mirror://gnome/sources/" name "/"
3841 (version-major+minor version) "/"
3842 name "-" version ".tar.xz"))
3843 (sha256
3844 (base32
f8b446ca 3845 "1a9lx9a7p6fgaf838xlw98f73xxyxmg6jmm29830lsl8ynbhq9bk"))))
fed5a689
RW
3846 (build-system glib-or-gtk-build-system)
3847 (arguments
3848 `(#:tests? #f ;no "check" target
3849 #:make-flags '("CC=gcc")
3850 #:configure-flags '("--disable-gsettings-convert-install")
3851 #:out-of-source? #f))
3852 (native-inputs
3853 `(("pkg-config" ,pkg-config)
3854 ("gettext" ,gnu-gettext)
3855 ("m4" ,m4)
3856 ("desktop-file-utils" ,desktop-file-utils)
3857 ("vala" ,vala)
3858 ("which" ,which)
3859 ("gnome-doc-utils" ,gnome-doc-utils)
3860 ;; FIXME: I only added python2-libxml2 because xml2po needs it at
3861 ;; runtime. It should be propagated.
3862 ("python2-libxml2" ,python2-libxml2)
3863 ("python2" ,python-2)))
3864 (inputs
3865 `(("gstreamer" ,gstreamer)
3866 ("gst-plugins-base" ,gst-plugins-base)
3867 ("gst-plugins-good" ,gst-plugins-good)
3868 ("libgee" ,libgee)
3869 ("gexiv2" ,gexiv2)
3870 ("libraw" ,libraw)
3871 ("json-glib" ,json-glib)
3872 ("rest" ,rest)
3873 ("webkitgtk" ,webkitgtk-2.4)
3874 ("sqlite" ,sqlite)
3875 ("libsoup" ,libsoup)
3876 ("libxml2" ,libxml2)
3877 ("gtk+" ,gtk+)
3878 ("libgudev" ,libgudev)
3879 ("libgphoto2" ,libgphoto2)))
3880 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3881 (synopsis "Photo manager for GNOME 3")
3882 (description
3883 "Shotwell is a digital photo manager designed for the GNOME desktop
3884environment. It allows you to import photos from disk or camera, organize
3885them by keywords and events, view them in full-window or fullscreen mode, and
3886share them with others via social networking and more.")
3887 (license license:lgpl2.1+)))
293ff8b2
DT
3888
3889(define-public file-roller
3890 (package
3891 (name "file-roller")
74cf8f6c 3892 (version "3.20.1")
293ff8b2
DT
3893 (source (origin
3894 (method url-fetch)
3895 (uri (string-append "mirror://gnome/sources/" name "/"
3896 (version-major+minor version) "/"
3897 name "-" version ".tar.xz"))
3898 (sha256
3899 (base32
74cf8f6c 3900 "0cx3d8mp0pxz9wcsb2ph7g1zy22m8z5x0a4f5vgfzl0jmrcxpcy8"))))
293ff8b2
DT
3901 (build-system glib-or-gtk-build-system)
3902 (native-inputs
3903 `(("intltool" ,intltool)
3904 ("pkg-config" ,pkg-config)))
3905 ;; TODO: Add libnautilus.
3906 (inputs
3907 `(("gtk+" ,gtk+)
3908 ("gdk-pixbuf" ,gdk-pixbuf)
3909 ("json-glib" ,json-glib)
3910 ("libarchive" ,libarchive)
3911 ("libnotify" ,libnotify)
3912 ("nettle" ,nettle)
3913 ("itstool" ,itstool)
3914 ("libxml2" ,libxml2)))
3915 (synopsis "Graphical archive manager for GNOME")
3916 (description "File Roller is an archive manager for the GNOME desktop
3917environment that allows users to view, unpack, and create compressed archives
3918such as gzip tarballs.")
3919 (home-page "http://fileroller.sourceforge.net/")
3920 (license license:gpl2+)))
7ce49365
SB
3921
3922(define-public gnome-session
3923 (package
3924 (name "gnome-session")
803ab416 3925 (version "3.20.1")
7ce49365
SB
3926 (source (origin
3927 (method url-fetch)
3928 (uri (string-append "mirror://gnome/sources/" name "/"
3929 (version-major+minor version) "/"
3930 name "-" version ".tar.xz"))
3931 (sha256
3932 (base32
803ab416 3933 "04w90gyl0kdx5vwmdcgfdk3qr9xhip00vgpgzci151agqwyzbs9a"))))
2914af3c
AW
3934 (arguments
3935 '(#:phases
3936 (modify-phases %standard-phases
3937 (add-before 'configure 'pre-configure
3938 (lambda* (#:key outputs #:allow-other-keys)
3939 ;; Use elogind instead of systemd.
3940 (substitute* "configure"
3941 (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
3942 "libelogind")
3943 (("systemd") "elogind"))
3944 (substitute* "gnome-session/gsm-systemd.c"
3945 (("#include <systemd/sd-login.h>")
3946 "#include <elogind/sd-login.h>"))
3947 ;; Remove uses of the systemd journal.
3948 (substitute* "gnome-session/main.c"
3949 (("#ifdef HAVE_SYSTEMD") "#if 0"))
3950 (substitute* "gnome-session/gsm-manager.c"
3951 (("#ifdef HAVE_SYSTEMD") "#if 0"))
803ab416
SB
3952 (substitute* "gnome-session/gsm-autostart-app.c"
3953 (("#ifdef HAVE_SYSTEMD") "#if 0"))
a0d7baaf
LC
3954 #t))
3955 (add-after 'install 'wrap-gnome-session
3956 (lambda* (#:key inputs outputs #:allow-other-keys)
3957 ;; Make sure 'gnome-session' finds the 'gsettings' program.
3958 (let ((glib (assoc-ref inputs "glib:bin"))
3959 (out (assoc-ref outputs "out")))
3960 (wrap-program (string-append out "/bin/gnome-session")
3961 `("PATH" ":" prefix (,(string-append glib "/bin"))))
6cbc8d57
LC
3962 #t)))
3963 (add-after 'install 'disable-hardware-acceleration-check
3964 (lambda* (#:key outputs #:allow-other-keys)
3965 ;; Do not abort if hardware acceleration is missing. This allows
3966 ;; GNOME to run in QEMU and on low-end devices.
3967 (let ((out (assoc-ref outputs "out")))
3968 (substitute* (string-append out
3969 "/share/xsessions/gnome.desktop")
3970 (("gnome-session")
3971 "gnome-session --disable-acceleration-check"))
a0d7baaf 3972 #t))))
6cbc8d57 3973
2914af3c
AW
3974 #:configure-flags
3975 '("--enable-elogind")))
ba3cb5ab 3976 (build-system glib-or-gtk-build-system)
7ce49365
SB
3977 (native-inputs
3978 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3979 ("pkg-config" ,pkg-config)
3980 ("intltool" ,intltool)
3981 ("xsltproc" ,libxslt)))
3982 (inputs
2914af3c
AW
3983 `(("elogind" ,elogind)
3984 ("gnome-desktop" ,gnome-desktop)
ba3cb5ab 3985 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
7ce49365
SB
3986 ("gtk+" ,gtk+)
3987 ("json-glib" ,json-glib)
3988 ("libsm" ,libsm)
3989 ("libxcomposite" ,libxcomposite)
3990 ("libxtst" ,libxtst)
3991 ("mesa" ,mesa)
3992 ("upower" ,upower)
3993 ("xtrans" ,xtrans)))
3994 (synopsis "Session manager for GNOME")
3995 (description
3996 "This package contains the GNOME session manager, as well as a
3997configuration program to choose applications starting on login.")
3998 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3999 (license license:gpl2+)))
f47ba77e
SB
4000
4001(define-public gjs
4002 (package
4003 (name "gjs")
4004 (version "1.44.0")
4005 (source (origin
4006 (method url-fetch)
4007 (uri (string-append "mirror://gnome/sources/" name "/"
4008 (version-major+minor version) "/"
4009 name "-" version ".tar.xz"))
4010 (sha256
4011 (base32
4012 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
4013 (modules '((guix build utils)))
4014 (snippet '(substitute* "test/run-with-dbus"
4015 (("/bin/rm") "rm")))))
4016 (build-system gnu-build-system)
4017 (arguments
4018 '(#:phases
4019 (modify-phases %standard-phases
4020 (add-before
4021 'check 'pre-check
4022 (lambda _
4023 ;; For the missing /etc/machine-id.
4024 (setenv "DBUS_FATAL_WARNINGS" "0")
ba666b07
SB
4025
4026 ;; XXX: fails with:
4027 ;; Failed to convert UTF-8 string to JS string: ...
4028 ;; TODO: actually fix it.
4029 (substitute* "installed-tests/js/testEverythingBasic.js"
4030 ((".*test_utf8_inout.*") ""))
f47ba77e
SB
4031 #t)))))
4032 (native-inputs
4033 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
4034 ("pkg-config" ,pkg-config)
4035 ("xmllint" ,libxml2)
4036 ;; For testing
4037 ("dbus-launch" ,dbus)
4038 ("uuidgen" ,util-linux)
4039 ("xvfb" ,xorg-server)))
4040 (propagated-inputs
4041 ;; These are all in the Requires.private field of gjs-1.0.pc.
4042 `(("gobject-introspection" ,gobject-introspection)
4043 ("mozjs" ,mozjs-24)))
4044 (inputs
4045 `(("gtk+" ,gtk+)
4046 ("readline" ,readline)))
4047 (synopsis "Javascript bindings for GNOME")
4048 (home-page "http://live.gnome.org/Gjs")
4049 (description
4050 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
4051javascript engine and the GObject introspection framework.")
4052 (license license:gpl2+)))
329d731b
DH
4053
4054(define-public gedit
4055 (package
4056 (name "gedit")
6983ba56 4057 (version "3.20.1")
329d731b
DH
4058 (source (origin
4059 (method url-fetch)
4060 (uri (string-append "mirror://gnome/sources/" name "/"
4061 (version-major+minor version) "/"
4062 name "-" version ".tar.xz"))
4063 (sha256
4064 (base32
6983ba56 4065 "1i0x1jd9x1vpv8lwdlzwf0ml8jxh3b3l6nlg6pbnfjw47w3y6iws"))))
329d731b
DH
4066 (build-system glib-or-gtk-build-system)
4067 (arguments
33cd9bef
SB
4068 `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet
4069 #:phases
329d731b
DH
4070 (modify-phases %standard-phases
4071 (add-after
4072 'install 'wrap-gedit
4073 (lambda* (#:key inputs outputs #:allow-other-keys)
4074 (let ((out (assoc-ref outputs "out"))
4075 (gtksourceview (assoc-ref inputs "gtksourceview"))
afc25242
SB
4076 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4077 (python-path (getenv "PYTHONPATH")))
329d731b 4078 (wrap-program (string-append out "/bin/gedit")
afc25242 4079 ;; For plugins.
329d731b 4080 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
afc25242 4081 `("PYTHONPATH" ":" prefix (,python-path))
329d731b
DH
4082 ;; For language-specs.
4083 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
4084 "/share")))))
4085 #t)))))
4086 (propagated-inputs
4087 `(("dconf" ,dconf)))
4088 (native-inputs
4089 `(("intltool" ,intltool)
b3546174 4090 ("itstool" ,itstool)
329d731b
DH
4091 ("gobject-introspection" ,gobject-introspection)
4092 ("pkg-config" ,pkg-config)))
4093 (inputs
4094 `(("glib" ,glib)
4095 ("gtk+" ,gtk+)
4096 ("gtksourceview" ,gtksourceview)
4097 ("libpeas" ,libpeas)
4098 ("libxml2" ,libxml2)
329d731b
DH
4099 ("iso-codes" ,iso-codes)
4100 ("python-pygobject" ,python-pygobject)
4101 ("python" ,python)
4102 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4103 ("libx11" ,libx11)
4104 ("vala" ,vala)
4105 ("adwaita-icon-theme" ,adwaita-icon-theme)
4106 ("libsoup" ,libsoup)
4107 ("gnome-desktop" ,gnome-desktop)))
4108 (home-page "https://wiki.gnome.org/Apps/Gedit")
4109 (synopsis "GNOME text editor")
4110 (description "While aiming at simplicity and ease of use, gedit is a
4111powerful general purpose text editor.")
4112 (license license:gpl2+)))
b7179363
SB
4113
4114(define-public zenity
4115 (package
4116 (name "zenity")
6983ba56 4117 (version "3.20.0")
b7179363
SB
4118 (source (origin
4119 (method url-fetch)
4120 (uri (string-append "mirror://gnome/sources/" name "/"
4121 (version-major+minor version) "/"
4122 name "-" version ".tar.xz"))
4123 (sha256
4124 (base32
6983ba56 4125 "0j2sy6imwp41l75hy3fwr68n35drvanbwgmr42kc04zqjy9pbs02"))))
b7179363
SB
4126 (build-system gnu-build-system)
4127 (native-inputs
4128 `(("gettext" ,gnu-gettext)
4129 ("itstool" ,itstool)
4130 ("pkg-config" ,pkg-config)))
4131 (inputs
4132 `(("libnotify" ,libnotify)
4133 ("webkitgtk" ,webkitgtk)))
4134 (synopsis "Display graphical dialog boxes from shell scripts")
4135 (home-page "http://www.gnome.org")
4136 (description
4137 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
4138to display dialog boxes from the commandline and shell scripts.")
4139 (license license:lgpl2.0+)))
60c3627c
SB
4140
4141(define-public mutter
4142 (package
4143 (name "mutter")
4a8573ad 4144 (version "3.20.1")
60c3627c
SB
4145 (source (origin
4146 (method url-fetch)
4147 (uri (string-append "mirror://gnome/sources/" name "/"
4148 (version-major+minor version) "/"
4149 name "-" version ".tar.xz"))
4150 (sha256
4151 (base32
4a8573ad 4152 "0752vkkmaaay8ziczqrf7z3735bq3brx2djw36arqsdhwawh6jba"))))
60c3627c
SB
4153 (build-system gnu-build-system)
4154 (arguments
4155 '(#:configure-flags
4156 ;; XXX: build fails with [-Werror]:
4157 ;; backends/meta-cursor-renderer.c:112:5: error:
4158 ;; implicit declaration of function ?roundf?
4159 '("--enable-compile-warnings=minimum")))
4160 (native-inputs
4161 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4162 ("gobject-introspection" ,gobject-introspection)
4163 ("intltool" ,intltool)
4164 ("pkg-config" ,pkg-config)))
4165 (propagated-inputs
4166 ;; libmutter.pc refers to all these.
4167 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4168 ("gtk+" ,gtk+)
4169 ("clutter" ,clutter)))
4170 (inputs
4171 `(("gnome-desktop" ,gnome-desktop)
4172 ("libcanberra-gtk" ,libcanberra)
4173 ("libice" ,libice)
4174 ("libsm" ,libsm)
4175 ("libxkbcommon" ,libxkbcommon)
4176 ("libxkbfile" ,libxkbfile)
4177 ("mesa-headers" ,mesa-headers)
4178 ("startup-notification" ,startup-notification)
4179 ("upower-glib" ,upower)
4180 ("xkeyboard-config" ,xkeyboard-config)
4181 ("zenity" ,zenity)))
4182 (synopsis "Window and compositing manager")
4183 (home-page "http://www.gnome.org")
4184 (description
4185 "Mutter is a window and compositing manager that displays and manages your
4186desktop via OpenGL. Mutter combines a sophisticated display engine using the
4187Clutter toolkit with solid window-management logic inherited from the Metacity
4188window manager.")
4189 (license license:gpl2+)))
685cee87
SB
4190
4191(define-public gnome-online-accounts
4192 (package
4193 (name "gnome-online-accounts")
223f5d5d 4194 (version "3.20.1")
685cee87
SB
4195 (source (origin
4196 (method url-fetch)
4197 (uri (string-append "mirror://gnome/sources/" name "/"
4198 (version-major+minor version) "/"
4199 name "-" version ".tar.xz"))
4200 (sha256
4201 (base32
223f5d5d 4202 "14qcih1g136sn2aklzagv83jl82d3qc598rkdm8zac9gw70ynyn3"))))
685cee87
SB
4203 (build-system glib-or-gtk-build-system)
4204 (native-inputs
4205 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4206 ("gobject-introspection" ,gobject-introspection)
4207 ("intltool" ,intltool)
4208 ("pkg-config" ,pkg-config)
4209 ("xsltproc" ,libxslt)))
4210 (propagated-inputs
4211 `(("glib" ,glib) ; required by goa-1.0.pc
4212 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
4213 (inputs
4214 `(("docbook-xsl" ,docbook-xsl)
4215 ("json-glib" ,json-glib)
4216 ("libsecret" ,libsecret)
4217 ("rest" ,rest)
4218 ("telepathy-glib" ,telepathy-glib)
4219 ("webkitgtk" ,webkitgtk)))
4220 (synopsis "Single sign-on framework for GNOME")
4221 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
4222 (description
4223 "GNOME Online Accounts provides interfaces so that applications and
4224libraries in GNOME can access the user's online accounts. It has providers for
4225Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
4226Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
4227 (license license:lgpl2.0+)))
df217748
SB
4228
4229(define-public evolution-data-server
4230 (package
4231 (name "evolution-data-server")
c1387d36 4232 (version "3.20.1")
df217748
SB
4233 (source (origin
4234 (method url-fetch)
4235 (uri (string-append "mirror://gnome/sources/" name "/"
4236 (version-major+minor version) "/"
4237 name "-" version ".tar.xz"))
4238 (sha256
4239 (base32
c1387d36 4240 "0lsbhzacr2bs90z8sx44vf403r0h2yqsy4l2svrh5hjnassgdyqx"))))
df217748
SB
4241 (build-system gnu-build-system)
4242 (arguments
4243 '(;; XXX: fails with:
4244 ;; /Fixture/Calendar0: cleaning up pid xxxx
4245 ;; t status: 139)
4246 #:tests? #f
4247 #:configure-flags
4248 (let ((nss (assoc-ref %build-inputs "nss"))
4249 (nspr (assoc-ref %build-inputs "nspr")))
4250 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
4251 "--disable-google" ; disable Google Contacts support
c1387d36 4252 "--disable-google-auth" ; disable Google authentication
a73c1cf8 4253 "--enable-vala-bindings"
df217748
SB
4254 (string-append "--with-nspr-includes=" nspr "/include/nspr")
4255 (string-append "--with-nss-includes=" nss "/include/nss")
4256 (string-append "--with-nss-libs=" nss "/lib/nss")))
4257 #:phases
4258 (modify-phases %standard-phases
4259 (add-before 'check 'pre-check
4260 (lambda _
4261 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4262 (("/bin/rm") (which "rm")))
4263 #t)))))
4264 (native-inputs
4265 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4266 ("gobject-introspection" ,gobject-introspection)
4267 ("gperf" ,gperf)
4268 ("intltool" ,intltool)
4269 ("pkg-config" ,pkg-config)
a73c1cf8 4270 ("vala" ,vala)
df217748
SB
4271 ("python" ,python)))
4272 (propagated-inputs
4273 ;; These are all in the Requires field of .pc files.
4274 `(("gtk+" ,gtk+)
4275 ("libical" ,libical)
4276 ("libsecret" ,libsecret)
4277 ("libsoup" ,libsoup)
4278 ("nss" ,nss)
4279 ("sqlite" ,sqlite)))
4280 (inputs
4281 `(("bdb" ,bdb)
4282 ("gcr" ,gcr)
4283 ("gnome-online-accounts" ,gnome-online-accounts)
4284 ("libgweather" ,libgweather)))
4285 (synopsis "Store address books and calendars")
4286 (home-page "https://wiki.gnome.org/Apps/Evolution")
4287 (description
4288 "This package provides a unified backend for programs that work with
4289contacts, tasks, and calendar information. It was originally developed for
4290Evolution (hence the name), but is now used by other packages as well.")
4291 (license license:lgpl2.0)))
bd7dfafa
SB
4292
4293(define-public caribou
4294 (package
4295 (name "caribou")
6983ba56 4296 (version "0.4.20")
bd7dfafa
SB
4297 (source (origin
4298 (method url-fetch)
4299 (uri (string-append "mirror://gnome/sources/" name "/"
4300 (version-major+minor version) "/"
4301 name "-" version ".tar.xz"))
4302 (sha256
4303 (base32
6983ba56 4304 "1nahpfs5ap9f9wsvn93kg8isqffk60v785f1q6k64awcd7an8ris"))))
bd7dfafa
SB
4305 (build-system glib-or-gtk-build-system)
4306 (arguments
4307 '(#:phases
4308 (modify-phases %standard-phases
4309 (add-before
4310 'build 'pre-build
4311 (lambda* (#:key outputs #:allow-other-keys)
4312 (let ((out (assoc-ref outputs "out")))
4313 ;; Use absolute shared library path in Caribou-1.0.typelib.
4314 (substitute* "libcaribou/Makefile"
4315 (("--shared-library=libcaribou.so")
4316 (string-append "--shared-library="
4317 out "/lib/libcaribou.so")))
4318 #t)))
4319 (add-after 'install 'wrap-programs
4320 (lambda* (#:key outputs #:allow-other-keys)
4321 (let* ((out (assoc-ref outputs "out"))
4322 (python-path (getenv "PYTHONPATH"))
4323 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4324 (for-each
4325 (lambda (prog)
4326 (wrap-program prog
4327 `("PYTHONPATH" ":" prefix (,python-path))
4328 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4329 (list (string-append out "/bin/caribou-preferences")
4330 (string-append out "/libexec/antler-keyboard"))))
4331 #t)))))
4332 (native-inputs
4333 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4334 ("gobject-introspection" ,gobject-introspection)
4335 ("intltool" ,intltool)
4336 ("pkg-config" ,pkg-config)
4337 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4338 ("vala" ,vala)
4339 ("xsltproc" ,libxslt)))
4340 (propagated-inputs
4341 ;; caribou-1.0.pc refers to all these.
4342 `(("libgee" ,libgee)
4343 ("libxklavier" ,libxklavier)
4344 ("libxtst" ,libxtst)
4345 ("gtk+" ,gtk+)))
4346 (inputs
4347 `(("clutter" ,clutter)
4348 ("dconf" ,dconf)
4349 ("gtk+-2" ,gtk+-2)
4350 ("python-pygobject" ,python2-pygobject)))
4351 (synopsis "Text entry and UI navigation application")
4352 (home-page "https://wiki.gnome.org/Projects/Caribou")
4353 (description
4354 "Caribou is an input assistive technology intended for switch and pointer
4355users.")
4356 (license license:lgpl2.1)))
ba5dd105 4357
ba5dd105
SB
4358(define-public network-manager
4359 (package
4360 (name "network-manager")
142bdcbc 4361 (version "1.2.0")
ba5dd105
SB
4362 (source (origin
4363 (method url-fetch)
4364 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4365 (version-major+minor version) "/"
4366 "NetworkManager-" version ".tar.xz"))
4367 (sha256
4368 (base32
142bdcbc 4369 "101axwk3bc1pm9m98vwrnxyjna6w0qgzaskgivldq69xz8qcyiz9"))))
ba5dd105
SB
4370 (build-system gnu-build-system)
4371 (outputs '("out"
4372 "doc")) ; 8 MiB of gtk-doc HTML
4373 (arguments
4374 '(#:configure-flags
4375 (let ((out (assoc-ref %outputs "out"))
4376 (doc (assoc-ref %outputs "doc"))
4377 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4378 "/sbin/dhclient")))
4379 (list "--with-crypto=gnutls"
4380 "--disable-config-plugin-ibft"
4381 "--sysconfdir=/etc"
4382 "--localstatedir=/var"
4383 (string-append "--with-udev-dir="
4384 out "/lib/udev")
4385 (string-append "--with-dbus-sys-dir="
4386 out "/etc/dbus-1/system.d")
4387 (string-append "--with-html-dir="
4388 doc "/share/gtk-doc/html")
4389 (string-append "--with-dhclient=" dhclient)))
4390 #:phases
4391 (modify-phases %standard-phases
b4f59d87
AW
4392 (add-before 'configure 'pre-configure
4393 (lambda _
4394 ;; These tests try to test aspects of network-manager's
4395 ;; functionality within restricted containers, but they don't
4396 ;; cope with being already in the Guix build jail as that jail
4397 ;; lacks some features that they would like to proxy over (like
4398 ;; a /sys mount).
142bdcbc
SB
4399 (substitute* '("src/platform/Makefile.in"
4400 "src/devices/Makefile.in")
b4f59d87
AW
4401 (("SUBDIRS = tests") ""))
4402 (substitute* '("src/tests/Makefile.in")
4403 (("\ttest-route-manager-linux") "\t")
4404 (("\ttest-route-manager-fake") "\t"))
4405 #t))
ba5dd105
SB
4406 (add-before 'check 'pre-check
4407 (lambda _
4408 ;; For the missing /etc/machine-id.
4409 (setenv "DBUS_FATAL_WARNINGS" "0")
4410 #t))
4411 (replace 'install
4412 (lambda _
4413 (zero? (system* "make"
4414 "sysconfdir=/tmp"
142bdcbc
SB
4415 "rundir=/tmp"
4416 "statedir=/tmp"
ba5dd105
SB
4417 "install")))))))
4418 (native-inputs
4419 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4420 ("gobject-introspection" ,gobject-introspection)
4421 ("intltool" ,intltool)
4422 ("pkg-config" ,pkg-config)
4423 ;; For testing.
4424 ("python" ,python-wrapper)
4425 ("python-dbus" ,python-dbus)
4426 ("python-pygobject" ,python-pygobject)))
4427 (inputs
4428 `(("dbus-glib" ,dbus-glib)
4429 ("dnsmasq" ,dnsmasq)
4430 ("gnutls" ,gnutls)
4431 ("iptables" ,iptables)
4432 ("isc-dhcp" ,isc-dhcp)
4433 ("libgcrypt" ,libgcrypt)
4434 ("libgudev" ,libgudev)
4435 ("libndp" ,libndp)
4436 ("libnl" ,libnl)
4437 ("libsoup" ,libsoup)
142bdcbc 4438 ("modem-manager" ,modem-manager)
ba5dd105
SB
4439 ("polkit" ,polkit)
4440 ("ppp" ,ppp)
4441 ("readline" ,readline)
4442 ("util-linux" ,util-linux)))
4443 (synopsis "Network connection manager")
4444 (home-page "http://www.gnome.org/projects/NetworkManager/")
4445 (description
4446 "NetworkManager is a system network service that manages your network
4447devices and connections, attempting to keep active network connectivity when
4448available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4449devices, and provides VPN integration with a variety of different VPN
4450services.")
4451 (license license:gpl2+)))
4d62a9d3
SB
4452
4453(define-public network-manager-applet
4454 (package
4455 (name "network-manager-applet")
bbbb77e4 4456 (version "1.2.0")
4d62a9d3
SB
4457 (source (origin
4458 (method url-fetch)
4459 (uri (string-append "mirror://gnome/sources/" name "/"
4460 (version-major+minor version) "/"
4461 name "-" version ".tar.xz"))
4462 (sha256
4463 (base32
bbbb77e4 4464 "0dhvk3dvy6djn6blpkv46dn6yfh28wsh6mpl0v53qxfip97j8kwk"))))
4d62a9d3
SB
4465 (build-system glib-or-gtk-build-system)
4466 (arguments '(#:configure-flags '("--disable-migration")))
4467 (native-inputs
4468 `(("intltool" ,intltool)
4469 ("gobject-introspection" ,gobject-introspection)
4470 ("pkg-config" ,pkg-config)))
4471 (propagated-inputs
4472 ;; libnm-gtk.pc refers to all these.
4473 `(("dbus-glib" ,dbus-glib)
4474 ("gtk+" ,gtk+)
4475 ("network-manager" ,network-manager)))
4476 (inputs
4477 `(("iso-codes" ,iso-codes)
4478 ("libgudev" ,libgudev)
4479 ("libnotify" ,libnotify)
4480 ("libsecret" ,libsecret)))
4481 (synopsis "Applet for managing network connections")
4482 (home-page "http://www.gnome.org/projects/NetworkManager/")
4483 (description
4484 "This package contains a systray applet for NetworkManager. It displays
4485the available networks and allows users to easily switch between them.")
4486 (license license:gpl2+)))
56196594
RW
4487
4488(define-public libxml++
4489 (package
4490 (name "libxml++")
f5821956 4491 (version "3.0.0")
56196594
RW
4492 (source (origin
4493 (method url-fetch)
4494 (uri (string-append "mirror://gnome/sources/" name "/"
4495 (version-major+minor version) "/"
4496 name "-" version ".tar.xz"))
4497 (sha256
4498 (base32
f5821956 4499 "0lkrajbdys5f6w6qwfijih3hnbk4c6809qx2mmxkb7bj2w269wrg"))))
56196594
RW
4500 (build-system gnu-build-system)
4501 ;; libxml++-3.0.pc refers to all these.
4502 (propagated-inputs
4503 `(("libxml2" ,libxml2)
4504 ("glibmm" ,glibmm)))
4505 (native-inputs
4506 `(("perl" ,perl)
4507 ("pkg-config" ,pkg-config)))
4508 (home-page "http://libxmlplusplus.sourceforge.net/")
4509 (synopsis "C++ wrapper for XML parser library libxml2")
4510 (description
4511 "This package provides a C++ wrapper for the XML parser library
4512libxml2.")
4513 (license license:lgpl2.1+)))
df12f04a
SB
4514
4515(define-public gdm
4516 (package
4517 (name "gdm")
906943df 4518 (version "3.20.1")
df12f04a
SB
4519 (source (origin
4520 (method url-fetch)
4521 (uri (string-append "mirror://gnome/sources/" name "/"
4522 (version-major+minor version) "/"
4523 name "-" version ".tar.xz"))
4524 (sha256
4525 (base32
906943df 4526 "17vqcnqnwx7s5xzgn358gsgbmpz7k90sh1qrwrh3wnj5r0pm38hh"))))
df12f04a
SB
4527 (build-system gnu-build-system)
4528 (arguments
4529 '(#:configure-flags
4530 '("--without-plymouth")
4531 #:phases
4532 (modify-phases %standard-phases
4533 (add-before
4534 'configure 'pre-configure
4535 (lambda _
4536 ;; We don't have <systemd/sd-daemon.h>.
4537 (substitute* '("common/gdm-log.c"
4538 "daemon/gdm-server.c"
4539 "daemon/gdm-session-worker.c"
4540 "daemon/gdm-session-worker-job.c")
4541 (("#include <systemd/sd-daemon\\.h>") ""))
4542 ;; Use elogind for sd-login.
4543 (substitute* '("common/gdm-common.c"
4544 "daemon/gdm-manager.c"
4545 "libgdm/gdm-user-switching.c")
4546 (("#include <systemd/sd-login\\.h>")
4547 "#include <elogind/sd-login.h>"))
4548 ;; Avoid checking SYSTEMD using pkg-config.
4549 (setenv "SYSTEMD_CFLAGS" " ")
4550 (setenv "SYSTEMD_LIBS" "-lelogind")
4551 #t)))))
4552 (native-inputs
4553 `(("dconf" ,dconf)
4554 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4555 ("gobject-introspection" ,gobject-introspection)
4556 ("intltool" ,intltool)
4557 ("itstool" ,itstool)
4558 ("pkg-config" ,pkg-config)
4559 ("xmllint" ,libxml2)))
4560 (inputs
4561 `(("accountsservice" ,accountsservice)
4562 ("check" ,check) ; for testing
4563 ("elogind" ,elogind)
4564 ("gtk+" ,gtk+)
4565 ("iso-codes" ,iso-codes)
4566 ("libcanberra" ,libcanberra)
4567 ("linux-pam" ,linux-pam)))
4568 (synopsis "Display manager for GNOME")
4569 (home-page "http://wiki.gnome.org/Projects/GDM/")
4570 (description
4571 "GNOME Display Manager is a system service that is responsible for
4572providing graphical log-ins and managing local and remote displays.")
4573 (license license:gpl2+)))
8e1dd04f
SB
4574
4575(define-public libgtop
4576 (package
4577 (name "libgtop")
6983ba56 4578 (version "2.34.0")
8e1dd04f
SB
4579 (source (origin
4580 (method url-fetch)
4581 (uri (string-append "mirror://gnome/sources/" name "/"
4582 (version-major+minor version) "/"
4583 name "-" version ".tar.xz"))
4584 (sha256
4585 (base32
6983ba56 4586 "0apfnh9k6vmbdm8ms5wxyhagrrl8r88fv48k7q5qq70df2gf72ld"))))
8e1dd04f
SB
4587 (build-system gnu-build-system)
4588 (native-inputs
4589 `(("gobject-introspection" ,gobject-introspection)
4590 ("intltool" ,intltool)
4591 ("perl" ,perl)
4592 ("pkg-config" ,pkg-config)))
4593 (propagated-inputs
4594 `(("glib" ,glib))) ; required by libgtop-2.0.pc
4595 (synopsis "Portable system access library")
4596 (home-page "https://www.gnome.org/")
4597 (description
4598 "LibGTop is a library to get system specific data such as CPU and memory
4599usage and information about running processes.")
4600 (license license:gpl2+)))
b96c4260
SB
4601
4602(define-public gnome-bluetooth
4603 (package
4604 (name "gnome-bluetooth")
6983ba56 4605 (version "3.18.3")
b96c4260
SB
4606 (source (origin
4607 (method url-fetch)
4608 (uri (string-append "mirror://gnome/sources/" name "/"
4609 (version-major+minor version) "/"
4610 name "-" version ".tar.xz"))
4611 (sha256
4612 (base32
6983ba56 4613 "1qwc9q7x22sc71zhqv4db78rqzxl6fqfw6d978ydqap54c2bg0g4"))))
b96c4260
SB
4614 (build-system glib-or-gtk-build-system)
4615 (native-inputs
4616 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
4617 ("gobject-introspection" ,gobject-introspection)
4618 ("intltool" ,intltool)
4619 ("pkg-config" ,pkg-config)
4620 ("xmllint" ,libxml2)))
4621 (propagated-inputs
4622 ;; gnome-bluetooth-1.0.pc refers to all these.
4623 `(("gtk+" ,gtk+)
4624 ("udev" ,eudev)))
4625 (inputs
4626 `(("libcanberra" ,libcanberra)
4627 ("libnotify" ,libnotify)))
4628 (synopsis "GNOME Bluetooth subsystem")
4629 (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth")
4630 (description
4631 "This package contains tools for managing and manipulating Bluetooth
4632devices using the GNOME desktop.")
4633 (license license:lgpl2.1+)))
b645146f
SB
4634
4635(define-public gnome-control-center
4636 (package
4637 (name "gnome-control-center")
8b6b7c73 4638 (version "3.20.1")
b645146f
SB
4639 (source (origin
4640 (method url-fetch)
4641 (uri (string-append "mirror://gnome/sources/" name "/"
4642 (version-major+minor version) "/"
4643 name "-" version ".tar.xz"))
4644 (sha256
4645 (base32
8b6b7c73 4646 "1vd1h31vwyq7ss5f1151gx1vdsy35sjmapjmmz7x73ppc3y78r6f"))))
b645146f
SB
4647 (build-system glib-or-gtk-build-system)
4648 (arguments
4649 '(#:phases
4650 (modify-phases %standard-phases
4651 (add-before 'configure 'patch-paths
4652 (lambda* (#:key inputs #:allow-other-keys)
4653 (let ((libc (assoc-ref inputs "libc"))
4654 (tzdata (assoc-ref inputs "tzdata")))
4655 (substitute* "panels/datetime/tz.h"
4656 (("/usr/share/zoneinfo/zone.tab")
4657 (string-append tzdata "/share/zoneinfo/zone.tab")))
4658 (substitute* "panels/datetime/test-endianess.c"
4659 (("/usr/share/locale")
4660 (string-append libc "/share/locale")))
4661 #t))))))
4662 (native-inputs
4663 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4664 ("intltool" ,intltool)
4665 ("pkg-config" ,pkg-config)
4666 ("xsltproc" ,libxslt)))
4667 (inputs
4668 `(("accountsservice" ,accountsservice)
4669 ("clutter-gtk" ,clutter-gtk)
4670 ("colord-gtk" ,colord-gtk)
4671 ("cups" ,cups)
4672 ("dconf" ,dconf)
4673 ("docbook-xsl" ,docbook-xsl)
4674 ("gnome-bluetooth" ,gnome-bluetooth)
4675 ("gnome-desktop" ,gnome-desktop)
4676 ("gnome-online-accounts" ,gnome-online-accounts)
4677 ("gnome-settings-daemon" ,gnome-settings-daemon)
4678 ("grilo" ,grilo)
4679 ("ibus" ,ibus)
4680 ("libcanberra" ,libcanberra)
4681 ("libgudev" ,libgudev)
4682 ("libgtop" ,libgtop)
4683 ("libpwquality" ,libpwquality)
4684 ("libsoup" ,libsoup)
4685 ("libxml2" ,libxml2)
4686 ("libwacom" ,libwacom)
4687 ("mesa" ,mesa)
4688 ("mit-krb5" ,mit-krb5)
4689 ("modem-manager" ,modem-manager)
4690 ("network-manager-applet" ,network-manager-applet)
4691 ("polkit" ,polkit)
4692 ("pulseaudio" ,pulseaudio)
4693 ("smbclient" ,samba)
4694 ("tzdata" ,tzdata)
4695 ("upower" ,upower)))
4696 (synopsis "Utilities to configure the GNOME desktop")
4697 (home-page "https://www.gnome.org/")
4698 (description
4699 "This package contains configuration applets for the GNOME desktop,
4700allowing to set accessibility configuration, desktop fonts, keyboard and mouse
4701properties, sound setup, desktop theme and background, user interface
4702properties, screen resolution, and other GNOME parameters.")
4703 (license license:gpl2+)))
a4df5756
SB
4704
4705(define-public gnome-shell
4706 (package
4707 (name "gnome-shell")
82ab7647 4708 (version "3.20.1")
a4df5756
SB
4709 (source (origin
4710 (method url-fetch)
4711 (uri (string-append "mirror://gnome/sources/" name "/"
4712 (version-major+minor version) "/"
4713 name "-" version ".tar.xz"))
4714 (sha256
4715 (base32
82ab7647 4716 "08cgbr15cim3rgcngrv98rm48pkdxwj4nqx5za1lsnv376m4x5bs"))))
a4df5756
SB
4717 (build-system glib-or-gtk-build-system)
4718 (arguments
4719 '(#:phases
4720 (modify-phases %standard-phases
4721 (replace 'install
4722 (lambda* (#:key outputs #:allow-other-keys)
4723 (let* ((out (assoc-ref outputs "out"))
4724 (keysdir (string-append
4725 out "/share/gnome-control-center/keybindings")))
4726 (zero? (system* "make"
4727 (string-append "keysdir=" keysdir)
4728 "install")))))
4729 (add-after
4730 'install 'wrap-programs
4731 (lambda* (#:key outputs #:allow-other-keys)
4732 (let ((out (assoc-ref outputs "out"))
4733 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4734 (python-path (getenv "PYTHONPATH")))
4735 (wrap-program (string-append out "/bin/gnome-shell")
4736 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
4737 (for-each
4738 (lambda (prog)
4739 (wrap-program (string-append out "/bin/" prog)
4740 `("PYTHONPATH" ":" prefix (,python-path))
4741 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4742 '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
4743 #t))))))
4744 (native-inputs
4745 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4746 ("gobject-introspection" ,gobject-introspection)
4747 ("intltool" ,intltool)
4748 ("pkg-config" ,pkg-config)
4749 ("python" ,python)
4750 ("xsltproc" ,libxslt)))
4751 (inputs
4752 `(("accountsservice" ,accountsservice)
4753 ("caribou" ,caribou)
4754 ("docbook-xsl" ,docbook-xsl)
4755 ("evolution-data-server" ,evolution-data-server)
4756 ("gcr" ,gcr)
4757 ("gdm" ,gdm)
4758 ("gjs" ,gjs)
4759 ("gnome-bluetooth" ,gnome-bluetooth)
4760 ("gnome-control-center" ,gnome-control-center)
4761 ("gnome-desktop" ,gnome-desktop)
4762 ("gnome-settings-daemon" ,gnome-settings-daemon)
4763 ("gst-plugins-base" ,gst-plugins-base)
4764 ("ibus" ,ibus)
4765 ("libcanberra" ,libcanberra)
4766 ("libcroco" ,libcroco)
4767 ("libgweather" ,libgweather)
4768 ("libsoup" ,libsoup)
4769 ("mesa-headers" ,mesa-headers)
4770 ("mutter" ,mutter)
4771 ("network-manager-applet" ,network-manager-applet)
4772 ("polkit" ,polkit)
4773 ("pulseaudio" ,pulseaudio)
4774 ("python-pygobject" ,python-pygobject)
4775 ("startup-notification" ,startup-notification)
4776 ("telepathy-logger" ,telepathy-logger)
4777 ("upower" ,upower)
4778 ;; XXX: required by libgjs.la.
4779 ("readline" ,readline)))
4780 (synopsis "Desktop shell for GNOME")
4781 (home-page "https://wiki.gnome.org/Projects/GnomeShell")
4782 (description
4783 "GNOME Shell provides core user interface functions for the GNOME desktop,
4784like switching to windows and launching applications.")
4785 (license license:gpl2+)))
c3f29bc9
RS
4786
4787(define-public gtk-vnc
4788 (package
4789 (name "gtk-vnc")
4790 (version "0.5.4")
4791 (source
4792 (origin
4793 (method url-fetch)
4794 (uri (string-append "mirror://gnome/sources/" name "/"
4795 (version-major+minor version) "/"
4796 name "-" version ".tar.xz"))
4797 (sha256
4798 (base32
4799 "1rwwdh7lb16xdmy76ca6mpqfc3zfl3a4bkcr0qb6hs6ffrxak2j8"))))
4800 (build-system gnu-build-system)
4801 (arguments
4802 '(#:configure-flags '("--with-gtk=3.0")))
4803 (propagated-inputs
4804 `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc.
4805 (inputs
4806 `(("cyrus-sasl" ,cyrus-sasl)
4807 ("gnutls" ,gnutls)
4808 ("libgcrypt" ,libgcrypt)
4809 ("pulseaudio" ,pulseaudio)))
4810 (native-inputs
4811 `(("glib:bin" ,glib "bin")
4812 ("gobject-introspection" ,gobject-introspection)
4813 ("intltool" ,intltool)
4814 ("pkg-config" ,pkg-config)
4815 ("vala" ,vala)))
4816 (home-page "https://wiki.gnome.org/Projects/gtk-vnc")
4817 (synopsis "VNC viewer widget for GTK+")
4818 (description
4819 "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing
4820applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.
4821GTK-VNC implements client side RFB protocol and authentication extensions such
4822as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.")
4823 (license license:lgpl2.1+)))
8b877545
RS
4824
4825(define-public nautilus
4826 (package
4827 (name "nautilus")
a829a053 4828 (version "3.20.1")
8b877545
RS
4829 (source (origin
4830 (method url-fetch)
4831 (uri (string-append "mirror://gnome/sources/" name "/"
4832 (version-major+minor version) "/"
4833 name "-" version ".tar.xz"))
4834 (sha256
4835 (base32
a829a053 4836 "1s41bsihacs7cywm60vqgv46m22gmga4b0bwxnki4r02jjwhgagj"))))
8b877545
RS
4837 (build-system glib-or-gtk-build-system)
4838 (arguments
6983ba56
SB
4839 '(#:configure-flags
4840 '("--disable-tracker" "--disable-selinux") ; XXX: not packaged
8b877545
RS
4841 ;; XXX: FAIL: check-nautilus
4842 ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
4843 #:tests? #f))
4844 (native-inputs
4845 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4846 ("gobject-introspection" ,gobject-introspection)
4847 ("intltool" ,intltool)
4848 ("pkg-config" ,pkg-config)))
8b877545
RS
4849 (inputs
4850 ;; TODO: add gvfs support.
4851 `(("dconf" ,dconf)
4852 ("exempi" ,exempi)
4853 ("gnome-desktop" ,gnome-desktop)
ce6027bf
SB
4854 ;; XXX: gtk+ is required by libnautilus-extension.pc
4855 ;;
4856 ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
4857 ;; package. See:
4858 ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
4859 ("gtk+" ,gtk+)
8b877545
RS
4860 ("libexif" ,libexif)
4861 ("libxml2" ,libxml2)))
4862 (synopsis "File manager for GNOME")
4863 (home-page "https://wiki.gnome.org/Apps/Nautilus")
4864 (description
4865 "Nautilus (Files) is a file manager designed to fit the GNOME desktop
4866design and behaviour, giving the user a simple way to navigate and manage its
4867files.")
4868 (license license:gpl2+)))
3c697ffd
JR
4869
4870(define-public baobab
4871 (package
4872 (name "baobab")
758da0fe 4873 (version "3.20.1")
3c697ffd
JR
4874 (source (origin
4875 (method url-fetch)
4876 (uri (string-append
4877 "mirror://gnome/sources/" name "/"
4878 (version-major+minor version) "/"
4879 name "-" version ".tar.xz"))
4880 (sha256
4881 (base32
758da0fe 4882 "07wx4jb3nmipd4caybv21hl8h0gb282qc5a24b731mxhfqmg3pz9"))))
3c697ffd
JR
4883 (build-system glib-or-gtk-build-system)
4884 (native-inputs
4885 `(("intltool" ,intltool)
4886 ("pkg-config" ,pkg-config)
4887 ("itstool" ,itstool)
4888 ("xmllint" ,libxml2)
4889 ("glib" ,glib "bin")
4890 ("vala" ,vala)))
4891 (inputs
4892 `(("gtk+" ,gtk+)))
4893 (synopsis "Disk usage analyzer for GNOME")
4894 (description
4895 "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk
4896usage in the GNOME desktop environment. It can easily scan device volumes or
4897a specific user-requested directory branch (local or remote). Once the scan
4898is complete it provides a graphical representation of each selected folder.")
4899 (home-page "https://wiki.gnome.org/Apps/Baobab")
4900 (license license:gpl2+)))
dc050251 4901
fdba447c
RS
4902(define-public gnome-backgrounds
4903 (package
4904 (name "gnome-backgrounds")
6983ba56 4905 (version "3.20")
fdba447c
RS
4906 (source
4907 (origin
4908 (method url-fetch)
4909 (uri (string-append "mirror://gnome/sources/" name "/"
4910 (version-major+minor version) "/"
4911 name "-" version ".tar.xz"))
4912 (sha256
4913 (base32
6983ba56 4914 "09viag7q53lfwrp074a1w7j0r8izlwpi10xbwjgbf5jwbqb6wv6n"))))
fdba447c
RS
4915 (build-system glib-or-gtk-build-system)
4916 (native-inputs
4917 `(("intltool" ,intltool)))
4918 (home-page "https://git.gnome.org/browse/gnome-backgrounds")
4919 (synopsis "Background images for the GNOME desktop")
4920 (description
4921 "GNOME backgrounds package contains a collection of graphics files which
4922can be used as backgrounds in the GNOME Desktop environment. Additionally,
4923the package creates the proper framework and directory structure so that you
4924can add your own files to the collection.")
4925 (license (list license:gpl2+
4926 license:cc-by2.0
4927 license:cc-by-sa2.0
4928 license:cc-by-sa3.0))))
4929
b784b1a9
RS
4930(define-public gnome-screenshot
4931 (package
4932 (name "gnome-screenshot")
4933 (version "3.18.0")
4934 (source
4935 (origin
4936 (method url-fetch)
4937 (uri (string-append "mirror://gnome/sources/" name "/"
4938 (version-major+minor version) "/"
4939 name "-" version ".tar.xz"))
4940 (sha256
4941 (base32
4942 "0hc8m435q7yzvrw7jpi53kaxpmrd9w59sm7c5wibh2ng9azlv9pb"))))
4943 (build-system glib-or-gtk-build-system)
4944 (native-inputs
4945 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4946 ("intltool" ,intltool)
4947 ("pkg-config" ,pkg-config)))
4948 (inputs
4949 `(("gtk+" ,gtk+)
4950 ("libcanberra" ,libcanberra)
4951 ("libx11" ,libx11)
4952 ("libxext" ,libxext)))
4953 (home-page "https://git.gnome.org/browse/gnome-screenshot")
4954 (synopsis "Take pictures of your screen")
4955 (description
4956 "GNOME Screenshot is a utility used for taking screenshots of the entire
4957screen, a window or a user defined area of the screen, with optional
4958beautifying border effects.")
4959 (license license:gpl2+)))
4960
66d59111
RS
4961(define-public dconf-editor
4962 (package
4963 (name "dconf-editor")
0ddba707 4964 (version "3.20.1")
66d59111
RS
4965 (source
4966 (origin
4967 (method url-fetch)
4968 (uri (string-append "mirror://gnome/sources/" name "/"
4969 (version-major+minor version) "/"
4970 name "-" version ".tar.xz"))
4971 (sha256
4972 (base32
0ddba707 4973 "0pfpmvpv57a01nsd1fah3np33avihm5ic43fi6b60dyw6c5z953p"))))
66d59111
RS
4974 (build-system glib-or-gtk-build-system)
4975 (native-inputs
4976 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
4977 ("intltool" ,intltool)
4978 ("pkg-config" ,pkg-config)))
4979 (inputs
4980 `(("dconf" ,dconf)
4981 ("gtk+" ,gtk+)
4982 ("libxml2" ,libxml2)))
4983 (home-page "https://git.gnome.org/browse/dconf-editor")
4984 (synopsis "Graphical editor for GNOME's dconf configuration system")
4985 (description
4986 "Dconf-editor is a graphical tool for browsing and editing the dconf
4987configuration system for GNOME. It allows users to configure desktop
4988software that do not provide their own configuration interface.")
4989 (license license:lgpl2.1+)))
4990
dc050251
SB
4991(define-public gnome
4992 (package
4993 (name "gnome")
4994 (version (package-version gnome-shell))
4995 (source #f)
4996 (build-system trivial-build-system)
4997 (arguments '(#:builder (mkdir %output)))
4998 (propagated-inputs
4999 ;; TODO: Add more packages according to:
5000 ;; <https://packages.debian.org/jessie/gnome-core>.
5001 `(("adwaita-icon-theme" ,adwaita-icon-theme)
05f651c4 5002 ("baobab" ,baobab)
0bd3597b 5003 ("font-cantarell" ,font-cantarell)
dc050251
SB
5004 ("at-spi2-core" ,at-spi2-core)
5005 ("dbus" ,dbus)
5006 ("dconf" ,dconf)
72360453 5007 ("desktop-file-utils" ,desktop-file-utils)
dc050251
SB
5008 ("eog" ,eog)
5009 ("epiphany" ,epiphany)
5010 ("evince" ,evince)
5011 ("gedit" ,gedit)
5012 ("glib-networking" ,glib-networking)
05f651c4 5013 ("gnome-backgrounds" ,gnome-backgrounds)
dc050251
SB
5014 ("gnome-control-center" ,gnome-control-center)
5015 ("gnome-keyring" ,gnome-keyring)
5016 ("gnome-session" ,gnome-session)
5017 ("gnome-settings-daemon" ,gnome-settings-daemon)
5018 ("gnome-shell" ,gnome-shell)
5019 ("gnome-terminal" ,gnome-terminal)
5020 ("gnome-themes-standard" ,gnome-themes-standard)
05f651c4 5021 ("gvfs" ,gvfs)
dc050251
SB
5022 ("hicolor-icon-theme" ,hicolor-icon-theme)
5023 ("nautilus" ,nautilus)
5024 ("pulseaudio" ,pulseaudio)
5025 ("shared-mime-info" ,shared-mime-info)
5026 ("totem" ,totem)
5027 ("yelp" ,yelp)
5028 ("zenity" ,zenity)))
fe4e698d 5029 (synopsis "The GNU desktop environment")
dc050251
SB
5030 (home-page "https://www.gnome.org/")
5031 (description
fe4e698d
LC
5032 "GNOME is the graphical desktop for GNU. It includes a wide variety of
5033applications for browsing the web, editing text and images, creating
5034documents and diagrams, playing media, scanning, and much more.")
dc050251 5035 (license license:gpl2+)))
4a526711
DT
5036
5037(define-public byzanz
5038 ;; The last stable release of Byzanz was in 2011, but there have been many
5039 ;; useful commits made to the Byzanz repository since then that it would be
5040 ;; silly to use such an old release.
5041 (let ((commit "f7af3a5bd252db84af8365bd059c117a7aa5c4af"))
5042 (package
5043 (name "byzanz")
5044 (version (string-append "0.2-1." (string-take commit 7)))
5045 (source (origin
5046 (method git-fetch)
5047 (uri (git-reference
5048 (url "git://git.gnome.org/byzanz")
5049 (commit commit)))
5050 (sha256
5051 (base32
5052 "1l60myzxf9cav27v5v3nsijlslz9r7ip6d5kiirfpkf9k0w26hz3"))))
5053 (build-system glib-or-gtk-build-system)
5054 (arguments
5055 '(#:phases
5056 (modify-phases %standard-phases
5057 (add-after 'unpack 'bootstrap
5058 (lambda _
5059 ;; The build system cleverly detects that we're not building from
5060 ;; a release tarball and turns on -Werror for GCC.
5061 ;; Unsurprisingly, there is a warning during compilation that
5062 ;; causes the build to fail unnecessarily, so we remove the flag.
5063 (substitute* '("configure.ac")
5064 (("-Werror") ""))
5065 ;; The autogen.sh script in gnome-common will run ./configure
5066 ;; by default, which is problematic because source shebangs
5067 ;; have not yet been patched.
5068 (setenv "NOCONFIGURE" "t")
5069 (zero? (system* "sh" "autogen.sh")))))))
5070 (native-inputs
5071 `(("autoconf" ,autoconf)
5072 ("automake" ,automake)
5073 ("gnome-common" ,gnome-common)
5074 ("intltool" ,intltool)
5075 ("libtool" ,libtool)
5076 ("pkg-config" ,pkg-config)
5077 ("which" ,which)))
5078 (inputs
5079 `(("glib" ,glib)
5080 ("gstreamer" ,gstreamer)
5081 ("gst-plugins-base" ,gst-plugins-base)
5082 ("gtk+" ,gtk+)))
5083 (synopsis "Desktop recording program")
5084 (description "Byzanz is a simple desktop recording program with a
5085command-line interface. It can record part or all of an X display for a
5086specified duration and save it as a GIF encoded animated image file.")
5087 (home-page "https://git.gnome.org/browse/byzanz")
5088 (license license:gpl2+))))
3a9a4c51
RS
5089
5090(define-public libzapojit
5091 (package
5092 (name "libzapojit")
5093 (version "0.0.3")
5094 (source (origin
5095 (method url-fetch)
5096 (uri (string-append "mirror://gnome/sources/" name "/"
5097 (version-major+minor version) "/"
5098 name "-" version ".tar.xz"))
5099 (sha256
5100 (base32
5101 "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x"))))
5102 (build-system gnu-build-system)
5103 (native-inputs
5104 `(("gobject-introspection" ,gobject-introspection)
5105 ("intltool" ,intltool)
5106 ("pkg-config" ,pkg-config)))
5107 (inputs
5108 `(("gnome-online-accounts" ,gnome-online-accounts)
5109 ("json-glib" ,json-glib)
5110 ("rest" ,rest)))
5111 (home-page "https://wiki.gnome.org/Projects/Zapojit")
5112 (synopsis "Library for accessing SkyDrive and Hotmail")
5113 (description
5114 "Libzapojit is a GLib-based library for accessing online service APIs of
5115Microsoft SkyDrive and Hotmail, using their REST protocols.")
5116 (license license:lgpl2.1+)))
9365ee1c 5117
3c474897
KY
5118(define-public gnome-calendar
5119 (package
5120 (name "gnome-calendar")
5121 (version "3.20.2")
5122 (source (origin
5123 (method url-fetch)
5124 (uri (string-append "mirror://gnome/sources/" name "/"
5125 (version-major+minor version) "/"
5126 name "-" version ".tar.xz"))
5127 (sha256
5128 (base32
5129 "1vny8fclwglapdyxd2g9fbwdlk5hhnb993k2hvq3rf0hcgswycpi"))))
5130 (build-system glib-or-gtk-build-system)
5131 (native-inputs
5132 `(("intltool" ,intltool)
5133 ("pkg-config" ,pkg-config)))
5134 (inputs
5135 `(("bdb" ,bdb)
5136 ("desktop-file-utils" ,desktop-file-utils)
5137 ("evolution-data-server" ,evolution-data-server)
5138 ("gnome-online-accounts" ,gnome-online-accounts)))
5139 (home-page "https://wiki.gnome.org/Apps/Calendar")
5140 (synopsis "GNOME's calendar application")
5141 (description
5142 "GNOME Calendar is a simple calendar application designed to fit the GNOME
5143desktop. It supports multiple calendars, monthly view and yearly view.")
5144 (license license:gpl3+)))
5145
9365ee1c
JN
5146(define-public gnome-tweak-tool
5147 (package
5148 (name "gnome-tweak-tool")
5149 (version "3.20.1")
5150 (source (origin
5151 (method url-fetch)
5152 (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
5153 (version-major+minor version) "/"
5154 "gnome-tweak-tool-" version ".tar.xz"))
5155 (patches (list
5156 (search-patch "gnome-tweak-tool-search-paths.patch")))
5157 (sha256
5158 (base32
5159 "1fj6wjvnjygzm9br3sw9gya6d18yly1rm69yaiar9spfbkvv4wai"))))
5160 (build-system gnu-build-system)
5161 (arguments
5162 `(#:configure-flags '("--localstatedir=/tmp"
5163 "--sysconfdir=/tmp")
5164 #:imported-modules ((guix build python-build-system)
5165 ,@%gnu-build-system-modules)
5166 #:phases (modify-phases %standard-phases
5167 (add-after 'install 'wrap
5168 (@@ (guix build python-build-system) wrap)))))
5169 (native-inputs
5170 `(("intltool" ,intltool)
5171 ("pkg-config" ,pkg-config)))
5172 (inputs
5173 `(("python" ,python-2)
5174 ("python2-pygobject" ,python2-pygobject)))
5175 (propagated-inputs
5176 `(("libnotify" ,libnotify)
5177 ("gobject-introspection" ,gobject-introspection)
5178 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5179 ("gtk+" ,gtk+)))
5180 (synopsis "Customize advanced GNOME 3 options")
5181 (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
5182 (description
5183 "GNOME Tweak Tool allows adjusting advanced configuration settings in
5184GNOME 3. This includes things like the fonts used in user interface elements,
5185alternative user interface themes, changes in window management behavior,
5186GNOME Shell appearance and extension, etc.")
5187 (license license:gpl3+)))
813f814a 5188
32ac717c
DT
5189(define-public gnome-shell-extensions
5190 (package
5191 (name "gnome-shell-extensions")
5192 (version "3.20.1")
5193 (source (origin
5194 (method url-fetch)
5195 (uri (string-append "mirror://gnome/sources/" name "/"
5196 (version-major+minor version) "/"
5197 name "-" version ".tar.xz"))
5198 (sha256
5199 (base32
5200 "18rr55krnqx1nzrzlj6kfzh4n67f3crakmwh28rr95y7cg0jwhxw"))))
5201 (build-system gnu-build-system)
5202 (arguments
5203 '(#:configure-flags '("--enable-extensions=all")))
5204 (native-inputs
5205 `(("intltool" ,intltool)
5206 ("pkg-config" ,pkg-config)))
5207 (propagated-inputs
5208 `(("glib" ,glib)
5209 ("glib" ,glib "bin")))
5210 (synopsis "Extensions for GNOME Shell")
5211 (description "GNOME Shell extensions modify and extend GNOME Shell
5212functionality and behavior.")
5213 (home-page "https://extensions.gnome.org/")
5214 (license license:gpl3+)))
5215
813f814a
DT
5216(define-public arc-theme
5217 (package
5218 (name "arc-theme")
5219 (version "20160605")
5220 (source (origin
5221 (method url-fetch)
5222 (uri (string-append "https://github.com/horst3180/arc-theme"
5223 "/archive/" version ".tar.gz"))
5224 (file-name (string-append name "-" version ".tar.gz"))
5225 (sha256
5226 (base32
5227 "0sq2031xda8jn2ws0x2bvhq77jfh7xy0c3kg86v6vm2kbrrss7y6"))))
5228 (build-system gnu-build-system)
5229 (arguments
5230 '(#:phases
5231 (modify-phases %standard-phases
5232 (add-after 'unpack 'bootstrap
5233 (lambda _
5234 (zero? (system* "autoreconf" "-vif")))))))
5235 (native-inputs
5236 `(("autoconf" ,autoconf)
5237 ("automake" ,automake)
5238 ("pkg-config" ,pkg-config)))
5239 (inputs
5240 `(("gtk+" ,gtk+)))
5241 (synopsis "A flat GTK+ theme with transparent elements")
5242 (description "Arc is a flat theme with transparent elements for GTK 3, GTK
52432, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
5244like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
5245 (home-page "https://github.com/horst3180/arc-theme")
5246 ;; No "or later" language found.
5247 (license license:gpl3)))
9987c57c
DT
5248
5249(define-public moka-icon-theme
5250 (package
5251 (name "moka-icon-theme")
5252 (version "5.3.1")
5253 (source (origin
5254 (method url-fetch)
5255 (uri (string-append "https://github.com/moka-project"
5256 "/moka-icon-theme/archive/v"
5257 version ".tar.gz"))
5258 (file-name (string-append name "-" version ".tar.gz"))
5259 (sha256
5260 (base32
5261 "1lnk7p8dsd9xh6cgz5krvlcr457w8yl4m6p6s5c2g5narsjswzrm"))))
5262 (build-system gnu-build-system)
5263 (arguments
5264 '(#:phases
5265 (modify-phases %standard-phases
5266 (add-after 'unpack 'patch-makefile.am
5267 (lambda _
5268 (substitute* '("Makefile.am")
5269 (("\\$\\(DESTDIR\\)/usr/share")
5270 "$(datadir)"))
5271 #t))
5272 (add-after 'patch-makefile.am 'bootstrap
5273 (lambda _
5274 (zero? (system* "autoreconf" "-vif")))))))
5275 (native-inputs
5276 `(("autoconf" ,autoconf)
5277 ("automake" ,automake)))
5278 (synopsis "Moka icon theme")
5279 (description "Moka is a stylized desktop icon set, designed to be clear,
5280simple and consistent.")
5281 (home-page "http://snwh.org/moka")
5282 (license license:gpl3+)))
6fd8f8d6
DT
5283
5284(define-public arc-icon-theme
5285 (package
5286 (name "arc-icon-theme")
5287 (version "20160605")
5288 (source (origin
5289 (method url-fetch)
5290 (uri (string-append "https://github.com/horst3180/arc-icon-theme"
5291 "/archive/" version ".tar.gz"))
5292 (file-name (string-append name "-" version ".tar.gz"))
5293 (sha256
5294 (base32
5295 "1npf0ki0j0llrw9wbffhxxa1cdms0q7b8xlg9m943dd9g7pgdm2p"))))
5296 (build-system gnu-build-system)
5297 (arguments
5298 '(#:phases
5299 (modify-phases %standard-phases
5300 (add-after 'unpack 'bootstrap
5301 (lambda _
5302 (zero? (system* "autoreconf" "-vif")))))))
5303 (native-inputs
5304 `(("autoconf" ,autoconf)
5305 ("automake" ,automake)))
5306 ;; When Arc is missing an icon, it looks in the Moka icon theme for it.
5307 (propagated-inputs
5308 `(("moka-icon-theme" ,moka-icon-theme)))
5309 (synopsis "Arc icon theme")
5310 (description "The Arc icon theme provides a set of icons matching the
5311style of the Arc GTK theme. Icons missing from the Arc theme are provided by
5312the Moka icon theme.")
5313 (home-page "https://github.com/horst3180/arc-icon-theme")
5314 (license license:gpl3+)))
6064a4e8
LF
5315
5316(define-public folks
5317 (package
5318 (name "folks")
5319 (version "0.11.2")
5320 (source (origin
5321 (method url-fetch)
5322 (uri (string-append
5323 "mirror://gnome/sources/" name "/"
5324 (version-major+minor version) "/"
5325 name "-" version ".tar.xz"))
5326 (sha256
5327 (base32
5328 "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
5329 (build-system glib-or-gtk-build-system)
5330 (inputs
5331 `(("bdb" ,bdb)
5332 ("dbus-glib" ,dbus-glib)
5333 ("evolution-data-server" ,evolution-data-server)
5334 ("glib" ,glib)
5335 ("libgee" ,libgee)
5336 ("telepathy-glib" ,telepathy-glib)))
5337 (native-inputs
5338 `(("gobject-introspection" ,gobject-introspection)
5339 ("intltool" ,intltool)
5340 ("pkg-config" ,pkg-config)
5341 ("vala" ,vala)))
5342 (synopsis "Library to aggregate data about people")
5343 (description "Libfolks is a library that aggregates information about people
5344from multiple sources (e.g., Telepathy connection managers for IM contacts,
5345Evolution Data Server for local contacts, libsocialweb for web service contacts,
5346etc.) to create metacontacts. It's written in Vala, which generates C code when
5347compiled.")
5348 (home-page "https://wiki.gnome.org/Projects/Folks")
5349 (license license:lgpl2.1+)))