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