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