gnu: Add gedit.
[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")
2380 (version "3.16.0")
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
2388 "0x1z6wv7hdw2ivlkifcbd940zyrnvqvc4zh2drgvd2r6jmd7bjza"))))
2389 (build-system gnu-build-system)
2390 (arguments
2391 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2392 ;; work for the builder. Punt.
2393 #:tests? #f
6a180f6f
AW
2394 #:configure-flags
2395 `(;; No introspection for now, as it wants to install to
2396 ;; gobject-introspection's own directory and I don't know how to easily
2397 ;; override this.
2398 "--enable-introspection=no"
2399 ,(string-append "--with-zoneinfo-dir="
2400 (assoc-ref %build-inputs "tzdata")
2401 "/share/zoneinfo"))))
2402 (native-inputs
2403 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2404 ("pkg-config" ,pkg-config)
2405 ("intltool" ,intltool)))
2406 (propagated-inputs
2407 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2408 ;; libsoup.
2409 `(("gtk+" ,gtk+)
2410 ("gdk-pixbuf" ,gdk-pixbuf)
2411 ("libxml2" ,libxml2)
2412 ("libsoup" ,libsoup)))
2413 (inputs
2414 `(("tzdata" ,tzdata)
2415 ("geocode-glib" ,geocode-glib)))
2416 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2417 (synopsis "Location, time zone, and weather library for GNOME")
2418 (description
2419 "libgweather is a library to access weather information from online
2420services for numerous locations.")
2421 (license license:gpl2+)))
23a22af6
AW
2422
2423(define-public gnome-settings-daemon
2424 (package
2425 (name "gnome-settings-daemon")
2426 (version "3.16.0")
2427 (source
2428 (origin
2429 (method url-fetch)
2430 (uri (string-append "mirror://gnome/sources/" name "/"
2431 (version-major+minor version) "/"
2432 name "-" version ".tar.xz"))
2433 (sha256
2434 (base32
2435 "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3"))))
2436 (build-system glib-or-gtk-build-system)
2437 (arguments
ec2b1921 2438 `(;; Network manager not yet packaged.
23a22af6
AW
2439 #:configure-flags '("--disable-network-manager")
2440 ;; Color management test can't reach the colord system service.
2441 #:tests? #f))
2442 (native-inputs
2443 `(("pkg-config" ,pkg-config)
2444 ("intltool" ,intltool)
2445 ("xsltproc" ,libxslt)
2446 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2447 ("docbook-xml" ,docbook-xml-4.2)
2448 ("docbook-xsl" ,docbook-xsl)))
2449 (inputs
2450 `(("colord" ,colord)
ea226291 2451 ("libgudev" ,libgudev)
23a22af6
AW
2452 ("upower" ,upower)
2453 ("polkit" ,polkit)
2454 ("pulseaudio" ,pulseaudio)
2455 ("libcanberra" ,libcanberra)
2456 ("libx11" ,libx11)
2457 ("libxtst" ,libxtst)
2458 ("lcms" ,lcms)
2459 ("libnotify" ,libnotify)
2460 ("geoclue" ,geoclue)
2461 ("geocode-glib" ,geocode-glib)
2462 ("libgweather" ,libgweather)
2463 ("gnome-desktop" ,gnome-desktop)
2464 ("nss" ,nss)
2465 ("cups" ,cups)
ec2b1921
AW
2466 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2467 ("libwacom" ,libwacom)
2468 ("librsvg" ,librsvg)
2469 ("xf86-input-wacom" ,xf86-input-wacom)))
23a22af6
AW
2470 (home-page "http://www.gnome.org")
2471 (synopsis "GNOME settings daemon")
2472 (description
2473 "This package contains the daemon responsible for setting the various
2474parameters of a GNOME session and the applications that run under it. It
2475handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2476settings, themes, mouse settings, and startup of other daemons.")
2477 (license license:gpl2+)))
1e7464a9
DH
2478
2479(define-public totem-pl-parser
2480 (package
2481 (name "totem-pl-parser")
2482 (version "3.10.5")
2483 (source (origin
2484 (method url-fetch)
2485 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2486 "totem-pl-parser-" version ".tar.xz"))
2487 (sha256
2488 (base32
2489 "0dw1kiwmjwdjrighri0j9nagsnj44dllm0mamnfh4y5nc47mhim7"))))
2490 (build-system gnu-build-system)
2491 (arguments
2492 ;; FIXME: Tests require gvfs.
2493 `(#:tests? #f))
2494 (native-inputs
2495 `(("intltool" ,intltool)
2496 ("glib" ,glib "bin")
4d6d8281 2497 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2498 ("pkg-config" ,pkg-config)))
22a6ad6a 2499 (propagated-inputs
1e7464a9
DH
2500 `(("glib" ,glib)
2501 ("gmime" ,gmime)
22a6ad6a
MW
2502 ("libxml2" ,libxml2)))
2503 (inputs
2504 `(("libarchive" ,libarchive)
1e7464a9
DH
2505 ("libgcrypt" ,libgcrypt)
2506 ("nettle" ,nettle)
22a6ad6a 2507 ("libsoup" ,libsoup)))
1e7464a9
DH
2508 (home-page "https://projects.gnome.org/totem")
2509 (synopsis "Library to parse and save media playlists for GNOME")
2510 (description "Totem-pl-parser is a GObjects-based library to parse and save
2511playlists in a variety of formats.")
2512 (license license:lgpl2.0+)))
2513
6b888eff
SB
2514(define-public aisleriot
2515 (package
2516 (name "aisleriot")
2517 (version "3.16.1")
2518 (source (origin
2519 (method url-fetch)
2520 (uri (string-append "mirror://gnome/sources/" name "/"
2521 (version-major+minor version) "/"
2522 name "-" version ".tar.xz"))
2523 (sha256
2524 (base32
2525 "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h"))))
2526 (build-system glib-or-gtk-build-system)
2527 (arguments
2528 '(#:configure-flags
2529 '("--with-platform=gtk-only"
2530 "--with-card-theme-formats=svg")))
2531 (native-inputs
2532 `(("desktop-file-utils" ,desktop-file-utils)
2533 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2534 ("intltool" ,intltool)
2535 ("itstool" ,itstool)
2536 ("pkg-config" ,pkg-config)
2537 ("xmllint" ,libxml2)))
2538 (inputs
2539 `(("gtk+" ,gtk+)
2540 ("guile" ,guile-2.0)
2541 ("libcanberra" ,libcanberra)
2542 ("librsvg" ,librsvg)))
2543 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2544 (synopsis "Solitaire card games")
2545 (description
2546 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2547which are easy to play with the aid of a mouse.")
2548 (license license:gpl3+)))
4a79e256
SB
2549
2550(define-public devhelp
2551 (package
2552 (name "devhelp")
2553 (version "3.16.1")
2554 (source (origin
2555 (method url-fetch)
2556 (uri (string-append "mirror://gnome/sources/" name "/"
2557 (version-major+minor version) "/"
2558 name "-" version ".tar.xz"))
2559 (sha256
2560 (base32
2561 "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
2562 (build-system glib-or-gtk-build-system)
2563 (native-inputs
2564 `(("intltool" ,intltool)
2565 ("pkg-config" ,pkg-config)))
2566 (inputs
2567 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2568 ("webkitgtk" ,webkitgtk)))
2569 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2570 (synopsis "API documentation browser for GNOME")
2571 (description
2572 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2573natively with GTK-Doc (the API reference system developed for GTK+ and used
2574throughout GNOME for API documentation).")
2575 (license license:gpl2+)))
ba421ab7
MW
2576
2577(define-public cogl
2578 (package
2579 (name "cogl")
b3e91e02 2580 (version "1.22.0")
ba421ab7
MW
2581 (source
2582 (origin
2583 (method url-fetch)
2584 (uri (string-append "mirror://gnome/sources/" name "/"
2585 (version-major+minor version) "/"
2586 name "-" version ".tar.xz"))
2587 (sha256
2588 (base32
b3e91e02 2589 "14daxqrid5039xmq9yl4pk86awng1n9zgl6ysblhc4gw2ifzp7b8"))))
ba421ab7
MW
2590 (build-system gnu-build-system)
2591 (native-inputs
2592 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2593 ("gobject-introspection" ,gobject-introspection)
2594 ;;("xorg-server" ,xorg-server) ; for the test suite
2595 ("pkg-config" ,pkg-config)))
2596 (propagated-inputs
2597 `(("glib" ,glib)
2598 ("gdk-pixbuf" ,gdk-pixbuf)
2599 ("libx11" ,libx11)
2600 ("libxext" ,libxext)
2601 ("libxfixes" ,libxfixes)
2602 ("libxdamage" ,libxdamage)
2603 ("libxcomposite" ,libxcomposite)
2604 ("libxrandr" ,libxrandr)))
2605 (inputs
2606 `(("mesa" ,mesa)
2607 ("cairo" ,cairo)
2608 ("pango" ,pango)
2609 ("gstreamer" ,gstreamer)
2610 ("gst-plugins-base" ,gst-plugins-base)))
2611 (arguments
2612 `(#:configure-flags (list "--enable-cogl-gst"
2613 ;; Arrange to pass an absolute file name to
2614 ;; dlopen for libGL.so.
2615 (string-append "--with-gl-libname="
2616 (assoc-ref %build-inputs "mesa")
2617 "/lib/libGL.so"))
2618 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2619 ;; _FontTransOpen: Unable to Parse address
2620 ;; ${prefix}/share/fonts/X11/misc/
2621 #:tests? #f
2622 #; #:phases
2623 #;
2624 (modify-phases %standard-phases
2625 (add-before 'check 'start-xorg-server
2626 (lambda* (#:key inputs #:allow-other-keys)
2627 ;; The test suite requires a running X server.
2628 (system (format #f "~a/bin/Xvfb :1 &"
2629 (assoc-ref inputs "xorg-server")))
2630 (setenv "DISPLAY" ":1")
2631 #t)))))
2632 (home-page "http://www.cogl3d.org")
2633 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2634 (description
2635 "Cogl is a small library for using 3D graphics hardware to draw pretty
2636pictures. The API departs from the flat state machine style of OpenGL and is
2637designed to make it easy to write orthogonal components that can render
2638without stepping on each others toes.")
2639 (license (list license:expat ; most of the code
2640 license:bsd-3 ; cogl/cogl-point-in-poly.c
2641 license:sgifreeb2.0 ; cogl-path/tesselator/
2642 license:asl2.0)))) ; examples/android/
fb182b8a
MW
2643
2644(define-public clutter
2645 (package
2646 (name "clutter")
0efd8be5 2647 (version "1.24.2")
fb182b8a
MW
2648 (source
2649 (origin
2650 (method url-fetch)
2651 (uri (string-append "mirror://gnome/sources/" name "/"
2652 (version-major+minor version) "/"
2653 name "-" version ".tar.xz"))
2654 (sha256
2655 (base32
0efd8be5 2656 "0qyd0cw17wi8gl6y9z2j2lh2gwghxskfmsdvw4ayrgxwnj6cjccn"))))
fb182b8a 2657 (build-system gnu-build-system)
600233bd
LC
2658 (outputs '("out"
2659 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
2660 (native-inputs
2661 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2662 ("gobject-introspection" ,gobject-introspection)
2663 ("pkg-config" ,pkg-config)
2664 ("xsltproc" ,libxslt)))
2665 (propagated-inputs
2666 `(("cogl" ,cogl)
2667 ("cairo" ,cairo)
2668 ("atk" ,atk)
2669 ("gtk+" ,gtk+)
2670 ("json-glib" ,json-glib)
2671 ("glib" ,glib)
2672 ("libxcomposite" ,libxcomposite)
2673 ("libxdamage" ,libxdamage)
2674 ("libxext" ,libxext)
2675 ("xinput" ,xinput)))
2676 (inputs
2677 `(("libxkbcommon" ,libxkbcommon)
2678 ("udev" ,eudev)))
2679 (arguments
600233bd
LC
2680 `(#:configure-flags (list "--enable-x11-backend=yes"
2681
2682 ;; This produces share/doc/{clutter,cally}.
2683 (string-append "--with-html-dir="
2684 (assoc-ref %outputs "doc")
2685 "/share/doc"))
fb182b8a
MW
2686 ;; XXX FIXME: Get test suite working. It would probably fail in the
2687 ;; same way the cogl tests fail, since clutter is based on cogl.
2688 #:tests? #f))
2689 (home-page "http://www.clutter-project.org")
2690 (synopsis "Open GL based interactive canvas library")
2691 (description
2692 "Clutter is an Open GL based interactive canvas library, designed for
2693creating fast, mainly 2D single window applications such as media box UIs,
2694presentations, kiosk style applications and so on.")
2695 (license license:lgpl2.0+)))
bf7f17ba
MW
2696
2697(define-public clutter-gtk
2698 (package
2699 (name "clutter-gtk")
2700 (version "1.6.0")
2701 (source
2702 (origin
2703 (method url-fetch)
2704 (uri (string-append "mirror://gnome/sources/" name "/"
2705 (version-major+minor version) "/"
2706 name "-" version ".tar.xz"))
2707 (sha256
2708 (base32
2709 "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
2710 (build-system gnu-build-system)
2711 (native-inputs
2712 `(("pkg-config" ,pkg-config)
2713 ("gobject-introspection" ,gobject-introspection)))
2714 (inputs
2715 `(("clutter" ,clutter)
2716 ("gtk+" ,gtk+)))
2717 (home-page "http://www.clutter-project.org")
2718 (synopsis "Open GL based interactive canvas library GTK+ widget")
2719 (description
2720 "Clutter is an Open GL based interactive canvas library, designed for
2721creating fast, mainly 2D single window applications such as media box UIs,
2722presentations, kiosk style applications and so on.")
2723 (license license:lgpl2.0+)))
86d6a893
MW
2724
2725(define-public clutter-gst
2726 (package
2727 (name "clutter-gst")
2728 (version "3.0.6")
2729 (source
2730 (origin
2731 (method url-fetch)
2732 (uri (string-append "mirror://gnome/sources/" name "/"
2733 (version-major+minor version) "/"
2734 name "-" version ".tar.xz"))
2735 (sha256
2736 (base32
2737 "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
2738 (build-system gnu-build-system)
2739 (native-inputs
2740 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2741 ("pkg-config" ,pkg-config)
2742 ("gobject-introspection" ,gobject-introspection)))
2743 (inputs
2744 `(("clutter" ,clutter)
2745 ("gstreamer" ,gstreamer)
2746 ("gst-plugins-base" ,gst-plugins-base)))
2747 (home-page "http://www.clutter-project.org")
2748 (synopsis "Integration library for using GStreamer with Clutter")
2749 (description
2750 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2751It provides a GStreamer sink to upload frames to GL and an actor that
2752implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2753GL based interactive canvas library.")
2754 (license license:lgpl2.0+)))
607a04ae 2755
30dc88d9
LC
2756(define-public libchamplain
2757 (package
2758 (name "libchamplain")
2759 (version "0.12.10")
2760 (source (origin
2761 (method url-fetch)
2762 (uri (string-append
2763 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
2764 version ".tar.xz"))
2765 (sha256
2766 (base32
2767 "019b8scnx7d3wdylmpk9ihzh06w25b63x9cn8nhj6kjx82rcwlxz"))))
2768 (build-system gnu-build-system)
2769 (native-inputs `(("pkg-config" ,pkg-config)))
2770 (propagated-inputs
2771 `(("libsoup" ,libsoup)
2772 ("sqlite" ,sqlite)
2773 ("clutter" ,clutter)
2774 ("clutter-gtk" ,clutter-gtk)
2775 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
2776 ("cairo" ,cairo)
2777 ("gtk+3" ,gtk+)
2778 ("glib" ,glib)))
2779 (home-page "http://projects.gnome.org/libchamplain/")
2780 (synopsis "C library providing a ClutterActor to display maps")
2781 (description
2782 "libchamplain is a C library providing a ClutterActor to display maps.
2783It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
2784and Perl bindings are also available. It supports numerous free map sources
2785such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
2786 (license license:lgpl2.1+)))
2787
607a04ae
MW
2788(define-public gom
2789 (package
2790 (name "gom")
2791 (version "0.3.1")
2792 (source
2793 (origin
2794 (method url-fetch)
2795 (uri (string-append "mirror://gnome/sources/" name "/"
2796 (version-major+minor version) "/"
2797 name "-" version ".tar.xz"))
2798 (sha256
2799 (base32
2800 "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
2801 (build-system gnu-build-system)
2802 (native-inputs
2803 `(("intltool" ,intltool)
2804 ("pkg-config" ,pkg-config)
2805 ("gobject-introspection" ,gobject-introspection)))
2806 (inputs
2807 `(("glib" ,glib)
2808 ("gdk-pixbuf" ,gdk-pixbuf)
2809 ("sqlite" ,sqlite)))
2810 ;; XXX TODO: Figure out how to run the test suite.
2811 (arguments `(#:tests? #f))
2812 (home-page "https://wiki.gnome.org/Projects/Gom")
2813 (synopsis "Object mapper from GObjects to SQLite")
2814 (description
2815 "Gom provides an object mapper from GObjects to SQLite. It helps you
2816write applications that need to store structured data as well as make complex
2817queries upon that data.")
2818 (license license:lgpl2.1+)))
b7a3cf11
SB
2819
2820(define-public gnome-klotski
2821 (package
2822 (name "gnome-klotski")
2823 (version "3.16.1")
2824 (source (origin
2825 (method url-fetch)
2826 (uri (string-append "mirror://gnome/sources/" name "/"
2827 (version-major+minor version) "/"
2828 name "-" version ".tar.xz"))
2829 (sha256
2830 (base32
2831 "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
2832 (build-system glib-or-gtk-build-system)
2833 (native-inputs
2834 `(("desktop-file-utils" ,desktop-file-utils)
2835 ("intltool" ,intltool)
2836 ("itstool" ,itstool)
bcb354ad
SB
2837 ("pkg-config" ,pkg-config)
2838 ("xmllint" ,libxml2)))
b7a3cf11
SB
2839 (inputs
2840 `(("gtk+" ,gtk+)
2841 ("librsvg" ,librsvg)))
2842 (home-page "https://wiki.gnome.org/Apps/Klotski")
2843 (synopsis "Sliding block puzzles")
2844 (description
2845 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
2846the patterned block to the area bordered by green markers. To do so, you will
2847need to slide other blocks out of the way. Complete each puzzle in as few moves
2848as possible!")
2849 (license license:gpl2+)))
8d4791bf
MW
2850
2851(define-public grilo
2852 (package
2853 (name "grilo")
2854 (version "0.2.12")
2855 (source
2856 (origin
2857 (method url-fetch)
2858 (uri (string-append "mirror://gnome/sources/" name "/"
2859 (version-major+minor version) "/"
2860 name "-" version ".tar.xz"))
2861 (sha256
2862 (base32
2863 "11bvc7rsrjjwz8hp67p3fn8zmywrpawrcbi3vgw8b0dwa0sndd2m"))))
2864 (build-system gnu-build-system)
2865 (native-inputs
2866 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2867 ("intltool" ,intltool)
2868 ("pkg-config" ,pkg-config)
2869 ("gobject-introspection" ,gobject-introspection)))
2870 (inputs
2871 `(("glib" ,glib)
2872 ("gtk+" ,gtk+)
2873 ("libxml2" ,libxml2)
2874 ;; XXX TODO: Add oauth
2875 ("libsoup" ,libsoup)
2876 ("totem-pl-parser" ,totem-pl-parser)))
2877 (arguments
2878 `(#:phases
2879 (modify-phases %standard-phases
2880 (add-after 'unpack 'fix-introspection-install-dir
2881 (lambda* (#:key outputs #:allow-other-keys)
2882 (let ((out (assoc-ref outputs "out")))
2883 (substitute* '("src/Makefile.in"
2884 "libs/pls/Makefile.in"
2885 "libs/net/Makefile.in")
2886 (("@INTROSPECTION_GIRDIR@")
2887 (string-append out "/share/gir-1.0/"))
2888 (("@INTROSPECTION_TYPELIBDIR@")
2889 (string-append out "/lib/girepository-1.0/")))))))))
2890 (native-search-paths
2891 (list (search-path-specification
2892 (variable "GRL_PLUGIN_PATH")
2893 (files (list (string-append "lib/grilo-"
2894 (version-major+minor version)))))))
2895 (home-page "http://live.gnome.org/Grilo")
2896 (synopsis "Framework for discovering and browsing media")
2897 (description
2898 "Grilo is a framework focused on making media discovery and browsing easy
2899for application developers.")
2900 (license license:lgpl2.1+)))
7b212526
MW
2901
2902(define-public grilo-plugins
2903 (package
2904 (name "grilo-plugins")
2905 (version "0.2.14")
2906 (source
2907 (origin
2908 (method url-fetch)
2909 (uri (string-append "mirror://gnome/sources/" name "/"
2910 (version-major+minor version) "/"
2911 name "-" version ".tar.xz"))
2912 (sha256
2913 (base32
2914 "1aykhc679pwn2qxsg19g8nh9hffpsqkgxcbqq7lcfn2hcwb83wfh"))))
2915 (build-system gnu-build-system)
2916 (native-inputs
2917 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
2918 ("intltool" ,intltool)
2919 ("itstool" ,itstool)
2920 ("pkg-config" ,pkg-config)))
2921 (inputs
2922 `(("grilo" ,grilo)
2923 ("glib" ,glib)
2924 ("libxml2" ,libxml2)
2925 ("sqlite" ,sqlite)
2926 ("gom" ,gom)
2927 ;; XXX TODO: Add oauth
2928 ;; XXX TODO: Add goa
2929 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
2930 ;; XXX TODO: Add lua (needs help finding it)
2931 ("json-glib" ,json-glib)
2932 ("avahi" ,avahi)
2933 ("gmime" ,gmime)
2934 ("libsoup" ,libsoup)
2935 ("libarchive" ,libarchive)
2936 ("totem-pl-parser" ,totem-pl-parser)))
2937 (arguments
2938 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
2939 %output
2940 "/lib/grilo-"
2941 ,(version-major+minor version)))
2942 ;; XXX FIXME: Try to get the test suite working. It appears to require
2943 ;; a working system dbus. Inside the build container, all tests fail
2944 ;; with: "assertion failed: (source)". Outside of the build container,
2945 ;; most tests succeed.
2946 #:tests? #f))
2947 (home-page "http://live.gnome.org/Grilo")
2948 (synopsis "Plugins for the Grilo media discovery library")
2949 (description
2950 "Grilo is a framework focused on making media discovery and browsing easy
2951for application developers.")
2952 (license license:lgpl2.1+)))
4e3fc547
MW
2953
2954(define-public totem
2955 (package
2956 (name "totem")
2957 (version "3.16.1")
2958 (source
2959 (origin
2960 (method url-fetch)
2961 (uri (string-append "mirror://gnome/sources/" name "/"
2962 (version-major+minor version) "/"
2963 name "-" version ".tar.xz"))
2964 (sha256
2965 (base32
2966 "1nkm2i271ivq40hryrl6px39gbbvhmlx4vmvwvw4h3z8xh3013f9"))))
2967 (build-system glib-or-gtk-build-system)
2968 (native-inputs
2969 `(("pkg-config" ,pkg-config)
2970 ("desktop-file-utils" ,desktop-file-utils)
2971 ("gobject-introspection" ,gobject-introspection)
2972 ("intltool" ,intltool)
bcb354ad
SB
2973 ("itstool" ,itstool)
2974 ("xmllint" ,libxml2)))
4e3fc547
MW
2975 (propagated-inputs
2976 `(("dconf" ,dconf)))
2977 (inputs
2978 `(("gtk+" ,gtk+)
2979 ("gdk-pixbuf" ,gdk-pixbuf)
2980 ("atk" ,atk)
2981 ("cairo" ,cairo)
2982 ("dbus-glib" ,dbus-glib)
2983 ("clutter" ,clutter)
2984 ("clutter-gtk" ,clutter-gtk)
2985 ("clutter-gst" ,clutter-gst)
2986 ("xproto" ,xproto)
2987 ("libxxf86vm" ,libxxf86vm)
2988 ("libxtst" ,libxtst)
2989 ("libxrandr" ,libxrandr)
2990 ("libxml2" ,libxml2)
2991 ("libsoup" ,libsoup)
2992 ("libpeas" ,libpeas)
2993 ("librsvg" ,librsvg)
2994 ("lirc" ,lirc)
2995 ("gnome-desktop" ,gnome-desktop)
2996 ("gstreamer" ,gstreamer)
2997 ("gst-plugins-base" ,gst-plugins-base)
2998 ("gst-plugins-good" ,gst-plugins-good)
2999 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3000 ("adwaita-icon-theme" ,adwaita-icon-theme)
3001 ;; XXX We use python-2 because libxml2 because itstool (which needs
3002 ;; libxml) currently uses python-2.
3003 ("python" ,python-2)
3004 ("python-pygobject" ,python2-pygobject)
3005 ;; XXX TODO pylint needed for python support
3006 ("totem-pl-parser" ,totem-pl-parser)
3007 ("grilo" ,grilo)
3008 ("grilo-plugins" ,grilo-plugins)
3009 ("nettle" ,nettle)
3010 ("vala" ,vala)))
3011 (arguments
3012 `(#:phases
3013 (modify-phases %standard-phases
3014 (add-after
3015 'install 'wrap-totem
3016 (lambda* (#:key inputs outputs #:allow-other-keys)
3017 (let ((out (assoc-ref outputs "out"))
3018 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3019 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3020 (wrap-program (string-append out "/bin/totem")
3021 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3022 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3023 #t)))))
3024 (home-page "https://wiki.gnome.org/Apps/Videos")
3025 (synopsis "Simple media player for GNOME based on GStreamer")
3026 (description "Totem is a simple yet featureful media player for GNOME
3027which can read a large number of file formats.")
3028 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3029 ;; to be used and distributed together with GStreamer and Totem. See
3030 ;; file://COPYING in the source distribution for details.
3031 (license license:gpl2+)))
f0afb0c8
DH
3032
3033(define-public rhythmbox
3034 (package
3035 (name "rhythmbox")
3036 (version "3.2.1")
3037 (source (origin
3038 (method url-fetch)
3039 (uri (string-append "mirror://gnome/sources/" name "/"
3040 (version-major+minor version) "/"
3041 name "-" version ".tar.xz"))
3042 (sha256
3043 (base32
3044 "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
3045 (build-system glib-or-gtk-build-system)
3046 (arguments
3047 `(#:configure-flags
3048 (list "--enable-lirc"
3049 "--enable-python"
3050 "--enable-vala"
3051 "--with-brasero"
3052 "--with-gudev"
3053 "--with-libsecret")
3054 #:phases
3055 (modify-phases %standard-phases
3056 (add-after
3057 'install 'wrap-rhythmbox
3058 (lambda* (#:key inputs outputs #:allow-other-keys)
3059 (let ((out (assoc-ref outputs "out"))
3060 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3061 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3062 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3063 (wrap-program (string-append out "/bin/rhythmbox")
3064 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3065 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3066 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3067 #t)))))
3068 (propagated-inputs
3069 `(("dconf" ,dconf)))
3070 (native-inputs
bcb354ad
SB
3071 `(("itstool" ,itstool)
3072 ("intltool" ,intltool)
f0afb0c8
DH
3073 ("glib" ,glib "bin")
3074 ("gobject-introspection" ,gobject-introspection)
3075 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3076 ("pkg-config" ,pkg-config)
3077 ("xmllint" ,libxml2)))
f0afb0c8
DH
3078 (inputs
3079 `(("json-glib" ,json-glib)
3080 ("tdb" ,tdb)
3081 ("gnome-desktop" ,gnome-desktop)
3082 ("python" ,python)
3083 ("python-pygobject" ,python2-pygobject)
3084 ("vala" ,vala)
3085 ("gmime" ,gmime)
3086 ("nettle" ,nettle)
f0afb0c8
DH
3087 ("adwaita-icon-theme" ,adwaita-icon-theme)
3088 ("grilo" ,grilo)
3089 ("grilo-plugins" ,grilo-plugins)
3090 ("gstreamer" ,gstreamer)
3091 ("gst-plugins-base" ,gst-plugins-base)
3092 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3093 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3094 ("libgudev" ,libgudev)
f0afb0c8
DH
3095 ;;("libmtp" ,libmtp) FIXME: Not detected
3096 ("libsecret" ,libsecret)
3097 ("libsoup" ,libsoup)
3098 ("libnotify" ,libnotify)
3099 ("libpeas" ,libpeas)
3100 ("lirc" ,lirc)
3101 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3102 ;;("clutter" ,clutter)
3103 ;;("clutter-gtk" ,clutter-gtk)
3104 ;;("clutter-gst" ,clutter-gst)
3105 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3106 ("atk" ,atk)
3107 ("pango" ,pango)
3108 ("gtk+" ,gtk+)
3109 ;; TODO:
3110 ;; * libgpod
3111 ;; * mx
3112 ;; * webkit
3113 ("brasero" ,brasero)))
3114 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3115 (synopsis "Music player for GNOME")
3116 (description "Rhythmbox is a music playing application for GNOME. It
3117supports playlists, song ratings, and any codecs installed through gstreamer.")
3118 (license license:gpl2+)))
f70d8383
DH
3119
3120(define-public eog
3121 (package
3122 (name "eog")
3123 (version "3.16.2")
3124 (source (origin
3125 (method url-fetch)
3126 (uri (string-append "mirror://gnome/sources/" name "/"
3127 (version-major+minor version) "/"
3128 name "-" version ".tar.xz"))
3129 (sha256
3130 (base32
3131 "0frw1b5jix9pffznav5s7ajjx91a8rv5lf4sjvjv3fw65mbnhbw0"))))
3132 (build-system glib-or-gtk-build-system)
3133 (arguments
3134 `(#:phases
3135 (modify-phases %standard-phases
3136 (add-after
3137 'install 'wrap-eog
3138 (lambda* (#:key outputs #:allow-other-keys)
3139 (let ((out (assoc-ref outputs "out"))
3140 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3141 (wrap-program (string-append out "/bin/eog")
3142 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3143 #t)))))
3144 (propagated-inputs
3145 `(("dconf" ,dconf)))
3146 (native-inputs
3147 `(("intltool" ,intltool)
3148 ("itstool", itstool)
3149 ("glib" ,glib "bin")
3150 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3151 ("pkg-config" ,pkg-config)
3152 ("xmllint" ,libxml2)))
f70d8383
DH
3153 (inputs
3154 `(("gnome-desktop" ,gnome-desktop)
3155 ("shared-mime-info" ,shared-mime-info)
3156 ("adwaita-icon-theme" ,adwaita-icon-theme)
3157 ("exempi" ,exempi)
3158 ("lcms" ,lcms)
3159 ("libexif" ,libexif)
3160 ("libpeas" ,libpeas)
3161 ("libjpeg" ,libjpeg)
3162 ("librsvg" ,librsvg)
3163 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3164 ("gtk+" ,gtk+)))
3165 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3166 (synopsis "GNOME image viewer")
3167 (description "Eye of GNOME is the GNOME image viewer. It
3168supports image conversion, rotation, and slideshows.")
3169 (license license:gpl2+)))
41af5e7b
SB
3170
3171(define-public libgudev
3172 (package
3173 (name "libgudev")
3174 (version "230")
3175 (source (origin
3176 (method url-fetch)
3177 (uri (string-append "mirror://gnome/sources/" name "/"
3178 version "/" name "-" version ".tar.xz"))
3179 (sha256
3180 (base32
3181 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3182 (build-system gnu-build-system)
3183 (native-inputs
3184 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3185 ("gobject-introspection" ,gobject-introspection)
3186 ("pkg-config" ,pkg-config)))
3187 (propagated-inputs
3188 `(("glib" ,glib))) ; required by gudev-1.0.pc
3189 (inputs
3190 `(("udev" ,eudev)))
3191 (home-page "https://wiki.gnome.org/Projects/libgudev")
3192 (synopsis "GObject bindings for libudev")
3193 (description
3194 "This library provides GObject bindings for libudev. It was originally
3195part of udev-extras, then udev, then systemd. It's now a project on its own.")
3196 (license license:lgpl2.1+)))
3dc8828f
SB
3197
3198(define-public gvfs
3199 (package
3200 (name "gvfs")
3201 (version "1.24.1")
3202 (source (origin
3203 (method url-fetch)
3204 (uri (string-append "mirror://gnome/sources/" name "/"
3205 (version-major+minor version) "/"
3206 name "-" version ".tar.xz"))
3207 (sha256
3208 (base32
3209 "1ygiknnd24qgzds8wif3jns981mqr65lgjlxs5pw65cl3376g0yk"))))
3210 (build-system gnu-build-system)
3211 (arguments
3212 '(#:tests? #f)) ; XXX: requiring `pidof'
3213 (native-inputs
3214 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3215 ("intltool" ,intltool)
3216 ("pkg-config" ,pkg-config)
3217 ("xsltproc" ,libxslt)))
3218 (inputs
3219 `(("avahi" ,avahi)
3220 ("docbook-xml" ,docbook-xml-4.2)
3221 ("docbook-xsl" ,docbook-xsl)
3222 ("dbus" ,dbus)
3223 ("fuse" ,fuse)
3224 ("glib" ,glib)
3225 ("libarchive" ,libarchive)
3226 ("libbluray" ,libbluray)
3227 ("libcdio-paranoia" ,libcdio-paranoia)
3228 ("libgcrypt" ,libgcrypt)
3229 ("libgphoto2" ,libgphoto2)
3230 ("libgudev" ,libgudev)
3231 ("libmtp" ,libmtp)
3232 ("libsecret" ,libsecret)
3233 ("libsmbclient" ,samba)
3234 ("libsoup" ,libsoup)
3235 ("libxml2" ,libxml2)
3236 ("nettle" ,nettle) ; XXX: required by libarchive.pc
3237 ("udisks" ,udisks)))
3238 (home-page "https://wiki.gnome.org/gvfs/")
3239 (synopsis "Userspace virtual filesystem for GIO")
3240 (description
3241 "GVFS is a userspace virtual filesystem designed to work with the I/O
3242abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3243to all applications using the GIO API. It also supports exposing the GVFS
3244mounts to non-GIO applications using FUSE.
3245
3246GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3247DAV, and others.")
3248 (license license:lgpl2.0+)))
7c88b6bd
AW
3249
3250(define-public gusb
3251 (package
3252 (name "gusb")
3253 (version "0.2.6")
3254 (source (origin
3255 (method url-fetch)
3256 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3257 "gusb_"
3258 (string-join (string-split version #\.)
3259 "_")
3260 ".tar.gz"))
3261 (sha256
3262 (base32
3263 "0h9dzaza81b0mx5jfh5cnc31xdynl0jsxgwvl6vqyhy8mnwfi5nr"))))
3264 (build-system gnu-build-system)
3265 (native-inputs
3266 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3267 ("gobject-introspection" ,gobject-introspection)
3268 ("pkg-config" ,pkg-config)
3269 ("vala" ,vala)
3270 ("autoconf" ,autoconf)
3271 ("automake" ,automake)
3272 ("libtool" ,libtool)
3273 ("gtk-doc" ,gtk-doc)))
3274 (propagated-inputs
3275 ;; Both of these are required by gusb.pc.
3276 `(("glib" ,glib)
3277 ("libusb" ,libusb)))
3278 (arguments
3279 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3280 #:phases
3281 (modify-phases %standard-phases
3282 (add-after 'unpack 'autogen
3283 (lambda _
3284 (and (zero? (system* "gtkdocize"))
3285 (zero? (system* "autoreconf" "-vif"))))))))
3286 (home-page "https://github/hughsie/libgusb")
3287 (synopsis "A GLib binding for libusb1")
3288 (description
3289 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3290asynchronous control, bulk and interrupt transfers with proper cancellation
3291and integration into a mainloop. This makes it easy to integrate low level
3292USB transfers with your high-level application or system daemon.")
3293 (license license:lgpl2.1+)))
0abe1d86
AW
3294
3295(define-public simple-scan
3296 (package
3297 (name "simple-scan")
3298 (version "3.17.4")
3299 (source (origin
3300 (method url-fetch)
3301 (uri (string-append "https://launchpad.net/simple-scan/"
3302 (version-major+minor version) "/"
3303 version "/+download/simple-scan-"
3304 version ".tar.xz"))
3305 (sha256
3306 (base32
3307 "1pslbv45g01g039zj2b01k08f763kkhzqw8wwz7yh27m7bjllnx6"))))
3308 (build-system glib-or-gtk-build-system)
3309 (inputs
3310 `(("gtk" ,gtk+)
3311 ("zlib" ,zlib)
3312 ("cairo" ,cairo)
3313 ("gdk-pixbuf" ,gdk-pixbuf)
3314 ("gusb" ,gusb)
3315 ("libgudev" ,libgudev)
3316 ("libsane" ,sane-backends)))
3317 (native-inputs
3318 `(("intltool" ,intltool)
3319 ("itstool" ,itstool)
3320 ("colord" ,colord)
3321 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3322 ("pkg-config" ,pkg-config)
bcb354ad
SB
3323 ("vala" ,vala)
3324 ("xmllint" ,libxml2)))
0abe1d86
AW
3325 (home-page "https://launchpad.net/simple-scan")
3326 (synopsis "Document and image scanner")
3327 (description "Simple Scan is an easy-to-use application, designed to let
3328users connect their scanner and quickly have the image/document in an
3329appropriate format. Simple Scan is basically a frontend for SANE - which is
3330the same backend as XSANE uses. This means that all existing scanners will
3331work and the interface is well tested.")
3332 (license license:gpl3+)))
7549f984
SB
3333
3334(define-public epiphany
3335 (package
3336 (name "epiphany")
3337 (version "3.16.3")
3338 (source (origin
3339 (method url-fetch)
3340 (uri (string-append "mirror://gnome/sources/" name "/"
3341 (version-major+minor version) "/"
3342 name "-" version ".tar.xz"))
3343 (sha256
3344 (base32
3345 "1cch4c7gh6lq1i4g0gs39qa2csl4i8a3pcdfapcj5v3r0xvz29ym"))))
3346 (build-system glib-or-gtk-build-system)
3347 (arguments
3348 ;; FIXME: tests run under Xvfb, but fail with:
3349 ;; /src/bookmarks/ephy-bookmarks/create:
3350 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
3351 ;; subsystem
3352 ;; FAIL
3353 '(#:tests? #f))
80a747c4
SB
3354 (propagated-inputs
3355 `(("dconf" ,dconf)))
7549f984
SB
3356 (native-inputs
3357 `(("intltool" ,intltool)
3358 ("itstool" ,itstool)
bcb354ad
SB
3359 ("pkg-config" ,pkg-config)
3360 ("xmllint" ,libxml2)))
7549f984
SB
3361 (inputs
3362 `(("avahi" ,avahi)
3363 ("gcr" ,gcr)
3364 ("glib-networking" ,glib-networking)
3365 ("gnome-desktop" ,gnome-desktop)
3366 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3367 ("iso-codes" ,iso-codes)
3368 ("libnotify" ,libnotify)
3369 ("libsecret" ,libsecret)
3370 ("libwnck" ,libwnck)
3371 ("libxslt" ,libxslt)
3372 ("nss" ,nss)
3373 ("sqlite" ,sqlite)
3374 ("webkitgtk" ,webkitgtk)))
3375 (home-page "https://wiki.gnome.org/Apps/Web")
3376 (synopsis "GNOME web browser")
3377 (description
3378 "Epiphany is a GNOME web browser targeted at non-technical users. Its
3379principles are simplicity and standards compliance.")
3380 (license license:gpl2+)))
a3856b2c
SB
3381
3382(define-public d-feet
3383 (package
3384 (name "d-feet")
3385 (version "0.3.10")
3386 (source (origin
3387 (method url-fetch)
3388 (uri (string-append "mirror://gnome/sources/" name "/"
3389 (version-major+minor version) "/"
3390 name "-" version ".tar.xz"))
3391 (sha256
3392 (base32
3393 "0nb31bvwnj7pcpm85g8bvgjc6s5kbqy8g4qp7pzqf8w6rdgxzw48"))))
3394 (build-system glib-or-gtk-build-system)
3395 (arguments
3396 '(#:out-of-source? #f ; tests need to run in the source directory.
3397 #:phases
3398 (modify-phases %standard-phases
3399 (add-before
3400 'check 'pre-check
86aff791 3401 (lambda _
a3856b2c
SB
3402 ;; The test suite requires a running X server.
3403 (system "Xvfb :1 &")
3404 (setenv "DISPLAY" ":1")
3405 ;; Don't fail on missing '/etc/machine-id'.
3406 (setenv "DBUS_FATAL_WARNINGS" "0")
3407 ;; tests.py and window.py don't meet E402:
3408 ;; E402 module level import not at top of file
3409 (substitute* "src/tests/Makefile"
86aff791
MW
3410 (("--ignore=E123") "--ignore=E123,E402"))
3411 #t))
a3856b2c
SB
3412 (add-after
3413 'install 'wrap-program
3414 (lambda* (#:key outputs #:allow-other-keys)
3415 (let ((prog (string-append (assoc-ref outputs "out")
3416 "/bin/d-feet")))
3417 (wrap-program prog
3418 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
3419 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
3420 #t))))))
a3856b2c
SB
3421 (native-inputs
3422 `(("intltool" ,intltool)
3423 ("itstool" ,itstool)
3424 ("pkg-config" ,pkg-config)
3425 ("python-pep8" ,python-pep8)
3426 ("xmllint" ,libxml2)
3427 ("xorg-server" ,xorg-server)))
3428 (inputs
3429 `(("gobject-introspection" ,gobject-introspection)
3430 ("gtk+" ,gtk+)
3431 ("python" ,python-wrapper)
3432 ("python-pygobject" ,python-pygobject)))
3433 (home-page "https://wiki.gnome.org/Apps/DFeet")
3434 (synopsis "D-Bus debugger")
3435 (description
3436 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
3437of running programs and invoke methods on those interfaces.")
3438 (license license:gpl2+)))
c3b97bd9
SB
3439
3440(define-public yelp-xsl
3441 (package
3442 (name "yelp-xsl")
3443 (version "3.16.1")
3444 (source (origin
3445 (method url-fetch)
3446 (uri (string-append "mirror://gnome/sources/" name "/"
3447 (version-major+minor version) "/"
3448 name "-" version ".tar.xz"))
3449 (sha256
3450 (base32
3451 "0jhpni4mmfvj3xf57rjm61nc8d0x66hz9gd1ywws5lh39g6fx59j"))))
3452 (build-system gnu-build-system)
3453 (native-inputs
3454 `(("intltool" ,intltool)
3455 ("itstool" ,itstool)
3456 ("xmllint" ,libxml2)))
3457 (home-page "https://wiki.gnome.org/Apps/Yelp")
3458 (synopsis "XSL stylesheets for Yelp")
3459 (description
3460 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
3461to format Docbook and Mallard documents.")
3462 (license license:gpl2+)))
de3d612a
SB
3463
3464(define-public yelp
3465 (package
3466 (name "yelp")
3467 (version "3.16.1")
3468 (source (origin
3469 (method url-fetch)
3470 (uri (string-append "mirror://gnome/sources/" name "/"
3471 (version-major+minor version) "/"
3472 name "-" version ".tar.xz"))
3473 (sha256
3474 (base32
3475 "1jk7aad1srykhgc3x0hd3q3dnlshmy1ak00alwjzaasxvy6hp0b0"))))
3476 (build-system glib-or-gtk-build-system)
3477 (native-inputs
3478 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3479 ("intltool" ,intltool)
3480 ("itstool" ,itstool)
3481 ("pkg-config" ,pkg-config)))
3482 (propagated-inputs
3483 `(("dconf" ,dconf)))
3484 (inputs
3485 `(("libxslt" ,libxslt)
3486 ("sqlite" ,sqlite)
3487 ("webkitgtk" ,webkitgtk-2.4)
3488 ("yelp-xsl" ,yelp-xsl)
3489 ;; XXX: need by libwebkitgtk-3.0.la.
3490 ("icu4c" ,(@ (gnu packages icu4c) icu4c))))
3491 (home-page "https://wiki.gnome.org/Apps/Yelp")
3492 (synopsis "GNOME help browser")
3493 (description
3494 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
3495man, info, and HTML documents. It can locate documents according to the
3496freedesktop.org help system specification.")
3497 (license license:gpl2+)))
122d0d10
SB
3498
3499(define-public yelp-tools
3500 (package
3501 (name "yelp-tools")
3502 (version "3.16.1")
3503 (source (origin
3504 (method url-fetch)
3505 (uri (string-append "mirror://gnome/sources/" name "/"
3506 (version-major+minor version) "/"
3507 name "-" version ".tar.xz"))
3508 (sha256
3509 (base32
3510 "177qzvj5w019isdp41qxqcys2kc4sq2x6dqhqn6l9ipib8a6rxml"))))
3511 (build-system gnu-build-system)
3512 (native-inputs
3513 `(("pkg-config" ,pkg-config)))
3514 (propagated-inputs
3515 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
3516 `(("itstool" ,itstool)
3517 ("xmllint" ,libxml2)
3518 ("xsltproc" ,libxslt)))
3519 (inputs
3520 `(("yelp-xsl" ,yelp-xsl)))
3521 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
3522 (synopsis "Yelp documentation tools")
3523 (description
3524 "Yelp-tools is a collection of scripts and build utilities to help create,
3525manage, and publish documentation for Yelp and the web. Most of the heavy
3526lifting is done by packages like yelp-xsl and itstool. This package just
3527wraps things up in a developer-friendly way.")
3528 (license license:gpl2+)))
af8f9f23
RW
3529
3530(define-public libgee
3531 (package
3532 (name "libgee")
3533 (version "0.18.0")
3534 (source (origin
3535 (method url-fetch)
3536 (uri (string-append "mirror://gnome/sources/" name "/"
3537 (version-major+minor version) "/"
3538 name "-" version ".tar.xz"))
3539 (sha256
3540 (base32
3541 "16a34js81w9m2bw4qd8csm4pcgr3zq5z87867j4b8wfh6zwrxnaa"))))
3542 (build-system gnu-build-system)
3543 (arguments
3544 `(#:phases
3545 (modify-phases %standard-phases
3546 (add-after 'unpack 'fix-introspection-install-dir
3547 (lambda* (#:key outputs #:allow-other-keys)
3548 (let ((out (assoc-ref outputs "out")))
3549 (substitute* "gee/Makefile.in"
3550 (("@INTROSPECTION_GIRDIR@")
3551 (string-append out "/share/gir-1.0/"))
3552 (("@INTROSPECTION_TYPELIBDIR@")
3553 (string-append out "/lib/girepository-1.0/")))))))))
3554 (native-inputs
3555 `(("glib" ,glib "bin")
3556 ("pkg-config" ,pkg-config)))
3557 (inputs
3558 `(("glib" ,glib)
3559 ("gobject-introspection" ,gobject-introspection)))
3560 (home-page "https://wiki.gnome.org/Projects/Libgee")
3561 (synopsis "GObject collection library")
3562 (description
3563 "Libgee is a utility library providing GObject-based interfaces and
3564classes for commonly used data structures.")
3565 (license license:lgpl2.1+)))
b0f9c4b8
RW
3566
3567(define-public gexiv2
3568 (package
3569 (name "gexiv2")
3570 (version "0.10.3")
3571 (source (origin
3572 (method url-fetch)
3573 (uri (string-append "mirror://gnome/sources/" name "/"
3574 (version-major+minor version) "/"
3575 name "-" version ".tar.xz"))
3576 (sha256
3577 (base32
3578 "121r5lv6l82pjr0ycdf2b01mdwy7sxwca2r068zrzylpc6bgn31r"))))
3579 (build-system gnu-build-system)
3580 (native-inputs
3581 `(("glib" ,glib "bin")
3582 ("pkg-config" ,pkg-config)))
3583 (propagated-inputs
3584 ;; Listed in "Requires" section of gexiv2.pc
3585 `(("exiv2" ,exiv2)))
3586 (inputs
3587 `(("glib" ,glib)
3588 ("gobject-introspection" ,gobject-introspection)))
3589 (home-page "https://wiki.gnome.org/Projects/gexiv2")
3590 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
3591 (description
3592 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
3593allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
3594metadata in photo and video files of various formats.")
3595 (license license:gpl2+)))
fed5a689
RW
3596
3597(define-public shotwell
3598 (package
3599 (name "shotwell")
3600 (version "0.22.0")
3601 (source (origin
3602 (method url-fetch)
3603 (uri (string-append "mirror://gnome/sources/" name "/"
3604 (version-major+minor version) "/"
3605 name "-" version ".tar.xz"))
3606 (sha256
3607 (base32
3608 "0cgqaaikrb10plhf6zxbgqy32zqpiwyi9dpx3g8yr261q72r5c81"))))
3609 (build-system glib-or-gtk-build-system)
3610 (arguments
3611 `(#:tests? #f ;no "check" target
3612 #:make-flags '("CC=gcc")
3613 #:configure-flags '("--disable-gsettings-convert-install")
3614 #:out-of-source? #f))
3615 (native-inputs
3616 `(("pkg-config" ,pkg-config)
3617 ("gettext" ,gnu-gettext)
3618 ("m4" ,m4)
3619 ("desktop-file-utils" ,desktop-file-utils)
3620 ("vala" ,vala)
3621 ("which" ,which)
3622 ("gnome-doc-utils" ,gnome-doc-utils)
3623 ;; FIXME: I only added python2-libxml2 because xml2po needs it at
3624 ;; runtime. It should be propagated.
3625 ("python2-libxml2" ,python2-libxml2)
3626 ("python2" ,python-2)))
3627 (inputs
3628 `(("gstreamer" ,gstreamer)
3629 ("gst-plugins-base" ,gst-plugins-base)
3630 ("gst-plugins-good" ,gst-plugins-good)
3631 ("libgee" ,libgee)
3632 ("gexiv2" ,gexiv2)
3633 ("libraw" ,libraw)
3634 ("json-glib" ,json-glib)
3635 ("rest" ,rest)
3636 ("webkitgtk" ,webkitgtk-2.4)
3637 ("sqlite" ,sqlite)
3638 ("libsoup" ,libsoup)
3639 ("libxml2" ,libxml2)
3640 ("gtk+" ,gtk+)
3641 ("libgudev" ,libgudev)
3642 ("libgphoto2" ,libgphoto2)))
3643 (home-page "https://wiki.gnome.org/Apps/Shotwell")
3644 (synopsis "Photo manager for GNOME 3")
3645 (description
3646 "Shotwell is a digital photo manager designed for the GNOME desktop
3647environment. It allows you to import photos from disk or camera, organize
3648them by keywords and events, view them in full-window or fullscreen mode, and
3649share them with others via social networking and more.")
3650 (license license:lgpl2.1+)))
293ff8b2
DT
3651
3652(define-public file-roller
3653 (package
3654 (name "file-roller")
3655 (version "3.10.0")
3656 (source (origin
3657 (method url-fetch)
3658 (uri (string-append "mirror://gnome/sources/" name "/"
3659 (version-major+minor version) "/"
3660 name "-" version ".tar.xz"))
3661 (sha256
3662 (base32
3663 "04sg4yzz4c3hzgxhbgx2dc36lq5hjrnrmal2q0amfvhl0jcvp2fq"))))
3664 (build-system glib-or-gtk-build-system)
3665 (native-inputs
3666 `(("intltool" ,intltool)
3667 ("pkg-config" ,pkg-config)))
3668 ;; TODO: Add libnautilus.
3669 (inputs
3670 `(("gtk+" ,gtk+)
3671 ("gdk-pixbuf" ,gdk-pixbuf)
3672 ("json-glib" ,json-glib)
3673 ("libarchive" ,libarchive)
3674 ("libnotify" ,libnotify)
3675 ("nettle" ,nettle)
3676 ("itstool" ,itstool)
3677 ("libxml2" ,libxml2)))
3678 (synopsis "Graphical archive manager for GNOME")
3679 (description "File Roller is an archive manager for the GNOME desktop
3680environment that allows users to view, unpack, and create compressed archives
3681such as gzip tarballs.")
3682 (home-page "http://fileroller.sourceforge.net/")
3683 (license license:gpl2+)))
7ce49365
SB
3684
3685(define-public gnome-session
3686 (package
3687 (name "gnome-session")
3688 (version "3.18.1.2")
3689 (source (origin
3690 (method url-fetch)
3691 (uri (string-append "mirror://gnome/sources/" name "/"
3692 (version-major+minor version) "/"
3693 name "-" version ".tar.xz"))
3694 (sha256
3695 (base32
3696 "0icajbzqf5llvp5s8nafwkhwz6a6jmwn4hhs81bk0bpzawyq4zdk"))))
3697 (build-system gnu-build-system)
3698 (native-inputs
3699 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3700 ("pkg-config" ,pkg-config)
3701 ("intltool" ,intltool)
3702 ("xsltproc" ,libxslt)))
3703 (inputs
3704 `(("gnome-desktop" ,gnome-desktop)
3705 ("gtk+" ,gtk+)
3706 ("json-glib" ,json-glib)
3707 ("libsm" ,libsm)
3708 ("libxcomposite" ,libxcomposite)
3709 ("libxtst" ,libxtst)
3710 ("mesa" ,mesa)
3711 ("upower" ,upower)
3712 ("xtrans" ,xtrans)))
3713 (synopsis "Session manager for GNOME")
3714 (description
3715 "This package contains the GNOME session manager, as well as a
3716configuration program to choose applications starting on login.")
3717 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
3718 (license license:gpl2+)))
f47ba77e
SB
3719
3720(define-public gjs
3721 (package
3722 (name "gjs")
3723 (version "1.44.0")
3724 (source (origin
3725 (method url-fetch)
3726 (uri (string-append "mirror://gnome/sources/" name "/"
3727 (version-major+minor version) "/"
3728 name "-" version ".tar.xz"))
3729 (sha256
3730 (base32
3731 "106fgpr4y99sj68l72pnfa2za11ps4bn6p9z28fr79j7mpv61jc8"))
3732 (modules '((guix build utils)))
3733 (snippet '(substitute* "test/run-with-dbus"
3734 (("/bin/rm") "rm")))))
3735 (build-system gnu-build-system)
3736 (arguments
3737 '(#:phases
3738 (modify-phases %standard-phases
3739 (add-before
3740 'check 'pre-check
3741 (lambda _
3742 ;; For the missing /etc/machine-id.
3743 (setenv "DBUS_FATAL_WARNINGS" "0")
3744 #t)))))
3745 (native-inputs
3746 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
3747 ("pkg-config" ,pkg-config)
3748 ("xmllint" ,libxml2)
3749 ;; For testing
3750 ("dbus-launch" ,dbus)
3751 ("uuidgen" ,util-linux)
3752 ("xvfb" ,xorg-server)))
3753 (propagated-inputs
3754 ;; These are all in the Requires.private field of gjs-1.0.pc.
3755 `(("gobject-introspection" ,gobject-introspection)
3756 ("mozjs" ,mozjs-24)))
3757 (inputs
3758 `(("gtk+" ,gtk+)
3759 ("readline" ,readline)))
3760 (synopsis "Javascript bindings for GNOME")
3761 (home-page "http://live.gnome.org/Gjs")
3762 (description
3763 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
3764javascript engine and the GObject introspection framework.")
3765 (license license:gpl2+)))
329d731b
DH
3766
3767(define-public gedit
3768 (package
3769 (name "gedit")
3770 (version "3.18.1")
3771 (source (origin
3772 (method url-fetch)
3773 (uri (string-append "mirror://gnome/sources/" name "/"
3774 (version-major+minor version) "/"
3775 name "-" version ".tar.xz"))
3776 (sha256
3777 (base32
3778 "1kb3hglcppap7fdy7i7w2wk746kfz77jzs2lq6vrna8a3fqaxmas"))))
3779 (build-system glib-or-gtk-build-system)
3780 (arguments
3781 `(#:phases
3782 (modify-phases %standard-phases
3783 (add-after
3784 'install 'wrap-gedit
3785 (lambda* (#:key inputs outputs #:allow-other-keys)
3786 (let ((out (assoc-ref outputs "out"))
3787 (gtksourceview (assoc-ref inputs "gtksourceview"))
3788 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3789 (wrap-program (string-append out "/bin/gedit")
3790 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3791 ;; For language-specs.
3792 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
3793 "/share")))))
3794 #t)))))
3795 (propagated-inputs
3796 `(("dconf" ,dconf)))
3797 (native-inputs
3798 `(("intltool" ,intltool)
3799 ("itstool", itstool)
3800 ("gobject-introspection" ,gobject-introspection)
3801 ("pkg-config" ,pkg-config)))
3802 (inputs
3803 `(("glib" ,glib)
3804 ("gtk+" ,gtk+)
3805 ("gtksourceview" ,gtksourceview)
3806 ("libpeas" ,libpeas)
3807 ("libxml2" ,libxml2)
3808 ("enchant" ,enchant)
3809 ("iso-codes" ,iso-codes)
3810 ("python-pygobject" ,python-pygobject)
3811 ("python" ,python)
3812 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3813 ("libx11" ,libx11)
3814 ("vala" ,vala)
3815 ("adwaita-icon-theme" ,adwaita-icon-theme)
3816 ("libsoup" ,libsoup)
3817 ("gnome-desktop" ,gnome-desktop)))
3818 (home-page "https://wiki.gnome.org/Apps/Gedit")
3819 (synopsis "GNOME text editor")
3820 (description "While aiming at simplicity and ease of use, gedit is a
3821powerful general purpose text editor.")
3822 (license license:gpl2+)))