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 Andy Wingo <wingo@igalia.com>
9 ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
10 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
11 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
13 ;;; This file is part of GNU Guix.
15 ;;; GNU Guix is free software; you can redistribute it and/or modify it
16 ;;; under the terms of the GNU General Public License as published by
17 ;;; the Free Software Foundation; either version 3 of the License, or (at
18 ;;; your option) any later version.
20 ;;; GNU Guix is distributed in the hope that it will be useful, but
21 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
22 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
23 ;;; GNU General Public License for more details.
25 ;;; You should have received a copy of the GNU General Public License
26 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
28 (define-module (gnu packages gnome)
29 #:use-module ((guix licenses) #:prefix license:)
30 #:use-module (guix packages)
31 #:use-module (guix download)
32 #:use-module (guix utils)
33 #:use-module (guix build-system gnu)
34 #:use-module (guix build-system glib-or-gtk)
35 #:use-module (gnu packages)
36 #:use-module (gnu packages autotools)
37 #:use-module (gnu packages base)
38 #:use-module (gnu packages bison)
39 #:use-module (gnu packages cups)
40 #:use-module (gnu packages curl)
41 #:use-module (gnu packages databases)
42 #:use-module (gnu packages djvu)
43 #:use-module (gnu packages flex)
44 #:use-module (gnu packages docbook)
45 #:use-module (gnu packages glib)
46 #:use-module (gnu packages gnupg)
47 #:use-module (gnu packages gnuzilla)
48 #:use-module (gnu packages gstreamer)
49 #:use-module (gnu packages gtk)
50 #:use-module (gnu packages guile)
51 #:use-module (gnu packages pdf)
52 #:use-module (gnu packages polkit)
53 #:use-module (gnu packages popt)
54 #:use-module (gnu packages ghostscript)
55 #:use-module (gnu packages iso-codes)
56 #:use-module (gnu packages libcanberra)
57 #:use-module (gnu packages linux)
58 #:use-module (gnu packages libusb)
59 #:use-module (gnu packages image)
60 #:use-module (gnu packages perl)
61 #:use-module (gnu packages pkg-config)
62 #:use-module (gnu packages pulseaudio)
63 #:use-module (gnu packages python)
64 #:use-module (gnu packages scanner)
65 #:use-module (gnu packages ssh)
66 #:use-module (gnu packages xml)
67 #:use-module (gnu packages gl)
68 #:use-module (gnu packages qt) ; for libxkbcommon
69 #:use-module (gnu packages compression)
70 #:use-module (gnu packages texlive)
71 #:use-module (gnu packages tls)
72 #:use-module (gnu packages web)
73 #:use-module (gnu packages webkit)
74 #:use-module (gnu packages xorg)
75 #:use-module (gnu packages xdisorg)
76 #:use-module (gnu packages freedesktop)
77 #:use-module (gnu packages mail)
78 #:use-module (gnu packages backup)
79 #:use-module (gnu packages nettle)
80 #:use-module (gnu packages ncurses)
81 #:use-module (srfi srfi-1))
83 (define-public brasero
89 (uri (string-append "mirror://gnome/sources/brasero/3.8/brasero-"
93 "1r5wjsrm47amdaf862ymkdlwlb636c45wg14x20hdr99c653d2nr"))))
94 (build-system gnu-build-system)
96 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
98 `(("intltool" ,intltool)
99 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
100 ("pkg-config" ,pkg-config)))
103 ("gnome-doc-utils" ,gnome-doc-utils)
104 ("gstreamer" ,gstreamer)
105 ("gst-plugins-base" ,gst-plugins-base)
108 ("libcanberra" ,libcanberra)
110 ("libnotify" ,libnotify)
112 ("libxml2" ,libxml2)))
113 (home-page "https://projects.gnome.org/brasero/")
114 (synopsis "CD/DVD burning tool for Gnome")
115 (description "Brasero is an application to burn CD/DVD for the Gnome
116 Desktop. It is designed to be as simple as possible and has some unique
117 features to enable users to create their discs easily and quickly.")
118 (license license:gpl2+)))
120 (define-public gnome-desktop
122 (name "gnome-desktop")
127 (uri (string-append "mirror://gnome/sources/" name "/"
128 (version-major+minor version) "/"
129 name "-" version ".tar.xz"))
132 "05lvik5cdh51xqd332qingph09zdhiaa1kqy9k2sk1simz4pvf8m"))))
133 (build-system gnu-build-system)
135 `(("intltool" ,intltool)
136 ("pkg-config" ,pkg-config)))
138 `(("gdk-pixbuf" ,gdk-pixbuf)
140 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
142 ("iso-codes" ,iso-codes)
146 ("libxkbfile" ,libxkbfile)
147 ("libxrandr" ,libxrandr)
148 ("xkeyboard-config" ,xkeyboard-config)))
149 (home-page "https://www.gnome.org/")
151 "Libgnome-desktop, gnome-about, and desktop-wide documents")
153 "The libgnome-desktop library provides API shared by several applications
154 on the desktop, but that cannot live in the platform for various reasons.
155 There is no API or ABI guarantee, although we are doing our best to provide
156 stability. Documentation for the API is available with gtk-doc.
158 The gnome-about program helps find which version of GNOME is installed.")
159 ; Some bits under the LGPL.
160 (license license:gpl2+)))
162 (define-public gnome-doc-utils
164 (name "gnome-doc-utils")
169 (uri (string-append "mirror://gnome/sources/" name "/"
170 (version-major+minor version) "/"
171 name "-" version ".tar.xz"))
174 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
175 (build-system gnu-build-system)
177 `(("intltool" ,intltool)
178 ("docbook-xml" ,docbook-xml-4.4)
179 ("python2-libxml2" ,python2-libxml2)
182 ("pkg-config" ,pkg-config)
183 ("python-2" ,python-2)))
184 (home-page "https://wiki.gnome.org/GnomeDocUtils")
186 "Documentation utilities for the Gnome project")
188 "Gnome-doc-utils is a collection of documentation utilities for the
189 Gnome project. It includes xml2po tool which makes it easier to translate
190 and keep up to date translations of documentation.")
191 (license license:gpl2+))) ; xslt under lgpl
199 (uri (string-append "mirror://gnome/sources/" name "/"
200 (version-major+minor version) "/"
201 name "-" version ".tar.xz"))
204 "0xfhi0w358lvca1jjx24x2gm67mif33dsnmi9cv5i0f83ks8vzpc"))))
205 (build-system gnu-build-system)
207 '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
209 #:phases (modify-phases %standard-phases
212 (lambda* (#:key inputs #:allow-other-keys)
213 (substitute* "build/tap-driver"
214 (("/usr/bin/env python") (which "python"))))))))
217 ("gnupg" ,gnupg) ;called as a child process during tests
218 ("libgcrypt" ,libgcrypt)))
220 `(("python" ,python-2) ;for tests
221 ("pkg-config" ,pkg-config)
223 ("intltool" ,intltool)))
224 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
226 `(("p11-kit" ,p11-kit)
229 (home-page "http://www.gnome.org")
230 (synopsis "Libraries for displaying certificates and accessing key stores")
232 "The GCR package contains libraries used for displaying certificates and
233 accessing key stores. It also provides the viewer for crypto files on the
235 (license license:lgpl2.1+)))
237 (define-public libgnome-keyring
239 (name "libgnome-keyring")
243 (uri (string-append "mirror://gnome/sources/" name "/"
244 (version-major+minor version) "/"
245 name "-" version ".tar.xz"))
248 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
249 (build-system gnu-build-system)
251 `(("libgcrypt" ,libgcrypt)
254 `(("pkg-config" ,pkg-config)
256 ("intltool" ,intltool)))
258 ;; Referred to in .h files and .pc.
260 (home-page "http://www.gnome.org")
261 (synopsis "Accessing passwords from the GNOME keyring")
263 "Client library to access passwords from the GNOME keyring.")
265 ;; Though a couple of files are LGPLv2.1+.
266 (license license:lgpl2.0+)))
268 (define-public gnome-keyring
270 (name "gnome-keyring")
274 (uri (string-append "mirror://gnome/sources/" name "/"
275 (version-major+minor version) "/"
276 name "-" version ".tar.xz"))
279 "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm"))))
280 (build-system gnu-build-system)
282 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
286 (string-append "--with-pkcs11-config="
287 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
288 (string-append "--with-pkcs11-modules="
289 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
291 (modify-phases %standard-phases
294 (lambda* (#:key inputs #:allow-other-keys)
295 (substitute* "build/tap-driver"
296 (("/usr/bin/env python") (which "python")))))
298 'configure 'fix-docbook
299 (lambda* (#:key inputs #:allow-other-keys)
300 (substitute* "docs/Makefile.am"
301 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
302 (string-append (assoc-ref inputs "docbook-xsl")
303 "/xml/xsl/docbook-xsl-"
304 ,(package-version docbook-xsl)
305 "/manpages/docbook.xsl")))
306 (setenv "XML_CATALOG_FILES"
307 (string-append (assoc-ref inputs "docbook-xml")
308 "/xml/dtd/docbook/catalog.xml")))))))
310 `(("libgcrypt" ,libgcrypt)
314 `(("pkg-config" ,pkg-config)
316 ("python" ,python-2) ;for tests
317 ("intltool" ,intltool)
318 ("autoconf" ,autoconf)
319 ("automake" ,automake)
320 ("libxslt" ,libxslt) ;for documentation
321 ("docbook-xml" ,docbook-xml-4.2)
322 ("docbook-xsl" ,docbook-xsl)))
323 (home-page "http://www.gnome.org")
324 (synopsis "Daemon to store passwords and encryption keys")
326 "gnome-keyring is a program that keeps passwords and other secrets for
327 users. It is run as a daemon in the session, similar to ssh-agent, and other
328 applications locate it via an environment variable or D-Bus.
330 The program can manage several keyrings, each with its own master password,
331 and there is also a session keyring which is never stored to disk, but
332 forgotten when the session ends.")
333 (license license:lgpl2.1+)))
335 (define-public evince
341 (uri (string-append "mirror://gnome/sources/" name "/"
342 (version-major+minor version) "/"
343 name "-" version ".tar.xz"))
346 "0c31pwfzfm5x036f018q31k33vl8xb96nbs0iiccsc1abc37bzq6"))))
347 (build-system glib-or-gtk-build-system)
349 `(#:configure-flags '("--disable-nautilus")
351 ;; FIXME: Tests fail with:
352 ;; ImportError: No module named gi.repository
353 ;; Where should that module come from?
356 `(("libspectre" ,libspectre)
357 ("djvulibre" ,djvulibre)
358 ("ghostscript" ,ghostscript)
362 ;; Add libgxps for XPS support.
363 ;; Build libkpathsea as a shared library for DVI support.
364 ;; ("libkpathsea" ,texlive-bin)
365 ("gnome-desktop" ,gnome-desktop)
366 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
367 ("libgnome-keyring" ,libgnome-keyring)
368 ("adwaita-icon-theme" ,adwaita-icon-theme)
370 ("gdk-pixbuf" ,gdk-pixbuf)
378 ("shared-mime-info" ,shared-mime-info)
380 ("libcanberra" ,libcanberra)
381 ("libsecret" ,libsecret)
384 ("dogtail" ,python2-dogtail)))
386 `(("intltool" ,intltool)
388 ("pkg-config" ,pkg-config)))
390 "http://www.gnome.org/projects/evince/")
391 (synopsis "GNOME's document viewer")
393 "Evince is a document viewer for multiple document formats. It
394 currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
395 of Evince is to replace the multiple document viewers that exist
396 on the GNOME Desktop with a single simple application.")
397 (license license:gpl2+)))
399 (define-public gsettings-desktop-schemas
401 (name "gsettings-desktop-schemas")
406 (uri (string-append "mirror://gnome/sources/" name "/"
407 (version-major+minor version) "/"
408 name "-" version ".tar.xz"))
411 "02dp1hl38k16m9abydfca1n236mdazqdz0p3n92s7haf9mdqsf16"))))
412 (build-system gnu-build-system)
416 `(("intltool" ,intltool)
417 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
418 ("gobject-introspection" ,gobject-introspection)
419 ("pkg-config" ,pkg-config)))
420 (home-page "https://launchpad.net/gsettings-desktop-schemas")
422 "GNOME settings for various desktop components")
424 "Gsettings-desktop-schemas contains a collection of GSettings schemas
425 for settings shared by various components of the GNOME desktop.")
426 (license license:lgpl2.1+)))
428 (define-public icon-naming-utils
430 (name "icon-naming-utils")
435 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
439 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
440 (build-system gnu-build-system)
443 ("perl-xml-simple" ,perl-xml-simple)))
447 'install 'set-load-paths
448 ;; Tell 'icon-name-mapping' where XML::Simple is.
449 (lambda* (#:key outputs #:allow-other-keys)
450 (let* ((out (assoc-ref outputs "out"))
451 (prog (string-append out "/libexec/icon-name-mapping")))
454 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
456 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
458 "Utility to implement the Freedesktop Icon Naming Specification")
460 "To help with the transition to the Freedesktop Icon Naming
461 Specification, the icon naming utility maps the icon names used by the
462 GNOME and KDE desktops to the icon names proposed in the specification.")
463 (license license:lgpl2.1+)))
465 (define-public desktop-file-utils
467 (name "desktop-file-utils")
471 (uri (string-append "http://www.freedesktop.org/software/" name
472 "/releases/" name "-" version ".tar.xz"))
475 "1ianvr2a69yjv4rpyv30w7yjsmnsb23crrka5ndqxycj4rkk4dc4"))))
476 (build-system gnu-build-system)
478 `(("pkg-config" ,pkg-config)))
481 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
482 (synopsis "Utilities for working with desktop entries")
484 "This package contains a few command line utilities for working with
487 desktop-file-validate: validates a desktop file and prints warnings/errors
488 about desktop entry specification violations.
490 desktop-file-install: installs a desktop file to the applications directory,
491 optionally munging it a bit in transit.
493 update-desktop-database: updates the database containing a cache of MIME types
494 handled by desktop files.")
495 (license license:gpl2+)))
497 (define-public gnome-icon-theme
499 (name "gnome-icon-theme")
504 (uri (string-append "mirror://gnome/sources/" name "/"
505 (version-major+minor version) "/"
506 name "-" version ".tar.xz"))
509 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
510 (build-system gnu-build-system)
512 `(("gtk+" ,gtk+) ; for gtk-update-icon-cache
513 ("icon-naming-utils" ,icon-naming-utils)
514 ("intltool" ,intltool)
515 ("pkg-config" ,pkg-config)))
516 (home-page "http://art.gnome.org/")
520 "Icons for the GNOME desktop.")
521 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
523 ;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
524 (define-public adwaita-icon-theme
525 (package (inherit gnome-icon-theme)
526 (name "adwaita-icon-theme")
530 (uri (string-append "mirror://gnome/sources/" name "/"
531 (version-major+minor version) "/"
532 name "-" version ".tar.xz"))
535 "1hmlw7kvhr7c2asc5y77adpymi9ka17gaf76zz835nwwffnn4rlw"))))))
537 (define-public shared-mime-info
539 (name "shared-mime-info")
543 (uri (string-append "http://freedesktop.org/~hadess/"
544 "shared-mime-info-" version ".tar.xz"))
547 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
548 (build-system gnu-build-system)
550 ;; The build system appears not to be parallel-safe.
551 '(#:parallel-build? #f))
554 ("libxml2" ,libxml2)))
556 `(("intltool" ,intltool)
557 ("pkg-config" ,pkg-config)))
558 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
559 (synopsis "Database of common MIME types")
561 "The shared-mime-info package contains the core database of common types
562 and the update-mime-database command used to extend it. It requires glib2 to
563 be installed for building the update command. Additionally, it uses intltool
564 for translations, though this is only a dependency for the maintainers. This
565 database is translated at Transifex.")
566 (license license:gpl2+)))
568 (define-public hicolor-icon-theme
570 (name "hicolor-icon-theme")
575 (uri (string-append "http://icon-theme.freedesktop.org/releases/"
576 "hicolor-icon-theme-" version ".tar.gz"))
579 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
580 (build-system gnu-build-system)
582 `(#:tests? #f)) ; no check target
583 (home-page "http://icon-theme.freedesktop.org/releases/")
585 "Freedesktop icon theme")
587 "Freedesktop icon theme.")
588 (license license:gpl2)))
590 (define-public libnotify
597 (uri (string-append "mirror://gnome/sources/" name "/"
598 (version-major+minor version) "/"
599 name "-" version ".tar.xz"))
602 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
603 (build-system gnu-build-system)
605 `(("gdk-pixbuf" ,gdk-pixbuf)
610 `(("pkg-config" ,pkg-config)
611 ("glib" ,glib "bin")))
612 (home-page "https://developer-next.gnome.org/libnotify/")
614 "GNOME desktop notification library")
616 "Libnotify is a library that sends desktop notifications to a
617 notification daemon, as defined in the Desktop Notifications spec. These
618 notifications can be used to inform the user about an event or display
619 some form of information without getting in the user's way.")
620 (license license:lgpl2.1+)))
622 (define-public libpeas
629 (uri (string-append "mirror://gnome/sources/" name "/"
630 (version-major+minor version) "/"
631 name "-" version ".tar.xz"))
634 "1mjjjjwphc83bjznmbsm7x0jg7ql261nys6qnl7mi0nkr4qvw476"))))
635 (build-system gnu-build-system)
638 ("gdk-pixbuf" ,gdk-pixbuf)
643 `(("pkg-config" ,pkg-config)
644 ("glib:bin" ,glib "bin")
645 ("gobject-introspection" ,gobject-introspection)
646 ("intltool" ,intltool)))
647 (home-page "https://wiki.gnome.org/Libpeas")
648 (synopsis "GObject plugin system")
650 "Libpeas is a gobject-based plugins engine, and is targetted at giving
651 every application the chance to assume its own extensibility. It also has a
652 set of features including, but not limited to: multiple extension points; on
653 demand (lazy) programming language support for C, Python and JS; simplicity of
655 (license license:lgpl2.0+)))
657 (define-public gtkglext
663 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
664 version "/gtkglext-" version ".tar.gz"))
666 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
668 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
669 (build-system gnu-build-system)
670 (inputs `(("gtk+" ,gtk+-2)
675 (native-inputs `(("pkg-config" ,pkg-config)
676 ("glib" ,glib "bin")))
677 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
678 (home-page "https://projects.gnome.org/gtkglext")
679 (synopsis "OpenGL extension to GTK+")
680 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
681 additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
682 API add-ons to make GTK+ widgets OpenGL-capable.")
683 (license license:lgpl2.1+)))
685 (define-public glade3
691 (uri (string-append "mirror://gnome/sources/" name "/"
692 (version-major+minor version) "/"
693 name "3-" version ".tar.xz"))
695 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
696 (build-system gnu-build-system)
699 ("libxml2" ,libxml2)))
701 `(("intltool" ,intltool)
703 ("pkg-config" ,pkg-config)))
704 (home-page "https://glade.gnome.org")
705 (synopsis "GTK+ rapid application development tool")
706 (description "Glade is a rapid application development (RAD) tool to
707 enable quick & easy development of user interfaces for the GTK+ toolkit and
708 the GNOME desktop environment.")
709 (license license:lgpl2.0+)))
711 (define-public libcroco
717 (uri (string-append "mirror://gnome/sources/" name "/"
718 (version-major+minor version) "/"
719 name "-" version ".tar.xz"))
722 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
723 (build-system gnu-build-system)
725 `(("pkg-config" ,pkg-config)))
730 (home-page "https://github.com/GNOME/libcroco")
731 (synopsis "CSS2 parsing and manipulation library")
733 "Libcroco is a standalone CSS2 parsing and manipulation library.
734 The parser provides a low level event driven SAC-like API and a CSS object
735 model like API. Libcroco provides a CSS2 selection engine and an experimental
736 XML/CSS rendering engine.")
739 (license license:lgpl2.1)))
741 (define-public libgsf
747 (uri (string-append "mirror://gnome/sources/" name "/"
748 (version-major+minor version) "/"
749 name "-" version ".tar.xz"))
752 "0w2v1a9sxsymd1mcy4mwsz4r6za9iwq69rj86nb939p41d4c6j6b"))))
753 (build-system gnu-build-system)
755 `(("intltool" ,intltool)
756 ("pkg-config" ,pkg-config)))
762 `(("gdk-pixbuf" ,gdk-pixbuf)
764 ("libxml2" ,libxml2)))
765 (home-page "http://www.gnome.org/projects/libgsf")
766 (synopsis "GNOME's Structured File Library")
768 "Libgsf aims to provide an efficient extensible I/O abstraction for
769 dealing with different structured file formats.")
772 (license license:lgpl2.1)))
774 (define-public librsvg
780 (uri (string-append "mirror://gnome/sources/" name "/"
781 (version-major+minor version) "/"
782 name "-" version ".tar.xz"))
785 "0fplymmqqr28y24vcnb01szn62pfbqhk8p1ngns54x9m6mflr5hk"))))
786 (build-system gnu-build-system)
790 'configure 'augment-gir-search-path
791 (lambda* (#:key inputs #:allow-other-keys)
792 (substitute* "gdk-pixbuf-loader/Makefile.in"
793 ;; By default the gdk-pixbuf loader is installed under
794 ;; gdk-pixbuf's prefix. Work around that.
795 (("gdk_pixbuf_moduledir = .*$")
796 (string-append "gdk_pixbuf_moduledir = "
797 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
799 ;; Likewise, create a separate 'loaders.cache' file.
800 (("gdk_pixbuf_cache_file = .*$")
801 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
803 'install 'generate-full-cache
804 (lambda* (#:key inputs outputs #:allow-other-keys)
805 (let ((loaders-directory
806 (string-append (assoc-ref outputs "out")
807 "/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
811 "gdk-pixbuf-query-loaders "
812 loaders-directory "/libpixbufloader-svg.so "
813 (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
814 "libpixbufloader-.*\\.so") " ")
815 "> " loaders-directory ".cache")))))
818 `(("pkg-config" ,pkg-config)
819 ("glib" ,glib "bin") ; glib-mkenums, etc.
820 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
823 ("libcroco" ,libcroco)
826 ("libxml2" ,libxml2)))
828 ;; librsvg-2.0.pc refers to all of that.
830 ("gdk-pixbuf" ,gdk-pixbuf)
832 (home-page "https://wiki.gnome.org/LibRsvg")
833 (synopsis "Render SVG files using Cairo")
835 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
837 (license license:lgpl2.0+)))
839 (define-public libidl
845 (uri (let ((upstream-name "libIDL"))
846 (string-append "mirror://gnome/sources/" upstream-name "/"
847 (version-major+minor version) "/"
848 upstream-name "-" version ".tar.bz2")))
851 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
852 (build-system gnu-build-system)
853 (inputs `(("glib" ,glib)))
855 `(("pkg-config" ,pkg-config)
858 (home-page "http://freecode.com/projects/libidl")
859 (synopsis "Create trees of CORBA Interface Definition Language files")
860 (description "Libidl is a library for creating trees of CORBA Interface
861 Definition Language (idl) files, which is a specification for defining
862 portable interfaces. libidl was initially written for orbit (the orb from the
863 GNOME project, and the primary means of libidl distribution). However, the
864 functionality was designed to be as reusable and portable as possible.")
865 (license license:lgpl2.0+)))
868 (define-public orbit2
874 (uri (let ((upstream-name "ORBit2"))
875 (string-append "mirror://gnome/sources/" upstream-name "/"
876 (version-major+minor version) "/"
877 upstream-name "-" version ".tar.bz2")))
879 (base32 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
880 (build-system gnu-build-system)
882 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
883 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
884 ;; ... which they then completly ignore !!
887 'configure 'ignore-deprecations
889 (substitute* "linc2/src/Makefile.in"
890 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
892 (inputs `(("glib" ,glib)
895 `(("pkg-config" ,pkg-config)))
896 (home-page "https://projects.gnome.org/orbit2/")
897 (synopsis "CORBA 2.4-compliant Object Request Broker")
898 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
899 featuring mature C, C++ and Python bindings.")
900 ;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
901 ;; SOME of the code files have licence notices for GPLv2+
902 ;; The tarball contains files of the text of GPLv2 and LGPLv2
903 (license license:gpl2+)))
906 (define-public libbonobo
912 (uri (string-append "mirror://gnome/sources/" name "/"
913 (version-major+minor version)
914 "/" name "-" version ".tar.bz2"))
916 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
917 (patches (list (search-patch "libbonobo-activation-test-race.patch")))))
918 (build-system gnu-build-system)
920 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
922 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
923 ;; ... which they then completly ignore !!
926 'configure 'ignore-deprecations
928 (substitute* "activation-server/Makefile.in"
929 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
931 (inputs `(("popt" ,popt)
932 ("libxml2" ,libxml2)))
933 ;; The following are Required by the .pc file
938 `(("intltool" ,intltool)
939 ("pkg-config" ,pkg-config)
940 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
943 (home-page "https://developer.gnome.org/libbonobo/")
944 (synopsis "Framework for creating reusable components for use in GNOME applications")
945 (description "Bonobo is a framework for creating reusable components for
946 use in GNOME applications, built on top of CORBA.")
947 ;; Licence not explicitly stated. Source files contain no licence notices.
948 ;; Tarball contains text of both GPLv2 and LGPLv2
949 ;; GPLv2 covers both conditions
950 (license license:gpl2+)))
960 (let ((upstream-name "GConf"))
961 (string-append "mirror://gnome/sources/" upstream-name "/"
962 (version-major+minor version) "/"
963 upstream-name "-" version ".tar.xz")))
965 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
966 (build-system gnu-build-system)
967 (inputs `(("dbus-glib" ,dbus-glib)
968 ("libxml2" ,libxml2)))
969 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
972 `(("intltool" ,intltool)
973 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
974 ("pkg-config" ,pkg-config)))
975 (home-page "https://projects.gnome.org/gconf/")
976 (synopsis "Store application preferences")
977 (description "Gconf is a system for storing application preferences. It
978 is intended for user preferences; not arbitrary data storage.")
979 (license license:lgpl2.0+)))
982 (define-public gnome-mime-data
984 (name "gnome-mime-data")
988 (uri (string-append "mirror://gnome/sources/" name "/"
989 (version-major+minor version) "/"
990 name "-" version ".tar.bz2"))
993 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
994 (build-system gnu-build-system)
997 ("intltool" ,intltool)))
998 (home-page "http://www.gnome.org")
999 (synopsis "Base MIME and Application database for GNOME")
1000 (description "GNOME Mime Data is a module which contains the base MIME
1001 and Application database for GNOME. The data stored by this module is
1002 designed to be accessed through the MIME functions in GnomeVFS.")
1003 (license license:gpl2+)))
1006 (define-public gnome-vfs
1012 (uri (string-append "mirror://gnome/sources/" name "/"
1013 (version-major+minor version) "/"
1014 name "-" version ".tar.bz2"))
1017 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
1018 (build-system gnu-build-system)
1022 'configure 'ignore-deprecations
1024 (substitute* '("libgnomevfs/Makefile.in"
1025 "daemon/Makefile.in")
1026 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1029 'configure 'patch-test-async-cancel-to-never-fail
1031 (substitute* "test/test-async-cancel.c"
1032 (("EXIT_FAILURE") "77")))
1033 %standard-phases))))
1034 (inputs `(("libxml2" ,libxml2)
1035 ("dbus-glib" ,dbus-glib)
1037 ("gnome-mime-data" ,gnome-mime-data)
1040 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1041 ("intltool" ,intltool)
1042 ("pkg-config" ,pkg-config)))
1043 (home-page "https://developer.gnome.org/gnome-vfs/")
1044 (synopsis "Access files and folders in GNOME applications")
1046 "GnomeVFS is the core library used to access files and folders in GNOME
1047 applications. It provides a file system abstraction which allows applications
1048 to access local and remote files with a single consistent API.")
1049 (license license:lgpl2.0+)))
1053 (define-public libgnome
1059 (uri (string-append "mirror://gnome/sources/" name "/"
1060 (version-major+minor version) "/"
1061 name "-" version ".tar.bz2"))
1064 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1065 (build-system gnu-build-system)
1069 'configure 'enable-deprecated
1071 (substitute* "libgnome/Makefile.in"
1072 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1074 (inputs `(("popt" ,popt)
1075 ("libxml2" ,libxml2)))
1077 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1078 ("intltool" ,intltool)
1079 ("pkg-config" ,pkg-config)))
1080 ;; The following are listed as Required in the .pc file
1081 ;; (except for libcanberra -- which seems to be oversight on the part
1082 ;; of the upstream developers -- anything that links against libgnome,
1083 ;; must also link against libcanberra
1085 `(("libcanberra" ,libcanberra)
1086 ("libbonobo" ,libbonobo)
1088 ("gnome-vfs" ,gnome-vfs)))
1089 (home-page "https://developer.gnome.org/libgnome/")
1090 (synopsis "Useful routines for building applications")
1091 (description "The libgnome library provides a number of useful routines
1092 for building modern applications, including session management, activation of
1093 files and URIs, and displaying help.")
1094 (license license:lgpl2.0+)))
1097 (define-public libart-lgpl
1099 (name "libart-lgpl")
1103 (uri (let ((upstream-name "libart_lgpl"))
1104 (string-append "mirror://gnome/sources/" upstream-name "/"
1105 (version-major+minor version) "/"
1106 upstream-name "-" version ".tar.bz2")))
1109 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
1110 (build-system gnu-build-system)
1112 `(("pkg-config" ,pkg-config)))
1113 (home-page "https://people.gnome.org/~mathieu/libart")
1114 (synopsis "2D drawing library")
1115 (description "Libart is a 2D drawing library intended as a
1116 high-quality vector-based 2D library with antialiasing and alpha composition.")
1117 (license license:lgpl2.0+)))
1121 (define-public libgnomecanvas
1123 (name "libgnomecanvas")
1127 (uri (string-append "mirror://gnome/sources/" name "/"
1128 (version-major+minor version) "/"
1129 name "-" version ".tar.gz"))
1132 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1133 (build-system gnu-build-system)
1134 ;; Mentioned as Required in the .pc file
1135 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1138 `(("intltool" ,intltool)
1139 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1140 ("pkg-config" ,pkg-config)))
1141 (home-page "https://developer.gnome.org/libgnomecanvas/")
1142 (synopsis "Flexible widget for creating interactive structured graphics")
1143 (description "The GnomeCanvas widget provides a flexible widget for
1144 creating interactive structured graphics.")
1145 (license license:lgpl2.0+)))
1147 (define-public libgnomecanvasmm
1149 (name "libgnomecanvasmm")
1153 (uri (string-append "mirror://gnome/sources/" name "/"
1154 (version-major+minor version) "/"
1155 name "-" version ".tar.bz2"))
1158 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1159 (build-system gnu-build-system)
1160 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1162 `(("gtkmm-2" ,gtkmm-2)
1163 ("pkg-config" ,pkg-config)))
1164 (home-page "http://gtkmm.org")
1165 (synopsis "C++ bindings to the GNOME Canvas library")
1166 (description "C++ bindings to the GNOME Canvas library.")
1167 (license license:lgpl2.0+)))
1169 (define-public libgnomeui
1175 (uri (string-append "mirror://gnome/sources/" name "/"
1176 (version-major+minor version) "/"
1177 name "-" version ".tar.bz2"))
1180 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1181 (build-system gnu-build-system)
1182 ;; Mentioned as Required in the .pc file
1183 (propagated-inputs `(("libgnome" ,libgnome)
1184 ("libgnome-keyring" ,libgnome-keyring)))
1185 (inputs `(("libgnomecanvas" ,libgnomecanvas)
1186 ("libbonoboui" ,libbonoboui)
1187 ("libjpeg" ,libjpeg)
1189 ("libbonobo" ,libbonobo)
1190 ("libxml2" ,libxml2)
1191 ("libglade" ,libglade)))
1193 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1194 ("intltool" ,intltool)
1195 ("pkg-config" ,pkg-config)))
1196 (home-page "https://developer.gnome.org/libgnomeui/")
1197 (synopsis "Additional widgets for applications")
1198 (description "The libgnomeui library provides additional widgets for
1199 applications. Many of the widgets from libgnomeui have already been ported to GTK+.")
1200 (license license:lgpl2.0+)))
1202 (define-public libglade
1208 (uri (string-append "mirror://gnome/sources/" name "/"
1209 (version-major+minor version) "/"
1210 name "-" version ".tar.bz2"))
1213 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1214 (build-system gnu-build-system)
1216 `(("gtk+-2" ,gtk+-2)
1217 ("libxml2" ,libxml2)
1218 ("python" ,python))) ;; needed for the optional libglade-convert program
1220 `(("pkg-config" ,pkg-config)))
1221 (home-page "https://developer.gnome.org/libglade")
1222 (synopsis "Load glade interfaces and access the glade built widgets")
1223 (description "Libglade is a library that provides interfaces for loading
1224 graphical interfaces described in glade files and for accessing the
1225 widgets built in the loading process.")
1226 (license license:gpl2+))) ; This is correct. GPL not LGPL
1228 (define-public libgnomeprint
1229 ;; This library has been deprecated since 2006; see
1230 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
1232 (name "libgnomeprint")
1236 (uri (string-append "mirror://gnome/sources/" name "/"
1237 (version-major+minor version) "/"
1238 name "-" version ".tar.bz2"))
1241 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))
1242 (modules '((guix build utils)))
1244 ;; Adapt to newer freetype. As the package is deprecated, there
1245 ;; is no use in creating a patch and reporting it.
1246 '(substitute* '("libgnomeprint/gnome-font-face.c"
1247 "libgnomeprint/gnome-rfont.c")
1248 (("freetype/") "freetype2/")))))
1249 (build-system gnu-build-system)
1252 ("libart-lgpl" ,libart-lgpl)
1254 ("libxml2" ,libxml2)))
1256 `(("intltool" ,intltool)
1257 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1258 ("pkg-config" ,pkg-config)))
1259 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1260 (synopsis "Printing framework for GNOME")
1262 "GNOME-print was a printing framework for GNOME. It has been deprecated
1263 since ca. 2006, when GTK+ itself incorporated printing support.")
1264 (license license:lgpl2.0+)))
1267 (define-public libgnomeprintui
1268 ;; Deprecated; see libgnomeprint.
1270 (name "libgnomeprintui")
1274 (uri (string-append "mirror://gnome/sources/" name "/"
1275 (version-major+minor version) "/"
1276 name "-" version ".tar.bz2"))
1279 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1280 (build-system gnu-build-system)
1281 ;; Mentioned as Required in the .pc file
1282 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1283 (inputs `(("gtk+" ,gtk+-2)
1285 ("gnome-icon-theme" ,gnome-icon-theme)
1286 ("libgnomecanvas" ,libgnomecanvas)
1287 ("libxml2" ,libxml2)))
1289 `(("intltool" ,intltool)
1290 ("pkg-config" ,pkg-config)))
1291 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1292 (synopsis "Printing framework for GNOME")
1293 (description (package-description libgnomeprint))
1294 (license license:lgpl2.0+)))
1296 (define-public libbonoboui
1298 (name "libbonoboui")
1302 (uri (string-append "mirror://gnome/sources/" name "/"
1303 (version-major+minor version) "/"
1304 name "-" version ".tar.bz2"))
1307 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1308 (build-system gnu-build-system)
1312 'check 'start-xserver
1313 (lambda* (#:key inputs #:allow-other-keys)
1314 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1317 (setenv "HOME" (getcwd))
1318 (setenv "DISPLAY" disp)
1319 ;; There must be a running X server and make check doesn't start one.
1320 ;; Therefore we must do it.
1321 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1323 ;; Mentioned as Required by the .pc file
1324 (propagated-inputs `(("libxml2" ,libxml2)))
1327 ("pangox-compat" ,pangox-compat)
1328 ("libgnome" ,libgnome)
1329 ("libgnomecanvas" ,libgnomecanvas)
1330 ("libglade" ,libglade)))
1332 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1333 ("intltool" ,intltool)
1334 ("xorg-server" ,xorg-server) ; For running the tests
1335 ("pkg-config" ,pkg-config)))
1336 (home-page "https://developer.gnome.org/libbonoboui/")
1337 (synopsis "Some user interface controls using Bonobo")
1338 (description "The Bonobo UI library provides a number of user interface
1339 controls using the Bonobo component framework.")
1340 (license license:lgpl2.0+)))
1342 (define-public libwnck
1348 (uri (string-append "mirror://gnome/sources/" name "/"
1349 (version-major+minor version) "/"
1350 name "-" version ".tar.xz"))
1352 (base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
1353 (build-system gnu-build-system)
1355 `(("pkg-config" ,pkg-config)
1356 ("intltool" ,intltool)))
1359 ("libxres" ,libxres)
1360 ("startup-notification" ,startup-notification)))
1361 (home-page "https://developer.gnome.org/libwnck/")
1362 (synopsis "Window Navigator Construction Kit")
1364 "Libwnck is the Window Navigator Construction Kit, a library for use in
1365 writing pagers, tasklists, and more generally applications that are dealing
1366 with window management. It tries hard to respect the Extended Window Manager
1367 Hints specification (EWMH).")
1368 (license license:lgpl2.0+)))
1370 ;; stable version for gtk2, required by xfwm4.
1371 (define-public libwnck-1
1372 (package (inherit libwnck)
1377 (uri (string-append "mirror://gnome/sources/" name "/"
1378 (version-major+minor version) "/"
1379 name "-" version ".tar.xz"))
1382 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1385 ("libxres" ,libxres)
1386 ("startup-notification" ,startup-notification)))))
1388 (define-public goffice
1394 (uri (string-append "mirror://gnome/sources/" name "/"
1395 (version-major+minor version) "/"
1396 name "-" version ".tar.xz"))
1398 (base32 "0kj0iwng6w4axm7yv2zy7myn5dhw5ilrlq2pzrjlm9i852ikqy60"))))
1399 (build-system gnu-build-system)
1403 ("librsvg" ,librsvg)
1404 ("libxslt" ,libxslt)
1405 ("libxml2" ,libxml2)))
1407 `(("intltool" ,intltool)
1408 ("glib" ,glib "bin")
1409 ("pkg-config" ,pkg-config)))
1410 (home-page "https://developer.gnome.org/goffice/")
1411 (synopsis "Document-centric objects and utilities")
1412 (description "A GLib/GTK+ set of document-centric objects and utilities.")
1414 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1416 (list license:gpl2 license:gpl3))))
1418 (define-public goffice-0.8
1419 (package (inherit goffice)
1423 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1424 (version-major+minor version) "/"
1425 (package-name goffice) "-" version ".tar.xz"))
1427 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1431 'unpack 'fix-pcre-check
1433 ;; Only glib.h can be included directly. See
1434 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1435 (substitute* "configure"
1436 (("glib/gregex\\.h") "glib.h")) #t)
1439 ;; libgoffice-0.8.pc mentions libgsf-1
1440 `(("libgsf" ,libgsf)))
1443 ,@(alist-delete "gtk" (package-inputs goffice))))))
1445 (define-public gnumeric
1451 (uri (string-append "mirror://gnome/sources/" name "/"
1452 (version-major+minor version) "/"
1453 name "-" version ".tar.xz"))
1456 "18bvc3phghr4p5440fp8hm6gvp53d3mqs9cyc637zpmk0b6bcp7c"))))
1457 (build-system gnu-build-system)
1459 `(;; The gnumeric developers don't worry much about failing tests.
1460 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
1464 'configure 'pre-conf
1465 (lambda* (#:key outputs #:allow-other-keys)
1466 ;; Make install tries to write into the directory of goffice
1467 ;; I am informed that this only affects the possibility to embed a
1468 ;; spreadsheet inside an Abiword document. So presumably when we
1469 ;; package Abiword we'll have to refer it to this directory.
1470 (substitute* "configure"
1471 (("^GOFFICE_PLUGINS_DIR=.*")
1472 (string-append "GOFFICE_PLUGINS_DIR="
1473 (assoc-ref outputs "out") "/goffice/plugins"))))
1478 ("goffice" ,goffice)
1480 ("libxml2" ,libxml2)
1483 `(("intltool" ,intltool)
1484 ("glib:bin" ,glib "bin")
1485 ("pkg-config" ,pkg-config)))
1486 (home-page "http://www.gnumeric.org")
1487 (synopsis "Spreadsheet application")
1489 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1490 interoperable with other spreadsheet applications. It has a vast array of
1491 features beyond typical spreadsheet functionality, such as support for linear
1492 and non-linear solvers, statistical analysis, and telecommunication
1495 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1496 (list license:gpl2 license:gpl3))))
1498 (define-public gnome-themes-standard
1500 (name "gnome-themes-standard")
1501 ;; The version of this package should be the same as the version of
1503 (version (package-version gnome-desktop))
1507 (uri (string-append "mirror://gnome/sources/" name "/"
1508 (version-major+minor version) "/" name "-"
1512 "0kyrbfrgl6g6wm6zpllldz36fclvl8vwmn1snwk18kf7f6ncpsac"))))
1513 (build-system gnu-build-system)
1517 ("librsvg" ,librsvg)
1518 ("libxml2" ,libxml2)
1521 `(("intltool" ,intltool)
1522 ("glib:bin" ,glib "bin")
1523 ("pkg-config" ,pkg-config)))
1527 'build 'use-full-cache
1528 ;; Use librsvg's loaders.cache instead of the one provided by
1529 ;; gdk-pixbuf because the latter does not include support for SVG
1531 (lambda* (#:key inputs #:allow-other-keys)
1532 (setenv "GDK_PIXBUF_MODULE_FILE"
1533 (car (find-files (assoc-ref inputs "librsvg")
1534 "loaders\\.cache"))))
1536 (home-page "https://launchpad.net/gnome-themes-standard")
1537 (synopsis "Default GNOME 3 themes")
1539 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1540 (license license:lgpl2.1+)))
1542 (define-public seahorse
1549 (uri (string-append "mirror://gnome/sources/" name "/"
1550 (version-major+minor version) "/" name "-"
1554 "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp"))))
1555 (build-system glib-or-gtk-build-system)
1561 ("openssh" ,openssh)
1562 ("libsecret" ,libsecret)))
1564 `(("intltool" ,intltool)
1565 ("glib:bin" ,glib "bin")
1566 ("itstool" ,itstool)
1567 ("pkg-config" ,pkg-config)))
1568 (home-page "https://launchpad.net/gnome-themes-standard")
1569 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1571 "Seahorse is a GNOME application for managing encryption keys and
1572 passwords in the GNOME keyring.")
1573 (license license:gpl2+)))
1581 (uri (string-append "mirror://gnome/sources/" name "/"
1582 (version-major+minor version) "/"
1583 name "-" version ".tar.xz"))
1586 "0zwpzhkhfk3piya14m7p2hl2vaabahprphppfm46ci91z39kp7hd"))))
1587 (build-system gnu-build-system)
1590 (modify-phases %standard-phases
1591 (add-before 'check 'set-cc
1596 `(("pkg-config" ,pkg-config)
1599 ("xsltproc" ,libxslt)
1600 ("dbus" ,dbus) ; for dbus tests
1601 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1603 `(("glib" ,glib))) ; required by libvala-0.26.pc
1604 (home-page "http://live.gnome.org/Vala/")
1605 (synopsis "Compiler for the GObject type system")
1607 "Vala is a programming language that aims to bring modern programming
1608 language features to GNOME developers without imposing any additional runtime
1609 requirements and without using a different ABI compared to applications and
1610 libraries written in C.")
1611 (license license:lgpl2.1+)))
1619 (uri (string-append "mirror://gnome/sources/" name "/"
1620 (version-major+minor version) "/"
1621 name "-" version ".tar.xz"))
1624 "0lnq0bgkmsixjwmfacb2ch9qfjqjxa8zkk1hiv3l29kgca0n3nal"))))
1625 (build-system gnu-build-system)
1627 `(("pkg-config" ,pkg-config)
1628 ("intltool" ,intltool)
1630 ("gobject-introspection" ,gobject-introspection)
1631 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1632 ("xmllint" ,libxml2)))
1634 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1635 ("gnutls" ,gnutls))) ;ditto
1636 (home-page "http://www.gnome.org/")
1637 (synopsis "Virtual Terminal Emulator")
1639 "VTE is a library (libvte) implementing a terminal emulator widget for
1640 GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1641 gnome-terminal, but can also be used to embed a console/terminal in games,
1642 editors, IDEs, etc.")
1643 (license license:lgpl2.1+)))
1645 ;; stable version for gtk2, required by xfce4-terminal.
1646 (define-public vte/gtk+-2
1647 (package (inherit vte)
1652 (uri (string-append "mirror://gnome/sources/" name "/"
1653 (version-major+minor version) "/"
1654 name "-" version ".tar.xz"))
1657 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1659 '(#:configure-flags '("--disable-python")))
1661 `(("pkg-config" ,pkg-config)
1662 ("intltool" ,intltool)
1663 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1665 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1666 ("ncurses" ,ncurses))))) ; required by libvte.la
1668 (define-public dconf
1675 "mirror://gnome/sources/" name "/"
1676 (version-major+minor version) "/"
1677 name "-" version ".tar.xz"))
1679 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1680 (build-system glib-or-gtk-build-system)
1685 ("libxml2" ,libxml2)))
1687 `(("libxslt" ,libxslt)
1688 ("docbook-xml" ,docbook-xml-4.2)
1689 ("docbook-xsl" ,docbook-xsl)
1690 ("intltool" ,intltool)
1691 ("pkg-config" ,pkg-config)))
1693 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1694 ; or /etc/machine-id.
1696 ;; Set the correct RUNPATH in binaries.
1697 (list (string-append "LDFLAGS=-Wl,-rpath="
1698 (assoc-ref %outputs "out") "/lib")
1699 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1702 'configure 'fix-docbook
1703 (lambda* (#:key inputs #:allow-other-keys)
1704 (substitute* "docs/Makefile.in"
1705 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
1706 (string-append (assoc-ref inputs "docbook-xsl")
1707 "/xml/xsl/docbook-xsl-"
1708 ,(package-version docbook-xsl)
1709 "/manpages/docbook.xsl")))
1710 (setenv "XML_CATALOG_FILES"
1711 (string-append (assoc-ref inputs "docbook-xml")
1712 "/xml/dtd/docbook/catalog.xml")))
1714 (home-page "https://developer.gnome.org/dconf")
1715 (synopsis "Low-level GNOME configuration system")
1716 (description "Dconf is a low-level configuration system. Its main purpose
1717 is to provide a backend to GSettings on platforms that don't already have
1718 configuration storage systems.")
1719 (license license:lgpl2.1)))
1721 (define-public json-glib
1727 (uri (string-append "mirror://gnome/sources/" name "/"
1728 (version-major+minor version) "/"
1729 name "-" version ".tar.xz"))
1732 "02k66lpc4cmgygj66n8zcy59bggy7yzm3v4hni9xqplgva9d2yw8"))))
1733 (build-system gnu-build-system)
1735 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
1736 ("gobject-introspection" ,gobject-introspection)
1737 ("pkg-config" ,pkg-config)))
1739 `(("glib" ,glib))) ;according to json-glib-1.0.pc
1740 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1741 (synopsis "Compiler for the GObject type system")
1742 (description "JSON-GLib is a C library based on GLib providing
1743 serialization and deserialization support for the JavaScript Object Notation
1744 (JSON) format described by RFC 4627. It provides parser and generator
1745 GObject classes and various wrappers for the complex data types employed by
1746 JSON, such as arrays and objects.")
1747 (license license:lgpl2.1+)))
1749 (define-public libxklavier
1751 (name "libxklavier")
1755 (uri (string-append "mirror://gnome/sources/" name "/"
1756 version "/" name "-" version ".tar.xz"))
1759 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1760 (build-system gnu-build-system)
1763 (list (string-append "--with-xkb-base="
1764 (assoc-ref %build-inputs "xkeyboard-config")
1765 "/share/X11/xkb"))))
1767 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1768 ("gobject-introspection" ,gobject-introspection)
1769 ("pkg-config" ,pkg-config)))
1771 ;; Required by libxklavier.pc.
1773 ("libxml2" ,libxml2)))
1775 `(("iso-codes" ,iso-codes)
1777 ("libxkbfile" ,libxkbfile)
1778 ("xkbcomp" ,xkbcomp)
1779 ("xkeyboard-config" ,xkeyboard-config)))
1780 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1781 (synopsis "High-level API for X Keyboard Extension")
1783 "LibXklavier is a library providing high-level API for X Keyboard
1784 Extension known as XKB. This library is indended to support XFree86 and other
1785 commercial X servers. It is useful for creating XKB-related software (layout
1787 (license license:lgpl2.0+)))
1789 (define-public python2-rsvg
1790 ;; XXX: This is actually a subset of gnome-python-desktop.
1792 (name "python2-rsvg")
1798 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
1799 version ".tar.bz2"))
1802 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
1803 (build-system gnu-build-system)
1805 `(("pkg-config" ,pkg-config)))
1807 `(("python" ,python-2)
1808 ("python2-pygtk" ,python2-pygtk)
1809 ("librsvg" ,librsvg)))
1810 (home-page "http://www.gnome.org")
1811 (synopsis "Python bindings to librsvg")
1813 "This packages provides Python bindings to librsvg, the SVG rendering
1816 ;; This is the license of the rsvg bindings. The license of each module
1817 ;; of gnome-python-desktop is given in 'COPYING'.
1818 (license license:lgpl2.1+)))
1820 (define-public glib-networking
1822 (name "glib-networking")
1826 (uri (string-append "mirror://gnome/sources/glib-networking/"
1827 (version-major+minor version) "/"
1828 name "-" version ".tar.xz"))
1831 "0ij33bhvn7y5gagx4sbrw906dsjjjs9dllxn73pzv6x97c6k92lg"))))
1832 (build-system gnu-build-system)
1835 ;; FIXME: ca-certificates.crt is not available in the build environment.
1836 '("--with-ca-certificates=no")
1838 (modify-phases %standard-phases
1839 (add-before 'configure 'patch-giomoduledir
1840 ;; Install GIO modules into $out/lib/gio/modules.
1842 (substitute* "configure"
1843 (("GIO_MODULE_DIR=.*")
1844 (string-append "GIO_MODULE_DIR=" %output
1845 "/lib/gio/modules\n"))))))))
1847 `(("pkg-config" ,pkg-config)
1848 ("intltool" ,intltool)))
1852 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1853 ("p11-kit" ,p11-kit)))
1854 (home-page "http://www.gnome.org")
1855 (synopsis "Network-related GIO modules")
1857 "This package contains various network related extensions for the GIO
1859 (license license:lgpl2.0+)))
1861 (define-public librest
1867 (uri (string-append "mirror://gnome/sources/rest/"
1868 (version-major+minor version) "/"
1869 "rest-" version ".tar.xz"))
1872 "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))))
1873 (build-system gnu-build-system)
1875 '(#:tests? #f ; tests require internet connection
1877 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
1879 `(("glib-mkenums" ,glib "bin")
1880 ("gobject-introspection" ,gobject-introspection)
1881 ("pkg-config" ,pkg-config)))
1883 ;; rest-0.7.pc refers to all these.
1885 ("libsoup" ,libsoup)
1886 ("libxml2" ,libxml2)))
1887 (home-page "http://www.gtk.org/")
1888 (synopsis "RESTful web api query library")
1890 "This library was designed to make it easier to access web services that
1891 claim to be \"RESTful\". It includes convenience wrappers for libsoup and
1892 libxml to ease remote use of the RESTful API.")
1893 (license license:lgpl2.1+)))
1895 (define-public libsoup
1901 (uri (string-append "mirror://gnome/sources/libsoup/"
1902 (version-major+minor version) "/"
1903 name "-" version ".tar.xz"))
1906 "0yv61y5vfar1rfksa6f53zhfw9wcb39zjix8gqc1ff5gqid3c08y"))))
1907 (build-system gnu-build-system)
1908 (outputs '("out" "doc"))
1911 (list (string-append "--with-html-dir="
1912 (assoc-ref %outputs "doc")
1913 "/share/gtk-doc/html")
1914 ;; To find GIO modules from glib-networking.
1915 (string-append "GIO_EXTRA_MODULES="
1916 (assoc-ref %build-inputs "glib-networking")
1917 "/lib/gio/modules"))
1919 (modify-phases %standard-phases
1920 (add-before 'configure 'disable-unconnected-socket-test
1921 ;; This test fails due to missing /etc/nsswitch.conf
1922 ;; in the build environment.
1924 (substitute* "tests/socket-test.c"
1925 ((".*/sockets/unconnected.*") ""))
1927 (add-before 'check 'unset-LC_ALL
1928 ;; The 'check-local' target runs 'env LANG=C sort -u',
1929 ;; unset 'LC_ALL' to make 'LANG' working.
1934 `(("glib:bin" ,glib "bin") ; for glib-mkenums
1935 ("gobject-introspection" ,gobject-introspection)
1936 ("intltool" ,intltool)
1937 ("pkg-config" ,pkg-config)
1938 ("python" ,python-wrapper)
1939 ;; These are needed for the tests.
1940 ;; FIXME: Add PHP once available.
1944 ;; libsoup-2.4.pc refers to all these.
1946 ("libxml2" ,libxml2)))
1948 `(("glib-networking" ,glib-networking)
1949 ("sqlite" ,sqlite)))
1950 (home-page "https://live.gnome.org/LibSoup/")
1951 (synopsis "GLib-based HTTP Library")
1953 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
1954 and the GLib main loop, to integrate well with GNOME applications.")
1955 (license license:lgpl2.0+)))
1957 (define-public libsecret
1964 "mirror://gnome/sources/libsecret/" version "/"
1965 name "-" version ".tar.xz"))
1968 "1qq29c01xxjyx5sl6y5h22w8r0ff4c73bph3gfx3h7mx5mvalwqc"))))
1969 (build-system gnu-build-system)
1970 (outputs '("out" "doc"))
1972 `(#:tests? #f ; FIXME: Testing hangs.
1974 (list (string-append "--with-html-dir="
1975 (assoc-ref %outputs "doc")
1976 "/share/gtk-doc/html"))))
1978 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
1979 ("gobject-introspection" ,gobject-introspection)
1980 ("intltool" ,intltool)
1981 ("pkg-config" ,pkg-config)
1983 ("xsltproc" ,libxslt)))
1984 ;; These are needed for the tests.
1985 ;; FIXME: Add gjs once available.
1987 ;("python2" ,python-2)
1988 ;("python2-dbus" ,python2-dbus)
1989 ;("python2-pygobject" ,python2-pygobject)
1990 ;("python2-pygobject-2" ,python2-pygobject-2)))
1992 `(("glib" ,glib))) ; required by libsecret-1.pc
1994 `(("docbook-xsl" ,docbook-xsl)
1995 ("libgcrypt" ,libgcrypt)
1996 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
1997 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
1998 (synopsis "GObject bindings for \"Secret Service\" API")
2000 "Libsecret is a GObject based library for storing and retrieving passwords
2001 and other secrets. It communicates with the \"Secret Service\" using DBus.")
2002 (license license:lgpl2.1+)))
2004 (define-public gnome-mines
2006 (name "gnome-mines")
2011 (uri (string-append "mirror://gnome/sources/" name "/"
2012 (version-major+minor version) "/"
2013 name "-" version ".tar.xz"))
2016 "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx"))))
2017 (build-system glib-or-gtk-build-system)
2020 (modify-phases %standard-phases
2021 (add-before 'configure 'patch-/bin/true
2023 (substitute* "configure"
2024 (("/bin/true") (which "true")))))
2025 (add-after 'install 'wrap-pixbuf
2026 ;; Use librsvg's loaders.cache to support SVG files.
2027 (lambda* (#:key inputs outputs #:allow-other-keys)
2028 (let* ((out (assoc-ref outputs "out"))
2029 (prog (string-append out "/bin/gnome-mines"))
2030 (rsvg (assoc-ref inputs "librsvg"))
2031 (pixbuf (find-files rsvg "^loaders\\.cache$")))
2033 `("GDK_PIXBUF_MODULE_FILE" = ,pixbuf))))))))
2035 `(("pkg-config" ,pkg-config)
2036 ("desktop-file-utils" ,desktop-file-utils)
2037 ("intltool" ,intltool)
2038 ("itstool" ,itstool)))
2041 ("librsvg" ,librsvg)))
2042 (home-page "https://wiki.gnome.org/Apps/Mines")
2043 (synopsis "Minesweeper game")
2045 "Mines (previously gnomine) is a puzzle game where you locate mines
2046 floating in an ocean using only your brain and a little bit of luck.")
2047 (license license:gpl2+)))
2049 (define-public gnome-terminal
2051 (name "gnome-terminal")
2056 (uri (string-append "mirror://gnome/sources/" name "/"
2057 (version-major+minor version) "/"
2058 name "-" version ".tar.xz"))
2061 "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd"))))
2062 (build-system glib-or-gtk-build-system)
2065 (list "--disable-migration" "--disable-search-provider"
2066 "--without-nautilus-extension")
2068 (modify-phases %standard-phases
2069 (add-before 'configure 'patch-/bin/true
2071 (substitute* "configure"
2072 (("/bin/true") (which "true"))))))))
2074 `(("pkg-config" ,pkg-config)
2075 ("desktop-file-utils" ,desktop-file-utils)
2076 ("intltool" ,intltool)
2077 ("itstool" ,itstool)))
2083 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2084 ("util-linux" ,util-linux)
2086 (home-page "https://wiki.gnome.org/Apps/Terminal")
2087 (synopsis "Terminal emulator")
2089 "GNOME Terminal is a terminal emulator application for accessing a
2090 UNIX shell environment which can be used to run programs available on
2093 It supports several profiles, multiple tabs and implements several
2094 keyboard shortcuts.")
2095 (license license:gpl3+)))
2097 (define-public colord
2104 (uri (string-append "http://www.freedesktop.org/software/colord/releases/"
2105 name "-" version ".tar.xz"))
2108 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2109 (build-system glib-or-gtk-build-system)
2111 '(;; The tests want to run valgrind. Punt for now.
2113 #:configure-flags (list "--localstatedir=/var"
2114 ;; GUSB not packaged yet.
2116 ;; No dep on systemd.
2117 "--disable-systemd-login"
2118 ;; Wants to install to global completion dir;
2120 "--disable-bash-completion"
2121 ;; colord-gtk not packaged yet.
2122 "--disable-session-example"
2123 "--with-daemon-user=colord"
2125 (string-append "--with-udevrulesdir="
2126 (assoc-ref %outputs "out")
2127 "/lib/udev/rules.d"))
2129 (modify-phases %standard-phases
2130 (add-before 'configure 'patch-/bin/true
2132 (substitute* "configure"
2133 (("/bin/true") (which "true")))
2134 (substitute* "src/Makefile.in"
2135 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
2136 "if test -w $(DESTDIR)$(localstatedir);")))))))
2138 `(("pkg-config" ,pkg-config)
2139 ("gobject-introspection" ,gobject-introspection)
2140 ("libtool" ,libtool)
2141 ("intltool" ,intltool)))
2144 ("dbus-glib" ,dbus-glib)
2149 ("sane-backends" ,sane-backends)))
2150 (home-page "http://www.freedesktop.org/software/colord/")
2151 (synopsis "Color management service")
2152 (description "Colord is a system service that makes it easy to manage,
2153 install and generate color profiles to accurately color manage input and
2155 (license license:gpl2+)))
2157 (define-public geoclue
2164 (uri (string-append "http://www.freedesktop.org/software/" name
2165 "/releases/" (version-major+minor version) "/"
2166 name "-" version ".tar.xz"))
2169 "0inlqx0zar498fhi9hh92p2g4kp8qy3zdl4z3vw6bjwp9w6xx454"))
2170 (patches (list (search-patch "geoclue-config.patch")))))
2171 (build-system glib-or-gtk-build-system)
2173 '(;; The tests want to run the system bus.
2175 #:configure-flags (list ;; Disable bits requiring ModemManager.
2176 "--disable-3g-source"
2177 "--disable-cdma-source"
2178 "--disable-modem-gps-source"
2179 "--with-dbus-service-user=geoclue")
2181 (modify-phases %standard-phases
2182 (add-before 'configure 'patch-/bin/true
2184 (substitute* "configure"
2185 (("/bin/true") (which "true"))))))))
2187 `(("pkg-config" ,pkg-config)
2188 ("intltool" ,intltool)))
2191 ("json-glib" ,json-glib)
2192 ("libsoup" ,libsoup)))
2193 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2194 (synopsis "Geolocation service")
2195 (description "Geoclue is a D-Bus service that provides location
2196 information. The primary goal of the Geoclue project is to make creating
2197 location-aware applications as simple as possible, while the secondary goal is
2198 to ensure that no application can access location information without explicit
2199 permission from user. ")
2200 (license license:gpl2+)))
2202 (define-public geocode-glib
2204 (name "geocode-glib")
2208 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2209 (version-major+minor version) "/"
2210 name "-" version ".tar.xz"))
2213 "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj"))))
2214 (build-system gnu-build-system)
2216 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2217 ;; work for the builder. Punt.
2221 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2222 ("gobject-introspection" ,gobject-introspection)
2223 ("pkg-config" ,pkg-config)
2224 ("json-glib" ,json-glib)))
2226 ;; geocode-glib-1.0.pc refers to GIO.
2229 `(("libsoup" ,libsoup)))
2230 (home-page "https://github.com/GNOME/geocode-glib/")
2231 (synopsis "Geocoding and reverse-geocoding library")
2233 "geocode-glib is a convenience library for geocoding (finding longitude,
2234 and latitude from an address) and reverse geocoding (finding an address from
2235 coordinates) using the Nominatim service. geocode-glib caches requests for
2236 faster results and to avoid unnecessary server load.")
2237 (license license:lgpl2.0+)))
2239 (define-public upower
2245 (uri (string-append "http://upower.freedesktop.org/releases/"
2246 name "-" version ".tar.xz"))
2249 "0vwlh20jmaf01m38kfn8yx2869a3clmkzlycrj99rf4nvwx4bp79"))
2250 (patches (list (search-patch "upower-builddir.patch")))))
2251 (build-system glib-or-gtk-build-system)
2253 '( ;; The tests want to contact the system bus, which can't be done in the
2254 ;; build environment. The integration test can run, but the last of
2255 ;; the up-self-tests doesn't. Disable tests for now.
2257 #:configure-flags (list "--localstatedir=/var"
2258 (string-append "--with-udevrulesdir="
2259 (assoc-ref %outputs "out")
2260 "/lib/udev/rules.d"))
2262 (modify-phases %standard-phases
2263 (add-before 'configure 'patch-/bin/true
2265 (substitute* "configure"
2266 (("/bin/true") (which "true")))))
2267 (add-before 'configure 'patch-integration-test
2269 (substitute* "src/linux/integration-test"
2270 (("/usr/bin/python3") (which "python3"))))))))
2272 `(("pkg-config" ,pkg-config)
2273 ("intltool" ,intltool)
2274 ("python" ,python)))
2277 ("dbus-glib" ,dbus-glib)
2278 ("libusb" ,libusb)))
2279 (home-page "http://upower.freedesktop.org/")
2280 (synopsis "System daemon for managing power devices")
2282 "UPower is an abstraction for enumerating power devices,
2283 listening to device events and querying history and statistics. Any
2284 application or service on the system can access the org.freedesktop.UPower
2285 service via the system message bus.")
2286 (license license:gpl2+)))
2288 (define-public libgweather
2290 (name "libgweather")
2294 (uri (string-append "mirror://gnome/sources/" name "/"
2295 (version-major+minor version) "/"
2296 name "-" version ".tar.xz"))
2299 "0x1z6wv7hdw2ivlkifcbd940zyrnvqvc4zh2drgvd2r6jmd7bjza"))))
2300 (build-system gnu-build-system)
2302 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2303 ;; work for the builder. Punt.
2306 `(;; No introspection for now, as it wants to install to
2307 ;; gobject-introspection's own directory and I don't know how to easily
2309 "--enable-introspection=no"
2310 ,(string-append "--with-zoneinfo-dir="
2311 (assoc-ref %build-inputs "tzdata")
2312 "/share/zoneinfo"))))
2314 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2315 ("pkg-config" ,pkg-config)
2316 ("intltool" ,intltool)))
2318 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2321 ("gdk-pixbuf" ,gdk-pixbuf)
2322 ("libxml2" ,libxml2)
2323 ("libsoup" ,libsoup)))
2325 `(("tzdata" ,tzdata)
2326 ("geocode-glib" ,geocode-glib)))
2327 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2328 (synopsis "Location, time zone, and weather library for GNOME")
2330 "libgweather is a library to access weather information from online
2331 services for numerous locations.")
2332 (license license:gpl2+)))
2334 (define-public gnome-settings-daemon
2336 (name "gnome-settings-daemon")
2341 (uri (string-append "mirror://gnome/sources/" name "/"
2342 (version-major+minor version) "/"
2343 name "-" version ".tar.xz"))
2346 "1w29x2izq59125ga5ncmmaklc8kw7x7rdn6swn26bs23mah1r1g3"))))
2347 (build-system glib-or-gtk-build-system)
2349 `(;; Network manager not yet packaged.
2350 #:configure-flags '("--disable-network-manager")
2351 ;; Color management test can't reach the colord system service.
2354 `(("pkg-config" ,pkg-config)
2355 ("intltool" ,intltool)
2356 ("xsltproc" ,libxslt)
2357 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2358 ("docbook-xml" ,docbook-xml-4.2)
2359 ("docbook-xsl" ,docbook-xsl)))
2361 `(("colord" ,colord)
2365 ("pulseaudio" ,pulseaudio)
2366 ("libcanberra" ,libcanberra)
2368 ("libxtst" ,libxtst)
2370 ("libnotify" ,libnotify)
2371 ("geoclue" ,geoclue)
2372 ("geocode-glib" ,geocode-glib)
2373 ("libgweather" ,libgweather)
2374 ("gnome-desktop" ,gnome-desktop)
2377 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2378 ("libwacom" ,libwacom)
2379 ("librsvg" ,librsvg)
2380 ("xf86-input-wacom" ,xf86-input-wacom)))
2381 (home-page "http://www.gnome.org")
2382 (synopsis "GNOME settings daemon")
2384 "This package contains the daemon responsible for setting the various
2385 parameters of a GNOME session and the applications that run under it. It
2386 handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2387 settings, themes, mouse settings, and startup of other daemons.")
2388 (license license:gpl2+)))
2390 (define-public totem-pl-parser
2392 (name "totem-pl-parser")
2396 (uri (string-append "mirror://gnome/sources/totem-pl-parser/3.10/"
2397 "totem-pl-parser-" version ".tar.xz"))
2400 "0dw1kiwmjwdjrighri0j9nagsnj44dllm0mamnfh4y5nc47mhim7"))))
2401 (build-system gnu-build-system)
2403 ;; FIXME: Tests require gvfs.
2406 `(("intltool" ,intltool)
2407 ("glib" ,glib "bin")
2408 ("gobject-introspection" ,gobject-introspection)
2409 ("pkg-config" ,pkg-config)))
2413 ("libxml2" ,libxml2)))
2415 `(("libarchive" ,libarchive)
2416 ("libgcrypt" ,libgcrypt)
2418 ("libsoup" ,libsoup)))
2419 (home-page "https://projects.gnome.org/totem")
2420 (synopsis "Library to parse and save media playlists for GNOME")
2421 (description "Totem-pl-parser is a GObjects-based library to parse and save
2422 playlists in a variety of formats.")
2423 (license license:lgpl2.0+)))
2425 (define-public aisleriot
2431 (uri (string-append "mirror://gnome/sources/" name "/"
2432 (version-major+minor version) "/"
2433 name "-" version ".tar.xz"))
2436 "19k483x9dkq8vjbq8f333pk9qil64clpsfg20q8xk9bgmk38aj8h"))))
2437 (build-system glib-or-gtk-build-system)
2440 '("--with-platform=gtk-only"
2441 "--with-card-theme-formats=svg")))
2443 `(("desktop-file-utils" ,desktop-file-utils)
2444 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
2445 ("intltool" ,intltool)
2446 ("itstool" ,itstool)
2447 ("pkg-config" ,pkg-config)
2448 ("xmllint" ,libxml2)))
2451 ("guile" ,guile-2.0)
2452 ("libcanberra" ,libcanberra)
2453 ("librsvg" ,librsvg)))
2454 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
2455 (synopsis "Solitaire card games")
2457 "Aisleriot (also known as Solitaire or sol) is a collection of card games
2458 which are easy to play with the aid of a mouse.")
2459 (license license:gpl3+)))
2461 (define-public devhelp
2467 (uri (string-append "mirror://gnome/sources/" name "/"
2468 (version-major+minor version) "/"
2469 name "-" version ".tar.xz"))
2472 "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
2473 (build-system glib-or-gtk-build-system)
2475 `(("intltool" ,intltool)
2476 ("pkg-config" ,pkg-config)))
2478 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2479 ("webkitgtk" ,webkitgtk)))
2480 (home-page "https://wiki.gnome.org/Apps/Devhelp")
2481 (synopsis "API documentation browser for GNOME")
2483 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
2484 natively with GTK-Doc (the API reference system developed for GTK+ and used
2485 throughout GNOME for API documentation).")
2486 (license license:gpl2+)))
2495 (uri (string-append "mirror://gnome/sources/" name "/"
2496 (version-major+minor version) "/"
2497 name "-" version ".tar.xz"))
2500 "0aqrj7gc0x7v536vdycgn2i23fj3nx3qwdd3mwgx7rr9b14kb7kj"))))
2501 (build-system gnu-build-system)
2503 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2504 ("gobject-introspection" ,gobject-introspection)
2505 ;;("xorg-server" ,xorg-server) ; for the test suite
2506 ("pkg-config" ,pkg-config)))
2509 ("gdk-pixbuf" ,gdk-pixbuf)
2511 ("libxext" ,libxext)
2512 ("libxfixes" ,libxfixes)
2513 ("libxdamage" ,libxdamage)
2514 ("libxcomposite" ,libxcomposite)
2515 ("libxrandr" ,libxrandr)))
2520 ("gstreamer" ,gstreamer)
2521 ("gst-plugins-base" ,gst-plugins-base)))
2523 `(#:configure-flags (list "--enable-cogl-gst"
2524 ;; Arrange to pass an absolute file name to
2525 ;; dlopen for libGL.so.
2526 (string-append "--with-gl-libname="
2527 (assoc-ref %build-inputs "mesa")
2529 ;; XXX FIXME: All tests fail, with many warnings printed like this:
2530 ;; _FontTransOpen: Unable to Parse address
2531 ;; ${prefix}/share/fonts/X11/misc/
2535 (modify-phases %standard-phases
2536 (add-before 'check 'start-xorg-server
2537 (lambda* (#:key inputs #:allow-other-keys)
2538 ;; The test suite requires a running X server.
2539 (system (format #f "~a/bin/Xvfb :1 &"
2540 (assoc-ref inputs "xorg-server")))
2541 (setenv "DISPLAY" ":1")
2543 (home-page "http://www.cogl3d.org")
2544 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
2546 "Cogl is a small library for using 3D graphics hardware to draw pretty
2547 pictures. The API departs from the flat state machine style of OpenGL and is
2548 designed to make it easy to write orthogonal components that can render
2549 without stepping on each others toes.")
2550 (license (list license:expat ; most of the code
2551 license:bsd-3 ; cogl/cogl-point-in-poly.c
2552 license:sgifreeb2.0 ; cogl-path/tesselator/
2553 license:asl2.0)))) ; examples/android/
2555 (define-public clutter
2562 (uri (string-append "mirror://gnome/sources/" name "/"
2563 (version-major+minor version) "/"
2564 name "-" version ".tar.xz"))
2567 "1b0ikh9q3c3qnny3kbvhqih35449q8ajcbh7zkm8k3kykwfx4scf"))))
2568 (build-system gnu-build-system)
2570 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
2571 ("gobject-introspection" ,gobject-introspection)
2572 ("pkg-config" ,pkg-config)
2573 ("xsltproc" ,libxslt)))
2579 ("json-glib" ,json-glib)
2581 ("libxcomposite" ,libxcomposite)
2582 ("libxdamage" ,libxdamage)
2583 ("libxext" ,libxext)
2584 ("xinput" ,xinput)))
2586 `(("libxkbcommon" ,libxkbcommon)
2589 `(#:configure-flags '("--enable-x11-backend=yes")
2590 ;; XXX FIXME: Get test suite working. It would probably fail in the
2591 ;; same way the cogl tests fail, since clutter is based on cogl.
2593 (home-page "http://www.clutter-project.org")
2594 (synopsis "Open GL based interactive canvas library")
2596 "Clutter is an Open GL based interactive canvas library, designed for
2597 creating fast, mainly 2D single window applications such as media box UIs,
2598 presentations, kiosk style applications and so on.")
2599 (license license:lgpl2.0+)))
2601 (define-public clutter-gtk
2603 (name "clutter-gtk")
2608 (uri (string-append "mirror://gnome/sources/" name "/"
2609 (version-major+minor version) "/"
2610 name "-" version ".tar.xz"))
2613 "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
2614 (build-system gnu-build-system)
2616 `(("pkg-config" ,pkg-config)
2617 ("gobject-introspection" ,gobject-introspection)))
2619 `(("clutter" ,clutter)
2621 (home-page "http://www.clutter-project.org")
2622 (synopsis "Open GL based interactive canvas library GTK+ widget")
2624 "Clutter is an Open GL based interactive canvas library, designed for
2625 creating fast, mainly 2D single window applications such as media box UIs,
2626 presentations, kiosk style applications and so on.")
2627 (license license:lgpl2.0+)))
2629 (define-public clutter-gst
2631 (name "clutter-gst")
2636 (uri (string-append "mirror://gnome/sources/" name "/"
2637 (version-major+minor version) "/"
2638 name "-" version ".tar.xz"))
2641 "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
2642 (build-system gnu-build-system)
2644 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2645 ("pkg-config" ,pkg-config)
2646 ("gobject-introspection" ,gobject-introspection)))
2648 `(("clutter" ,clutter)
2649 ("gstreamer" ,gstreamer)
2650 ("gst-plugins-base" ,gst-plugins-base)))
2651 (home-page "http://www.clutter-project.org")
2652 (synopsis "Integration library for using GStreamer with Clutter")
2654 "Clutter-Gst is an integration library for using GStreamer with Clutter.
2655 It provides a GStreamer sink to upload frames to GL and an actor that
2656 implements the ClutterGstPlayer interface using playbin. Clutter is an Open
2657 GL based interactive canvas library.")
2658 (license license:lgpl2.0+)))
2667 (uri (string-append "mirror://gnome/sources/" name "/"
2668 (version-major+minor version) "/"
2669 name "-" version ".tar.xz"))
2672 "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
2673 (build-system gnu-build-system)
2675 `(("intltool" ,intltool)
2676 ("pkg-config" ,pkg-config)
2677 ("gobject-introspection" ,gobject-introspection)))
2680 ("gdk-pixbuf" ,gdk-pixbuf)
2681 ("sqlite" ,sqlite)))
2682 ;; XXX TODO: Figure out how to run the test suite.
2683 (arguments `(#:tests? #f))
2684 (home-page "https://wiki.gnome.org/Projects/Gom")
2685 (synopsis "Object mapper from GObjects to SQLite")
2687 "Gom provides an object mapper from GObjects to SQLite. It helps you
2688 write applications that need to store structured data as well as make complex
2689 queries upon that data.")
2690 (license license:lgpl2.1+)))
2692 (define-public gnome-klotski
2694 (name "gnome-klotski")
2698 (uri (string-append "mirror://gnome/sources/" name "/"
2699 (version-major+minor version) "/"
2700 name "-" version ".tar.xz"))
2703 "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
2704 (build-system glib-or-gtk-build-system)
2706 `(("desktop-file-utils" ,desktop-file-utils)
2707 ("intltool" ,intltool)
2708 ("itstool" ,itstool)
2709 ("pkg-config" ,pkg-config)))
2712 ("librsvg" ,librsvg)))
2713 (home-page "https://wiki.gnome.org/Apps/Klotski")
2714 (synopsis "Sliding block puzzles")
2716 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
2717 the patterned block to the area bordered by green markers. To do so, you will
2718 need to slide other blocks out of the way. Complete each puzzle in as few moves
2720 (license license:gpl2+)))