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