gnu: Add evolution-data-server.
[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>
eb497b66 3;;; Copyright © 2014, 2015 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>
6f96a359 7;;; Copyright © 2015 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>
ba421ab7 12;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
293ff8b2 13;;; Copyright © 2015 David Thompson <davet@gnu.org>
995b7261
AE
14;;;
15;;; This file is part of GNU Guix.
16;;;
17;;; GNU Guix is free software; you can redistribute it and/or modify it
18;;; under the terms of the GNU General Public License as published by
19;;; the Free Software Foundation; either version 3 of the License, or (at
20;;; your option) any later version.
21;;;
22;;; GNU Guix is distributed in the hope that it will be useful, but
23;;; WITHOUT ANY WARRANTY; without even the implied warranty of
24;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25;;; GNU General Public License for more details.
26;;;
27;;; You should have received a copy of the GNU General Public License
28;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
29
30(define-module (gnu packages gnome)
b5b73a82 31 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
32 #:use-module (guix packages)
33 #:use-module (guix download)
29a7c98a 34 #:use-module (guix utils)
995b7261 35 #:use-module (guix build-system gnu)
121de2e1 36 #:use-module (guix build-system glib-or-gtk)
ed19903d 37 #:use-module (gnu packages)
75016d07 38 #:use-module (gnu packages autotools)
7b212526 39 #:use-module (gnu packages avahi)
6a180f6f 40 #:use-module (gnu packages base)
5698b8b8 41 #:use-module (gnu packages bison)
df217748 42 #:use-module (gnu packages calendar)
23a22af6 43 #:use-module (gnu packages cups)
6e1bb642
SB
44 #:use-module (gnu packages curl)
45 #:use-module (gnu packages databases)
c769cf9f 46 #:use-module (gnu packages djvu)
121de2e1 47 #:use-module (gnu packages flex)
b4ce6300 48 #:use-module (gnu packages docbook)
329d731b 49 #:use-module (gnu packages enchant)
fed5a689 50 #:use-module (gnu packages gettext)
995b7261 51 #:use-module (gnu packages glib)
c1354b90 52 #:use-module (gnu packages gnupg)
23a22af6 53 #:use-module (gnu packages gnuzilla)
85f5dc19 54 #:use-module (gnu packages gstreamer)
d9c1a22b 55 #:use-module (gnu packages gtk)
df217748 56 #:use-module (gnu packages gperf)
6b888eff 57 #:use-module (gnu packages guile)
c1354b90 58 #:use-module (gnu packages pdf)
75016d07 59 #:use-module (gnu packages polkit)
5698b8b8 60 #:use-module (gnu packages popt)
c1354b90 61 #:use-module (gnu packages ghostscript)
9cc98f8a 62 #:use-module (gnu packages iso-codes)
85f5dc19 63 #:use-module (gnu packages libcanberra)
88f70665 64 #:use-module (gnu packages linux)
75016d07 65 #:use-module (gnu packages libusb)
4e3fc547 66 #:use-module (gnu packages lirc)
7b212526 67 #:use-module (gnu packages lua)
fed5a689 68 #:use-module (gnu packages m4)
e55354b8 69 #:use-module (gnu packages image)
27477d2d 70 #:use-module (gnu packages perl)
f70d8383 71 #:use-module (gnu packages photo)
995b7261 72 #:use-module (gnu packages pkg-config)
23a22af6 73 #:use-module (gnu packages pulseaudio)
995b7261 74 #:use-module (gnu packages python)
75016d07 75 #:use-module (gnu packages scanner)
4a1bf090 76 #:use-module (gnu packages ssh)
85f5dc19 77 #:use-module (gnu packages xml)
b0f9c4b8 78 #:use-module (gnu packages geeqie)
200726ed 79 #:use-module (gnu packages gl)
fb182b8a 80 #:use-module (gnu packages qt) ; for libxkbcommon
1dd26275 81 #:use-module (gnu packages compression)
c769cf9f 82 #:use-module (gnu packages texlive)
a7fd7b68 83 #:use-module (gnu packages tls)
6e1bb642 84 #:use-module (gnu packages web)
4a79e256 85 #:use-module (gnu packages webkit)
fecbf86e 86 #:use-module (gnu packages xorg)
ea57378f 87 #:use-module (gnu packages xdisorg)
ba421ab7 88 #:use-module (gnu packages freedesktop)
1e7464a9
DH
89 #:use-module (gnu packages mail)
90 #:use-module (gnu packages backup)
91 #:use-module (gnu packages nettle)
c024ae36 92 #:use-module (gnu packages ncurses)
3dc8828f
SB
93 #:use-module (gnu packages video)
94 #:use-module (gnu packages cdrom)
95 #:use-module (gnu packages samba)
f47ba77e 96 #:use-module (gnu packages readline)
c024ae36 97 #:use-module (srfi srfi-1))
85f5dc19
AE
98
99(define-public brasero
100 (package
101 (name "brasero")
e8627cd9 102 (version "3.12.1")
85f5dc19
AE
103 (source (origin
104 (method url-fetch)
e8627cd9
DH
105 (uri (string-append "mirror://gnome/sources/" name "/"
106 (version-major+minor version) "/"
107 name "-" version ".tar.xz"))
85f5dc19
AE
108 (sha256
109 (base32
e8627cd9 110 "09vi2hyhl0bz7imv3ky6h7x5m3d546n968wcghydwrkvwm9ylpls"))))
1c40e3b7 111 (build-system glib-or-gtk-build-system)
e8627cd9
DH
112 (arguments
113 `(#:configure-flags (list
114 (string-append "--with-girdir="
115 (assoc-ref %outputs "out")
116 "/share/gir-1.0")
117 (string-append "--with-typelibdir="
118 (assoc-ref %outputs "out")
119 "/lib/girepository-1.0"))))
85f5dc19
AE
120 (propagated-inputs
121 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
122 (native-inputs
123 `(("intltool" ,intltool)
426adbe8 124 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
e8627cd9 125 ("gobject-introspection" ,gobject-introspection)
9cc98f8a 126 ("pkg-config" ,pkg-config)))
85f5dc19
AE
127 (inputs
128 `(("glib" ,glib)
129 ("gnome-doc-utils" ,gnome-doc-utils)
130 ("gstreamer" ,gstreamer)
131 ("gst-plugins-base" ,gst-plugins-base)
132 ("gtk+" ,gtk+)
85f5dc19
AE
133 ("itstool" ,itstool)
134 ("libcanberra" ,libcanberra)
135 ("libice" ,libice)
136 ("libnotify" ,libnotify)
137 ("libsm" ,libsm)
e8627cd9
DH
138 ("libxml2" ,libxml2)
139 ("nettle" ,nettle)
140 ("totem-pl-parser" ,totem-pl-parser)))
85f5dc19
AE
141 (home-page "https://projects.gnome.org/brasero/")
142 (synopsis "CD/DVD burning tool for Gnome")
143 (description "Brasero is an application to burn CD/DVD for the Gnome
144Desktop. It is designed to be as simple as possible and has some unique
145features to enable users to create their discs easily and quickly.")
1dd26275 146 (license license:gpl2+)))
995b7261 147
7aab13f1
ML
148(define-public gnome-common
149 (package
150 (name "gnome-common")
151 (version "3.14.0")
152 (source
153 (origin
154 (method url-fetch)
155 (uri (string-append "mirror://gnome/sources/" name "/"
156 (version-major+minor version) "/"
157 name "-" version ".tar.xz"))
158 (sha256
159 (base32
160 "0b1676g4q44ah73c5gwl1kg88pc93pnq1pa9kwl43d0vg0pj802c"))))
161 (build-system gnu-build-system)
162 (home-page "https://www.gnome.org/")
163 (synopsis "Bootstrap GNOME modules built from Git")
164 (description "gnome-common contains various files needed to bootstrap
165GNOME modules built from Git. It contains a common \"autogen.sh\" script that
166can be used to configure a source directory checked out from Git and some
167commonly used macros.")
168 (license license:gpl2+)))
169
9cc98f8a
CR
170(define-public gnome-desktop
171 (package
172 (name "gnome-desktop")
a8340482 173 (version "3.18.1")
9cc98f8a
CR
174 (source
175 (origin
176 (method url-fetch)
b38e45d8
EB
177 (uri (string-append "mirror://gnome/sources/" name "/"
178 (version-major+minor version) "/"
9cc98f8a
CR
179 name "-" version ".tar.xz"))
180 (sha256
181 (base32
a8340482 182 "0avpmyhzz5b3pyfpkp8iq5ym5r5w7zs3a396hqkdpdsiym0vrazc"))))
9cc98f8a
CR
183 (build-system gnu-build-system)
184 (native-inputs
a8340482
SB
185 `(("gobject-introspection" ,gobject-introspection)
186 ("itstool" ,itstool)
bcb354ad
SB
187 ("intltool" ,intltool)
188 ("pkg-config" ,pkg-config)
189 ("xmllint" ,libxml2)))
a8340482
SB
190 (propagated-inputs
191 ;; Required by gnome-desktop-3.0.pc.
192 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
193 ("gtk+" ,gtk+)))
9cc98f8a
CR
194 (inputs
195 `(("gdk-pixbuf" ,gdk-pixbuf)
196 ("glib" ,glib)
9cc98f8a 197 ("iso-codes" ,iso-codes)
9cc98f8a
CR
198 ("libx11" ,libx11)
199 ("libxext" ,libxext)
200 ("libxkbfile" ,libxkbfile)
201 ("libxrandr" ,libxrandr)
202 ("xkeyboard-config" ,xkeyboard-config)))
203 (home-page "https://www.gnome.org/")
204 (synopsis
35b9e423 205 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
206 (description
207 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
208on the desktop, but that cannot live in the platform for various reasons.
209There is no API or ABI guarantee, although we are doing our best to provide
210stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
211
212The gnome-about program helps find which version of GNOME is installed.")
213 ; Some bits under the LGPL.
1dd26275 214 (license license:gpl2+)))
9cc98f8a 215
995b7261
AE
216(define-public gnome-doc-utils
217 (package
218 (name "gnome-doc-utils")
219 (version "0.20.10")
220 (source
221 (origin
222 (method url-fetch)
b38e45d8
EB
223 (uri (string-append "mirror://gnome/sources/" name "/"
224 (version-major+minor version) "/"
995b7261
AE
225 name "-" version ".tar.xz"))
226 (sha256
227 (base32
228 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
229 (build-system gnu-build-system)
c4c4cc05 230 (native-inputs
995b7261 231 `(("intltool" ,intltool)
b4ce6300 232 ("docbook-xml" ,docbook-xml-4.4)
d80b0d4a 233 ("python2-libxml2" ,python2-libxml2)
995b7261
AE
234 ("libxml2" ,libxml2)
235 ("libxslt" ,libxslt)
236 ("pkg-config" ,pkg-config)
237 ("python-2" ,python-2)))
995b7261
AE
238 (home-page "https://wiki.gnome.org/GnomeDocUtils")
239 (synopsis
240 "Documentation utilities for the Gnome project")
241 (description
242 "Gnome-doc-utils is a collection of documentation utilities for the
243Gnome project. It includes xml2po tool which makes it easier to translate
244and keep up to date translations of documentation.")
1dd26275 245 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 246
8ff49011
RW
247(define-public gcr
248 (package
249 (name "gcr")
250 (version "3.16.0")
251 (source (origin
252 (method url-fetch)
253 (uri (string-append "mirror://gnome/sources/" name "/"
254 (version-major+minor version) "/"
255 name "-" version ".tar.xz"))
256 (sha256
257 (base32
258 "0xfhi0w358lvca1jjx24x2gm67mif33dsnmi9cv5i0f83ks8vzpc"))))
259 (build-system gnu-build-system)
260 (arguments
261 '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
262 ;not exist
263 #:phases (modify-phases %standard-phases
264 (add-before
265 'check 'pre-check
266 (lambda* (#:key inputs #:allow-other-keys)
267 (substitute* "build/tap-driver"
268 (("/usr/bin/env python") (which "python"))))))))
269 (inputs
270 `(("dbus" ,dbus)
271 ("gnupg" ,gnupg) ;called as a child process during tests
272 ("libgcrypt" ,libgcrypt)))
273 (native-inputs
274 `(("python" ,python-2) ;for tests
275 ("pkg-config" ,pkg-config)
276 ("glib" ,glib "bin")
277 ("intltool" ,intltool)))
278 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
279 (propagated-inputs
280 `(("p11-kit" ,p11-kit)
281 ("glib" ,glib)
282 ("gtk+" ,gtk+)))
283 (home-page "http://www.gnome.org")
284 (synopsis "Libraries for displaying certificates and accessing key stores")
285 (description
286 "The GCR package contains libraries used for displaying certificates and
287accessing key stores. It also provides the viewer for crypto files on the
288GNOME Desktop.")
289 (license license:lgpl2.1+)))
290
c1354b90
LC
291(define-public libgnome-keyring
292 (package
293 (name "libgnome-keyring")
294 (version "3.6.0")
295 (source (origin
296 (method url-fetch)
b38e45d8
EB
297 (uri (string-append "mirror://gnome/sources/" name "/"
298 (version-major+minor version) "/"
299 name "-" version ".tar.xz"))
c1354b90
LC
300 (sha256
301 (base32
302 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
303 (build-system gnu-build-system)
c1354b90 304 (inputs
c4c4cc05 305 `(("libgcrypt" ,libgcrypt)
c1354b90 306 ("dbus" ,dbus)))
c4c4cc05
JD
307 (native-inputs
308 `(("pkg-config" ,pkg-config)
426adbe8 309 ("glib" ,glib "bin")
c4c4cc05 310 ("intltool" ,intltool)))
c1354b90
LC
311 (propagated-inputs
312 ;; Referred to in .h files and .pc.
313 `(("glib" ,glib)))
314 (home-page "http://www.gnome.org")
315 (synopsis "Accessing passwords from the GNOME keyring")
316 (description
317 "Client library to access passwords from the GNOME keyring.")
318
319 ;; Though a couple of files are LGPLv2.1+.
1dd26275 320 (license license:lgpl2.0+)))
c1354b90 321
e99a3d6f
RW
322(define-public gnome-keyring
323 (package
324 (name "gnome-keyring")
325 (version "3.16.0")
326 (source (origin
327 (method url-fetch)
328 (uri (string-append "mirror://gnome/sources/" name "/"
329 (version-major+minor version) "/"
330 name "-" version ".tar.xz"))
331 (sha256
332 (base32
333 "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm"))))
334 (build-system gnu-build-system)
335 (arguments
336 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
337 ;not exist
338 #:configure-flags
339 (list
340 (string-append "--with-pkcs11-config="
341 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
342 (string-append "--with-pkcs11-modules="
343 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
344 #:phases
345 (modify-phases %standard-phases
346 (add-before
347 'check 'pre-check
348 (lambda* (#:key inputs #:allow-other-keys)
349 (substitute* "build/tap-driver"
350 (("/usr/bin/env python") (which "python")))))
351 (add-before
352 'configure 'fix-docbook
353 (lambda* (#:key inputs #:allow-other-keys)
354 (substitute* "docs/Makefile.am"
355 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
356 (string-append (assoc-ref inputs "docbook-xsl")
357 "/xml/xsl/docbook-xsl-"
358 ,(package-version docbook-xsl)
359 "/manpages/docbook.xsl")))
360 (setenv "XML_CATALOG_FILES"
361 (string-append (assoc-ref inputs "docbook-xml")
362 "/xml/dtd/docbook/catalog.xml")))))))
363 (inputs
364 `(("libgcrypt" ,libgcrypt)
365 ("dbus" ,dbus)
366 ("gcr" ,gcr)))
367 (native-inputs
368 `(("pkg-config" ,pkg-config)
369 ("glib" ,glib "bin")
370 ("python" ,python-2) ;for tests
371 ("intltool" ,intltool)
372 ("autoconf" ,autoconf)
373 ("automake" ,automake)
374 ("libxslt" ,libxslt) ;for documentation
375 ("docbook-xml" ,docbook-xml-4.2)
376 ("docbook-xsl" ,docbook-xsl)))
377 (home-page "http://www.gnome.org")
378 (synopsis "Daemon to store passwords and encryption keys")
379 (description
380 "gnome-keyring is a program that keeps passwords and other secrets for
381users. It is run as a daemon in the session, similar to ssh-agent, and other
382applications locate it via an environment variable or D-Bus.
383
384The program can manage several keyrings, each with its own master password,
385and there is also a session keyring which is never stored to disk, but
386forgotten when the session ends.")
387 (license license:lgpl2.1+)))
388
c1354b90
LC
389(define-public evince
390 (package
391 (name "evince")
c3b9d75f 392 (version "3.18.1")
c1354b90
LC
393 (source (origin
394 (method url-fetch)
b38e45d8
EB
395 (uri (string-append "mirror://gnome/sources/" name "/"
396 (version-major+minor version) "/"
397 name "-" version ".tar.xz"))
c1354b90
LC
398 (sha256
399 (base32
c3b9d75f 400 "0cccmbvl1b6d2976642iyfr8g3r69zf3mzl2ln6vjvvdbrv26l3v"))))
121de2e1 401 (build-system glib-or-gtk-build-system)
c1354b90
LC
402 (arguments
403 `(#:configure-flags '("--disable-nautilus")
404
405 ;; FIXME: Tests fail with:
406 ;; ImportError: No module named gi.repository
407 ;; Where should that module come from?
3d243e9c 408 #:tests? #f))
c1354b90
LC
409 (inputs
410 `(("libspectre" ,libspectre)
c769cf9f 411 ("djvulibre" ,djvulibre)
c1354b90
LC
412 ("ghostscript" ,ghostscript)
413 ("poppler" ,poppler)
c769cf9f
SB
414 ("libtiff" ,libtiff)
415 ;; TODO:
416 ;; Add libgxps for XPS support.
417 ;; Build libkpathsea as a shared library for DVI support.
418 ;; ("libkpathsea" ,texlive-bin)
419 ("gnome-desktop" ,gnome-desktop)
c1354b90
LC
420 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
421 ("libgnome-keyring" ,libgnome-keyring)
c769cf9f 422 ("adwaita-icon-theme" ,adwaita-icon-theme)
c1354b90
LC
423 ("gdk-pixbuf" ,gdk-pixbuf)
424 ("atk" ,atk)
425 ("pango" ,pango)
426 ("gtk+" ,gtk+)
427 ("glib" ,glib)
428 ("libxml2" ,libxml2)
c1354b90
LC
429 ("libsm" ,libsm)
430 ("libice" ,libice)
96e42467 431 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
432 ("dconf" ,dconf)
433 ("libcanberra" ,libcanberra)
c769cf9f 434 ("libsecret" ,libsecret)
c1354b90
LC
435 ;; For tests.
436 ("dogtail" ,python2-dogtail)))
96e42467 437 (native-inputs
bcb354ad
SB
438 `(("itstool" ,itstool)
439 ("intltool" ,intltool)
426adbe8 440 ("glib" ,glib "bin")
bcb354ad
SB
441 ("pkg-config" ,pkg-config)
442 ("xmllint" ,libxml2)))
c1354b90
LC
443 (home-page
444 "http://www.gnome.org/projects/evince/")
445 (synopsis "GNOME's document viewer")
446 (description
447 "Evince is a document viewer for multiple document formats. It
448currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
449of Evince is to replace the multiple document viewers that exist
96e42467 450on the GNOME Desktop with a single simple application.")
1dd26275 451 (license license:gpl2+)))
c1354b90 452
22e32e69
AE
453(define-public gsettings-desktop-schemas
454 (package
455 (name "gsettings-desktop-schemas")
3e429a86 456 (version "3.18.0")
22e32e69
AE
457 (source
458 (origin
459 (method url-fetch)
460 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 461 (version-major+minor version) "/"
22e32e69
AE
462 name "-" version ".tar.xz"))
463 (sha256
464 (base32
3e429a86 465 "1szc857f46spdhrbnq9ci3kwfqg5vwpikbf0hprq6vd94rr369xs"))))
22e32e69
AE
466 (build-system gnu-build-system)
467 (inputs
c4c4cc05
JD
468 `(("glib" ,glib)))
469 (native-inputs
470 `(("intltool" ,intltool)
426adbe8 471 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 472 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
473 ("pkg-config" ,pkg-config)))
474 (home-page "https://launchpad.net/gsettings-desktop-schemas")
475 (synopsis
476 "GNOME settings for various desktop components")
477 (description
478 "Gsettings-desktop-schemas contains a collection of GSettings schemas
479for settings shared by various components of the GNOME desktop.")
1dd26275 480 (license license:lgpl2.1+)))
22e32e69 481
27477d2d
AE
482(define-public icon-naming-utils
483 (package
484 (name "icon-naming-utils")
485 (version "0.8.90")
486 (source
487 (origin
488 (method url-fetch)
489 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
490 version ".tar.bz2"))
491 (sha256
492 (base32
493 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
494 (build-system gnu-build-system)
495 (inputs
496 `(("perl" ,perl)
497 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
498 (arguments
499 '(#:phases
500 (alist-cons-after
501 'install 'set-load-paths
502 ;; Tell 'icon-name-mapping' where XML::Simple is.
503 (lambda* (#:key outputs #:allow-other-keys)
504 (let* ((out (assoc-ref outputs "out"))
505 (prog (string-append out "/libexec/icon-name-mapping")))
506 (wrap-program
507 prog
508 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
509 %standard-phases)))
27477d2d
AE
510 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
511 (synopsis
512 "Utility to implement the Freedesktop Icon Naming Specification")
513 (description
514 "To help with the transition to the Freedesktop Icon Naming
515Specification, the icon naming utility maps the icon names used by the
516GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 517 (license license:lgpl2.1+)))
27477d2d 518
686e025d
SB
519(define-public desktop-file-utils
520 (package
521 (name "desktop-file-utils")
522 (version "0.22")
523 (source (origin
524 (method url-fetch)
525 (uri (string-append "http://www.freedesktop.org/software/" name
526 "/releases/" name "-" version ".tar.xz"))
527 (sha256
528 (base32
529 "1ianvr2a69yjv4rpyv30w7yjsmnsb23crrka5ndqxycj4rkk4dc4"))))
530 (build-system gnu-build-system)
531 (native-inputs
532 `(("pkg-config" ,pkg-config)))
533 (inputs
534 `(("glib" ,glib)))
535 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
536 (synopsis "Utilities for working with desktop entries")
537 (description
538 "This package contains a few command line utilities for working with
539desktop entries:
540
541desktop-file-validate: validates a desktop file and prints warnings/errors
542 about desktop entry specification violations.
543
544desktop-file-install: installs a desktop file to the applications directory,
545 optionally munging it a bit in transit.
546
547update-desktop-database: updates the database containing a cache of MIME types
548 handled by desktop files.")
549 (license license:gpl2+)))
550
7d3f3651
AE
551(define-public gnome-icon-theme
552 (package
553 (name "gnome-icon-theme")
b32f58dd 554 (version "3.12.0")
7d3f3651
AE
555 (source
556 (origin
557 (method url-fetch)
558 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 559 (version-major+minor version) "/"
7d3f3651
AE
560 name "-" version ".tar.xz"))
561 (sha256
562 (base32
b32f58dd 563 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
7d3f3651 564 (build-system gnu-build-system)
c4c4cc05 565 (native-inputs
73b6cf42
SB
566 `(("gtk+" ,gtk+) ; for gtk-update-icon-cache
567 ("icon-naming-utils" ,icon-naming-utils)
568 ("intltool" ,intltool)
569 ("pkg-config" ,pkg-config)))
7d3f3651
AE
570 (home-page "http://art.gnome.org/")
571 (synopsis
572 "GNOME icon theme")
573 (description
574 "Icons for the GNOME desktop.")
1dd26275 575 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 576
14eeefa2
SB
577;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
578(define-public adwaita-icon-theme
579 (package (inherit gnome-icon-theme)
580 (name "adwaita-icon-theme")
581 (version "3.16.2")
582 (source (origin
583 (method url-fetch)
584 (uri (string-append "mirror://gnome/sources/" name "/"
585 (version-major+minor version) "/"
586 name "-" version ".tar.xz"))
587 (sha256
588 (base32
589 "1hmlw7kvhr7c2asc5y77adpymi9ka17gaf76zz835nwwffnn4rlw"))))))
590
9167f8e6
LC
591(define-public shared-mime-info
592 (package
593 (name "shared-mime-info")
594 (version "1.2")
595 (source (origin
596 (method url-fetch)
b38e45d8
EB
597 (uri (string-append "http://freedesktop.org/~hadess/"
598 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
599 (sha256
600 (base32
601 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
602 (build-system gnu-build-system)
603 (arguments
604 ;; The build system appears not to be parallel-safe.
605 '(#:parallel-build? #f))
606 (inputs
607 `(("glib" ,glib)
c4c4cc05 608 ("libxml2" ,libxml2)))
9167f8e6 609 (native-inputs
c4c4cc05
JD
610 `(("intltool" ,intltool)
611 ("pkg-config" ,pkg-config)))
9167f8e6
LC
612 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
613 (synopsis "Database of common MIME types")
614 (description
615 "The shared-mime-info package contains the core database of common types
616and the update-mime-database command used to extend it. It requires glib2 to
617be installed for building the update command. Additionally, it uses intltool
618for translations, though this is only a dependency for the maintainers. This
619database is translated at Transifex.")
1dd26275 620 (license license:gpl2+)))
9167f8e6 621
bef4dd92
AE
622(define-public hicolor-icon-theme
623 (package
624 (name "hicolor-icon-theme")
625 (version "0.12")
626 (source
627 (origin
628 (method url-fetch)
b38e45d8
EB
629 (uri (string-append "http://icon-theme.freedesktop.org/releases/"
630 "hicolor-icon-theme-" version ".tar.gz"))
bef4dd92
AE
631 (sha256
632 (base32
633 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
634 (build-system gnu-build-system)
635 (arguments
636 `(#:tests? #f)) ; no check target
637 (home-page "http://icon-theme.freedesktop.org/releases/")
638 (synopsis
639 "Freedesktop icon theme")
640 (description
641 "Freedesktop icon theme.")
1dd26275 642 (license license:gpl2)))
bef4dd92 643
d9c1a22b
AE
644(define-public libnotify
645 (package
646 (name "libnotify")
647 (version "0.7.6")
648 (source
649 (origin
650 (method url-fetch)
651 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 652 (version-major+minor version) "/"
d9c1a22b
AE
653 name "-" version ".tar.xz"))
654 (sha256
655 (base32
656 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
657 (build-system gnu-build-system)
658 (inputs
659 `(("gdk-pixbuf" ,gdk-pixbuf)
660 ("glib" ,glib)
661 ("gtk+" ,gtk+)
c4c4cc05
JD
662 ("libpng" ,libpng)))
663 (native-inputs
426adbe8
LC
664 `(("pkg-config" ,pkg-config)
665 ("glib" ,glib "bin")))
d9c1a22b
AE
666 (home-page "https://developer-next.gnome.org/libnotify/")
667 (synopsis
668 "GNOME desktop notification library")
669 (description
670 "Libnotify is a library that sends desktop notifications to a
35b9e423 671notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
672notifications can be used to inform the user about an event or display
673some form of information without getting in the user's way.")
1dd26275 674 (license license:lgpl2.1+)))
7a8605ce
CR
675
676(define-public libpeas
677 (package
678 (name "libpeas")
835ed74b 679 (version "1.16.0")
7a8605ce
CR
680 (source
681 (origin
682 (method url-fetch)
683 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 684 (version-major+minor version) "/"
7a8605ce
CR
685 name "-" version ".tar.xz"))
686 (sha256
687 (base32
835ed74b 688 "0kj5n5hz93xq7qdb2r7n86nibzwqjr88jxaih1fdbxv5rn7014xh"))))
7a8605ce 689 (build-system gnu-build-system)
7a8605ce
CR
690 (inputs
691 `(("atk" ,atk)
692 ("gdk-pixbuf" ,gdk-pixbuf)
693 ("glib" ,glib)
7a8605ce 694 ("gtk+" ,gtk+)
141aed80
LC
695 ("pango" ,pango)))
696 (native-inputs
697 `(("pkg-config" ,pkg-config)
93622993 698 ("glib:bin" ,glib "bin")
141aed80
LC
699 ("gobject-introspection" ,gobject-introspection)
700 ("intltool" ,intltool)))
7a8605ce
CR
701 (home-page "https://wiki.gnome.org/Libpeas")
702 (synopsis "GObject plugin system")
703 (description
35b9e423 704 "Libpeas is a gobject-based plugins engine, and is targetted at giving
7a8605ce
CR
705every application the chance to assume its own extensibility. It also has a
706set of features including, but not limited to: multiple extension points; on
707demand (lazy) programming language support for C, Python and JS; simplicity of
e881752c 708the API.")
1dd26275 709 (license license:lgpl2.0+)))
ed19903d
JD
710
711(define-public gtkglext
712 (package
713 (name "gtkglext")
714 (version "1.2.0")
715 (source (origin
716 (method url-fetch)
717 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
718 version "/gtkglext-" version ".tar.gz"))
719 (sha256
720 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
721 (patches (list
ed19903d
JD
722 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
723 (build-system gnu-build-system)
724 (inputs `(("gtk+" ,gtk+-2)
725 ("mesa" ,mesa)
cc8b02f4 726 ("glu" ,glu)
ed19903d
JD
727 ("libx11" ,libx11)
728 ("libxt" ,libxt)))
426adbe8
LC
729 (native-inputs `(("pkg-config" ,pkg-config)
730 ("glib" ,glib "bin")))
a83b6a06 731 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 732 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 733 (synopsis "OpenGL extension to GTK+")
35b9e423 734 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
735additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
736API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 737 (license license:lgpl2.1+)))
3600420e
JD
738
739(define-public glade3
740 (package
741 (name "glade")
742 (version "3.8.4")
b38e45d8
EB
743 (source (origin
744 (method url-fetch)
745 (uri (string-append "mirror://gnome/sources/" name "/"
746 (version-major+minor version) "/"
747 name "3-" version ".tar.xz"))
3600420e
JD
748 (sha256
749 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
750 (build-system gnu-build-system)
751 (inputs
752 `(("gtk+" ,gtk+-2)
753 ("libxml2" ,libxml2)))
754 (native-inputs
755 `(("intltool" ,intltool)
756 ("python" ,python)
757 ("pkg-config" ,pkg-config)))
758 (home-page "https://glade.gnome.org")
759 (synopsis "GTK+ rapid application development tool")
760 (description "Glade is a rapid application development (RAD) tool to
761enable quick & easy development of user interfaces for the GTK+ toolkit and
762the GNOME desktop environment.")
1dd26275
LC
763 (license license:lgpl2.0+)))
764
765(define-public libcroco
766 (package
767 (name "libcroco")
768 (version "0.6.8")
769 (source (origin
770 (method url-fetch)
b38e45d8
EB
771 (uri (string-append "mirror://gnome/sources/" name "/"
772 (version-major+minor version) "/"
773 name "-" version ".tar.xz"))
1dd26275
LC
774 (sha256
775 (base32
776 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
777 (build-system gnu-build-system)
778 (native-inputs
779 `(("pkg-config" ,pkg-config)))
780 (inputs
781 `(("glib" ,glib)
782 ("libxml2" ,libxml2)
783 ("zlib" ,zlib)))
784 (home-page "https://github.com/GNOME/libcroco")
785 (synopsis "CSS2 parsing and manipulation library")
786 (description
787 "Libcroco is a standalone CSS2 parsing and manipulation library.
788The parser provides a low level event driven SAC-like API and a CSS object
789model like API. Libcroco provides a CSS2 selection engine and an experimental
790XML/CSS rendering engine.")
791
792 ;; LGPLv2.1-only.
793 (license license:lgpl2.1)))
25178594
LC
794
795(define-public libgsf
796 (package
797 (name "libgsf")
4ea50f2b 798 (version "1.14.34")
25178594
LC
799 (source (origin
800 (method url-fetch)
b38e45d8
EB
801 (uri (string-append "mirror://gnome/sources/" name "/"
802 (version-major+minor version) "/"
803 name "-" version ".tar.xz"))
25178594
LC
804 (sha256
805 (base32
4ea50f2b 806 "0a5m1i5gp4m2z0cn2x1rrdm8wgrr04bzv65l8pgp6jipw13s9zph"))))
25178594
LC
807 (build-system gnu-build-system)
808 (native-inputs
809 `(("intltool" ,intltool)
810 ("pkg-config" ,pkg-config)))
811 (inputs
812 `(("python" ,python)
813 ("zlib" ,zlib)
814 ("bzip2" ,bzip2)))
815 (propagated-inputs
816 `(("gdk-pixbuf" ,gdk-pixbuf)
817 ("glib" ,glib)
818 ("libxml2" ,libxml2)))
819 (home-page "http://www.gnome.org/projects/libgsf")
820 (synopsis "GNOME's Structured File Library")
821 (description
822 "Libgsf aims to provide an efficient extensible I/O abstraction for
823dealing with different structured file formats.")
824
825 ;; LGPLv2.1-only.
826 (license license:lgpl2.1)))
63016e7c
LC
827
828(define-public librsvg
829 (package
830 (name "librsvg")
f43c0e9c 831 (version "2.40.11")
63016e7c
LC
832 (source (origin
833 (method url-fetch)
b38e45d8
EB
834 (uri (string-append "mirror://gnome/sources/" name "/"
835 (version-major+minor version) "/"
836 name "-" version ".tar.xz"))
63016e7c
LC
837 (sha256
838 (base32
5f37e56b
SB
839 "00ifd9wjjjsw0ybk5j6qs4yyh66jj34hjmggy6dhrgfy8ksw06k1"))
840 (patches
841 (list (search-patch "librsvg-tests.patch")))))
63016e7c
LC
842 (build-system gnu-build-system)
843 (arguments
ce2df078 844 `(#:phases
63016e7c
LC
845 (alist-cons-before
846 'configure 'augment-gir-search-path
847 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
848 (substitute* "gdk-pixbuf-loader/Makefile.in"
849 ;; By default the gdk-pixbuf loader is installed under
850 ;; gdk-pixbuf's prefix. Work around that.
851 (("gdk_pixbuf_moduledir = .*$")
852 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 853 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c
LC
854 "loaders\n"))
855 ;; Likewise, create a separate 'loaders.cache' file.
856 (("gdk_pixbuf_cache_file = .*$")
857 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
cd14b5e3
FB
858 (alist-cons-after
859 'install 'generate-full-cache
860 (lambda* (#:key inputs outputs #:allow-other-keys)
2e6ecc5c 861 (let ((loaders-directory
cd14b5e3 862 (string-append (assoc-ref outputs "out")
dc67ebd2 863 "/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
cd14b5e3 864 (zero?
2e6ecc5c
AE
865 (system
866 (string-append
867 "gdk-pixbuf-query-loaders "
cd14b5e3 868 loaders-directory "/libpixbufloader-svg.so "
2e6ecc5c 869 (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
cd14b5e3
FB
870 "libpixbufloader-.*\\.so") " ")
871 "> " loaders-directory ".cache")))))
b19d6805 872 %standard-phases))))
63016e7c
LC
873 (native-inputs
874 `(("pkg-config" ,pkg-config)
44add1ce 875 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
876 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
877 (inputs
878 `(("pango" ,pango)
879 ("libcroco" ,libcroco)
880 ("bzip2" ,bzip2)
881 ("libgsf" ,libgsf)
882 ("libxml2" ,libxml2)))
883 (propagated-inputs
884 ;; librsvg-2.0.pc refers to all of that.
885 `(("cairo" ,cairo)
886 ("gdk-pixbuf" ,gdk-pixbuf)
887 ("glib" ,glib)))
888 (home-page "https://wiki.gnome.org/LibRsvg")
889 (synopsis "Render SVG files using Cairo")
890 (description
35b9e423 891 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
892library.")
893 (license license:lgpl2.0+)))
5698b8b8
JD
894
895(define-public libidl
896 (package
897 (name "libidl")
898 (version "0.8.14")
899 (source (origin
900 (method url-fetch)
901 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
902 (string-append "mirror://gnome/sources/" upstream-name "/"
903 (version-major+minor version) "/"
904 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
905 (sha256
906 (base32
907 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
908 (build-system gnu-build-system)
909 (inputs `(("glib" ,glib)))
910 (native-inputs
911 `(("pkg-config" ,pkg-config)
912 ("flex", flex)
913 ("bison" ,bison)))
914 (home-page "http://freecode.com/projects/libidl")
915 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 916 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
917Definition Language (idl) files, which is a specification for defining
918portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 919GNOME project, and the primary means of libidl distribution). However, the
2e6ecc5c 920functionality was designed to be as reusable and portable as possible.")
5698b8b8
JD
921 (license license:lgpl2.0+)))
922
923
924(define-public orbit2
925 (package
926 (name "orbit2")
927 (version "2.14.19")
928 (source (origin
929 (method url-fetch)
2e6ecc5c 930 (uri (let ((upstream-name "ORBit2"))
b38e45d8
EB
931 (string-append "mirror://gnome/sources/" upstream-name "/"
932 (version-major+minor version) "/"
933 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
934 (sha256
935 (base32 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
936 (build-system gnu-build-system)
937 (arguments
938 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
939 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
940 ;; ... which they then completly ignore !!
941 #:phases
942 (alist-cons-before
943 'configure 'ignore-deprecations
944 (lambda _
945 (substitute* "linc2/src/Makefile.in"
946 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
947 %standard-phases)))
948 (inputs `(("glib" ,glib)
949 ("libidl" ,libidl)))
950 (native-inputs
951 `(("pkg-config" ,pkg-config)))
952 (home-page "https://projects.gnome.org/orbit2/")
953 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 954 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
2e6ecc5c 955featuring mature C, C++ and Python bindings.")
5698b8b8
JD
956 ;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
957 ;; SOME of the code files have licence notices for GPLv2+
958 ;; The tarball contains files of the text of GPLv2 and LGPLv2
2e6ecc5c 959 (license license:gpl2+)))
5698b8b8
JD
960
961
962(define-public libbonobo
963 (package
964 (name "libbonobo")
965 (version "2.32.1")
966 (source (origin
967 (method url-fetch)
5becd025 968 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 969 (version-major+minor version)
5becd025 970 "/" name "-" version ".tar.bz2"))
5698b8b8 971 (sha256
f1fc45a9
EB
972 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
973 (patches (list (search-patch "libbonobo-activation-test-race.patch")))))
5698b8b8
JD
974 (build-system gnu-build-system)
975 (arguments
976 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
977 `(#:configure-flags
978 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
979 ;; ... which they then completly ignore !!
980 #:phases
981 (alist-cons-before
982 'configure 'ignore-deprecations
983 (lambda _
984 (substitute* "activation-server/Makefile.in"
985 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
986 %standard-phases)))
5698b8b8
JD
987 (inputs `(("popt" ,popt)
988 ("libxml2" ,libxml2)))
989 ;; The following are Required by the .pc file
44add1ce 990 (propagated-inputs
5698b8b8
JD
991 `(("glib" ,glib)
992 ("orbit2" ,orbit2)))
993 (native-inputs
994 `(("intltool" ,intltool)
995 ("pkg-config" ,pkg-config)
221ed17a 996 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
997 ("flex" ,flex)
998 ("bison" ,bison)))
999 (home-page "https://developer.gnome.org/libbonobo/")
1000 (synopsis "Framework for creating reusable components for use in GNOME applications")
1001 (description "Bonobo is a framework for creating reusable components for
2e6ecc5c 1002use in GNOME applications, built on top of CORBA.")
5698b8b8
JD
1003 ;; Licence not explicitly stated. Source files contain no licence notices.
1004 ;; Tarball contains text of both GPLv2 and LGPLv2
1005 ;; GPLv2 covers both conditions
1006 (license license:gpl2+)))
1007
1008
1009(define-public gconf
1010 (package
1011 (name "gconf")
1012 (version "3.2.6")
1013 (source (origin
1014 (method url-fetch)
2e6ecc5c 1015 (uri
5698b8b8 1016 (let ((upstream-name "GConf"))
b38e45d8
EB
1017 (string-append "mirror://gnome/sources/" upstream-name "/"
1018 (version-major+minor version) "/"
1019 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
1020 (sha256
1021 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
1022 (build-system gnu-build-system)
2e88d113 1023 (inputs `(("dbus-glib" ,dbus-glib)
5698b8b8 1024 ("libxml2" ,libxml2)))
2e6ecc5c
AE
1025 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
1026 ("orbit2" ,orbit2)))
5698b8b8
JD
1027 (native-inputs
1028 `(("intltool" ,intltool)
221ed17a 1029 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1030 ("pkg-config" ,pkg-config)))
1031 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
1032 (synopsis "Store application preferences")
1033 (description "Gconf is a system for storing application preferences. It
1034is intended for user preferences; not arbitrary data storage.")
2e6ecc5c 1035 (license license:lgpl2.0+)))
5698b8b8
JD
1036
1037
1038(define-public gnome-mime-data
1039 (package
1040 (name "gnome-mime-data")
1041 (version "2.18.0")
1042 (source (origin
1043 (method url-fetch)
b38e45d8
EB
1044 (uri (string-append "mirror://gnome/sources/" name "/"
1045 (version-major+minor version) "/"
1046 name "-" version ".tar.bz2"))
5698b8b8
JD
1047 (sha256
1048 (base32
1049 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
1050 (build-system gnu-build-system)
1051 (native-inputs
1052 `(("perl" ,perl)
1053 ("intltool" ,intltool)))
1054 (home-page "http://www.gnome.org")
35b9e423 1055 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
1056 (description "GNOME Mime Data is a module which contains the base MIME
1057and Application database for GNOME. The data stored by this module is
1058designed to be accessed through the MIME functions in GnomeVFS.")
1059 (license license:gpl2+)))
1060
1061
1062(define-public gnome-vfs
1063 (package
1064 (name "gnome-vfs")
1065 (version "2.24.4")
1066 (source (origin
1067 (method url-fetch)
b38e45d8
EB
1068 (uri (string-append "mirror://gnome/sources/" name "/"
1069 (version-major+minor version) "/"
1070 name "-" version ".tar.bz2"))
5698b8b8 1071 (sha256
9e12bc34
MW
1072 (base32
1073 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
5698b8b8
JD
1074 (build-system gnu-build-system)
1075 (arguments
db5127d8 1076 `(#:phases
9e12bc34
MW
1077 (alist-cons-before
1078 'configure 'ignore-deprecations
1079 (lambda _
1080 (substitute* '("libgnomevfs/Makefile.in"
1081 "daemon/Makefile.in")
1082 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1083 #t)
db5127d8
MW
1084 (alist-cons-before
1085 'configure 'patch-test-async-cancel-to-never-fail
1086 (lambda _
1087 (substitute* "test/test-async-cancel.c"
1088 (("EXIT_FAILURE") "77")))
1089 %standard-phases))))
2e6ecc5c 1090 (inputs `(("libxml2" ,libxml2)
5698b8b8 1091 ("dbus-glib" ,dbus-glib)
5698b8b8
JD
1092 ("gconf" ,gconf)
1093 ("gnome-mime-data" ,gnome-mime-data)
1094 ("zlib" ,zlib)))
1095 (native-inputs
221ed17a
EB
1096 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1097 ("intltool" ,intltool)
5698b8b8
JD
1098 ("pkg-config" ,pkg-config)))
1099 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 1100 (synopsis "Access files and folders in GNOME applications")
9e12bc34
MW
1101 (description
1102 "GnomeVFS is the core library used to access files and folders in GNOME
1103applications. It provides a file system abstraction which allows applications
1104to access local and remote files with a single consistent API.")
5698b8b8
JD
1105 (license license:lgpl2.0+)))
1106
1107
1108
1109(define-public libgnome
1110 (package
1111 (name "libgnome")
1112 (version "2.32.1")
1113 (source (origin
1114 (method url-fetch)
b38e45d8
EB
1115 (uri (string-append "mirror://gnome/sources/" name "/"
1116 (version-major+minor version) "/"
1117 name "-" version ".tar.bz2"))
5698b8b8
JD
1118 (sha256
1119 (base32
1120 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1121 (build-system gnu-build-system)
1122 (arguments
1123 `(#:phases
1124 (alist-cons-before
1125 'configure 'enable-deprecated
2e6ecc5c 1126 (lambda _
5698b8b8
JD
1127 (substitute* "libgnome/Makefile.in"
1128 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1129 %standard-phases)))
25338e9f 1130 (inputs `(("libxml2" ,libxml2)))
5698b8b8 1131 (native-inputs
221ed17a
EB
1132 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1133 ("intltool" ,intltool)
5698b8b8
JD
1134 ("pkg-config" ,pkg-config)))
1135 ;; The following are listed as Required in the .pc file
1136 ;; (except for libcanberra -- which seems to be oversight on the part
1137 ;; of the upstream developers -- anything that links against libgnome,
1138 ;; must also link against libcanberra
1139 (propagated-inputs
1140 `(("libcanberra" ,libcanberra)
1141 ("libbonobo" ,libbonobo)
1142 ("gconf" ,gconf)
a640d3d5
LC
1143 ("gnome-vfs" ,gnome-vfs)
1144 ("popt" ,popt))) ;gnome-program.h includes popt.h
5698b8b8
JD
1145 (home-page "https://developer.gnome.org/libgnome/")
1146 (synopsis "Useful routines for building applications")
1147 (description "The libgnome library provides a number of useful routines
1148for building modern applications, including session management, activation of
1149files and URIs, and displaying help.")
1150 (license license:lgpl2.0+)))
1151
1152
1153(define-public libart-lgpl
1154 (package
1155 (name "libart-lgpl")
76c9b6aa 1156 (version "2.3.21")
5698b8b8
JD
1157 (source (origin
1158 (method url-fetch)
1159 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
1160 (string-append "mirror://gnome/sources/" upstream-name "/"
1161 (version-major+minor version) "/"
1162 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1163 (sha256
1164 (base32
76c9b6aa 1165 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
1166 (build-system gnu-build-system)
1167 (native-inputs
1168 `(("pkg-config" ,pkg-config)))
1169 (home-page "https://people.gnome.org/~mathieu/libart")
1170 (synopsis "2D drawing library")
2e6ecc5c 1171 (description "Libart is a 2D drawing library intended as a
5698b8b8
JD
1172high-quality vector-based 2D library with antialiasing and alpha composition.")
1173 (license license:lgpl2.0+)))
1174
1175
1176
1177(define-public libgnomecanvas
1178 (package
1179 (name "libgnomecanvas")
1180 (version "2.30.3")
1181 (source (origin
1182 (method url-fetch)
b38e45d8
EB
1183 (uri (string-append "mirror://gnome/sources/" name "/"
1184 (version-major+minor version) "/"
1185 name "-" version ".tar.gz"))
5698b8b8
JD
1186 (sha256
1187 (base32
1188 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1189 (build-system gnu-build-system)
1190 ;; Mentioned as Required in the .pc file
1191 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1192 ("gtk+" ,gtk+-2)))
1193 (native-inputs
1194 `(("intltool" ,intltool)
221ed17a 1195 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1196 ("pkg-config" ,pkg-config)))
1197 (home-page "https://developer.gnome.org/libgnomecanvas/")
1198 (synopsis "Flexible widget for creating interactive structured graphics")
1199 (description "The GnomeCanvas widget provides a flexible widget for
1200creating interactive structured graphics.")
1201 (license license:lgpl2.0+)))
1202
eadc734e
RW
1203(define-public libgnomecanvasmm
1204 (package
1205 (name "libgnomecanvasmm")
1206 (version "2.26.0")
1207 (source (origin
1208 (method url-fetch)
1209 (uri (string-append "mirror://gnome/sources/" name "/"
1210 (version-major+minor version) "/"
1211 name "-" version ".tar.bz2"))
1212 (sha256
1213 (base32
1214 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1215 (build-system gnu-build-system)
6e4512c4
SB
1216 (arguments
1217 '(#:configure-flags '("CXXFLAGS=-std=c++11"))) ; required by gtkmm
eadc734e
RW
1218 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1219 (native-inputs
1220 `(("gtkmm-2" ,gtkmm-2)
1221 ("pkg-config" ,pkg-config)))
1222 (home-page "http://gtkmm.org")
1223 (synopsis "C++ bindings to the GNOME Canvas library")
1224 (description "C++ bindings to the GNOME Canvas library.")
1225 (license license:lgpl2.0+)))
1226
5698b8b8
JD
1227(define-public libgnomeui
1228 (package
1229 (name "libgnomeui")
1230 (version "2.24.5")
1231 (source (origin
1232 (method url-fetch)
b38e45d8
EB
1233 (uri (string-append "mirror://gnome/sources/" name "/"
1234 (version-major+minor version) "/"
1235 name "-" version ".tar.bz2"))
5698b8b8
JD
1236 (sha256
1237 (base32
1238 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1239 (build-system gnu-build-system)
1240 ;; Mentioned as Required in the .pc file
0a38a497
AE
1241 (propagated-inputs `(("libbonoboui" ,libbonoboui)
1242 ("libgnome" ,libgnome)
1243 ("libgnomecanvas" ,libgnomecanvas)
5698b8b8 1244 ("libgnome-keyring" ,libgnome-keyring)))
0a38a497 1245 (inputs `(("libjpeg" ,libjpeg)
5698b8b8
JD
1246 ("popt" ,popt)
1247 ("libbonobo" ,libbonobo)
1248 ("libxml2" ,libxml2)
1249 ("libglade" ,libglade)))
1250 (native-inputs
221ed17a
EB
1251 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1252 ("intltool" ,intltool)
5698b8b8
JD
1253 ("pkg-config" ,pkg-config)))
1254 (home-page "https://developer.gnome.org/libgnomeui/")
1255 (synopsis "Additional widgets for applications")
35b9e423 1256 (description "The libgnomeui library provides additional widgets for
e881752c
AK
1257applications. Many of the widgets from libgnomeui have already been
1258ported to GTK+.")
5698b8b8
JD
1259 (license license:lgpl2.0+)))
1260
1261(define-public libglade
1262 (package
1263 (name "libglade")
1264 (version "2.6.4")
1265 (source (origin
1266 (method url-fetch)
b38e45d8
EB
1267 (uri (string-append "mirror://gnome/sources/" name "/"
1268 (version-major+minor version) "/"
1269 name "-" version ".tar.bz2"))
5698b8b8
JD
1270 (sha256
1271 (base32
1272 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1273 (build-system gnu-build-system)
1274 (inputs
92dcc23d
AE
1275 `(("python" ,python))) ;; needed for the optional libglade-convert program
1276 (propagated-inputs
5698b8b8 1277 `(("gtk+-2" ,gtk+-2)
92dcc23d 1278 ("libxml2" ,libxml2))) ; required by libglade-2.0.pc
5698b8b8
JD
1279 (native-inputs
1280 `(("pkg-config" ,pkg-config)))
1281 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1282 (synopsis "Load glade interfaces and access the glade built widgets")
1283 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1284graphical interfaces described in glade files and for accessing the
1285widgets built in the loading process.")
1286 (license license:gpl2+))) ; This is correct. GPL not LGPL
1287
1288(define-public libgnomeprint
eb497b66
LC
1289 ;; This library has been deprecated since 2006; see
1290 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1291 (package
1292 (name "libgnomeprint")
1293 (version "2.8.2")
1294 (source (origin
1295 (method url-fetch)
b38e45d8
EB
1296 (uri (string-append "mirror://gnome/sources/" name "/"
1297 (version-major+minor version) "/"
1298 name "-" version ".tar.bz2"))
5698b8b8
JD
1299 (sha256
1300 (base32
3edce2c9
RW
1301 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))
1302 (modules '((guix build utils)))
1303 (snippet
1304 ;; Adapt to newer freetype. As the package is deprecated, there
1305 ;; is no use in creating a patch and reporting it.
1306 '(substitute* '("libgnomeprint/gnome-font-face.c"
1307 "libgnomeprint/gnome-rfont.c")
1308 (("freetype/") "freetype2/")))))
5698b8b8
JD
1309 (build-system gnu-build-system)
1310 (inputs
1311 `(("popt" ,popt)
1312 ("libart-lgpl" ,libart-lgpl)
1313 ("gtk+" ,gtk+-2)
44add1ce 1314 ("libxml2" ,libxml2)))
5698b8b8
JD
1315 (native-inputs
1316 `(("intltool" ,intltool)
221ed17a 1317 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1318 ("pkg-config" ,pkg-config)))
1319 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1320 (synopsis "Printing framework for GNOME")
eb497b66
LC
1321 (description
1322 "GNOME-print was a printing framework for GNOME. It has been deprecated
1323since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1324 (license license:lgpl2.0+)))
1325
1326
1327(define-public libgnomeprintui
eb497b66 1328 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1329 (package
1330 (name "libgnomeprintui")
1331 (version "2.8.2")
1332 (source (origin
1333 (method url-fetch)
b38e45d8
EB
1334 (uri (string-append "mirror://gnome/sources/" name "/"
1335 (version-major+minor version) "/"
1336 name "-" version ".tar.bz2"))
5698b8b8
JD
1337 (sha256
1338 (base32
1339 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1340 (build-system gnu-build-system)
1341 ;; Mentioned as Required in the .pc file
1342 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1343 (inputs `(("gtk+" ,gtk+-2)
1344 ("glib" ,glib)
1345 ("gnome-icon-theme" ,gnome-icon-theme)
1346 ("libgnomecanvas" ,libgnomecanvas)
2e6ecc5c 1347 ("libxml2" ,libxml2)))
5698b8b8
JD
1348 (native-inputs
1349 `(("intltool" ,intltool)
1350 ("pkg-config" ,pkg-config)))
1351 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1352 (synopsis "Printing framework for GNOME")
eb497b66 1353 (description (package-description libgnomeprint))
5698b8b8
JD
1354 (license license:lgpl2.0+)))
1355
5698b8b8
JD
1356(define-public libbonoboui
1357 (package
1358 (name "libbonoboui")
1359 (version "2.24.5")
1360 (source (origin
1361 (method url-fetch)
b38e45d8
EB
1362 (uri (string-append "mirror://gnome/sources/" name "/"
1363 (version-major+minor version) "/"
1364 name "-" version ".tar.bz2"))
5698b8b8
JD
1365 (sha256
1366 (base32
1367 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1368 (build-system gnu-build-system)
1369 (arguments
1370 `(#:phases
1371 (alist-cons-before
1372 'check 'start-xserver
1373 (lambda* (#:key inputs #:allow-other-keys)
1374 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1375 (disp ":1"))
2e6ecc5c 1376
5698b8b8
JD
1377 (setenv "HOME" (getcwd))
1378 (setenv "DISPLAY" disp)
1379 ;; There must be a running X server and make check doesn't start one.
1380 ;; Therefore we must do it.
1381 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1382 %standard-phases)))
1383 ;; Mentioned as Required by the .pc file
1384 (propagated-inputs `(("libxml2" ,libxml2)))
1385 (inputs
1386 `(("popt" ,popt)
1387 ("pangox-compat" ,pangox-compat)
1388 ("libgnome" ,libgnome)
1389 ("libgnomecanvas" ,libgnomecanvas)
1390 ("libglade" ,libglade)))
1391 (native-inputs
221ed17a
EB
1392 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1393 ("intltool" ,intltool)
5698b8b8
JD
1394 ("xorg-server" ,xorg-server) ; For running the tests
1395 ("pkg-config" ,pkg-config)))
1396 (home-page "https://developer.gnome.org/libbonoboui/")
1397 (synopsis "Some user interface controls using Bonobo")
1398 (description "The Bonobo UI library provides a number of user interface
1399controls using the Bonobo component framework.")
1400 (license license:lgpl2.0+)))
1401
fecbf86e
SB
1402(define-public libwnck
1403 (package
1404 (name "libwnck")
1405 (version "3.14.0")
1406 (source (origin
1407 (method url-fetch)
1408 (uri (string-append "mirror://gnome/sources/" name "/"
1409 (version-major+minor version) "/"
1410 name "-" version ".tar.xz"))
1411 (sha256
1412 (base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
1413 (build-system gnu-build-system)
1414 (native-inputs
1415 `(("pkg-config" ,pkg-config)
1416 ("intltool" ,intltool)))
1417 (propagated-inputs
427476d5
SB
1418 `(("gtk+" ,gtk+)
1419 ("libxres" ,libxres)
1420 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1421 (home-page "https://developer.gnome.org/libwnck/")
1422 (synopsis "Window Navigator Construction Kit")
1423 (description
1424 "Libwnck is the Window Navigator Construction Kit, a library for use in
1425writing pagers, tasklists, and more generally applications that are dealing
1426with window management. It tries hard to respect the Extended Window Manager
1427Hints specification (EWMH).")
1428 (license license:lgpl2.0+)))
1429
1430;; stable version for gtk2, required by xfwm4.
1431(define-public libwnck-1
1432 (package (inherit libwnck)
1433 (name "libwnck")
1434 (version "2.30.7")
1435 (source (origin
1436 (method url-fetch)
1437 (uri (string-append "mirror://gnome/sources/" name "/"
1438 (version-major+minor version) "/"
1439 name "-" version ".tar.xz"))
1440 (sha256
1441 (base32
1442 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1443 (propagated-inputs
427476d5
SB
1444 `(("gtk+" ,gtk+-2)
1445 ("libxres" ,libxres)
1446 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1447
1448(define-public goffice
1449 (package
1450 (name "goffice")
1451 (version "0.10.14")
1452 (source (origin
1453 (method url-fetch)
b38e45d8
EB
1454 (uri (string-append "mirror://gnome/sources/" name "/"
1455 (version-major+minor version) "/"
1456 name "-" version ".tar.xz"))
b804c61e
JD
1457 (sha256
1458 (base32 "0kj0iwng6w4axm7yv2zy7myn5dhw5ilrlq2pzrjlm9i852ikqy60"))))
1459 (build-system gnu-build-system)
1460 (inputs
1461 `(("gtk+" ,gtk+)
1462 ("libgsf" ,libgsf)
1463 ("librsvg" ,librsvg)
1464 ("libxslt" ,libxslt)
1465 ("libxml2" ,libxml2)))
1466 (native-inputs
1467 `(("intltool" ,intltool)
f280cdb1 1468 ("glib" ,glib "bin")
b804c61e
JD
1469 ("pkg-config" ,pkg-config)))
1470 (home-page "https://developer.gnome.org/goffice/")
1471 (synopsis "Document-centric objects and utilities")
1472 (description "A GLib/GTK+ set of document-centric objects and utilities.")
2e6ecc5c 1473 (license
b804c61e
JD
1474 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1475 ;; Note: NOT LGPL
1476 (list license:gpl2 license:gpl3))))
1477
c024ae36
RW
1478(define-public goffice-0.8
1479 (package (inherit goffice)
1480 (version "0.8.17")
1481 (source (origin
1482 (method url-fetch)
1483 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1484 (version-major+minor version) "/"
1485 (package-name goffice) "-" version ".tar.xz"))
1486 (sha256
1487 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1488 (arguments
1489 `(#:phases
1490 (alist-cons-after
1491 'unpack 'fix-pcre-check
1492 (lambda _
1493 ;; Only glib.h can be included directly. See
1494 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1495 (substitute* "configure"
1496 (("glib/gregex\\.h") "glib.h")) #t)
1497 %standard-phases)))
1498 (propagated-inputs
1499 ;; libgoffice-0.8.pc mentions libgsf-1
1500 `(("libgsf" ,libgsf)))
1501 (inputs
1502 `(("gtk" ,gtk+-2)
1503 ,@(alist-delete "gtk" (package-inputs goffice))))))
1504
b804c61e
JD
1505(define-public gnumeric
1506 (package
1507 (name "gnumeric")
1508 (version "1.12.17")
1509 (source (origin
1510 (method url-fetch)
b38e45d8
EB
1511 (uri (string-append "mirror://gnome/sources/" name "/"
1512 (version-major+minor version) "/"
1513 name "-" version ".tar.xz"))
b804c61e
JD
1514 (sha256
1515 (base32
1516 "18bvc3phghr4p5440fp8hm6gvp53d3mqs9cyc637zpmk0b6bcp7c"))))
1517 (build-system gnu-build-system)
1518 (arguments
1519 `(;; The gnumeric developers don't worry much about failing tests.
1520 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
2e6ecc5c 1521 #:tests? #f
b804c61e
JD
1522 #:phases
1523 (alist-cons-before
1524 'configure 'pre-conf
1525 (lambda* (#:key outputs #:allow-other-keys)
1526 ;; Make install tries to write into the directory of goffice
1527 ;; I am informed that this only affects the possibility to embed a
1528 ;; spreadsheet inside an Abiword document. So presumably when we
1529 ;; package Abiword we'll have to refer it to this directory.
2e6ecc5c 1530 (substitute* "configure"
b804c61e 1531 (("^GOFFICE_PLUGINS_DIR=.*")
2e6ecc5c 1532 (string-append "GOFFICE_PLUGINS_DIR="
b804c61e
JD
1533 (assoc-ref outputs "out") "/goffice/plugins"))))
1534 %standard-phases)))
1535 (inputs
1536 `(("glib" ,glib)
1537 ("gtk+" ,gtk+)
1538 ("goffice" ,goffice)
1539 ("libgsf" ,libgsf)
1540 ("libxml2" ,libxml2)
1541 ("zlib" ,zlib)))
1542 (native-inputs
1543 `(("intltool" ,intltool)
b9663471 1544 ("glib:bin" ,glib "bin")
b804c61e
JD
1545 ("pkg-config" ,pkg-config)))
1546 (home-page "http://www.gnumeric.org")
66672a45
LC
1547 (synopsis "Spreadsheet application")
1548 (description
1549 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1550interoperable with other spreadsheet applications. It has a vast array of
1551features beyond typical spreadsheet functionality, such as support for linear
1552and non-linear solvers, statistical analysis, and telecommunication
1553engineering.")
1554 (license
b804c61e
JD
1555 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1556 (list license:gpl2 license:gpl3))))
6f885c05
FB
1557
1558(define-public gnome-themes-standard
1559 (package
1560 (name "gnome-themes-standard")
b64d218c 1561 (version "3.18.0")
6f885c05
FB
1562 (source
1563 (origin
1564 (method url-fetch)
2e6ecc5c 1565 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1566 (version-major+minor version) "/" name "-"
1567 version ".tar.xz"))
1568 (sha256
1569 (base32
b64d218c 1570 "1jxss8kxszhf66vic9n1sagczm5amm0mgxpzyxyjna15q82fnip6"))))
6f885c05
FB
1571 (build-system gnu-build-system)
1572 (inputs
1573 `(("gtk+" ,gtk+)
1574 ("gtk+-2" ,gtk+-2)
1575 ("librsvg" ,librsvg)
1576 ("libxml2" ,libxml2)
1577 ("glib" ,glib)))
1578 (native-inputs
1579 `(("intltool" ,intltool)
1580 ("glib:bin" ,glib "bin")
1581 ("pkg-config" ,pkg-config)))
1582 (arguments
1583 `(#:phases
1584 (alist-cons-before
1585 'build 'use-full-cache
1586 ;; Use librsvg's loaders.cache instead of the one provided by
1587 ;; gdk-pixbuf because the latter does not include support for SVG
1588 ;; files.
1589 (lambda* (#:key inputs #:allow-other-keys)
2e6ecc5c
AE
1590 (setenv "GDK_PIXBUF_MODULE_FILE"
1591 (car (find-files (assoc-ref inputs "librsvg")
6f885c05
FB
1592 "loaders\\.cache"))))
1593 %standard-phases)))
1594 (home-page "https://launchpad.net/gnome-themes-standard")
1595 (synopsis "Default GNOME 3 themes")
1596 (description
1597 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1598 (license license:lgpl2.1+)))
5a659a48 1599
df90c701
RW
1600(define-public seahorse
1601 (package
1602 (name "seahorse")
1603 (version "3.16.0")
1604 (source
1605 (origin
1606 (method url-fetch)
1607 (uri (string-append "mirror://gnome/sources/" name "/"
1608 (version-major+minor version) "/" name "-"
1609 version ".tar.xz"))
1610 (sha256
1611 (base32
1612 "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp"))))
1613 (build-system glib-or-gtk-build-system)
1614 (inputs
1615 `(("gtk+" ,gtk+)
1616 ("gcr" ,gcr)
1617 ("gnupg" ,gnupg-1)
1618 ("gpgme" ,gpgme)
4a1bf090 1619 ("openssh" ,openssh)
df90c701
RW
1620 ("libsecret" ,libsecret)))
1621 (native-inputs
1622 `(("intltool" ,intltool)
1623 ("glib:bin" ,glib "bin")
1624 ("itstool" ,itstool)
bcb354ad
SB
1625 ("pkg-config" ,pkg-config)
1626 ("xmllint" ,libxml2)))
df90c701
RW
1627 (home-page "https://launchpad.net/gnome-themes-standard")
1628 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1629 (description
1630 "Seahorse is a GNOME application for managing encryption keys and
1631passwords in the GNOME keyring.")
1632 (license license:gpl2+)))
1633
5a659a48
SB
1634(define-public vala
1635 (package
1636 (name "vala")
f4925a4f 1637 (version "0.30.0")
5a659a48
SB
1638 (source (origin
1639 (method url-fetch)
1640 (uri (string-append "mirror://gnome/sources/" name "/"
1641 (version-major+minor version) "/"
1642 name "-" version ".tar.xz"))
1643 (sha256
1644 (base32
f4925a4f 1645 "1pyyhfw3zzbhxfscbn8xz70dg6vx0kh8gshzikpxczhg01xk7w31"))))
5a659a48 1646 (build-system gnu-build-system)
1ea90625
SB
1647 (arguments
1648 '(#:phases
1649 (modify-phases %standard-phases
f4925a4f 1650 (add-before 'check 'pre-check
1ea90625
SB
1651 (lambda _
1652 (setenv "CC" "gcc")
f4925a4f
SB
1653 ;; For missing '/etc/machine-id'.
1654 (setenv "DBUS_FATAL_WARNINGS" "0")
1ea90625 1655 #t)))))
5a659a48
SB
1656 (native-inputs
1657 `(("pkg-config" ,pkg-config)
1658 ("flex" ,flex)
1659 ("bison" ,bison)
1660 ("xsltproc" ,libxslt)
1661 ("dbus" ,dbus) ; for dbus tests
1662 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1663 (propagated-inputs
1664 `(("glib" ,glib))) ; required by libvala-0.26.pc
1665 (home-page "http://live.gnome.org/Vala/")
1666 (synopsis "Compiler for the GObject type system")
1667 (description
1668 "Vala is a programming language that aims to bring modern programming
1669language features to GNOME developers without imposing any additional runtime
1670requirements and without using a different ABI compared to applications and
1671libraries written in C.")
1672 (license license:lgpl2.1+)))
ea57378f
SB
1673
1674(define-public vte
1675 (package
1676 (name "vte")
191e9b4e 1677 (version "0.40.0")
ea57378f
SB
1678 (source (origin
1679 (method url-fetch)
1680 (uri (string-append "mirror://gnome/sources/" name "/"
1681 (version-major+minor version) "/"
1682 name "-" version ".tar.xz"))
1683 (sha256
1684 (base32
191e9b4e 1685 "0lnq0bgkmsixjwmfacb2ch9qfjqjxa8zkk1hiv3l29kgca0n3nal"))))
ea57378f
SB
1686 (build-system gnu-build-system)
1687 (native-inputs
1688 `(("pkg-config" ,pkg-config)
1689 ("intltool" ,intltool)
1690 ("vala" ,vala)
1691 ("gobject-introspection" ,gobject-introspection)
1692 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1693 ("xmllint" ,libxml2)))
1694 (propagated-inputs
302393bc
LC
1695 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1696 ("gnutls" ,gnutls))) ;ditto
ea57378f
SB
1697 (home-page "http://www.gnome.org/")
1698 (synopsis "Virtual Terminal Emulator")
1699 (description
1700 "VTE is a library (libvte) implementing a terminal emulator widget for
1701GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1702gnome-terminal, but can also be used to embed a console/terminal in games,
1703editors, IDEs, etc.")
1704 (license license:lgpl2.1+)))
1705
1706;; stable version for gtk2, required by xfce4-terminal.
1707(define-public vte/gtk+-2
1708 (package (inherit vte)
1709 (name "vte")
1710 (version "0.28.2")
1711 (source (origin
1712 (method url-fetch)
1713 (uri (string-append "mirror://gnome/sources/" name "/"
1714 (version-major+minor version) "/"
1715 name "-" version ".tar.xz"))
1716 (sha256
1717 (base32
1718 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1719 (arguments
1720 '(#:configure-flags '("--disable-python")))
1721 (native-inputs
1722 `(("pkg-config" ,pkg-config)
1723 ("intltool" ,intltool)
1724 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1725 (propagated-inputs
1726 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1727 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1728
1729(define-public dconf
1730 (package
1731 (name "dconf")
1732 (version "0.22.0")
1733 (source (origin
1734 (method url-fetch)
1735 (uri (string-append
2e6ecc5c 1736 "mirror://gnome/sources/" name "/"
b47e1b20
FB
1737 (version-major+minor version) "/"
1738 name "-" version ".tar.xz"))
1739 (sha256
1740 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1741 (build-system glib-or-gtk-build-system)
1742 (inputs
1743 `(("gtk+" ,gtk+)
1744 ("glib" ,glib)
1745 ("dbus" ,dbus)
1746 ("libxml2" ,libxml2)))
1747 (native-inputs
1748 `(("libxslt" ,libxslt)
1749 ("docbook-xml" ,docbook-xml-4.2)
1750 ("docbook-xsl" ,docbook-xsl)
1751 ("intltool" ,intltool)
1752 ("pkg-config" ,pkg-config)))
1753 (arguments
1754 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1755 ; or /etc/machine-id.
1756 #:configure-flags
1757 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 1758 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
1759 (assoc-ref %outputs "out") "/lib")
1760 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1761 #:phases
1762 (alist-cons-before
1763 'configure 'fix-docbook
1764 (lambda* (#:key inputs #:allow-other-keys)
1765 (substitute* "docs/Makefile.in"
1766 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 1767 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
1768 "/xml/xsl/docbook-xsl-"
1769 ,(package-version docbook-xsl)
1770 "/manpages/docbook.xsl")))
2e6ecc5c
AE
1771 (setenv "XML_CATALOG_FILES"
1772 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
1773 "/xml/dtd/docbook/catalog.xml")))
1774 %standard-phases)))
1775 (home-page "https://developer.gnome.org/dconf")
1776 (synopsis "Low-level GNOME configuration system")
1777 (description "Dconf is a low-level configuration system. Its main purpose
1778is to provide a backend to GSettings on platforms that don't already have
1779configuration storage systems.")
1780 (license license:lgpl2.1)))
109da1c0
AE
1781
1782(define-public json-glib
1783 (package
1784 (name "json-glib")
4955ab7d 1785 (version "1.0.4")
109da1c0
AE
1786 (source (origin
1787 (method url-fetch)
1788 (uri (string-append "mirror://gnome/sources/" name "/"
1789 (version-major+minor version) "/"
1790 name "-" version ".tar.xz"))
1791 (sha256
1792 (base32
4955ab7d
SB
1793 "1k85vvb2prmk8aa8hmr2rp9rnbhffjgnmr18b13g24xxnqy5kww0"))
1794 (modules '((guix build utils)))
1795 (snippet
1796 ;; Don't duplicate test names.
1797 ;; <https://bugzilla.gnome.org/show_bug.cgi?id=755977>.
1798 '(substitute* "json-glib/tests/builder.c"
1799 (("\"/builder/complex\", test_builder_empty")
1800 "\"/builder/empty\", test_builder_empty")))))
109da1c0
AE
1801 (build-system gnu-build-system)
1802 (native-inputs
88c6b580 1803 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
1804 ("gobject-introspection" ,gobject-introspection)
1805 ("pkg-config" ,pkg-config)))
1806 (propagated-inputs
88c6b580 1807 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
1808 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1809 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
1810 (description
1811 "JSON-GLib is a C library based on GLib providing serialization and
1812deserialization support for the JavaScript Object Notation (JSON) format
1813described by RFC 4627. It provides parser and generator GObject classes and
1814various wrappers for the complex data types employed by JSON, such as arrays
1815and objects.")
109da1c0 1816 (license license:lgpl2.1+)))
6f96a359
SB
1817
1818(define-public libxklavier
1819 (package
1820 (name "libxklavier")
1821 (version "5.3")
1822 (source (origin
1823 (method url-fetch)
1824 (uri (string-append "mirror://gnome/sources/" name "/"
1825 version "/" name "-" version ".tar.xz"))
1826 (sha256
1827 (base32
1828 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1829 (build-system gnu-build-system)
1830 (arguments
1831 '(#:configure-flags
1832 (list (string-append "--with-xkb-base="
1833 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 1834 "/share/X11/xkb"))))
6f96a359
SB
1835 (native-inputs
1836 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1837 ("gobject-introspection" ,gobject-introspection)
1838 ("pkg-config" ,pkg-config)))
1839 (propagated-inputs
1840 ;; Required by libxklavier.pc.
1841 `(("glib" ,glib)
1842 ("libxml2" ,libxml2)))
1843 (inputs
1844 `(("iso-codes" ,iso-codes)
1845 ("libxi" ,libxi)
1846 ("libxkbfile" ,libxkbfile)
1847 ("xkbcomp" ,xkbcomp)
1848 ("xkeyboard-config" ,xkeyboard-config)))
1849 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1850 (synopsis "High-level API for X Keyboard Extension")
1851 (description
1852 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
1853Extension known as XKB. This library is intended to support XFree86 and other
1854commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
1855indicators etc).")
1856 (license license:lgpl2.0+)))
619936a4
LC
1857
1858(define-public python2-rsvg
1859 ;; XXX: This is actually a subset of gnome-python-desktop.
1860 (package
1861 (name "python2-rsvg")
1862 (version "2.32.0")
1863 (source
1864 (origin
1865 (method url-fetch)
1866 (uri (string-append
1867 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
1868 version ".tar.bz2"))
1869 (sha256
1870 (base32
1871 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
1872 (build-system gnu-build-system)
1873 (native-inputs
1874 `(("pkg-config" ,pkg-config)))
1875 (inputs
1876 `(("python" ,python-2)
1877 ("python2-pygtk" ,python2-pygtk)
1878 ("librsvg" ,librsvg)))
1879 (home-page "http://www.gnome.org")
1880 (synopsis "Python bindings to librsvg")
1881 (description
1882 "This packages provides Python bindings to librsvg, the SVG rendering
1883library.")
1884
1885 ;; This is the license of the rsvg bindings. The license of each module
1886 ;; of gnome-python-desktop is given in 'COPYING'.
1887 (license license:lgpl2.1+)))
a31a6d22 1888
f2ca414a
SB
1889(define-public glib-networking
1890 (package
1891 (name "glib-networking")
aa8789c0 1892 (version "2.46.1")
f2ca414a
SB
1893 (source (origin
1894 (method url-fetch)
1895 (uri (string-append "mirror://gnome/sources/glib-networking/"
1896 (version-major+minor version) "/"
1897 name "-" version ".tar.xz"))
1898 (sha256
1899 (base32
aa8789c0 1900 "1cchmi08jpjypgmm9i7xzh5qfg2q5k61kry9ns8mhw3z44a440ym"))
907f939b
SB
1901 (patches
1902 (list (search-patch "glib-networking-ssl-cert-file.patch")))))
f2ca414a
SB
1903 (build-system gnu-build-system)
1904 (arguments
1905 `(#:configure-flags
907f939b 1906 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
1907 #:phases
1908 (modify-phases %standard-phases
3a4de6b2 1909 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
1910 ;; Install GIO modules into $out/lib/gio/modules.
1911 (lambda _
1912 (substitute* "configure"
1913 (("GIO_MODULE_DIR=.*")
1914 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
1915 "/lib/gio/modules\n")))))
1916 (add-before 'check 'use-empty-ssl-cert-file
1917 (lambda _
1918 ;; The ca-certificates.crt is not available in the build
1919 ;; environment.
1920 (setenv "SSL_CERT_FILE" "/dev/null")
1921 #t)))))
f2ca414a
SB
1922 (native-inputs
1923 `(("pkg-config" ,pkg-config)
1924 ("intltool" ,intltool)))
1925 (inputs
1926 `(("glib" ,glib)
1927 ("gnutls" ,gnutls)
1928 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1929 ("p11-kit" ,p11-kit)))
1930 (home-page "http://www.gnome.org")
1931 (synopsis "Network-related GIO modules")
1932 (description
1933 "This package contains various network related extensions for the GIO
1934library.")
1935 (license license:lgpl2.0+)))
1936
ca649680 1937(define-public rest
4510b2da 1938 (package
ca649680 1939 (name "rest")
4510b2da
SB
1940 (version "0.7.93")
1941 (source (origin
1942 (method url-fetch)
1943 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
1944 (version-major+minor version) "/"
1945 name "-" version ".tar.xz"))
4510b2da
SB
1946 (sha256
1947 (base32
1948 "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))))
1949 (build-system gnu-build-system)
1950 (arguments
1951 '(#:tests? #f ; tests require internet connection
1952 #:configure-flags
1953 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
1954 (native-inputs
1955 `(("glib-mkenums" ,glib "bin")
1956 ("gobject-introspection" ,gobject-introspection)
1957 ("pkg-config" ,pkg-config)))
1958 (propagated-inputs
1959 ;; rest-0.7.pc refers to all these.
1960 `(("glib" ,glib)
1961 ("libsoup" ,libsoup)
1962 ("libxml2" ,libxml2)))
1963 (home-page "http://www.gtk.org/")
1964 (synopsis "RESTful web api query library")
1965 (description
1966 "This library was designed to make it easier to access web services that
1967claim to be \"RESTful\". It includes convenience wrappers for libsoup and
1968libxml to ease remote use of the RESTful API.")
1969 (license license:lgpl2.1+)))
1970
6e1bb642
SB
1971(define-public libsoup
1972 (package
1973 (name "libsoup")
fd730590 1974 (version "2.52.1")
6e1bb642
SB
1975 (source (origin
1976 (method url-fetch)
1977 (uri (string-append "mirror://gnome/sources/libsoup/"
1978 (version-major+minor version) "/"
1979 name "-" version ".tar.xz"))
1980 (sha256
1981 (base32
fd730590 1982 "0j6cnnpqqgnb9nj2r0j8j6898np4z503hrnpis7b4l5d8yhbq68f"))))
6e1bb642
SB
1983 (build-system gnu-build-system)
1984 (outputs '("out" "doc"))
1985 (arguments
b19d6805 1986 `(#:configure-flags
6e1bb642
SB
1987 (list (string-append "--with-html-dir="
1988 (assoc-ref %outputs "doc")
fd730590 1989 "/share/gtk-doc/html"))
6e1bb642
SB
1990 #:phases
1991 (modify-phases %standard-phases
3a4de6b2 1992 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
1993 ;; This test fails due to missing /etc/nsswitch.conf
1994 ;; in the build environment.
1995 (lambda _
1996 (substitute* "tests/socket-test.c"
1997 ((".*/sockets/unconnected.*") ""))
1998 #t))
907f939b 1999 (add-before 'check 'pre-check
6e1bb642 2000 (lambda _
907f939b
SB
2001 ;; The 'check-local' target runs 'env LANG=C sort -u',
2002 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2003 (unsetenv "LC_ALL")
907f939b
SB
2004 ;; The ca-certificates.crt is not available in the build
2005 ;; environment.
2006 (setenv "SSL_CERT_FILE" "/dev/null")
fd730590
SB
2007 #t))
2008 (replace 'install
2009 (lambda _
2010 (zero?
2011 (system* "make"
2012 ;; Install vala bindings into $out.
2013 (string-append "vapidir=" %output
2014 "/share/vala/vapi")
2015 "install")))))))
6e1bb642
SB
2016 (native-inputs
2017 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2018 ("gobject-introspection" ,gobject-introspection)
2019 ("intltool" ,intltool)
2020 ("pkg-config" ,pkg-config)
2021 ("python" ,python-wrapper)
fd730590 2022 ("vala" ,vala)
6e1bb642
SB
2023 ;; These are needed for the tests.
2024 ;; FIXME: Add PHP once available.
2025 ("curl" ,curl)
2026 ("httpd" ,httpd)))
2027 (propagated-inputs
2028 ;; libsoup-2.4.pc refers to all these.
2029 `(("glib" ,glib)
2030 ("libxml2" ,libxml2)))
2031 (inputs
2032 `(("glib-networking" ,glib-networking)
2033 ("sqlite" ,sqlite)))
2034 (home-page "https://live.gnome.org/LibSoup/")
2035 (synopsis "GLib-based HTTP Library")
2036 (description
2037 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2038and the GLib main loop, to integrate well with GNOME applications.")
2039 (license license:lgpl2.0+)))
2040
bba229a3
SB
2041(define-public libsecret
2042 (package
2043 (name "libsecret")
2044 (version "0.18")
2045 (source (origin
2046 (method url-fetch)
2047 (uri (string-append
2048 "mirror://gnome/sources/libsecret/" version "/"
2049 name "-" version ".tar.xz"))
2050 (sha256
2051 (base32
2052 "1qq29c01xxjyx5sl6y5h22w8r0ff4c73bph3gfx3h7mx5mvalwqc"))))
2053 (build-system gnu-build-system)
2054 (outputs '("out" "doc"))
2055 (arguments
2056 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2057 #:configure-flags
2058 (list (string-append "--with-html-dir="
2059 (assoc-ref %outputs "doc")
2060 "/share/gtk-doc/html"))))
2061 (native-inputs
2062 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2063 ("gobject-introspection" ,gobject-introspection)
2064 ("intltool" ,intltool)
2065 ("pkg-config" ,pkg-config)
2066 ("vala" ,vala)
2067 ("xsltproc" ,libxslt)))
2068 ;; These are needed for the tests.
2069 ;; FIXME: Add gjs once available.
2070 ;("dbus" ,dbus)
2071 ;("python2" ,python-2)
2072 ;("python2-dbus" ,python2-dbus)
2073 ;("python2-pygobject" ,python2-pygobject)
2074 ;("python2-pygobject-2" ,python2-pygobject-2)))
2075 (propagated-inputs
2076 `(("glib" ,glib))) ; required by libsecret-1.pc
2077 (inputs
2078 `(("docbook-xsl" ,docbook-xsl)
2079 ("libgcrypt" ,libgcrypt)
2080 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2081 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2082 (synopsis "GObject bindings for \"Secret Service\" API")
2083 (description
2084 "Libsecret is a GObject based library for storing and retrieving passwords
2085and other secrets. It communicates with the \"Secret Service\" using DBus.")
2086 (license license:lgpl2.1+)))
2087
a31a6d22
SB
2088(define-public gnome-mines
2089 (package
2090 (name "gnome-mines")
121398e7 2091 (version "3.16.0")
a31a6d22
SB
2092 (source
2093 (origin
2094 (method url-fetch)
2095 (uri (string-append "mirror://gnome/sources/" name "/"
2096 (version-major+minor version) "/"
2097 name "-" version ".tar.xz"))
2098 (sha256
2099 (base32
121398e7 2100 "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx"))))
a31a6d22
SB
2101 (build-system glib-or-gtk-build-system)
2102 (arguments
2103 '(#:phases
2104 (modify-phases %standard-phases
f8503e2b 2105 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2106 (lambda _
2107 (substitute* "configure"
2108 (("/bin/true") (which "true")))))
f8503e2b 2109 (add-after 'install 'wrap-pixbuf
a31a6d22
SB
2110 ;; Use librsvg's loaders.cache to support SVG files.
2111 (lambda* (#:key inputs outputs #:allow-other-keys)
2112 (let* ((out (assoc-ref outputs "out"))
2113 (prog (string-append out "/bin/gnome-mines"))
2114 (rsvg (assoc-ref inputs "librsvg"))
2115 (pixbuf (find-files rsvg "^loaders\\.cache$")))
2116 (wrap-program prog
2117 `("GDK_PIXBUF_MODULE_FILE" = ,pixbuf))))))))
2118 (native-inputs
2119 `(("pkg-config" ,pkg-config)
2120 ("desktop-file-utils" ,desktop-file-utils)
2121 ("intltool" ,intltool)
bcb354ad
SB
2122 ("itstool" ,itstool)
2123 ("xmllint" ,libxml2)))
a31a6d22
SB
2124 (inputs
2125 `(("gtk+" ,gtk+)
2126 ("librsvg" ,librsvg)))
2127 (home-page "https://wiki.gnome.org/Apps/Mines")
2128 (synopsis "Minesweeper game")
2129 (description
2130 "Mines (previously gnomine) is a puzzle game where you locate mines
2131floating in an ocean using only your brain and a little bit of luck.")
2132 (license license:gpl2+)))
88f70665
AW
2133
2134(define-public gnome-terminal
2135 (package
2136 (name "gnome-terminal")
2137 (version "3.16.0")
2138 (source
2139 (origin
2140 (method url-fetch)
2141 (uri (string-append "mirror://gnome/sources/" name "/"
2142 (version-major+minor version) "/"
2143 name "-" version ".tar.xz"))
2144 (sha256
2145 (base32
2146 "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd"))))
2147 (build-system glib-or-gtk-build-system)
2148 (arguments
2149 '(#:configure-flags
2150 (list "--disable-migration" "--disable-search-provider"
2151 "--without-nautilus-extension")
2152 #:phases
2153 (modify-phases %standard-phases
3a4de6b2 2154 (add-before 'configure 'patch-/bin/true
88f70665
AW
2155 (lambda _
2156 (substitute* "configure"
2157 (("/bin/true") (which "true"))))))))
2158 (native-inputs
2159 `(("pkg-config" ,pkg-config)
2160 ("desktop-file-utils" ,desktop-file-utils)
2161 ("intltool" ,intltool)
bcb354ad
SB
2162 ("itstool" ,itstool)
2163 ("xmllint" ,libxml2)))
68702167
MW
2164 (propagated-inputs
2165 `(("dconf" ,dconf)))
88f70665
AW
2166 (inputs
2167 `(("gtk+" ,gtk+)
2168 ("vte" ,vte)
2169 ("gnutls" ,gnutls)
88f70665
AW
2170 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2171 ("util-linux" ,util-linux)
2172 ("vala" ,vala)))
2173 (home-page "https://wiki.gnome.org/Apps/Terminal")
2174 (synopsis "Terminal emulator")
2175 (description
2176 "GNOME Terminal is a terminal emulator application for accessing a
2177UNIX shell environment which can be used to run programs available on
2178your system.
2179
2180It supports several profiles, multiple tabs and implements several
2181keyboard shortcuts.")
2182 (license license:gpl3+)))
75016d07
AW
2183
2184(define-public colord
2185 (package
2186 (name "colord")
2187 (version "1.1.8")
2188 (source
2189 (origin
2190 (method url-fetch)
2191 (uri (string-append "http://www.freedesktop.org/software/colord/releases/"
2192 name "-" version ".tar.xz"))
2193 (sha256
2194 (base32
2195 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2196 (build-system glib-or-gtk-build-system)
2197 (arguments
2198 '(;; The tests want to run valgrind. Punt for now.
2199 #:tests? #f
2200 #:configure-flags (list "--localstatedir=/var"
2201 ;; GUSB not packaged yet.
2202 "--disable-gusb"
2203 ;; No dep on systemd.
2204 "--disable-systemd-login"
2205 ;; Wants to install to global completion dir;
2206 ;; punt.
2207 "--disable-bash-completion"
2208 ;; colord-gtk not packaged yet.
2209 "--disable-session-example"
2210 "--with-daemon-user=colord"
2211 "--enable-sane"
2212 (string-append "--with-udevrulesdir="
2213 (assoc-ref %outputs "out")
2214 "/lib/udev/rules.d"))
2215 #:phases
2216 (modify-phases %standard-phases
3a4de6b2 2217 (add-before 'configure 'patch-/bin/true
75016d07
AW
2218 (lambda _
2219 (substitute* "configure"
2220 (("/bin/true") (which "true")))
2221 (substitute* "src/Makefile.in"
2222 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2223 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2224 (native-inputs
2225 `(("pkg-config" ,pkg-config)
2226 ("gobject-introspection" ,gobject-introspection)
2227 ("libtool" ,libtool)
2228 ("intltool" ,intltool)))
65cb2d61
SB
2229 (propagated-inputs
2230 ;; colord.pc refers to all these.
2231 `(("glib" ,glib)
2232 ("udev" ,eudev)
2233 ("lcms" ,lcms)))
75016d07 2234 (inputs
65cb2d61 2235 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2236 ("libgudev" ,libgudev)
75016d07 2237 ("libusb" ,libusb)
75016d07
AW
2238 ("sqlite" ,sqlite)
2239 ("polkit" ,polkit)
2240 ("sane-backends" ,sane-backends)))
2241 (home-page "http://www.freedesktop.org/software/colord/")
2242 (synopsis "Color management service")
2243 (description "Colord is a system service that makes it easy to manage,
2244install and generate color profiles to accurately color manage input and
2245output devices.")
2246 (license license:gpl2+)))
7b2abd00
AW
2247
2248(define-public geoclue
2249 (package
2250 (name "geoclue")
faf713b9 2251 (version "2.2.0")
7b2abd00
AW
2252 (source
2253 (origin
2254 (method url-fetch)
2255 (uri (string-append "http://www.freedesktop.org/software/" name
2256 "/releases/" (version-major+minor version) "/"
2257 name "-" version ".tar.xz"))
2258 (sha256
2259 (base32
faf713b9 2260 "0inlqx0zar498fhi9hh92p2g4kp8qy3zdl4z3vw6bjwp9w6xx454"))
7b2abd00
AW
2261 (patches (list (search-patch "geoclue-config.patch")))))
2262 (build-system glib-or-gtk-build-system)
2263 (arguments
2264 '(;; The tests want to run the system bus.
2265 #:tests? #f
2266 #:configure-flags (list ;; Disable bits requiring ModemManager.
2267 "--disable-3g-source"
2268 "--disable-cdma-source"
2269 "--disable-modem-gps-source"
2270 "--with-dbus-service-user=geoclue")
2271 #:phases
2272 (modify-phases %standard-phases
3a4de6b2 2273 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2274 (lambda _
2275 (substitute* "configure"
2276 (("/bin/true") (which "true"))))))))
2277 (native-inputs
2278 `(("pkg-config" ,pkg-config)
2279 ("intltool" ,intltool)))
2280 (inputs
2281 `(("glib" ,glib)
2282 ("json-glib" ,json-glib)
2283 ("libsoup" ,libsoup)))
2284 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2285 (synopsis "Geolocation service")
2286 (description "Geoclue is a D-Bus service that provides location
2287information. The primary goal of the Geoclue project is to make creating
2288location-aware applications as simple as possible, while the secondary goal is
2289to ensure that no application can access location information without explicit
e881752c 2290permission from user.")
7b2abd00 2291 (license license:gpl2+)))
2bfe7437
AW
2292
2293(define-public geocode-glib
2294 (package
2295 (name "geocode-glib")
2296 (version "3.16.0")
2297 (source (origin
2298 (method url-fetch)
2299 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2300 (version-major+minor version) "/"
2301 name "-" version ".tar.xz"))
2302 (sha256
2303 (base32
2304 "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj"))))
2305 (build-system gnu-build-system)
2306 (arguments
2307 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2308 ;; work for the builder. Punt.
2309 #:tests? #f
2bfe7437
AW
2310 ))
2311 (native-inputs
2312 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2313 ("gobject-introspection" ,gobject-introspection)
2314 ("pkg-config" ,pkg-config)
2315 ("json-glib" ,json-glib)))
2316 (propagated-inputs
2317 ;; geocode-glib-1.0.pc refers to GIO.
2318 `(("glib" ,glib)))
2319 (inputs
2320 `(("libsoup" ,libsoup)))
2321 (home-page "https://github.com/GNOME/geocode-glib/")
2322 (synopsis "Geocoding and reverse-geocoding library")
2323 (description
2324 "geocode-glib is a convenience library for geocoding (finding longitude,
2325and latitude from an address) and reverse geocoding (finding an address from
2326coordinates) using the Nominatim service. geocode-glib caches requests for
2327faster results and to avoid unnecessary server load.")
2328 (license license:lgpl2.0+)))
a1d5bb0e
AW
2329
2330(define-public upower
2331 (package
2332 (name "upower")
2333 (version "0.99.2")
2334 (source (origin
2335 (method url-fetch)
2336 (uri (string-append "http://upower.freedesktop.org/releases/"
2337 name "-" version ".tar.xz"))
2338 (sha256
2339 (base32
2340 "0vwlh20jmaf01m38kfn8yx2869a3clmkzlycrj99rf4nvwx4bp79"))
2341 (patches (list (search-patch "upower-builddir.patch")))))
2342 (build-system glib-or-gtk-build-system)
2343 (arguments
2344 '( ;; The tests want to contact the system bus, which can't be done in the
2345 ;; build environment. The integration test can run, but the last of
2346 ;; the up-self-tests doesn't. Disable tests for now.
2347 #:tests? #f
2348 #:configure-flags (list "--localstatedir=/var"
2349 (string-append "--with-udevrulesdir="
2350 (assoc-ref %outputs "out")
2351 "/lib/udev/rules.d"))
2352 #:phases
2353 (modify-phases %standard-phases
2354 (add-before 'configure 'patch-/bin/true
2355 (lambda _
2356 (substitute* "configure"
2357 (("/bin/true") (which "true")))))
2358 (add-before 'configure 'patch-integration-test
2359 (lambda _
2360 (substitute* "src/linux/integration-test"
2361 (("/usr/bin/python3") (which "python3"))))))))
2362 (native-inputs
2363 `(("pkg-config" ,pkg-config)
2364 ("intltool" ,intltool)
2365 ("python" ,python)))
2366 (inputs
ea226291
SB
2367 `(("dbus-glib" ,dbus-glib)
2368 ("libgudev" ,libgudev)
a1d5bb0e
AW
2369 ("libusb" ,libusb)))
2370 (home-page "http://upower.freedesktop.org/")
2371 (synopsis "System daemon for managing power devices")
2372 (description
2373 "UPower is an abstraction for enumerating power devices,
2374listening to device events and querying history and statistics. Any
2375application or service on the system can access the org.freedesktop.UPower
2376service via the system message bus.")
2377 (license license:gpl2+)))
6a180f6f
AW
2378
2379(define-public libgweather
2380 (package
2381 (name "libgweather")
b6072e6b 2382 (version "3.18.1")
6a180f6f
AW
2383 (source (origin
2384 (method url-fetch)
2385 (uri (string-append "mirror://gnome/sources/" name "/"
2386 (version-major+minor version) "/"
2387 name "-" version ".tar.xz"))
2388 (sha256
2389 (base32
b6072e6b 2390 "1l3sra84k5dnavbdbjyf1ar84xmjszpnnldih6mf45kniwpjkcll"))))
6a180f6f
AW
2391 (build-system gnu-build-system)
2392 (arguments
b6072e6b
SB
2393 `(#:configure-flags
2394 `(,(string-append "--with-zoneinfo-dir="
2395 (assoc-ref %build-inputs "tzdata")
2396 "/share/zoneinfo"))
2397 #:phases
2398 (modify-phases %standard-phases
2399 (add-before
2400 'check 'pre-check
2401 (lambda* (#:key inputs #:allow-other-keys)
2402 (substitute* "data/check-timezones.sh"
2403 (("/usr/share/zoneinfo/zone.tab")
2404 (string-append (assoc-ref inputs "tzdata")
2405 "/share/zoneinfo/zone.tab")))
2406 #t)))))
6a180f6f
AW
2407 (native-inputs
2408 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2409 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2410 ("pkg-config" ,pkg-config)
2411 ("intltool" ,intltool)))
2412 (propagated-inputs
2413 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2414 ;; libsoup.
2415 `(("gtk+" ,gtk+)
2416 ("gdk-pixbuf" ,gdk-pixbuf)
2417 ("libxml2" ,libxml2)
2418 ("libsoup" ,libsoup)))
2419 (inputs
2420 `(("tzdata" ,tzdata)
2421 ("geocode-glib" ,geocode-glib)))
2422 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2423 (synopsis "Location, time zone, and weather library for GNOME")
2424 (description
2425 "libgweather is a library to access weather information from online
2426services for numerous locations.")
2427 (license license:gpl2+)))
23a22af6
AW
2428
2429(define-public gnome-settings-daemon
2430 (package
2431 (name "gnome-settings-daemon")
2432 (version "3.16.0")
2433 (source
2434 (origin
2435 (method url-fetch)
2436 (uri (string-append "mirror://gnome/sources/" name "/"
2437 (version-major+minor version) "/"
2438 name "-" version ".tar.xz"))
2439 (sha256
2440 (base32
2441 "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3"))))
2442 (build-system glib-or-gtk-build-system)
2443 (arguments
ec2b1921 2444 `(;; Network manager not yet packaged.
23a22af6
AW
2445 #:configure-flags '("--disable-network-manager")
2446 ;; Color management test can't reach the colord system service.
2447 #:tests? #f))
2448 (native-inputs
2449 `(("pkg-config" ,pkg-config)
2450 ("intltool" ,intltool)
2451 ("xsltproc" ,libxslt)
2452 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2453 ("docbook-xml" ,docbook-xml-4.2)
2454 ("docbook-xsl" ,docbook-xsl)))
2455 (inputs
2456 `(("colord" ,colord)
ea226291 2457 ("libgudev" ,libgudev)
23a22af6
AW
2458 ("upower" ,upower)
2459 ("polkit" ,polkit)
2460 ("pulseaudio" ,pulseaudio)
2461 ("libcanberra" ,libcanberra)
2462 ("libx11" ,libx11)
2463 ("libxtst" ,libxtst)
2464 ("lcms" ,lcms)
2465 ("libnotify" ,libnotify)
2466 ("geoclue" ,geoclue)
2467 ("geocode-glib" ,geocode-glib)
2468 ("libgweather" ,libgweather)
2469 ("gnome-desktop" ,gnome-desktop)
2470 ("nss" ,nss)
2471 ("cups" ,cups)
ec2b1921
AW
2472 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2473 ("libwacom" ,libwacom)
2474 ("librsvg" ,librsvg)
2475 ("xf86-input-wacom" ,xf86-input-wacom)))
23a22af6
AW
2476 (home-page "http://www.gnome.org")
2477 (synopsis "GNOME settings daemon")
2478 (description
2479 "This package contains the daemon responsible for setting the various
2480parameters of a GNOME session and the applications that run under it. It
2481handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2482settings, themes, mouse settings, and startup of other daemons.")
2483 (license license:gpl2+)))
1e7464a9
DH
2484
2485(define-public totem-pl-parser
2486 (package
2487 (name "totem-pl-parser")
2488 (version "3.10.5")
2489 (source (origin
2490 (method url-fetch)
2491 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2492 "totem-pl-parser-" version ".tar.xz"))
2493 (sha256
2494 (base32
2495 "0dw1kiwmjwdjrighri0j9nagsnj44dllm0mamnfh4y5nc47mhim7"))))
2496 (build-system gnu-build-system)
2497 (arguments
2498 ;; FIXME: Tests require gvfs.
2499 `(#:tests? #f))
2500 (native-inputs
2501 `(("intltool" ,intltool)
2502 ("glib" ,glib "bin")
4d6d8281 2503 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2504 ("pkg-config" ,pkg-config)))
22a6ad6a 2505 (propagated-inputs
1e7464a9
DH
2506 `(("glib" ,glib)
2507 ("gmime" ,gmime)
22a6ad6a
MW
2508 ("libxml2" ,libxml2)))
2509 (inputs
2510 `(("libarchive" ,libarchive)
1e7464a9
DH
2511 ("libgcrypt" ,libgcrypt)
2512 ("nettle" ,nettle)
22a6ad6a 2513 ("libsoup" ,libsoup)))
1e7464a9
DH
2514 (home-page "https://projects.gnome.org/totem")
2515 (synopsis "Library to parse and save media playlists for GNOME")
2516 (description "Totem-pl-parser is a GObjects-based library to parse and save
2517playlists in a variety of formats.")
2518 (license license:lgpl2.0+)))
2519
6b888eff
SB
2520(define-public aisleriot
2521 (package
2522 (name "aisleriot")
2523 (version "3.16.1")
2524 (source (origin
2525 (method url-fetch)
2526 (uri (string-append "mirror://gnome/sources/" name "/"
2527 (version-major+minor version) "/"
2528 name "-" version ".tar.xz"))
2529 (sha256
2530 (base32
2531 "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h"))))
2532 (build-system glib-or-gtk-build-system)
2533 (arguments
2534 '(#:configure-flags
2535 '("--with-platform=gtk-only"
2536 "--with-card-theme-formats=svg")))
2537 (native-inputs
2538 `(("desktop-file-utils" ,desktop-file-utils)
2539 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2540 ("intltool" ,intltool)
2541 ("itstool" ,itstool)
2542 ("pkg-config" ,pkg-config)
2543 ("xmllint" ,libxml2)))
2544 (inputs
2545 `(("gtk+" ,gtk+)
2546 ("guile" ,guile-2.0)
2547 ("libcanberra" ,libcanberra)
2548 ("librsvg" ,librsvg)))
2549 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2550 (synopsis "Solitaire card games")
2551 (description
2552 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2553which are easy to play with the aid of a mouse.")
2554 (license license:gpl3+)))
4a79e256
SB
2555
2556(define-public devhelp
2557 (package
2558 (name "devhelp")
2559 (version "3.16.1")
2560 (source (origin
2561 (method url-fetch)
2562 (uri (string-append "mirror://gnome/sources/" name "/"
2563 (version-major+minor version) "/"
2564 name "-" version ".tar.xz"))
2565 (sha256
2566 (base32
2567 "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
2568 (build-system glib-or-gtk-build-system)
2569 (native-inputs
2570 `(("intltool" ,intltool)
2571 ("pkg-config" ,pkg-config)))
2572 (inputs
2573 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2574 ("webkitgtk" ,webkitgtk)))
2575 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2576 (synopsis "API documentation browser for GNOME")
2577 (description
2578 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2579natively with GTK-Doc (the API reference system developed for GTK+ and used
2580throughout GNOME for API documentation).")
2581 (license license:gpl2+)))
ba421ab7
MW
2582
2583(define-public cogl
2584 (package
2585 (name "cogl")
b3e91e02 2586 (version "1.22.0")
ba421ab7
MW
2587 (source
2588 (origin
2589 (method url-fetch)
2590 (uri (string-append "mirror://gnome/sources/" name "/"
2591 (version-major+minor version) "/"
2592 name "-" version ".tar.xz"))
2593 (sha256
2594 (base32
b3e91e02 2595 "14daxqrid5039xmq9yl4pk86awng1n9zgl6ysblhc4gw2ifzp7b8"))))
ba421ab7
MW
2596 (build-system gnu-build-system)
2597 (native-inputs
2598 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2599 ("gobject-introspection" ,gobject-introspection)
2600 ;;("xorg-server" ,xorg-server) ; for the test suite
2601 ("pkg-config" ,pkg-config)))
2602 (propagated-inputs
2603 `(("glib" ,glib)
2604 ("gdk-pixbuf" ,gdk-pixbuf)
2605 ("libx11" ,libx11)
2606 ("libxext" ,libxext)
2607 ("libxfixes" ,libxfixes)
2608 ("libxdamage" ,libxdamage)
2609 ("libxcomposite" ,libxcomposite)
2610 ("libxrandr" ,libxrandr)))
2611 (inputs
2612 `(("mesa" ,mesa)
2613 ("cairo" ,cairo)
2614 ("pango" ,pango)
2615 ("gstreamer" ,gstreamer)
2616 ("gst-plugins-base" ,gst-plugins-base)))
2617 (arguments
2618 `(#:configure-flags (list "--enable-cogl-gst"
2619 ;; Arrange to pass an absolute file name to
2620 ;; dlopen for libGL.so.
2621 (string-append "--with-gl-libname="
2622 (assoc-ref %build-inputs "mesa")
2623 "/lib/libGL.so"))
2624 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2625 ;; _FontTransOpen: Unable to Parse address
2626 ;; ${prefix}/share/fonts/X11/misc/
2627 #:tests? #f
2628 #; #:phases
2629 #;
2630 (modify-phases %standard-phases
2631 (add-before 'check 'start-xorg-server
2632 (lambda* (#:key inputs #:allow-other-keys)
2633 ;; The test suite requires a running X server.
2634 (system (format #f "~a/bin/Xvfb :1 &"
2635 (assoc-ref inputs "xorg-server")))
2636 (setenv "DISPLAY" ":1")
2637 #t)))))
2638 (home-page "http://www.cogl3d.org")
2639 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2640 (description
2641 "Cogl is a small library for using 3D graphics hardware to draw pretty
2642pictures. The API departs from the flat state machine style of OpenGL and is
2643designed to make it easy to write orthogonal components that can render
2644without stepping on each others toes.")
2645 (license (list license:expat ; most of the code
2646 license:bsd-3 ; cogl/cogl-point-in-poly.c
2647 license:sgifreeb2.0 ; cogl-path/tesselator/
2648 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2649
2650(define-public clutter
2651 (package
2652 (name "clutter")
0efd8be5 2653 (version "1.24.2")
fb182b8a
MW
2654 (source
2655 (origin
2656 (method url-fetch)
2657 (uri (string-append "mirror://gnome/sources/" name "/"
2658 (version-major+minor version) "/"
2659 name "-" version ".tar.xz"))
2660 (sha256
2661 (base32
0efd8be5 2662 "0qyd0cw17wi8gl6y9z2j2lh2gwghxskfmsdvw4ayrgxwnj6cjccn"))))
fb182b8a 2663 (build-system gnu-build-system)
600233bd
LC
2664 (outputs '("out"
2665 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2666 (native-inputs
2667 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2668 ("gobject-introspection" ,gobject-introspection)
2669 ("pkg-config" ,pkg-config)
2670 ("xsltproc" ,libxslt)))
2671 (propagated-inputs
2672 `(("cogl" ,cogl)
2673 ("cairo" ,cairo)
2674 ("atk" ,atk)
2675 ("gtk+" ,gtk+)
2676 ("json-glib" ,json-glib)
2677 ("glib" ,glib)
2678 ("libxcomposite" ,libxcomposite)
2679 ("libxdamage" ,libxdamage)
2680 ("libxext" ,libxext)
2681 ("xinput" ,xinput)))
2682 (inputs
2683 `(("libxkbcommon" ,libxkbcommon)
2684 ("udev" ,eudev)))
2685 (arguments
600233bd
LC
2686 `(#:configure-flags (list "--enable-x11-backend=yes"
2687
2688 ;; This produces share/doc/{clutter,cally}.
2689 (string-append "--with-html-dir="
2690 (assoc-ref %outputs "doc")
2691 "/share/doc"))
fb182b8a
MW
2692 ;; XXX FIXME: Get test suite working. It would probably fail in the
2693 ;; same way the cogl tests fail, since clutter is based on cogl.
2694 #:tests? #f))
2695 (home-page "http://www.clutter-project.org")
2696 (synopsis "Open GL based interactive canvas library")
2697 (description
2698 "Clutter is an Open GL based interactive canvas library, designed for
2699creating fast, mainly 2D single window applications such as media box UIs,
2700presentations, kiosk style applications and so on.")
2701 (license license:lgpl2.0+)))
bf7f17ba
MW
2702
2703(define-public clutter-gtk
2704 (package
2705 (name "clutter-gtk")
2706 (version "1.6.0")
2707 (source
2708 (origin
2709 (method url-fetch)
2710 (uri (string-append "mirror://gnome/sources/" name "/"
2711 (version-major+minor version) "/"
2712 name "-" version ".tar.xz"))
2713 (sha256
2714 (base32
2715 "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
2716 (build-system gnu-build-system)
2717 (native-inputs
2718 `(("pkg-config" ,pkg-config)
2719 ("gobject-introspection" ,gobject-introspection)))
2720 (inputs
2721 `(("clutter" ,clutter)
2722 ("gtk+" ,gtk+)))
2723 (home-page "http://www.clutter-project.org")
2724 (synopsis "Open GL based interactive canvas library GTK+ widget")
2725 (description
2726 "Clutter is an Open GL based interactive canvas library, designed for
2727creating fast, mainly 2D single window applications such as media box UIs,
2728presentations, kiosk style applications and so on.")
2729 (license license:lgpl2.0+)))
86d6a893
MW
2730
2731(define-public clutter-gst
2732 (package
2733 (name "clutter-gst")
2734 (version "3.0.6")
2735 (source
2736 (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
2743 "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
2744 (build-system gnu-build-system)
2745 (native-inputs
2746 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2747 ("pkg-config" ,pkg-config)
2748 ("gobject-introspection" ,gobject-introspection)))
2749 (inputs
2750 `(("clutter" ,clutter)
2751 ("gstreamer" ,gstreamer)
2752 ("gst-plugins-base" ,gst-plugins-base)))
2753 (home-page "http://www.clutter-project.org")
2754 (synopsis "Integration library for using GStreamer with Clutter")
2755 (description
2756 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2757It provides a GStreamer sink to upload frames to GL and an actor that
2758implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2759GL based interactive canvas library.")
2760 (license license:lgpl2.0+)))
607a04ae 2761
30dc88d9
LC
2762(define-public libchamplain
2763 (package
2764 (name "libchamplain")
2765 (version "0.12.10")
2766 (source (origin
2767 (method url-fetch)
2768 (uri (string-append
2769 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
2770 version ".tar.xz"))
2771 (sha256
2772 (base32
2773 "019b8scnx7d3wdylmpk9ihzh06w25b63x9cn8nhj6kjx82rcwlxz"))))
2774 (build-system gnu-build-system)
2775 (native-inputs `(("pkg-config" ,pkg-config)))
2776 (propagated-inputs
2777 `(("libsoup" ,libsoup)
2778 ("sqlite" ,sqlite)
2779 ("clutter" ,clutter)
2780 ("clutter-gtk" ,clutter-gtk)
2781 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
2782 ("cairo" ,cairo)
2783 ("gtk+3" ,gtk+)
2784 ("glib" ,glib)))
2785 (home-page "http://projects.gnome.org/libchamplain/")
2786 (synopsis "C library providing a ClutterActor to display maps")
2787 (description
2788 "libchamplain is a C library providing a ClutterActor to display maps.
2789It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
2790and Perl bindings are also available. It supports numerous free map sources
2791such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
2792 (license license:lgpl2.1+)))
2793
607a04ae
MW
2794(define-public gom
2795 (package
2796 (name "gom")
2797 (version "0.3.1")
2798 (source
2799 (origin
2800 (method url-fetch)
2801 (uri (string-append "mirror://gnome/sources/" name "/"
2802 (version-major+minor version) "/"
2803 name "-" version ".tar.xz"))
2804 (sha256
2805 (base32
2806 "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
2807 (build-system gnu-build-system)
2808 (native-inputs
2809 `(("intltool" ,intltool)
2810 ("pkg-config" ,pkg-config)
2811 ("gobject-introspection" ,gobject-introspection)))
2812 (inputs
2813 `(("glib" ,glib)
2814 ("gdk-pixbuf" ,gdk-pixbuf)
2815 ("sqlite" ,sqlite)))
2816 ;; XXX TODO: Figure out how to run the test suite.
2817 (arguments `(#:tests? #f))
2818 (home-page "https://wiki.gnome.org/Projects/Gom")
2819 (synopsis "Object mapper from GObjects to SQLite")
2820 (description
2821 "Gom provides an object mapper from GObjects to SQLite. It helps you
2822write applications that need to store structured data as well as make complex
2823queries upon that data.")
2824 (license license:lgpl2.1+)))
b7a3cf11
SB
2825
2826(define-public gnome-klotski
2827 (package
2828 (name "gnome-klotski")
2829 (version "3.16.1")
2830 (source (origin
2831 (method url-fetch)
2832 (uri (string-append "mirror://gnome/sources/" name "/"
2833 (version-major+minor version) "/"
2834 name "-" version ".tar.xz"))
2835 (sha256
2836 (base32
2837 "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
2838 (build-system glib-or-gtk-build-system)
2839 (native-inputs
2840 `(("desktop-file-utils" ,desktop-file-utils)
2841 ("intltool" ,intltool)
2842 ("itstool" ,itstool)
bcb354ad
SB
2843 ("pkg-config" ,pkg-config)
2844 ("xmllint" ,libxml2)))
b7a3cf11
SB
2845 (inputs
2846 `(("gtk+" ,gtk+)
2847 ("librsvg" ,librsvg)))
2848 (home-page "https://wiki.gnome.org/Apps/Klotski")
2849 (synopsis "Sliding block puzzles")
2850 (description
2851 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
2852the patterned block to the area bordered by green markers. To do so, you will
2853need to slide other blocks out of the way. Complete each puzzle in as few moves
2854as possible!")
2855 (license license:gpl2+)))
8d4791bf
MW
2856
2857(define-public grilo
2858 (package
2859 (name "grilo")
2860 (version "0.2.12")
2861 (source
2862 (origin
2863 (method url-fetch)
2864 (uri (string-append "mirror://gnome/sources/" name "/"
2865 (version-major+minor version) "/"
2866 name "-" version ".tar.xz"))
2867 (sha256
2868 (base32
2869 "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m"))))
2870 (build-system gnu-build-system)
2871 (native-inputs
2872 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2873 ("intltool" ,intltool)
2874 ("pkg-config" ,pkg-config)
2875 ("gobject-introspection" ,gobject-introspection)))
2876 (inputs
2877 `(("glib" ,glib)
2878 ("gtk+" ,gtk+)
2879 ("libxml2" ,libxml2)
2880 ;; XXX TODO: Add oauth
2881 ("libsoup" ,libsoup)
2882 ("totem-pl-parser" ,totem-pl-parser)))
2883 (arguments
2884 `(#:phases
2885 (modify-phases %standard-phases
2886 (add-after 'unpack 'fix-introspection-install-dir
2887 (lambda* (#:key outputs #:allow-other-keys)
2888 (let ((out (assoc-ref outputs "out")))
2889 (substitute* '("src/Makefile.in"
2890 "libs/pls/Makefile.in"
2891 "libs/net/Makefile.in")
2892 (("@INTROSPECTION_GIRDIR@")
2893 (string-append out "/share/gir-1.0/"))
2894 (("@INTROSPECTION_TYPELIBDIR@")
2895 (string-append out "/lib/girepository-1.0/")))))))))
2896 (native-search-paths
2897 (list (search-path-specification
2898 (variable "GRL_PLUGIN_PATH")
2899 (files (list (string-append "lib/grilo-"
2900 (version-major+minor version)))))))
2901 (home-page "http://live.gnome.org/Grilo")
2902 (synopsis "Framework for discovering and browsing media")
2903 (description
2904 "Grilo is a framework focused on making media discovery and browsing easy
2905for application developers.")
2906 (license license:lgpl2.1+)))
7b212526
MW
2907
2908(define-public grilo-plugins
2909 (package
2910 (name "grilo-plugins")
2911 (version "0.2.14")
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
2920 "1aykhc679pwn2qxsg19g8nh9hffpsqkgxcbqq7lcfn2hcwb83wfh"))))
2921 (build-system gnu-build-system)
2922 (native-inputs
2923 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2924 ("intltool" ,intltool)
2925 ("itstool" ,itstool)
2926 ("pkg-config" ,pkg-config)))
2927 (inputs
2928 `(("grilo" ,grilo)
2929 ("glib" ,glib)
2930 ("libxml2" ,libxml2)
2931 ("sqlite" ,sqlite)
2932 ("gom" ,gom)
2933 ;; XXX TODO: Add oauth
2934 ;; XXX TODO: Add goa
2935 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
2936 ;; XXX TODO: Add lua (needs help finding it)
2937 ("json-glib" ,json-glib)
2938 ("avahi" ,avahi)
2939 ("gmime" ,gmime)
2940 ("libsoup" ,libsoup)
2941 ("libarchive" ,libarchive)
2942 ("totem-pl-parser" ,totem-pl-parser)))
2943 (arguments
2944 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
2945 %output
2946 "/lib/grilo-"
2947 ,(version-major+minor version)))
2948 ;; XXX FIXME: Try to get the test suite working. It appears to require
2949 ;; a working system dbus. Inside the build container, all tests fail
2950 ;; with: "assertion failed: (source)". Outside of the build container,
2951 ;; most tests succeed.
2952 #:tests? #f))
2953 (home-page "http://live.gnome.org/Grilo")
2954 (synopsis "Plugins for the Grilo media discovery library")
2955 (description
2956 "Grilo is a framework focused on making media discovery and browsing easy
2957for application developers.")
2958 (license license:lgpl2.1+)))
4e3fc547
MW
2959
2960(define-public totem
2961 (package
2962 (name "totem")
2963 (version "3.16.1")
2964 (source
2965 (origin
2966 (method url-fetch)
2967 (uri (string-append "mirror://gnome/sources/" name "/"
2968 (version-major+minor version) "/"
2969 name "-" version ".tar.xz"))
2970 (sha256
2971 (base32
2972 "1nkm2i271ivq40hryrl6px39gbbvhmlx4vmvwvw4h3z8xh3013f9"))))
2973 (build-system glib-or-gtk-build-system)
2974 (native-inputs
2975 `(("pkg-config" ,pkg-config)
2976 ("desktop-file-utils" ,desktop-file-utils)
2977 ("gobject-introspection" ,gobject-introspection)
2978 ("intltool" ,intltool)
bcb354ad
SB
2979 ("itstool" ,itstool)
2980 ("xmllint" ,libxml2)))
4e3fc547
MW
2981 (propagated-inputs
2982 `(("dconf" ,dconf)))
2983 (inputs
2984 `(("gtk+" ,gtk+)
2985 ("gdk-pixbuf" ,gdk-pixbuf)
2986 ("atk" ,atk)
2987 ("cairo" ,cairo)
2988 ("dbus-glib" ,dbus-glib)
2989 ("clutter" ,clutter)
2990 ("clutter-gtk" ,clutter-gtk)
2991 ("clutter-gst" ,clutter-gst)
2992 ("xproto" ,xproto)
2993 ("libxxf86vm" ,libxxf86vm)
2994 ("libxtst" ,libxtst)
2995 ("libxrandr" ,libxrandr)
2996 ("libxml2" ,libxml2)
2997 ("libsoup" ,libsoup)
2998 ("libpeas" ,libpeas)
2999 ("librsvg" ,librsvg)
3000 ("lirc" ,lirc)
3001 ("gnome-desktop" ,gnome-desktop)
3002 ("gstreamer" ,gstreamer)
3003 ("gst-plugins-base" ,gst-plugins-base)
3004 ("gst-plugins-good" ,gst-plugins-good)
3005 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3006 ("adwaita-icon-theme" ,adwaita-icon-theme)
3007 ;; XXX We use python-2 because libxml2 because itstool (which needs
3008 ;; libxml) currently uses python-2.
3009 ("python" ,python-2)
3010 ("python-pygobject" ,python2-pygobject)
3011 ;; XXX TODO pylint needed for python support
3012 ("totem-pl-parser" ,totem-pl-parser)
3013 ("grilo" ,grilo)
3014 ("grilo-plugins" ,grilo-plugins)
3015 ("nettle" ,nettle)
3016 ("vala" ,vala)))
3017 (arguments
3018 `(#:phases
3019 (modify-phases %standard-phases
3020 (add-after
3021 'install 'wrap-totem
3022 (lambda* (#:key inputs outputs #:allow-other-keys)
3023 (let ((out (assoc-ref outputs "out"))
3024 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3025 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3026 (wrap-program (string-append out "/bin/totem")
3027 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3028 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3029 #t)))))
3030 (home-page "https://wiki.gnome.org/Apps/Videos")
3031 (synopsis "Simple media player for GNOME based on GStreamer")
3032 (description "Totem is a simple yet featureful media player for GNOME
3033which can read a large number of file formats.")
3034 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3035 ;; to be used and distributed together with GStreamer and Totem. See
3036 ;; file://COPYING in the source distribution for details.
3037 (license license:gpl2+)))
f0afb0c8
DH
3038
3039(define-public rhythmbox
3040 (package
3041 (name "rhythmbox")
3042 (version "3.2.1")
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
3050 "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
3051 (build-system glib-or-gtk-build-system)
3052 (arguments
3053 `(#:configure-flags
3054 (list "--enable-lirc"
3055 "--enable-python"
3056 "--enable-vala"
3057 "--with-brasero"
3058 "--with-gudev"
3059 "--with-libsecret")
3060 #:phases
3061 (modify-phases %standard-phases
3062 (add-after
3063 'install 'wrap-rhythmbox
3064 (lambda* (#:key inputs outputs #:allow-other-keys)
3065 (let ((out (assoc-ref outputs "out"))
3066 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3067 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3068 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3069 (wrap-program (string-append out "/bin/rhythmbox")
3070 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3071 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3072 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3073 #t)))))
3074 (propagated-inputs
3075 `(("dconf" ,dconf)))
3076 (native-inputs
bcb354ad
SB
3077 `(("itstool" ,itstool)
3078 ("intltool" ,intltool)
f0afb0c8
DH
3079 ("glib" ,glib "bin")
3080 ("gobject-introspection" ,gobject-introspection)
3081 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3082 ("pkg-config" ,pkg-config)
3083 ("xmllint" ,libxml2)))
f0afb0c8
DH
3084 (inputs
3085 `(("json-glib" ,json-glib)
3086 ("tdb" ,tdb)
3087 ("gnome-desktop" ,gnome-desktop)
3088 ("python" ,python)
3089 ("python-pygobject" ,python2-pygobject)
3090 ("vala" ,vala)
3091 ("gmime" ,gmime)
3092 ("nettle" ,nettle)
f0afb0c8
DH
3093 ("adwaita-icon-theme" ,adwaita-icon-theme)
3094 ("grilo" ,grilo)
3095 ("grilo-plugins" ,grilo-plugins)
3096 ("gstreamer" ,gstreamer)
3097 ("gst-plugins-base" ,gst-plugins-base)
3098 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3099 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3100 ("libgudev" ,libgudev)
f0afb0c8
DH
3101 ;;("libmtp" ,libmtp) FIXME: Not detected
3102 ("libsecret" ,libsecret)
3103 ("libsoup" ,libsoup)
3104 ("libnotify" ,libnotify)
3105 ("libpeas" ,libpeas)
3106 ("lirc" ,lirc)
3107 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3108 ;;("clutter" ,clutter)
3109 ;;("clutter-gtk" ,clutter-gtk)
3110 ;;("clutter-gst" ,clutter-gst)
3111 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3112 ("atk" ,atk)
3113 ("pango" ,pango)
3114 ("gtk+" ,gtk+)
3115 ;; TODO:
3116 ;; * libgpod
3117 ;; * mx
3118 ;; * webkit
3119 ("brasero" ,brasero)))
3120 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3121 (synopsis "Music player for GNOME")
3122 (description "Rhythmbox is a music playing application for GNOME. It
3123supports playlists, song ratings, and any codecs installed through gstreamer.")
3124 (license license:gpl2+)))
f70d8383
DH
3125
3126(define-public eog
3127 (package
3128 (name "eog")
3129 (version "3.16.2")
3130 (source (origin
3131 (method url-fetch)
3132 (uri (string-append "mirror://gnome/sources/" name "/"
3133 (version-major+minor version) "/"
3134 name "-" version ".tar.xz"))
3135 (sha256
3136 (base32
3137 "0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0"))))
3138 (build-system glib-or-gtk-build-system)
3139 (arguments
3140 `(#:phases
3141 (modify-phases %standard-phases
3142 (add-after
3143 'install 'wrap-eog
3144 (lambda* (#:key outputs #:allow-other-keys)
3145 (let ((out (assoc-ref outputs "out"))
3146 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3147 (wrap-program (string-append out "/bin/eog")
3148 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3149 #t)))))
3150 (propagated-inputs
3151 `(("dconf" ,dconf)))
3152 (native-inputs
3153 `(("intltool" ,intltool)
3154 ("itstool", itstool)
3155 ("glib" ,glib "bin")
3156 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3157 ("pkg-config" ,pkg-config)
3158 ("xmllint" ,libxml2)))
f70d8383
DH
3159 (inputs
3160 `(("gnome-desktop" ,gnome-desktop)
3161 ("shared-mime-info" ,shared-mime-info)
3162 ("adwaita-icon-theme" ,adwaita-icon-theme)
3163 ("exempi" ,exempi)
3164 ("lcms" ,lcms)
3165 ("libexif" ,libexif)
3166 ("libpeas" ,libpeas)
3167 ("libjpeg" ,libjpeg)
3168 ("librsvg" ,librsvg)
3169 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3170 ("gtk+" ,gtk+)))
3171 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3172 (synopsis "GNOME image viewer")
3173 (description "Eye of GNOME is the GNOME image viewer. It
3174supports image conversion, rotation, and slideshows.")
3175 (license license:gpl2+)))
41af5e7b
SB
3176
3177(define-public libgudev
3178 (package
3179 (name "libgudev")
3180 (version "230")
3181 (source (origin
3182 (method url-fetch)
3183 (uri (string-append "mirror://gnome/sources/" name "/"
3184 version "/" name "-" version ".tar.xz"))
3185 (sha256
3186 (base32
3187 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3188 (build-system gnu-build-system)
3189 (native-inputs
3190 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3191 ("gobject-introspection" ,gobject-introspection)
3192 ("pkg-config" ,pkg-config)))
3193 (propagated-inputs
3194 `(("glib" ,glib))) ; required by gudev-1.0.pc
3195 (inputs
3196 `(("udev" ,eudev)))
3197 (home-page "https://wiki.gnome.org/Projects/libgudev")
3198 (synopsis "GObject bindings for libudev")
3199 (description
3200 "This library provides GObject bindings for libudev. It was originally
3201part of udev-extras, then udev, then systemd. It's now a project on its own.")
3202 (license license:lgpl2.1+)))
3dc8828f
SB
3203
3204(define-public gvfs
3205 (package
3206 (name "gvfs")
3207 (version "1.24.1")
3208 (source (origin
3209 (method url-fetch)
3210 (uri (string-append "mirror://gnome/sources/" name "/"
3211 (version-major+minor version) "/"
3212 name "-" version ".tar.xz"))
3213 (sha256
3214 (base32
3215 "1ygiknnd24qgzds8wif3jns981mqr65lgjlxs5pw65cl3376g0yk"))))
3216 (build-system gnu-build-system)
3217 (arguments
3218 '(#:tests? #f)) ; XXX: requiring `pidof'
3219 (native-inputs
3220 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3221 ("intltool" ,intltool)
3222 ("pkg-config" ,pkg-config)
3223 ("xsltproc" ,libxslt)))
3224 (inputs
3225 `(("avahi" ,avahi)
3226 ("docbook-xml" ,docbook-xml-4.2)
3227 ("docbook-xsl" ,docbook-xsl)
3228 ("dbus" ,dbus)
3229 ("fuse" ,fuse)
3230 ("glib" ,glib)
3231 ("libarchive" ,libarchive)
3232 ("libbluray" ,libbluray)
3233 ("libcdio-paranoia" ,libcdio-paranoia)
3234 ("libgcrypt" ,libgcrypt)
3235 ("libgphoto2" ,libgphoto2)
3236 ("libgudev" ,libgudev)
3237 ("libmtp" ,libmtp)
3238 ("libsecret" ,libsecret)
3239 ("libsmbclient" ,samba)
3240 ("libsoup" ,libsoup)
3241 ("libxml2" ,libxml2)
3242 ("nettle" ,nettle) ; XXX: required by libarchive.pc
3243 ("udisks" ,udisks)))
3244 (home-page "https://wiki.gnome.org/gvfs/")
3245 (synopsis "Userspace virtual filesystem for GIO")
3246 (description
3247 "GVFS is a userspace virtual filesystem designed to work with the I/O
3248abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3249to all applications using the GIO API. It also supports exposing the GVFS
3250mounts to non-GIO applications using FUSE.
3251
3252GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3253DAV, and others.")
3254 (license license:lgpl2.0+)))
7c88b6bd
AW
3255
3256(define-public gusb
3257 (package
3258 (name "gusb")
3259 (version "0.2.6")
3260 (source (origin
3261 (method url-fetch)
3262 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3263 "gusb_"
3264 (string-join (string-split version #\.)
3265 "_")
3266 ".tar.gz"))
3267 (sha256
3268 (base32
3269 "0h9dzaza81b0mx5jfh5cnc31xdynl0jsxgwvl6vqyhy8mnwfi5nr"))))
3270 (build-system gnu-build-system)
3271 (native-inputs
3272 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3273 ("gobject-introspection" ,gobject-introspection)
3274 ("pkg-config" ,pkg-config)
3275 ("vala" ,vala)
3276 ("autoconf" ,autoconf)
3277 ("automake" ,automake)
3278 ("libtool" ,libtool)
3279 ("gtk-doc" ,gtk-doc)))
3280 (propagated-inputs
3281 ;; Both of these are required by gusb.pc.
3282 `(("glib" ,glib)
3283 ("libusb" ,libusb)))
3284 (arguments
3285 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3286 #:phases
3287 (modify-phases %standard-phases
3288 (add-after 'unpack 'autogen
3289 (lambda _
3290 (and (zero? (system* "gtkdocize"))
3291 (zero? (system* "autoreconf" "-vif"))))))))
3292 (home-page "https://github/hughsie/libgusb")
3293 (synopsis "A GLib binding for libusb1")
3294 (description
3295 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3296asynchronous control, bulk and interrupt transfers with proper cancellation
3297and integration into a mainloop. This makes it easy to integrate low level
3298USB transfers with your high-level application or system daemon.")
3299 (license license:lgpl2.1+)))
0abe1d86
AW
3300
3301(define-public simple-scan
3302 (package
3303 (name "simple-scan")
3304 (version "3.17.4")
3305 (source (origin
3306 (method url-fetch)
3307 (uri (string-append "https://launchpad.net/simple-scan/"
3308 (version-major+minor version) "/"
3309 version "/+download/simple-scan-"
3310 version ".tar.xz"))
3311 (sha256
3312 (base32
3313 "1pslbv45g01g039zj2b01k08f763kkhzqw8wwz7yh27m7bjllnx6"))))
3314 (build-system glib-or-gtk-build-system)
3315 (inputs
3316 `(("gtk" ,gtk+)
3317 ("zlib" ,zlib)
3318 ("cairo" ,cairo)
3319 ("gdk-pixbuf" ,gdk-pixbuf)
3320 ("gusb" ,gusb)
3321 ("libgudev" ,libgudev)
3322 ("libsane" ,sane-backends)))
3323 (native-inputs
3324 `(("intltool" ,intltool)
3325 ("itstool" ,itstool)
3326 ("colord" ,colord)
3327 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3328 ("pkg-config" ,pkg-config)
bcb354ad
SB
3329 ("vala" ,vala)
3330 ("xmllint" ,libxml2)))
0abe1d86
AW
3331 (home-page "https://launchpad.net/simple-scan")
3332 (synopsis "Document and image scanner")
3333 (description "Simple Scan is an easy-to-use application, designed to let
3334users connect their scanner and quickly have the image/document in an
3335appropriate format. Simple Scan is basically a frontend for SANE - which is
3336the same backend as XSANE uses. This means that all existing scanners will
3337work and the interface is well tested.")
3338 (license license:gpl3+)))
7549f984
SB
3339
3340(define-public epiphany
3341 (package
3342 (name "epiphany")
3343 (version "3.16.3")
3344 (source (origin
3345 (method url-fetch)
3346 (uri (string-append "mirror://gnome/sources/" name "/"
3347 (version-major+minor version) "/"
3348 name "-" version ".tar.xz"))
3349 (sha256
3350 (base32
3351 "1cch4c7gh6lq1i4g0gs39qa2csl4i8a3pcdfapcj5v3r0xvz29ym"))))
3352 (build-system glib-or-gtk-build-system)
3353 (arguments
3354 ;; FIXME: tests run under Xvfb, but fail with:
3355 ;; /src/bookmarks/ephy-bookmarks/create:
3356 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3357 ;; subsystem
3358 ;; FAIL
3359 '(#:tests? #f))
80a747c4
SB
3360 (propagated-inputs
3361 `(("dconf" ,dconf)))
7549f984
SB
3362 (native-inputs
3363 `(("intltool" ,intltool)
3364 ("itstool" ,itstool)
bcb354ad
SB
3365 ("pkg-config" ,pkg-config)
3366 ("xmllint" ,libxml2)))
7549f984
SB
3367 (inputs
3368 `(("avahi" ,avahi)
3369 ("gcr" ,gcr)
3370 ("glib-networking" ,glib-networking)
3371 ("gnome-desktop" ,gnome-desktop)
3372 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3373 ("iso-codes" ,iso-codes)
3374 ("libnotify" ,libnotify)
3375 ("libsecret" ,libsecret)
3376 ("libwnck" ,libwnck)
3377 ("libxslt" ,libxslt)
3378 ("nss" ,nss)
3379 ("sqlite" ,sqlite)
3380 ("webkitgtk" ,webkitgtk)))
3381 (home-page "https://wiki.gnome.org/Apps/Web")
3382 (synopsis "GNOME web browser")
3383 (description
3384 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3385principles are simplicity and standards compliance.")
3386 (license license:gpl2+)))
a3856b2c
SB
3387
3388(define-public d-feet
3389 (package
3390 (name "d-feet")
3391 (version "0.3.10")
3392 (source (origin
3393 (method url-fetch)
3394 (uri (string-append "mirror://gnome/sources/" name "/"
3395 (version-major+minor version) "/"
3396 name "-" version ".tar.xz"))
3397 (sha256
3398 (base32
3399 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3400 (build-system glib-or-gtk-build-system)
3401 (arguments
3402 '(#:out-of-source? #f ; tests need to run in the source directory.
3403 #:phases
3404 (modify-phases %standard-phases
3405 (add-before
3406 'check 'pre-check
86aff791 3407 (lambda _
a3856b2c
SB
3408 ;; The test suite requires a running X server.
3409 (system "Xvfb :1 &")
3410 (setenv "DISPLAY" ":1")
3411 ;; Don't fail on missing '/etc/machine-id'.
3412 (setenv "DBUS_FATAL_WARNINGS" "0")
3413 ;; tests.py and window.py don't meet E402:
3414 ;; E402 module level import not at top of file
3415 (substitute* "src/tests/Makefile"
86aff791
MW
3416 (("--ignore=E123") "--ignore=E123,E402"))
3417 #t))
a3856b2c
SB
3418 (add-after
3419 'install 'wrap-program
3420 (lambda* (#:key outputs #:allow-other-keys)
3421 (let ((prog (string-append (assoc-ref outputs "out")
3422 "/bin/d-feet")))
3423 (wrap-program prog
3424 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3425 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3426 #t))))))
a3856b2c
SB
3427 (native-inputs
3428 `(("intltool" ,intltool)
3429 ("itstool" ,itstool)
3430 ("pkg-config" ,pkg-config)
3431 ("python-pep8" ,python-pep8)
3432 ("xmllint" ,libxml2)
3433 ("xorg-server" ,xorg-server)))
3434 (inputs
3435 `(("gobject-introspection" ,gobject-introspection)
3436 ("gtk+" ,gtk+)
3437 ("python" ,python-wrapper)
3438 ("python-pygobject" ,python-pygobject)))
3439 (home-page "https://wiki.gnome.org/Apps/DFeet")
3440 (synopsis "D-Bus debugger")
3441 (description
3442 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3443of running programs and invoke methods on those interfaces.")
3444 (license license:gpl2+)))
c3b97bd9
SB
3445
3446(define-public yelp-xsl
3447 (package
3448 (name "yelp-xsl")
3449 (version "3.16.1")
3450 (source (origin
3451 (method url-fetch)
3452 (uri (string-append "mirror://gnome/sources/" name "/"
3453 (version-major+minor version) "/"
3454 name "-" version ".tar.xz"))
3455 (sha256
3456 (base32
3457 "0jhpni4mmfvj3xf57rjm61nc8d0x66hz9gd1ywws5lh39g6fx59j"))))
3458 (build-system gnu-build-system)
3459 (native-inputs
3460 `(("intltool" ,intltool)
3461 ("itstool" ,itstool)
3462 ("xmllint" ,libxml2)))
3463 (home-page "https://wiki.gnome.org/Apps/Yelp")
3464 (synopsis "XSL stylesheets for Yelp")
3465 (description
3466 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3467to format Docbook and Mallard documents.")
3468 (license license:gpl2+)))
de3d612a
SB
3469
3470(define-public yelp
3471 (package
3472 (name "yelp")
3473 (version "3.16.1")
3474 (source (origin
3475 (method url-fetch)
3476 (uri (string-append "mirror://gnome/sources/" name "/"
3477 (version-major+minor version) "/"
3478 name "-" version ".tar.xz"))
3479 (sha256
3480 (base32
3481 "1jk7aad1srykhgc3x0hd3q3dnlshmy1ak00alwjzaasxvy6hp0b0"))))
3482 (build-system glib-or-gtk-build-system)
3483 (native-inputs
3484 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3485 ("intltool" ,intltool)
3486 ("itstool" ,itstool)
3487 ("pkg-config" ,pkg-config)))
3488 (propagated-inputs
3489 `(("dconf" ,dconf)))
3490 (inputs
3491 `(("libxslt" ,libxslt)
3492 ("sqlite" ,sqlite)
3493 ("webkitgtk" ,webkitgtk-2.4)
3494 ("yelp-xsl" ,yelp-xsl)
3495 ;; XXX: need by libwebkitgtk-3.0.la.
3496 ("icu4c" ,(@ (gnu packages icu4c) icu4c))))
3497 (home-page "https://wiki.gnome.org/Apps/Yelp")
3498 (synopsis "GNOME help browser")
3499 (description
3500 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3501man, info, and HTML documents. It can locate documents according to the
3502freedesktop.org help system specification.")
3503 (license license:gpl2+)))
122d0d10
SB
3504
3505(define-public yelp-tools
3506 (package
3507 (name "yelp-tools")
3508 (version "3.16.1")
3509 (source (origin
3510 (method url-fetch)
3511 (uri (string-append "mirror://gnome/sources/" name "/"
3512 (version-major+minor version) "/"
3513 name "-" version ".tar.xz"))
3514 (sha256
3515 (base32
3516 "177qzvj5w019isdp41qxqcys2kc4sq2x6dqhqn6l9ipib8a6rxml"))))
3517 (build-system gnu-build-system)
3518 (native-inputs
3519 `(("pkg-config" ,pkg-config)))
3520 (propagated-inputs
3521 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3522 `(("itstool" ,itstool)
3523 ("xmllint" ,libxml2)
3524 ("xsltproc" ,libxslt)))
3525 (inputs
3526 `(("yelp-xsl" ,yelp-xsl)))
3527 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3528 (synopsis "Yelp documentation tools")
3529 (description
3530 "Yelp-tools is a collection of scripts and build utilities to help create,
3531manage, and publish documentation for Yelp and the web. Most of the heavy
3532lifting is done by packages like yelp-xsl and itstool. This package just
3533wraps things up in a developer-friendly way.")
3534 (license license:gpl2+)))
af8f9f23
RW
3535
3536(define-public libgee
3537 (package
3538 (name "libgee")
3539 (version "0.18.0")
3540 (source (origin
3541 (method url-fetch)
3542 (uri (string-append "mirror://gnome/sources/" name "/"
3543 (version-major+minor version) "/"
3544 name "-" version ".tar.xz"))
3545 (sha256
3546 (base32
3547 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3548 (build-system gnu-build-system)
3549 (arguments
3550 `(#:phases
3551 (modify-phases %standard-phases
3552 (add-after 'unpack 'fix-introspection-install-dir
3553 (lambda* (#:key outputs #:allow-other-keys)
3554 (let ((out (assoc-ref outputs "out")))
3555 (substitute* "gee/Makefile.in"
3556 (("@INTROSPECTION_GIRDIR@")
3557 (string-append out "/share/gir-1.0/"))
3558 (("@INTROSPECTION_TYPELIBDIR@")
3559 (string-append out "/lib/girepository-1.0/")))))))))
3560 (native-inputs
3561 `(("glib" ,glib "bin")
3562 ("pkg-config" ,pkg-config)))
3563 (inputs
3564 `(("glib" ,glib)
3565 ("gobject-introspection" ,gobject-introspection)))
3566 (home-page "https://wiki.gnome.org/Projects/Libgee")
3567 (synopsis "GObject collection library")
3568 (description
3569 "Libgee is a utility library providing GObject-based interfaces and
3570classes for commonly used data structures.")
3571 (license license:lgpl2.1+)))
b0f9c4b8
RW
3572
3573(define-public gexiv2
3574 (package
3575 (name "gexiv2")
3576 (version "0.10.3")
3577 (source (origin
3578 (method url-fetch)
3579 (uri (string-append "mirror://gnome/sources/" name "/"
3580 (version-major+minor version) "/"
3581 name "-" version ".tar.xz"))
3582 (sha256
3583 (base32
3584 "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))))
3585 (build-system gnu-build-system)
3586 (native-inputs
3587 `(("glib" ,glib "bin")
3588 ("pkg-config" ,pkg-config)))
3589 (propagated-inputs
3590 ;; Listed in "Requires" section of gexiv2.pc
3591 `(("exiv2" ,exiv2)))
3592 (inputs
3593 `(("glib" ,glib)
3594 ("gobject-introspection" ,gobject-introspection)))
3595 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3596 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3597 (description
3598 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3599allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3600metadata in photo and video files of various formats.")
3601 (license license:gpl2+)))
fed5a689
RW
3602
3603(define-public shotwell
3604 (package
3605 (name "shotwell")
3606 (version "0.22.0")
3607 (source (origin
3608 (method url-fetch)
3609 (uri (string-append "mirror://gnome/sources/" name "/"
3610 (version-major+minor version) "/"
3611 name "-" version ".tar.xz"))
3612 (sha256
3613 (base32
3614 "0cgqaaikrb10plhf6zxbgqy32zqpiwyi9dpx3g8yr261q72r5c81"))))
3615 (build-system glib-or-gtk-build-system)
3616 (arguments
3617 `(#:tests? #f ;no "check" target
3618 #:make-flags '("CC=gcc")
3619 #:configure-flags '("--disable-gsettings-convert-install")
3620 #:out-of-source? #f))
3621 (native-inputs
3622 `(("pkg-config" ,pkg-config)
3623 ("gettext" ,gnu-gettext)
3624 ("m4" ,m4)
3625 ("desktop-file-utils" ,desktop-file-utils)
3626 ("vala" ,vala)
3627 ("which" ,which)
3628 ("gnome-doc-utils" ,gnome-doc-utils)
3629 ;; FIXME: I only added python2-libxml2 because xml2po needs it at
3630 ;; runtime. It should be propagated.
3631 ("python2-libxml2" ,python2-libxml2)
3632 ("python2" ,python-2)))
3633 (inputs
3634 `(("gstreamer" ,gstreamer)
3635 ("gst-plugins-base" ,gst-plugins-base)
3636 ("gst-plugins-good" ,gst-plugins-good)
3637 ("libgee" ,libgee)
3638 ("gexiv2" ,gexiv2)
3639 ("libraw" ,libraw)
3640 ("json-glib" ,json-glib)
3641 ("rest" ,rest)
3642 ("webkitgtk" ,webkitgtk-2.4)
3643 ("sqlite" ,sqlite)
3644 ("libsoup" ,libsoup)
3645 ("libxml2" ,libxml2)
3646 ("gtk+" ,gtk+)
3647 ("libgudev" ,libgudev)
3648 ("libgphoto2" ,libgphoto2)))
3649 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3650 (synopsis "Photo manager for GNOME 3")
3651 (description
3652 "Shotwell is a digital photo manager designed for the GNOME desktop
3653environment. It allows you to import photos from disk or camera, organize
3654them by keywords and events, view them in full-window or fullscreen mode, and
3655share them with others via social networking and more.")
3656 (license license:lgpl2.1+)))
293ff8b2
DT
3657
3658(define-public file-roller
3659 (package
3660 (name "file-roller")
3661 (version "3.10.0")
3662 (source (origin
3663 (method url-fetch)
3664 (uri (string-append "mirror://gnome/sources/" name "/"
3665 (version-major+minor version) "/"
3666 name "-" version ".tar.xz"))
3667 (sha256
3668 (base32
3669 "04sg4yzz4c3hzgxhbgx2dc36lq5hjrnrmal2q0amfvhl0jcvp2fq"))))
3670 (build-system glib-or-gtk-build-system)
3671 (native-inputs
3672 `(("intltool" ,intltool)
3673 ("pkg-config" ,pkg-config)))
3674 ;; TODO: Add libnautilus.
3675 (inputs
3676 `(("gtk+" ,gtk+)
3677 ("gdk-pixbuf" ,gdk-pixbuf)
3678 ("json-glib" ,json-glib)
3679 ("libarchive" ,libarchive)
3680 ("libnotify" ,libnotify)
3681 ("nettle" ,nettle)
3682 ("itstool" ,itstool)
3683 ("libxml2" ,libxml2)))
3684 (synopsis "Graphical archive manager for GNOME")
3685 (description "File Roller is an archive manager for the GNOME desktop
3686environment that allows users to view, unpack, and create compressed archives
3687such as gzip tarballs.")
3688 (home-page "http://fileroller.sourceforge.net/")
3689 (license license:gpl2+)))
7ce49365
SB
3690
3691(define-public gnome-session
3692 (package
3693 (name "gnome-session")
3694 (version "3.18.1.2")
3695 (source (origin
3696 (method url-fetch)
3697 (uri (string-append "mirror://gnome/sources/" name "/"
3698 (version-major+minor version) "/"
3699 name "-" version ".tar.xz"))
3700 (sha256
3701 (base32
3702 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk"))))
3703 (build-system gnu-build-system)
3704 (native-inputs
3705 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3706 ("pkg-config" ,pkg-config)
3707 ("intltool" ,intltool)
3708 ("xsltproc" ,libxslt)))
3709 (inputs
3710 `(("gnome-desktop" ,gnome-desktop)
3711 ("gtk+" ,gtk+)
3712 ("json-glib" ,json-glib)
3713 ("libsm" ,libsm)
3714 ("libxcomposite" ,libxcomposite)
3715 ("libxtst" ,libxtst)
3716 ("mesa" ,mesa)
3717 ("upower" ,upower)
3718 ("xtrans" ,xtrans)))
3719 (synopsis "Session manager for GNOME")
3720 (description
3721 "This package contains the GNOME session manager, as well as a
3722configuration program to choose applications starting on login.")
3723 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3724 (license license:gpl2+)))
f47ba77e
SB
3725
3726(define-public gjs
3727 (package
3728 (name "gjs")
3729 (version "1.44.0")
3730 (source (origin
3731 (method url-fetch)
3732 (uri (string-append "mirror://gnome/sources/" name "/"
3733 (version-major+minor version) "/"
3734 name "-" version ".tar.xz"))
3735 (sha256
3736 (base32
3737 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
3738 (modules '((guix build utils)))
3739 (snippet '(substitute* "test/run-with-dbus"
3740 (("/bin/rm") "rm")))))
3741 (build-system gnu-build-system)
3742 (arguments
3743 '(#:phases
3744 (modify-phases %standard-phases
3745 (add-before
3746 'check 'pre-check
3747 (lambda _
3748 ;; For the missing /etc/machine-id.
3749 (setenv "DBUS_FATAL_WARNINGS" "0")
3750 #t)))))
3751 (native-inputs
3752 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
3753 ("pkg-config" ,pkg-config)
3754 ("xmllint" ,libxml2)
3755 ;; For testing
3756 ("dbus-launch" ,dbus)
3757 ("uuidgen" ,util-linux)
3758 ("xvfb" ,xorg-server)))
3759 (propagated-inputs
3760 ;; These are all in the Requires.private field of gjs-1.0.pc.
3761 `(("gobject-introspection" ,gobject-introspection)
3762 ("mozjs" ,mozjs-24)))
3763 (inputs
3764 `(("gtk+" ,gtk+)
3765 ("readline" ,readline)))
3766 (synopsis "Javascript bindings for GNOME")
3767 (home-page "http://live.gnome.org/Gjs")
3768 (description
3769 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
3770javascript engine and the GObject introspection framework.")
3771 (license license:gpl2+)))
329d731b
DH
3772
3773(define-public gedit
3774 (package
3775 (name "gedit")
3776 (version "3.18.1")
3777 (source (origin
3778 (method url-fetch)
3779 (uri (string-append "mirror://gnome/sources/" name "/"
3780 (version-major+minor version) "/"
3781 name "-" version ".tar.xz"))
3782 (sha256
3783 (base32
3784 "1kb3hglcppap7fdy7i7w2wk746kfz77jzs2lq6vrna8a3fqaxmas"))))
3785 (build-system glib-or-gtk-build-system)
3786 (arguments
3787 `(#:phases
3788 (modify-phases %standard-phases
3789 (add-after
3790 'install 'wrap-gedit
3791 (lambda* (#:key inputs outputs #:allow-other-keys)
3792 (let ((out (assoc-ref outputs "out"))
3793 (gtksourceview (assoc-ref inputs "gtksourceview"))
3794 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3795 (wrap-program (string-append out "/bin/gedit")
3796 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3797 ;; For language-specs.
3798 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
3799 "/share")))))
3800 #t)))))
3801 (propagated-inputs
3802 `(("dconf" ,dconf)))
3803 (native-inputs
3804 `(("intltool" ,intltool)
3805 ("itstool", itstool)
3806 ("gobject-introspection" ,gobject-introspection)
3807 ("pkg-config" ,pkg-config)))
3808 (inputs
3809 `(("glib" ,glib)
3810 ("gtk+" ,gtk+)
3811 ("gtksourceview" ,gtksourceview)
3812 ("libpeas" ,libpeas)
3813 ("libxml2" ,libxml2)
3814 ("enchant" ,enchant)
3815 ("iso-codes" ,iso-codes)
3816 ("python-pygobject" ,python-pygobject)
3817 ("python" ,python)
3818 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3819 ("libx11" ,libx11)
3820 ("vala" ,vala)
3821 ("adwaita-icon-theme" ,adwaita-icon-theme)
3822 ("libsoup" ,libsoup)
3823 ("gnome-desktop" ,gnome-desktop)))
3824 (home-page "https://wiki.gnome.org/Apps/Gedit")
3825 (synopsis "GNOME text editor")
3826 (description "While aiming at simplicity and ease of use, gedit is a
3827powerful general purpose text editor.")
3828 (license license:gpl2+)))
b7179363
SB
3829
3830(define-public zenity
3831 (package
3832 (name "zenity")
3833 (version "3.18.1.1")
3834 (source (origin
3835 (method url-fetch)
3836 (uri (string-append "mirror://gnome/sources/" name "/"
3837 (version-major+minor version) "/"
3838 name "-" version ".tar.xz"))
3839 (sha256
3840 (base32
3841 "02m88dfm1rziqk2ywakwib06wl1rxangbzih6cp8wllbyl1plcg6"))))
3842 (build-system gnu-build-system)
3843 (native-inputs
3844 `(("gettext" ,gnu-gettext)
3845 ("itstool" ,itstool)
3846 ("pkg-config" ,pkg-config)))
3847 (inputs
3848 `(("libnotify" ,libnotify)
3849 ("webkitgtk" ,webkitgtk)))
3850 (synopsis "Display graphical dialog boxes from shell scripts")
3851 (home-page "http://www.gnome.org")
3852 (description
3853 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
3854to display dialog boxes from the commandline and shell scripts.")
3855 (license license:lgpl2.0+)))
60c3627c
SB
3856
3857(define-public mutter
3858 (package
3859 (name "mutter")
3860 (version "3.18.1")
3861 (source (origin
3862 (method url-fetch)
3863 (uri (string-append "mirror://gnome/sources/" name "/"
3864 (version-major+minor version) "/"
3865 name "-" version ".tar.xz"))
3866 (sha256
3867 (base32
3868 "1ab959z5fgi4rq0ifxdqvpdbv99a2b1lfgvj327s9crdvk4ygpjg"))))
3869 (build-system gnu-build-system)
3870 (arguments
3871 '(#:configure-flags
3872 ;; XXX: build fails with [-Werror]:
3873 ;; backends/meta-cursor-renderer.c:112:5: error:
3874 ;; implicit declaration of function ?roundf?
3875 '("--enable-compile-warnings=minimum")))
3876 (native-inputs
3877 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3878 ("gobject-introspection" ,gobject-introspection)
3879 ("intltool" ,intltool)
3880 ("pkg-config" ,pkg-config)))
3881 (propagated-inputs
3882 ;; libmutter.pc refers to all these.
3883 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3884 ("gtk+" ,gtk+)
3885 ("clutter" ,clutter)))
3886 (inputs
3887 `(("gnome-desktop" ,gnome-desktop)
3888 ("libcanberra-gtk" ,libcanberra)
3889 ("libice" ,libice)
3890 ("libsm" ,libsm)
3891 ("libxkbcommon" ,libxkbcommon)
3892 ("libxkbfile" ,libxkbfile)
3893 ("mesa-headers" ,mesa-headers)
3894 ("startup-notification" ,startup-notification)
3895 ("upower-glib" ,upower)
3896 ("xkeyboard-config" ,xkeyboard-config)
3897 ("zenity" ,zenity)))
3898 (synopsis "Window and compositing manager")
3899 (home-page "http://www.gnome.org")
3900 (description
3901 "Mutter is a window and compositing manager that displays and manages your
3902desktop via OpenGL. Mutter combines a sophisticated display engine using the
3903Clutter toolkit with solid window-management logic inherited from the Metacity
3904window manager.")
3905 (license license:gpl2+)))
685cee87
SB
3906
3907(define-public gnome-online-accounts
3908 (package
3909 (name "gnome-online-accounts")
3910 (version "3.18.1")
3911 (source (origin
3912 (method url-fetch)
3913 (uri (string-append "mirror://gnome/sources/" name "/"
3914 (version-major+minor version) "/"
3915 name "-" version ".tar.xz"))
3916 (sha256
3917 (base32
3918 "1hn2fvkr1f4qh4gix03avnvk7pklvv5272ns8ws56v4kcq4nppkc"))))
3919 (build-system glib-or-gtk-build-system)
3920 (native-inputs
3921 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3922 ("gobject-introspection" ,gobject-introspection)
3923 ("intltool" ,intltool)
3924 ("pkg-config" ,pkg-config)
3925 ("xsltproc" ,libxslt)))
3926 (propagated-inputs
3927 `(("glib" ,glib) ; required by goa-1.0.pc
3928 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
3929 (inputs
3930 `(("docbook-xsl" ,docbook-xsl)
3931 ("json-glib" ,json-glib)
3932 ("libsecret" ,libsecret)
3933 ("rest" ,rest)
3934 ("telepathy-glib" ,telepathy-glib)
3935 ("webkitgtk" ,webkitgtk)))
3936 (synopsis "Single sign-on framework for GNOME")
3937 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
3938 (description
3939 "GNOME Online Accounts provides interfaces so that applications and
3940libraries in GNOME can access the user's online accounts. It has providers for
3941Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
3942Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
3943 (license license:lgpl2.0+)))
df217748
SB
3944
3945(define-public evolution-data-server
3946 (package
3947 (name "evolution-data-server")
3948 (version "3.18.2")
3949 (source (origin
3950 (method url-fetch)
3951 (uri (string-append "mirror://gnome/sources/" name "/"
3952 (version-major+minor version) "/"
3953 name "-" version ".tar.xz"))
3954 (sha256
3955 (base32
3956 "16yfd2a00xqxikyf6pi2awfd0qfq4hwdhfar88axrb4mycfgqhjr"))))
3957 (build-system gnu-build-system)
3958 (arguments
3959 '(;; XXX: fails with:
3960 ;; /Fixture/Calendar0: cleaning up pid xxxx
3961 ;; t status: 139)
3962 #:tests? #f
3963 #:configure-flags
3964 (let ((nss (assoc-ref %build-inputs "nss"))
3965 (nspr (assoc-ref %build-inputs "nspr")))
3966 (list "--disable-uoa" ; disable Ubuntu Online Accounts support
3967 "--disable-google" ; disable Google Contacts support
3968 (string-append "--with-nspr-includes=" nspr "/include/nspr")
3969 (string-append "--with-nss-includes=" nss "/include/nss")
3970 (string-append "--with-nss-libs=" nss "/lib/nss")))
3971 #:phases
3972 (modify-phases %standard-phases
3973 (add-before 'check 'pre-check
3974 (lambda _
3975 (substitute* "tests/test-server-utils/e-test-server-utils.c"
3976 (("/bin/rm") (which "rm")))
3977 #t)))))
3978 (native-inputs
3979 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
3980 ("gobject-introspection" ,gobject-introspection)
3981 ("gperf" ,gperf)
3982 ("intltool" ,intltool)
3983 ("pkg-config" ,pkg-config)
3984 ("python" ,python)))
3985 (propagated-inputs
3986 ;; These are all in the Requires field of .pc files.
3987 `(("gtk+" ,gtk+)
3988 ("libical" ,libical)
3989 ("libsecret" ,libsecret)
3990 ("libsoup" ,libsoup)
3991 ("nss" ,nss)
3992 ("sqlite" ,sqlite)))
3993 (inputs
3994 `(("bdb" ,bdb)
3995 ("gcr" ,gcr)
3996 ("gnome-online-accounts" ,gnome-online-accounts)
3997 ("libgweather" ,libgweather)))
3998 (synopsis "Store address books and calendars")
3999 (home-page "https://wiki.gnome.org/Apps/Evolution")
4000 (description
4001 "This package provides a unified backend for programs that work with
4002contacts, tasks, and calendar information. It was originally developed for
4003Evolution (hence the name), but is now used by other packages as well.")
4004 (license license:lgpl2.0)))