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