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