;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
+;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages cups)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
+ #:use-module (gnu packages djvu)
#:use-module (gnu packages flex)
- #:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages scanner)
+ #:use-module (gnu packages ssh)
#:use-module (gnu packages xml)
#:use-module (gnu packages gl)
+ #:use-module (gnu packages qt) ; for libxkbcommon
#:use-module (gnu packages compression)
+ #:use-module (gnu packages texlive)
#:use-module (gnu packages web)
+ #:use-module (gnu packages webkit)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
+ #:use-module (gnu packages freedesktop)
#:use-module (gnu packages mail)
#:use-module (gnu packages backup)
#:use-module (gnu packages nettle)
(native-inputs
`(("intltool" ,intltool)
("docbook-xml" ,docbook-xml-4.4)
+ ("python2-libxml2" ,python2-libxml2)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
("pkg-config" ,pkg-config)
and keep up to date translations of documentation.")
(license license:gpl2+))) ; xslt under lgpl
+(define-public gcr
+ (package
+ (name "gcr")
+ (version "3.16.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0xfhi0w358lvca1jjx24x2gm67mif33dsnmi9cv5i0f83ks8vzpc"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ;25 of 598 tests fail because /var/lib/dbus/machine-id does
+ ;not exist
+ #:phases (modify-phases %standard-phases
+ (add-before
+ 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build/tap-driver"
+ (("/usr/bin/env python") (which "python"))))))))
+ (inputs
+ `(("dbus" ,dbus)
+ ("gnupg" ,gnupg) ;called as a child process during tests
+ ("libgcrypt" ,libgcrypt)))
+ (native-inputs
+ `(("python" ,python-2) ;for tests
+ ("pkg-config" ,pkg-config)
+ ("glib" ,glib "bin")
+ ("intltool" ,intltool)))
+ ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
+ (propagated-inputs
+ `(("p11-kit" ,p11-kit)
+ ("glib" ,glib)
+ ("gtk+" ,gtk+)))
+ (home-page "http://www.gnome.org")
+ (synopsis "Libraries for displaying certificates and accessing key stores")
+ (description
+ "The GCR package contains libraries used for displaying certificates and
+accessing key stores. It also provides the viewer for crypto files on the
+GNOME Desktop.")
+ (license license:lgpl2.1+)))
+
(define-public libgnome-keyring
(package
(name "libgnome-keyring")
;; Though a couple of files are LGPLv2.1+.
(license license:lgpl2.0+)))
+(define-public gnome-keyring
+ (package
+ (name "gnome-keyring")
+ (version "3.16.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1xg1xha3x3hzlmvdq2zm90hc61pj7pnf9yxxvgq4ynl5af6bp8qm"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
+ ;not exist
+ #:configure-flags
+ (list
+ (string-append "--with-pkcs11-config="
+ (assoc-ref %outputs "out") "/share/p11-kit/modules/")
+ (string-append "--with-pkcs11-modules="
+ (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'check 'pre-check
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "build/tap-driver"
+ (("/usr/bin/env python") (which "python")))))
+ (add-before
+ 'configure 'fix-docbook
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "docs/Makefile.am"
+ (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
+ (string-append (assoc-ref inputs "docbook-xsl")
+ "/xml/xsl/docbook-xsl-"
+ ,(package-version docbook-xsl)
+ "/manpages/docbook.xsl")))
+ (setenv "XML_CATALOG_FILES"
+ (string-append (assoc-ref inputs "docbook-xml")
+ "/xml/dtd/docbook/catalog.xml")))))))
+ (inputs
+ `(("libgcrypt" ,libgcrypt)
+ ("dbus" ,dbus)
+ ("gcr" ,gcr)))
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("glib" ,glib "bin")
+ ("python" ,python-2) ;for tests
+ ("intltool" ,intltool)
+ ("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libxslt" ,libxslt) ;for documentation
+ ("docbook-xml" ,docbook-xml-4.2)
+ ("docbook-xsl" ,docbook-xsl)))
+ (home-page "http://www.gnome.org")
+ (synopsis "Daemon to store passwords and encryption keys")
+ (description
+ "gnome-keyring is a program that keeps passwords and other secrets for
+users. It is run as a daemon in the session, similar to ssh-agent, and other
+applications locate it via an environment variable or D-Bus.
+
+The program can manage several keyrings, each with its own master password,
+and there is also a session keyring which is never stored to disk, but
+forgotten when the session ends.")
+ (license license:lgpl2.1+)))
+
(define-public evince
(package
(name "evince")
- (version "3.6.1")
+ (version "3.16.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv"))))
+ "0c31pwfzfm5x036f018q31k33vl8xb96nbs0iiccsc1abc37bzq6"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags '("--disable-nautilus")
#:tests? #f))
(inputs
`(("libspectre" ,libspectre)
- ;; ("djvulibre" ,djvulibre)
+ ("djvulibre" ,djvulibre)
("ghostscript" ,ghostscript)
("poppler" ,poppler)
+ ("libtiff" ,libtiff)
+ ;; TODO:
+ ;; Add libgxps for XPS support.
+ ;; Build libkpathsea as a shared library for DVI support.
+ ;; ("libkpathsea" ,texlive-bin)
+ ("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
("libgnome-keyring" ,libgnome-keyring)
- ("gnome-icon-theme" ,gnome-icon-theme)
+ ("adwaita-icon-theme" ,adwaita-icon-theme)
("itstool" ,itstool)
("gdk-pixbuf" ,gdk-pixbuf)
("atk" ,atk)
("shared-mime-info" ,shared-mime-info)
("dconf" ,dconf)
("libcanberra" ,libcanberra)
-
+ ("libsecret" ,libsecret)
+
;; For tests.
("dogtail" ,python2-dogtail)))
(native-inputs
(define-public gnome-icon-theme
(package
(name "gnome-icon-theme")
- (version "3.10.0")
+ (version "3.12.0")
(source
(origin
(method url-fetch)
name "-" version ".tar.xz"))
(sha256
(base32
- "1xinbgkkvlhazj887ajcl13i7kdc1wcca02jwxzvjrvchjsp4m66"))))
+ "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
(build-system gnu-build-system)
- (inputs
- `(("gtk+" ,gtk+)
- ("icon-naming-utils" ,icon-naming-utils)))
(native-inputs
- `(("intltool" ,intltool)
- ("pkg-config" ,pkg-config)))
+ `(("gtk+" ,gtk+) ; for gtk-update-icon-cache
+ ("icon-naming-utils" ,icon-naming-utils)
+ ("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
(home-page "http://art.gnome.org/")
(synopsis
"GNOME icon theme")
"Icons for the GNOME desktop.")
(license license:lgpl3))) ; or Creative Commons BY-SA 3.0
+;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
+(define-public adwaita-icon-theme
+ (package (inherit gnome-icon-theme)
+ (name "adwaita-icon-theme")
+ (version "3.16.2")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1hmlw7kvhr7c2asc5y77adpymi9ka17gaf76zz835nwwffnn4rlw"))))))
+
(define-public shared-mime-info
(package
(name "shared-mime-info")
(define-public librsvg
(package
(name "librsvg")
- (version "2.40.6")
+ (version "2.40.9")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
- "01jgb11779080b80k2ncrhdphgillqrrnszal6vh8yv787r4kwwa"))))
+ "0fplymmqqr28y24vcnb01szn62pfbqhk8p1ngns54x9m6mflr5hk"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(alist-cons-after
'install 'generate-full-cache
(lambda* (#:key inputs outputs #:allow-other-keys)
- (let ((loaders-directory
+ (let ((loaders-directory
(string-append (assoc-ref outputs "out")
"/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
(zero?
- (system
- (string-append
- "gdk-pixbuf-query-loaders "
+ (system
+ (string-append
+ "gdk-pixbuf-query-loaders "
loaders-directory "/libpixbufloader-svg.so "
- (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
+ (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
"libpixbufloader-.*\\.so") " ")
"> " loaders-directory ".cache")))))
%standard-phases))))
Definition Language (idl) files, which is a specification for defining
portable interfaces. libidl was initially written for orbit (the orb from the
GNOME project, and the primary means of libidl distribution). However, the
-functionality was designed to be as reusable and portable as possible.")
+functionality was designed to be as reusable and portable as possible.")
(license license:lgpl2.0+)))
(version "2.14.19")
(source (origin
(method url-fetch)
- (uri (let ((upstream-name "ORBit2"))
+ (uri (let ((upstream-name "ORBit2"))
(string-append "mirror://gnome/sources/" upstream-name "/"
(version-major+minor version) "/"
upstream-name "-" version ".tar.bz2")))
(home-page "https://projects.gnome.org/orbit2/")
(synopsis "CORBA 2.4-compliant Object Request Broker")
(description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
-featuring mature C, C++ and Python bindings.")
+featuring mature C, C++ and Python bindings.")
;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
;; SOME of the code files have licence notices for GPLv2+
;; The tarball contains files of the text of GPLv2 and LGPLv2
- (license license:gpl2+)))
+ (license license:gpl2+)))
(define-public libbonobo
(home-page "https://developer.gnome.org/libbonobo/")
(synopsis "Framework for creating reusable components for use in GNOME applications")
(description "Bonobo is a framework for creating reusable components for
-use in GNOME applications, built on top of CORBA.")
+use in GNOME applications, built on top of CORBA.")
;; Licence not explicitly stated. Source files contain no licence notices.
;; Tarball contains text of both GPLv2 and LGPLv2
;; GPLv2 covers both conditions
(version "3.2.6")
(source (origin
(method url-fetch)
- (uri
+ (uri
(let ((upstream-name "GConf"))
(string-append "mirror://gnome/sources/" upstream-name "/"
(version-major+minor version) "/"
(sha256
(base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
(build-system gnu-build-system)
- (inputs `(("glib" ,glib)
- ("dbus" ,dbus)
- ("dbus-glib" ,dbus-glib)
+ (inputs `(("dbus-glib" ,dbus-glib)
("libxml2" ,libxml2)))
- (propagated-inputs `(("orbit2" ,orbit2))) ; referred to in the .pc file
+ (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
+ ("orbit2" ,orbit2)))
(native-inputs
`(("intltool" ,intltool)
("glib" ,glib "bin") ; for glib-genmarshal, etc.
(synopsis "Store application preferences")
(description "Gconf is a system for storing application preferences. It
is intended for user preferences; not arbitrary data storage.")
- (license license:lgpl2.0+)))
+ (license license:lgpl2.0+)))
(define-public gnome-mime-data
(substitute* "test/test-async-cancel.c"
(("EXIT_FAILURE") "77")))
%standard-phases))))
- (inputs `(("glib" ,glib)
- ("libxml2" ,libxml2)
+ (inputs `(("libxml2" ,libxml2)
("dbus-glib" ,dbus-glib)
- ("dbus" ,dbus)
("gconf" ,gconf)
("gnome-mime-data" ,gnome-mime-data)
("zlib" ,zlib)))
`(#:phases
(alist-cons-before
'configure 'enable-deprecated
- (lambda _
+ (lambda _
(substitute* "libgnome/Makefile.in"
(("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
%standard-phases)))
`(("libcanberra" ,libcanberra)
("libbonobo" ,libbonobo)
("gconf" ,gconf)
- ("gnome-vfs" ,gnome-vfs)
- ("glib" ,glib)))
+ ("gnome-vfs" ,gnome-vfs)))
(home-page "https://developer.gnome.org/libgnome/")
(synopsis "Useful routines for building applications")
(description "The libgnome library provides a number of useful routines
`(("pkg-config" ,pkg-config)))
(home-page "https://people.gnome.org/~mathieu/libart")
(synopsis "2D drawing library")
- (description "Libart is a 2D drawing library intended as a
+ (description "Libart is a 2D drawing library intended as a
high-quality vector-based 2D library with antialiasing and alpha composition.")
(license license:lgpl2.0+)))
("glib" ,glib)
("gnome-icon-theme" ,gnome-icon-theme)
("libgnomecanvas" ,libgnomecanvas)
- ("libxml2" ,libxml2)))
+ ("libxml2" ,libxml2)))
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(lambda* (#:key inputs #:allow-other-keys)
(let ((xorg-server (assoc-ref inputs "xorg-server"))
(disp ":1"))
-
+
(setenv "HOME" (getcwd))
(setenv "DISPLAY" disp)
;; There must be a running X server and make check doesn't start one.
(home-page "https://developer.gnome.org/goffice/")
(synopsis "Document-centric objects and utilities")
(description "A GLib/GTK+ set of document-centric objects and utilities.")
- (license
+ (license
;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
;; Note: NOT LGPL
(list license:gpl2 license:gpl3))))
(arguments
`(;; The gnumeric developers don't worry much about failing tests.
;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
- #:tests? #f
+ #:tests? #f
#:phases
(alist-cons-before
'configure 'pre-conf
;; I am informed that this only affects the possibility to embed a
;; spreadsheet inside an Abiword document. So presumably when we
;; package Abiword we'll have to refer it to this directory.
- (substitute* "configure"
+ (substitute* "configure"
(("^GOFFICE_PLUGINS_DIR=.*")
- (string-append "GOFFICE_PLUGINS_DIR="
+ (string-append "GOFFICE_PLUGINS_DIR="
(assoc-ref outputs "out") "/goffice/plugins"))))
%standard-phases)))
(inputs
(source
(origin
(method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
+ (uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/" name "-"
version ".tar.xz"))
(sha256
;; gdk-pixbuf because the latter does not include support for SVG
;; files.
(lambda* (#:key inputs #:allow-other-keys)
- (setenv "GDK_PIXBUF_MODULE_FILE"
- (car (find-files (assoc-ref inputs "librsvg")
+ (setenv "GDK_PIXBUF_MODULE_FILE"
+ (car (find-files (assoc-ref inputs "librsvg")
"loaders\\.cache"))))
%standard-phases)))
(home-page "https://launchpad.net/gnome-themes-standard")
"The default GNOME 3 themes (Adwaita and some accessibility themes).")
(license license:lgpl2.1+)))
+(define-public seahorse
+ (package
+ (name "seahorse")
+ (version "3.16.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/" name "-"
+ version ".tar.xz"))
+ (sha256
+ (base32
+ "0cg1grgpwbfkiny5148n17rzpc8kswyr5yff0kpm8l3lp01my2kp"))))
+ (build-system glib-or-gtk-build-system)
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("gcr" ,gcr)
+ ("gnupg" ,gnupg-1)
+ ("gpgme" ,gpgme)
+ ("openssh" ,openssh)
+ ("libsecret" ,libsecret)))
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("glib:bin" ,glib "bin")
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)))
+ (home-page "https://launchpad.net/gnome-themes-standard")
+ (synopsis "Manage encryption keys and passwords in the GNOME keyring")
+ (description
+ "Seahorse is a GNOME application for managing encryption keys and
+passwords in the GNOME keyring.")
+ (license license:gpl2+)))
+
(define-public vala
(package
(name "vala")
(source (origin
(method url-fetch)
(uri (string-append
- "mirror://gnome/sources/" name "/"
+ "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
; or /etc/machine-id.
#:configure-flags
;; Set the correct RUNPATH in binaries.
- (list (string-append "LDFLAGS=-Wl,-rpath="
+ (list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib")
"--disable-gtk-doc-html") ; FIXME: requires gtk-doc
#:phases
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "docs/Makefile.in"
(("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
- (string-append (assoc-ref inputs "docbook-xsl")
+ (string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl)
"/manpages/docbook.xsl")))
- (setenv "XML_CATALOG_FILES"
- (string-append (assoc-ref inputs "docbook-xml")
+ (setenv "XML_CATALOG_FILES"
+ (string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/catalog.xml")))
%standard-phases)))
(home-page "https://developer.gnome.org/dconf")
library.")
(license license:lgpl2.0+)))
+(define-public librest
+ (package
+ (name "librest")
+ (version "0.7.93")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/rest/"
+ (version-major+minor version) "/"
+ "rest-" version ".tar.xz"))
+ (sha256
+ (base32
+ "05mj10hhiik23ai8w4wkk5vhsp7hcv24bih5q3fl82ilam268467"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:tests? #f ; tests require internet connection
+ #:configure-flags
+ '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
+ (native-inputs
+ `(("glib-mkenums" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ ;; rest-0.7.pc refers to all these.
+ `(("glib" ,glib)
+ ("libsoup" ,libsoup)
+ ("libxml2" ,libxml2)))
+ (home-page "http://www.gtk.org/")
+ (synopsis "RESTful web api query library")
+ (description
+ "This library was designed to make it easier to access web services that
+claim to be \"RESTful\". It includes convenience wrappers for libsoup and
+libxml to ease remote use of the RESTful API.")
+ (license license:lgpl2.1+)))
+
(define-public libsoup
(package
(name "libsoup")
("intltool" ,intltool)))
(inputs
`(("eudev" ,eudev)
- ("dbus" ,dbus)
("dbus-glib" ,dbus-glib)
("libusb" ,libusb)
("lcms" ,lcms)
(define-public geoclue
(package
(name "geoclue")
- (version "2.1.10")
+ (version "2.2.0")
(source
(origin
(method url-fetch)
name "-" version ".tar.xz"))
(sha256
(base32
- "0s0ws2bx5g1cbjamxmm448r4n4crha2fwpzm8zbx6cq6qslygmzi"))
+ "0inlqx0zar498fhi9hh92p2g4kp8qy3zdl4z3vw6bjwp9w6xx454"))
(patches (list (search-patch "geoclue-config.patch")))))
(build-system glib-or-gtk-build-system)
(arguments
("python" ,python)))
(inputs
`(("eudev" ,eudev)
- ("dbus" ,dbus)
("dbus-glib" ,dbus-glib)
("libusb" ,libusb)))
(home-page "http://upower.freedesktop.org/")
(native-inputs
`(("intltool" ,intltool)
("glib" ,glib "bin")
+ ("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)))
- (inputs
+ (propagated-inputs
`(("glib" ,glib)
("gmime" ,gmime)
- ("libarchive" ,libarchive)
+ ("libxml2" ,libxml2)))
+ (inputs
+ `(("libarchive" ,libarchive)
("libgcrypt" ,libgcrypt)
("nettle" ,nettle)
- ("libsoup" ,libsoup)
- ("libxml2" ,libxml2)))
+ ("libsoup" ,libsoup)))
(home-page "https://projects.gnome.org/totem")
(synopsis "Library to parse and save media playlists for GNOME")
(description "Totem-pl-parser is a GObjects-based library to parse and save
"Aisleriot (also known as Solitaire or sol) is a collection of card games
which are easy to play with the aid of a mouse.")
(license license:gpl3+)))
+
+(define-public devhelp
+ (package
+ (name "devhelp")
+ (version "3.16.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0i8kyh86hzwxs8dm047ivghl2b92vigdxa3x4pk4ha0whpk38g37"))))
+ (build-system glib-or-gtk-build-system)
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+ ("webkitgtk" ,webkitgtk)))
+ (home-page "https://wiki.gnome.org/Apps/Devhelp")
+ (synopsis "API documentation browser for GNOME")
+ (description
+ "Devhelp is an API documentation browser for GTK+ and GNOME. It works
+natively with GTK-Doc (the API reference system developed for GTK+ and used
+throughout GNOME for API documentation).")
+ (license license:gpl2+)))
+
+(define-public cogl
+ (package
+ (name "cogl")
+ (version "1.20.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0aqrj7gc0x7v536vdycgn2i23fj3nx3qwdd3mwgx7rr9b14kb7kj"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("glib:bin" ,glib "bin") ; for glib-mkenums
+ ("gobject-introspection" ,gobject-introspection)
+ ;;("xorg-server" ,xorg-server) ; for the test suite
+ ("pkg-config" ,pkg-config)))
+ (propagated-inputs
+ `(("glib" ,glib)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("libx11" ,libx11)
+ ("libxext" ,libxext)
+ ("libxfixes" ,libxfixes)
+ ("libxdamage" ,libxdamage)
+ ("libxcomposite" ,libxcomposite)
+ ("libxrandr" ,libxrandr)))
+ (inputs
+ `(("mesa" ,mesa)
+ ("cairo" ,cairo)
+ ("pango" ,pango)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (arguments
+ `(#:configure-flags (list "--enable-cogl-gst"
+ ;; Arrange to pass an absolute file name to
+ ;; dlopen for libGL.so.
+ (string-append "--with-gl-libname="
+ (assoc-ref %build-inputs "mesa")
+ "/lib/libGL.so"))
+ ;; XXX FIXME: All tests fail, with many warnings printed like this:
+ ;; _FontTransOpen: Unable to Parse address
+ ;; ${prefix}/share/fonts/X11/misc/
+ #:tests? #f
+ #; #:phases
+ #;
+ (modify-phases %standard-phases
+ (add-before 'check 'start-xorg-server
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; The test suite requires a running X server.
+ (system (format #f "~a/bin/Xvfb :1 &"
+ (assoc-ref inputs "xorg-server")))
+ (setenv "DISPLAY" ":1")
+ #t)))))
+ (home-page "http://www.cogl3d.org")
+ (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
+ (description
+ "Cogl is a small library for using 3D graphics hardware to draw pretty
+pictures. The API departs from the flat state machine style of OpenGL and is
+designed to make it easy to write orthogonal components that can render
+without stepping on each others toes.")
+ (license (list license:expat ; most of the code
+ license:bsd-3 ; cogl/cogl-point-in-poly.c
+ license:sgifreeb2.0 ; cogl-path/tesselator/
+ license:asl2.0)))) ; examples/android/
+
+(define-public clutter
+ (package
+ (name "clutter")
+ (version "1.22.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1b0ikh9q3c3qnny3kbvhqih35449q8ajcbh7zkm8k3kykwfx4scf"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("glib:bin" ,glib "bin") ; for glib-genmarshal
+ ("gobject-introspection" ,gobject-introspection)
+ ("pkg-config" ,pkg-config)
+ ("xsltproc" ,libxslt)))
+ (propagated-inputs
+ `(("cogl" ,cogl)
+ ("cairo" ,cairo)
+ ("atk" ,atk)
+ ("gtk+" ,gtk+)
+ ("json-glib" ,json-glib)
+ ("glib" ,glib)
+ ("libxcomposite" ,libxcomposite)
+ ("libxdamage" ,libxdamage)
+ ("libxext" ,libxext)
+ ("xinput" ,xinput)))
+ (inputs
+ `(("libxkbcommon" ,libxkbcommon)
+ ("udev" ,eudev)))
+ (arguments
+ `(#:configure-flags '("--enable-x11-backend=yes")
+ ;; XXX FIXME: Get test suite working. It would probably fail in the
+ ;; same way the cogl tests fail, since clutter is based on cogl.
+ #:tests? #f))
+ (home-page "http://www.clutter-project.org")
+ (synopsis "Open GL based interactive canvas library")
+ (description
+ "Clutter is an Open GL based interactive canvas library, designed for
+creating fast, mainly 2D single window applications such as media box UIs,
+presentations, kiosk style applications and so on.")
+ (license license:lgpl2.0+)))
+
+(define-public clutter-gtk
+ (package
+ (name "clutter-gtk")
+ (version "1.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0k93hbf5d1970hs7vjddr3nnngygc7mxqbj474r3cdm0fjsm0dc8"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)))
+ (inputs
+ `(("clutter" ,clutter)
+ ("gtk+" ,gtk+)))
+ (home-page "http://www.clutter-project.org")
+ (synopsis "Open GL based interactive canvas library GTK+ widget")
+ (description
+ "Clutter is an Open GL based interactive canvas library, designed for
+creating fast, mainly 2D single window applications such as media box UIs,
+presentations, kiosk style applications and so on.")
+ (license license:lgpl2.0+)))
+
+(define-public clutter-gst
+ (package
+ (name "clutter-gst")
+ (version "3.0.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0xnzfdzawl1kdx715gp31nwjp7a1kib094s7xvg7bhbwwlx4kmfn"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("glib:bin" ,glib "bin") ; for glib-mkenums
+ ("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)))
+ (inputs
+ `(("clutter" ,clutter)
+ ("gstreamer" ,gstreamer)
+ ("gst-plugins-base" ,gst-plugins-base)))
+ (home-page "http://www.clutter-project.org")
+ (synopsis "Integration library for using GStreamer with Clutter")
+ (description
+ "Clutter-Gst is an integration library for using GStreamer with Clutter.
+It provides a GStreamer sink to upload frames to GL and an actor that
+implements the ClutterGstPlayer interface using playbin. Clutter is an Open
+GL based interactive canvas library.")
+ (license license:lgpl2.0+)))
+
+(define-public gom
+ (package
+ (name "gom")
+ (version "0.3.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "1x9qgviszzh59d009jd13k0pdxzv9w4dmwp3wszbsk3qxr3fnlbr"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("intltool" ,intltool)
+ ("pkg-config" ,pkg-config)
+ ("gobject-introspection" ,gobject-introspection)))
+ (inputs
+ `(("glib" ,glib)
+ ("gdk-pixbuf" ,gdk-pixbuf)
+ ("sqlite" ,sqlite)))
+ ;; XXX TODO: Figure out how to run the test suite.
+ (arguments `(#:tests? #f))
+ (home-page "https://wiki.gnome.org/Projects/Gom")
+ (synopsis "Object mapper from GObjects to SQLite")
+ (description
+ "Gom provides an object mapper from GObjects to SQLite. It helps you
+write applications that need to store structured data as well as make complex
+queries upon that data.")
+ (license license:lgpl2.1+)))
+
+(define-public gnome-klotski
+ (package
+ (name "gnome-klotski")
+ (version "3.16.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/" name "/"
+ (version-major+minor version) "/"
+ name "-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0a64935c7pp51jhaf29q9zlx3lamj7zrhyff7clvv0w8v1w6gpax"))))
+ (build-system glib-or-gtk-build-system)
+ (native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+ ("intltool" ,intltool)
+ ("itstool" ,itstool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("gtk+" ,gtk+)
+ ("librsvg" ,librsvg)))
+ (home-page "https://wiki.gnome.org/Apps/Klotski")
+ (synopsis "Sliding block puzzles")
+ (description
+ "GNOME Klotski is a set of block sliding puzzles. The objective is to move
+the patterned block to the area bordered by green markers. To do so, you will
+need to slide other blocks out of the way. Complete each puzzle in as few moves
+as possible!")
+ (license license:gpl2+)))