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