gnu: gspell: Order inputs alphabetically.
[jackhill/guix/guix.git] / gnu / packages / gnome.scm
CommitLineData
995b7261 1;;; GNU Guix --- Functional package management for GNU
109da1c0 2;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
89e34644 3;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
29a7c98a 4;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
7108425c 5;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org>
58d32305 6;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
8b877545 7;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
7aab13f1 8;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
88f70665 9;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
1e7464a9 10;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
49586905 11;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
8344a85e 12;;; Copyright © 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
293ff8b2 13;;; Copyright © 2015 David Thompson <davet@gnu.org>
5a6527e4 14;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
cc3bc027 15;;; Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
3c697ffd 16;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
adc5cb1b 17;;; Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org>
277a7d82 18;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
a56be436 19;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
6064a4e8 20;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
71d9b980 21;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
3920868c 22;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
e5e1df4d 23;;; Copyright © 2016 David Craven <david@craven.ch>
d1e4ad1b 24;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
cce0da5e 25;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
d04687dc 26;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
b6821ee0 27;;; Copyright © 2017 nee <nee-git@hidamari.blue>
d1d739fa 28;;; Copyright © 2017 Chris Marusich <cmmarusich@gmail.com>
995b7261
AE
29;;;
30;;; This file is part of GNU Guix.
31;;;
32;;; GNU Guix is free software; you can redistribute it and/or modify it
33;;; under the terms of the GNU General Public License as published by
34;;; the Free Software Foundation; either version 3 of the License, or (at
35;;; your option) any later version.
36;;;
37;;; GNU Guix is distributed in the hope that it will be useful, but
38;;; WITHOUT ANY WARRANTY; without even the implied warranty of
39;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
40;;; GNU General Public License for more details.
41;;;
42;;; You should have received a copy of the GNU General Public License
43;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
44
45(define-module (gnu packages gnome)
b5b73a82 46 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
47 #:use-module (guix packages)
48 #:use-module (guix download)
4a526711 49 #:use-module (guix git-download)
29a7c98a 50 #:use-module (guix utils)
743aebd7 51 #:use-module (guix build-system cmake)
995b7261 52 #:use-module (guix build-system gnu)
121de2e1 53 #:use-module (guix build-system glib-or-gtk)
dc050251 54 #:use-module (guix build-system trivial)
ed19903d 55 #:use-module (gnu packages)
ba5dd105 56 #:use-module (gnu packages admin)
411ba511 57 #:use-module (gnu packages aspell)
75016d07 58 #:use-module (gnu packages autotools)
7b212526 59 #:use-module (gnu packages avahi)
6a180f6f 60 #:use-module (gnu packages base)
5698b8b8 61 #:use-module (gnu packages bison)
df217748 62 #:use-module (gnu packages calendar)
df12f04a 63 #:use-module (gnu packages check)
d61a894b 64 #:use-module (gnu packages cmake)
23a22af6 65 #:use-module (gnu packages cups)
6e1bb642 66 #:use-module (gnu packages curl)
c3f29bc9 67 #:use-module (gnu packages cyrus-sasl)
6e1bb642 68 #:use-module (gnu packages databases)
c769cf9f 69 #:use-module (gnu packages djvu)
ba5dd105 70 #:use-module (gnu packages dns)
d1d739fa 71 #:use-module (gnu packages documentation)
121de2e1 72 #:use-module (gnu packages flex)
b4ce6300 73 #:use-module (gnu packages docbook)
329d731b 74 #:use-module (gnu packages enchant)
a56be436 75 #:use-module (gnu packages fontutils)
dfc407f3 76 #:use-module (gnu packages game-development)
fed5a689 77 #:use-module (gnu packages gettext)
995b7261 78 #:use-module (gnu packages glib)
c1354b90 79 #:use-module (gnu packages gnupg)
23a22af6 80 #:use-module (gnu packages gnuzilla)
85f5dc19 81 #:use-module (gnu packages gstreamer)
d9c1a22b 82 #:use-module (gnu packages gtk)
df217748 83 #:use-module (gnu packages gperf)
6b888eff 84 #:use-module (gnu packages guile)
34b979b9 85 #:use-module (gnu packages openldap)
c1354b90 86 #:use-module (gnu packages pdf)
75016d07 87 #:use-module (gnu packages polkit)
5698b8b8 88 #:use-module (gnu packages popt)
c1354b90 89 #:use-module (gnu packages ghostscript)
b645146f 90 #:use-module (gnu packages ibus)
9cc98f8a 91 #:use-module (gnu packages iso-codes)
85f5dc19 92 #:use-module (gnu packages libcanberra)
b64e217f 93 #:use-module (gnu packages libunistring)
88f70665 94 #:use-module (gnu packages linux)
75016d07 95 #:use-module (gnu packages libusb)
4e3fc547 96 #:use-module (gnu packages lirc)
7b212526 97 #:use-module (gnu packages lua)
e55354b8 98 #:use-module (gnu packages image)
ae792dba 99 #:use-module (gnu packages imagemagick)
64fce637 100 #:use-module (gnu packages music)
ba5dd105 101 #:use-module (gnu packages networking)
b645146f 102 #:use-module (gnu packages password-utils)
de1215e2 103 #:use-module (gnu packages pcre)
27477d2d 104 #:use-module (gnu packages perl)
f70d8383 105 #:use-module (gnu packages photo)
995b7261 106 #:use-module (gnu packages pkg-config)
23a22af6 107 #:use-module (gnu packages pulseaudio)
995b7261 108 #:use-module (gnu packages python)
cce0da5e 109 #:use-module (gnu packages rdesktop)
75016d07 110 #:use-module (gnu packages scanner)
240cee8a 111 #:use-module (gnu packages selinux)
c27e02bf 112 #:use-module (gnu packages slang)
4a1bf090 113 #:use-module (gnu packages ssh)
85f5dc19 114 #:use-module (gnu packages xml)
200726ed 115 #:use-module (gnu packages gl)
1dd26275 116 #:use-module (gnu packages compression)
cce0da5e 117 #:use-module (gnu packages spice)
8f9ac901 118 #:use-module (gnu packages tex)
a7fd7b68 119 #:use-module (gnu packages tls)
6e1bb642 120 #:use-module (gnu packages web)
4a79e256 121 #:use-module (gnu packages webkit)
b64e217f 122 #:use-module (gnu packages xiph)
fecbf86e 123 #:use-module (gnu packages xorg)
ea57378f 124 #:use-module (gnu packages xdisorg)
ba421ab7 125 #:use-module (gnu packages freedesktop)
1e7464a9 126 #:use-module (gnu packages mail)
89e34644 127 #:use-module (gnu packages kerberos)
54021cd8 128 #:use-module (gnu packages multiprecision)
1e7464a9
DH
129 #:use-module (gnu packages backup)
130 #:use-module (gnu packages nettle)
c024ae36 131 #:use-module (gnu packages ncurses)
3dc8828f
SB
132 #:use-module (gnu packages video)
133 #:use-module (gnu packages cdrom)
134 #:use-module (gnu packages samba)
f47ba77e 135 #:use-module (gnu packages readline)
0bd3597b 136 #:use-module (gnu packages fonts)
53201c0d 137 #:use-module (gnu packages speech)
59132b80 138 #:use-module (gnu packages virtualization)
c024ae36 139 #:use-module (srfi srfi-1))
85f5dc19
AE
140
141(define-public brasero
142 (package
143 (name "brasero")
e2bf423a 144 (version "3.12.2")
85f5dc19
AE
145 (source (origin
146 (method url-fetch)
e8627cd9
DH
147 (uri (string-append "mirror://gnome/sources/" name "/"
148 (version-major+minor version) "/"
149 name "-" version ".tar.xz"))
85f5dc19
AE
150 (sha256
151 (base32
e2bf423a 152 "0h90y674j26rvjahb8cc0w79zx477rb6zaqcj26wzvq8kmpic8k8"))))
1c40e3b7 153 (build-system glib-or-gtk-build-system)
e8627cd9
DH
154 (arguments
155 `(#:configure-flags (list
156 (string-append "--with-girdir="
157 (assoc-ref %outputs "out")
158 "/share/gir-1.0")
159 (string-append "--with-typelibdir="
160 (assoc-ref %outputs "out")
ce426deb
TD
161 "/lib/girepository-1.0"))
162 #:phases
163 (modify-phases %standard-phases
164 (add-before 'configure 'embed-growisofs
165 (lambda* (#:key inputs #:allow-other-keys)
166 (substitute* "plugins/growisofs/burn-growisofs.c"
167 (("\"growisofs") (string-append "\"" (which "growisofs"))))
e2bf423a 168 #t)))))
85f5dc19
AE
169 (propagated-inputs
170 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
171 (native-inputs
172 `(("intltool" ,intltool)
426adbe8 173 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
e8627cd9 174 ("gobject-introspection" ,gobject-introspection)
9cc98f8a 175 ("pkg-config" ,pkg-config)))
85f5dc19 176 (inputs
ce426deb
TD
177 `(("dvd+rw-tools" ,dvd+rw-tools)
178 ("glib" ,glib)
85f5dc19
AE
179 ("gnome-doc-utils" ,gnome-doc-utils)
180 ("gstreamer" ,gstreamer)
181 ("gst-plugins-base" ,gst-plugins-base)
182 ("gtk+" ,gtk+)
85f5dc19
AE
183 ("itstool" ,itstool)
184 ("libcanberra" ,libcanberra)
185 ("libice" ,libice)
186 ("libnotify" ,libnotify)
187 ("libsm" ,libsm)
e8627cd9
DH
188 ("libxml2" ,libxml2)
189 ("nettle" ,nettle)
190 ("totem-pl-parser" ,totem-pl-parser)))
85f5dc19
AE
191 (home-page "https://projects.gnome.org/brasero/")
192 (synopsis "CD/DVD burning tool for Gnome")
193 (description "Brasero is an application to burn CD/DVD for the Gnome
194Desktop. It is designed to be as simple as possible and has some unique
195features to enable users to create their discs easily and quickly.")
1dd26275 196 (license license:gpl2+)))
995b7261 197
d61a894b
CB
198(define-public deja-dup
199 (package
200 (name "deja-dup")
201 (version "34.3")
202 (source (origin
203 (method url-fetch)
204 (uri "https://launchpadlibrarian.net/295170991/deja-dup-34.3.tar.xz")
205 (sha256
206 (base32
207 "1xqcr61hpbahbla7gdjn4ngjfz7w6f57y7f5pkb77yk05f60j2n9"))
208 (patches
209 (search-patches "deja-dup-use-ref-keyword-for-iter.patch"))))
210 (build-system glib-or-gtk-build-system)
211 (arguments
212 `(#:modules ((guix build gnu-build-system)
213 ((guix build cmake-build-system) #:prefix cmake:)
214 (guix build glib-or-gtk-build-system)
215 (guix build utils))
216 #:imported-modules (,@%glib-or-gtk-build-system-modules
217 (guix build cmake-build-system))
218 #:test-target "test"
219 #:configure-flags (list (string-append
220 "-DCMAKE_INSTALL_FULL_DATADIR=" %output)
221 (string-append
222 "-DCMAKE_INSTALL_LIBEXECDIR=" %output))
223 #:phases
224 (modify-phases %standard-phases
225 (add-after 'unpack 'patch-lockfile-deletion
226 (lambda rest
227 (substitute* "libdeja/tools/duplicity/DuplicityInstance.vala"
228 (("/bin/rm")
229 (which "rm")))))
230 (replace 'configure
231 (assoc-ref cmake:%standard-phases 'configure))
232 (delete 'check) ;; Fails due to issues with DBus
233 (add-after 'install 'wrap-deja-dup
234 (lambda* (#:key inputs outputs #:allow-other-keys)
235 (let ((python (assoc-ref inputs "python"))
236 (python-path (getenv "PYTHONPATH"))
237 (duplicity (assoc-ref inputs "duplicity"))
238 (out (assoc-ref outputs "out")))
239 (for-each
240 (lambda (program)
241 (wrap-program program
242 `("PATH" ":" prefix (,(string-append python "/bin")
243 ,(string-append duplicity "/bin"))))
244 (wrap-program program
245 `("PYTHONPATH" ":" prefix (,python-path))))
246
247 (find-files (string-append out "/bin")))
248 #t))))))
249 (inputs
250 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
251 ("gobject-introspection" ,gobject-introspection)
252 ("duplicity" ,duplicity)
253 ("python" ,python2-minimal)
254 ("python-pygobject" ,python2-pygobject)
255 ("gtk+" ,gtk+)
256 ("libnotify" ,libnotify)
257 ("libpeas" ,libpeas)
258 ("libsecret" ,libsecret)
259 ("packagekit" ,packagekit)))
260 (native-inputs
261 `(("pkg-config" ,pkg-config)
262 ("vala" ,vala)
263 ("gettext" ,gettext-minimal)
264 ("itstool" ,itstool)
265 ("intltool" ,intltool)
266 ("cmake", cmake)))
267 (home-page "https://launchpad.net/deja-dup")
268 (synopsis "Simple backup tool, for regular encrypted backups")
269 (description
270 "Déjà Dup is a simple backup tool, for regular encrypted backups. It
271uses duplicity as the backend, which supports incremental backups and storage
272either on a local, or remote machine via a number of methods.")
273 (license license:gpl3+)))
274
a56be436
RJ
275(define-public dia
276 ;; This version from GNOME's repository includes fixes for compiling with
277 ;; recent versions of the build tools. The latest activity on the
278 ;; pre-GNOME version has been in 2014, while GNOME has continued applying
279 ;; fixes in 2016.
280 (let ((commit "fbc306168edab63db80b904956117cbbdc514ee4"))
281 (package
282 (name "dia")
283 (version (string-append "0.97.2-" (string-take commit 7)))
284 (source (origin
285 (method git-fetch)
286 (uri (git-reference
287 (url "https://git.gnome.org/browse/dia")
288 (commit commit)))
289 (file-name (string-append name "-" version "-checkout"))
290 (sha256
291 (base32
292 "1b4bba0k8ph4cwgw8xjglss0p6n111bpd5app67lrq79mp0ad06l"))))
293 (build-system gnu-build-system)
294 (inputs
295 `(("glib" ,glib "bin")
296 ("pango" ,pango)
297 ("gdk-pixbuf" ,gdk-pixbuf)
298 ("gtk+" ,gtk+-2)
299 ("libxml2" ,libxml2)
300 ("freetype" ,freetype)
301 ("libart-lgpl" ,libart-lgpl)))
302 (native-inputs
303 `(("intltool" ,intltool)
304 ("pkg-config" ,pkg-config)
305 ("automake" ,automake)
306 ("autoconf" ,autoconf)
307 ("libtool" ,libtool)
308 ("perl" ,perl)
309 ("python-wrapper" ,python-wrapper)))
310 (arguments
311 `(#:phases
312 (modify-phases %standard-phases
313 (add-before 'configure 'run-autogen
314 (lambda _
315 (system* "sh" "autogen.sh"))))))
316 (home-page "https://wiki.gnome.org/Apps/Dia")
317 (synopsis "Diagram creation for GNOME")
318 (description "Dia can be used to draw different types of diagrams, and
319includes support for UML static structure diagrams (class diagrams), entity
320relationship modeling, and network diagrams. The program supports various file
321formats like PNG, SVG, PDF and EPS.")
322 (license license:gpl2+))))
323
adc5cb1b
KK
324(define-public libgdata
325 (package
326 (name "libgdata")
327 (version "0.16.1")
328 (source (origin
329 (method url-fetch)
330 (uri (string-append "mirror://gnome/sources/" name "/"
331 (version-major+minor version) "/"
332 name "-" version ".tar.xz"))
333 (sha256
334 (base32
335 "09q8h1129xjpw33rvzz7856drygxwlm0s64z9cm0vbmjxiqy0h47"))
336 (patches
337 (search-patches "libgdata-fix-tests.patch"
338 "libgdata-glib-duplicate-tests.patch"))))
339 (build-system gnu-build-system)
340 (arguments
341 '(#:phases
342 (modify-phases %standard-phases
343 (add-before 'check 'use-empty-ssl-cert-file
344 (lambda _
345 ;; The ca-certificates.crt is not available in the build
346 ;; environment.
347 (setenv "SSL_CERT_FILE" "/dev/null")
348 #t)))))
349 (native-inputs
350 `(("glib:bin" ,glib "bin")
351 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
352 ("intltool" ,intltool)
353 ("pkg-config" ,pkg-config)
354 ("uhttpmock" ,uhttpmock)))
355 (inputs
356 `(("cyrus-sasl" ,cyrus-sasl)
357 ("glib" ,glib)
358 ("glib-networking" ,glib-networking)
359 ("json-glib" ,json-glib)
360 ("libsoup" ,libsoup)))
361 (propagated-inputs
362 `(("gcr" ,gcr)
363 ("gnome-online-accounts" ,gnome-online-accounts)
364 ("liboauth" ,liboauth)
365 ("libxml2" ,libxml2)))
366 (home-page "https://wiki.gnome.org/Projects/libgdata")
367 (synopsis "Library for accessing online service APIs")
368 (description
369 "libgdata is a GLib-based library for accessing online service APIs using
370the GData protocol — most notably, Google's services. It provides APIs to
371access the common Google services, and has full asynchronous support.")
372 (license license:lgpl2.1+)))
373
94e10cf4
KK
374(define-public libgxps
375 (package
376 (name "libgxps")
377 (version "0.2.5")
378 (source (origin
379 (method url-fetch)
7f10628c 380 (uri (string-append "mirror://gnome/sources/" name "/"
94e10cf4
KK
381 (version-major+minor version) "/"
382 name "-" version ".tar.xz"))
383 (sha256
384 (base32
385 "184r06s8g20cfigg7m169n42jjsc9wmzzlycr4g1fxxhr72r8x9y"))))
386 (build-system gnu-build-system)
387 (native-inputs
388 `(("gobject-introspection" ,gobject-introspection)
389 ("pkg-config" ,pkg-config)))
390 (inputs
391 `(("cairo" ,cairo)
392 ("glib" ,glib)
393 ("libarchive" ,libarchive)
394 ("libjpeg" ,libjpeg)
395 ("lcms" ,lcms)
396 ("libtiff" ,libtiff)
397 ("nettle" ,nettle)))
398 (home-page "https://wiki.gnome.org/Projects/libgxps")
399 (synopsis "GObject-based library for handling and rendering XPS documents")
400 (description
401 "libgxps is a GObject-based library for handling and rendering XPS
402documents. This package also contains binaries that can convert XPS documents
403to other formats.")
404 (license license:lgpl2.1+)))
405
7aab13f1
ML
406(define-public gnome-common
407 (package
408 (name "gnome-common")
af83490d 409 (version "3.18.0")
7aab13f1
ML
410 (source
411 (origin
412 (method url-fetch)
413 (uri (string-append "mirror://gnome/sources/" name "/"
414 (version-major+minor version) "/"
415 name "-" version ".tar.xz"))
416 (sha256
417 (base32
af83490d 418 "1kzqi8qvh5p1zncj8msazlmvcwsczjz2hqxp4x2y0mg718vrwmi2"))))
7aab13f1
ML
419 (build-system gnu-build-system)
420 (home-page "https://www.gnome.org/")
421 (synopsis "Bootstrap GNOME modules built from Git")
422 (description "gnome-common contains various files needed to bootstrap
423GNOME modules built from Git. It contains a common \"autogen.sh\" script that
424can be used to configure a source directory checked out from Git and some
425commonly used macros.")
426 (license license:gpl2+)))
427
9cc98f8a
CR
428(define-public gnome-desktop
429 (package
430 (name "gnome-desktop")
7a0d78fc 431 (version "3.24.2")
9cc98f8a
CR
432 (source
433 (origin
434 (method url-fetch)
b38e45d8
EB
435 (uri (string-append "mirror://gnome/sources/" name "/"
436 (version-major+minor version) "/"
9cc98f8a
CR
437 name "-" version ".tar.xz"))
438 (sha256
439 (base32
7a0d78fc 440 "0pkq5l1llw8gkjhfq6y58iyj6wac8dh1mc3rzjzn6nd7lrkdx8cg"))))
9cc98f8a
CR
441 (build-system gnu-build-system)
442 (native-inputs
a8340482
SB
443 `(("gobject-introspection" ,gobject-introspection)
444 ("itstool" ,itstool)
bcb354ad
SB
445 ("intltool" ,intltool)
446 ("pkg-config" ,pkg-config)
447 ("xmllint" ,libxml2)))
a8340482
SB
448 (propagated-inputs
449 ;; Required by gnome-desktop-3.0.pc.
450 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
451 ("gtk+" ,gtk+)))
9cc98f8a
CR
452 (inputs
453 `(("gdk-pixbuf" ,gdk-pixbuf)
454 ("glib" ,glib)
9cc98f8a 455 ("iso-codes" ,iso-codes)
9cc98f8a
CR
456 ("libx11" ,libx11)
457 ("libxext" ,libxext)
458 ("libxkbfile" ,libxkbfile)
459 ("libxrandr" ,libxrandr)
460 ("xkeyboard-config" ,xkeyboard-config)))
461 (home-page "https://www.gnome.org/")
462 (synopsis
35b9e423 463 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
464 (description
465 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
466on the desktop, but that cannot live in the platform for various reasons.
467There is no API or ABI guarantee, although we are doing our best to provide
468stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
469
470The gnome-about program helps find which version of GNOME is installed.")
471 ; Some bits under the LGPL.
1dd26275 472 (license license:gpl2+)))
9cc98f8a 473
995b7261
AE
474(define-public gnome-doc-utils
475 (package
476 (name "gnome-doc-utils")
477 (version "0.20.10")
478 (source
479 (origin
480 (method url-fetch)
b38e45d8
EB
481 (uri (string-append "mirror://gnome/sources/" name "/"
482 (version-major+minor version) "/"
995b7261
AE
483 name "-" version ".tar.xz"))
484 (sha256
485 (base32
486 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
487 (build-system gnu-build-system)
c4c4cc05 488 (native-inputs
995b7261 489 `(("intltool" ,intltool)
b4ce6300 490 ("docbook-xml" ,docbook-xml-4.4)
d80b0d4a 491 ("python2-libxml2" ,python2-libxml2)
995b7261
AE
492 ("libxml2" ,libxml2)
493 ("libxslt" ,libxslt)
494 ("pkg-config" ,pkg-config)
495 ("python-2" ,python-2)))
995b7261
AE
496 (home-page "https://wiki.gnome.org/GnomeDocUtils")
497 (synopsis
498 "Documentation utilities for the Gnome project")
499 (description
500 "Gnome-doc-utils is a collection of documentation utilities for the
501Gnome project. It includes xml2po tool which makes it easier to translate
502and keep up to date translations of documentation.")
1dd26275 503 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 504
6c4f7022
DC
505(define-public gnome-disk-utility
506 (package
507 (name "gnome-disk-utility")
62963f56 508 (version "3.24.1")
6c4f7022
DC
509 (source (origin
510 (method url-fetch)
511 (uri (string-append "mirror://gnome/sources/" name "/"
512 (version-major+minor version) "/"
513 name "-" version ".tar.xz"))
514 (sha256
515 (base32
62963f56 516 "18akarcbhm8djlmz49jzavc7qx8dg71gvxc9xd23p0bwjj4h93w7"))))
6c4f7022
DC
517 (build-system gnu-build-system)
518 (native-inputs
519 `(("glib:bin" ,glib "bin")
520 ("intltool" ,intltool)
521 ("pkg-config" ,pkg-config)
522 ("docbook-xml" ,docbook-xml)
523 ("docbook-xsl" ,docbook-xsl)
524 ("libxml2" ,libxml2)
525 ("libxslt" ,libxslt)))
526 (inputs
527 `(("glib" ,glib)
528 ("appstream-glib" ,appstream-glib)
529 ("gnome-settings-daemon" ,gnome-settings-daemon)
530 ("gtk+" ,gtk+)
531 ("libcanberra" ,libcanberra)
532 ("libdvdread" ,libdvdread)
533 ("libnotify" ,libnotify)
534 ("libpwquality" ,libpwquality)
535 ("libsecret" ,libsecret)
536 ("udisks" ,udisks)))
537 (home-page "https://git.gnome.org/browse/gnome-disk-utility")
538 (synopsis "Disk management utility for GNOME")
539 (description "Disk management utility for GNOME.")
540 (license license:gpl2+)))
541
8ff49011
RW
542(define-public gcr
543 (package
544 (name "gcr")
6983ba56 545 (version "3.20.0")
8ff49011
RW
546 (source (origin
547 (method url-fetch)
548 (uri (string-append "mirror://gnome/sources/" name "/"
549 (version-major+minor version) "/"
550 name "-" version ".tar.xz"))
551 (sha256
552 (base32
85c77480
KK
553 "0ydk9dzxx6snxza7j5ps8x932hbr3x1b8hhcaqjq4w4admi2qmwh"))
554 (patches
555 (search-patches "gcr-disable-failing-tests.patch"
556 "gcr-fix-collection-tests-to-work-with-gpg-21.patch"))))
8ff49011
RW
557 (build-system gnu-build-system)
558 (arguments
85c77480 559 '(#:phases (modify-phases %standard-phases
8ff49011
RW
560 (add-before
561 'check 'pre-check
562 (lambda* (#:key inputs #:allow-other-keys)
563 (substitute* "build/tap-driver"
564 (("/usr/bin/env python") (which "python"))))))))
565 (inputs
566 `(("dbus" ,dbus)
567 ("gnupg" ,gnupg) ;called as a child process during tests
568 ("libgcrypt" ,libgcrypt)))
569 (native-inputs
570 `(("python" ,python-2) ;for tests
571 ("pkg-config" ,pkg-config)
572 ("glib" ,glib "bin")
2af4f5b0
SB
573 ("gobject-introspection" ,gobject-introspection)
574 ("intltool" ,intltool)
575 ("xsltproc" ,libxslt)))
8ff49011
RW
576 ;; mentioned in gck.pc, gcr.pc and gcr-ui.pc
577 (propagated-inputs
578 `(("p11-kit" ,p11-kit)
579 ("glib" ,glib)
580 ("gtk+" ,gtk+)))
f032d0be 581 (home-page "https://www.gnome.org")
8ff49011
RW
582 (synopsis "Libraries for displaying certificates and accessing key stores")
583 (description
584 "The GCR package contains libraries used for displaying certificates and
585accessing key stores. It also provides the viewer for crypto files on the
586GNOME Desktop.")
587 (license license:lgpl2.1+)))
588
c1354b90
LC
589(define-public libgnome-keyring
590 (package
591 (name "libgnome-keyring")
5e8aec2c 592 (version "3.12.0")
c1354b90
LC
593 (source (origin
594 (method url-fetch)
b38e45d8
EB
595 (uri (string-append "mirror://gnome/sources/" name "/"
596 (version-major+minor version) "/"
597 name "-" version ".tar.xz"))
c1354b90
LC
598 (sha256
599 (base32
5e8aec2c 600 "10vpjhgbjm7z2djy04qakd02qlzpd02xnbfjhk2aqwjzn3xpihf4"))))
c1354b90 601 (build-system gnu-build-system)
c1354b90 602 (inputs
c4c4cc05 603 `(("libgcrypt" ,libgcrypt)
c1354b90 604 ("dbus" ,dbus)))
c4c4cc05
JD
605 (native-inputs
606 `(("pkg-config" ,pkg-config)
426adbe8 607 ("glib" ,glib "bin")
c4c4cc05 608 ("intltool" ,intltool)))
c1354b90
LC
609 (propagated-inputs
610 ;; Referred to in .h files and .pc.
611 `(("glib" ,glib)))
f032d0be 612 (home-page "https://www.gnome.org")
c1354b90
LC
613 (synopsis "Accessing passwords from the GNOME keyring")
614 (description
615 "Client library to access passwords from the GNOME keyring.")
616
617 ;; Though a couple of files are LGPLv2.1+.
1dd26275 618 (license license:lgpl2.0+)))
c1354b90 619
e99a3d6f
RW
620(define-public gnome-keyring
621 (package
622 (name "gnome-keyring")
6983ba56 623 (version "3.20.0")
e99a3d6f
RW
624 (source (origin
625 (method url-fetch)
626 (uri (string-append "mirror://gnome/sources/" name "/"
627 (version-major+minor version) "/"
628 name "-" version ".tar.xz"))
629 (sha256
630 (base32
6983ba56 631 "16gcwwcg91ipxjmiyi4c4njvnxixmv1i278p0bilc3lafk6ww5xw"))))
e99a3d6f
RW
632 (build-system gnu-build-system)
633 (arguments
634 `(#:tests? #f ;48 of 603 tests fail because /var/lib/dbus/machine-id does
635 ;not exist
636 #:configure-flags
637 (list
638 (string-append "--with-pkcs11-config="
639 (assoc-ref %outputs "out") "/share/p11-kit/modules/")
640 (string-append "--with-pkcs11-modules="
641 (assoc-ref %outputs "out") "/share/p11-kit/modules/"))
642 #:phases
643 (modify-phases %standard-phases
644 (add-before
645 'check 'pre-check
646 (lambda* (#:key inputs #:allow-other-keys)
647 (substitute* "build/tap-driver"
648 (("/usr/bin/env python") (which "python")))))
649 (add-before
650 'configure 'fix-docbook
651 (lambda* (#:key inputs #:allow-other-keys)
652 (substitute* "docs/Makefile.am"
653 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
654 (string-append (assoc-ref inputs "docbook-xsl")
655 "/xml/xsl/docbook-xsl-"
656 ,(package-version docbook-xsl)
657 "/manpages/docbook.xsl")))
658 (setenv "XML_CATALOG_FILES"
659 (string-append (assoc-ref inputs "docbook-xml")
660 "/xml/dtd/docbook/catalog.xml")))))))
661 (inputs
662 `(("libgcrypt" ,libgcrypt)
1a0b2d82 663 ("linux-pam" ,linux-pam)
e99a3d6f
RW
664 ("dbus" ,dbus)
665 ("gcr" ,gcr)))
666 (native-inputs
667 `(("pkg-config" ,pkg-config)
668 ("glib" ,glib "bin")
669 ("python" ,python-2) ;for tests
670 ("intltool" ,intltool)
671 ("autoconf" ,autoconf)
672 ("automake" ,automake)
673 ("libxslt" ,libxslt) ;for documentation
674 ("docbook-xml" ,docbook-xml-4.2)
675 ("docbook-xsl" ,docbook-xsl)))
f032d0be 676 (home-page "https://www.gnome.org")
e99a3d6f
RW
677 (synopsis "Daemon to store passwords and encryption keys")
678 (description
679 "gnome-keyring is a program that keeps passwords and other secrets for
680users. It is run as a daemon in the session, similar to ssh-agent, and other
681applications locate it via an environment variable or D-Bus.
682
683The program can manage several keyrings, each with its own master password,
684and there is also a session keyring which is never stored to disk, but
685forgotten when the session ends.")
686 (license license:lgpl2.1+)))
687
c1354b90
LC
688(define-public evince
689 (package
690 (name "evince")
8ad40a69 691 (version "3.24.1")
c1354b90
LC
692 (source (origin
693 (method url-fetch)
b38e45d8
EB
694 (uri (string-append "mirror://gnome/sources/" name "/"
695 (version-major+minor version) "/"
696 name "-" version ".tar.xz"))
c1354b90
LC
697 (sha256
698 (base32
8ad40a69 699 "0dqgzwxl0xfr341r5i8j8hn6j6rhv62lmc6xbzjppcq76hhwb84w"))))
121de2e1 700 (build-system glib-or-gtk-build-system)
c1354b90
LC
701 (arguments
702 `(#:configure-flags '("--disable-nautilus")
554b2dac
SB
703 #:phases
704 (modify-phases %standard-phases
705 (add-before 'install 'skip-gtk-update-icon-cache
706 ;; Don't create 'icon-theme.cache'.
707 (lambda _
708 (substitute* "data/Makefile"
709 (("gtk-update-icon-cache") "true"))
710 #t)))))
c1354b90 711 (inputs
9a096881
KK
712 `(("libarchive" ,libarchive)
713 ("libgxps" ,libgxps)
714 ("libspectre" ,libspectre)
c769cf9f 715 ("djvulibre" ,djvulibre)
c1354b90
LC
716 ("ghostscript" ,ghostscript)
717 ("poppler" ,poppler)
c769cf9f
SB
718 ("libtiff" ,libtiff)
719 ;; TODO:
c769cf9f
SB
720 ;; Build libkpathsea as a shared library for DVI support.
721 ;; ("libkpathsea" ,texlive-bin)
722 ("gnome-desktop" ,gnome-desktop)
c1354b90
LC
723 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
724 ("libgnome-keyring" ,libgnome-keyring)
c769cf9f 725 ("adwaita-icon-theme" ,adwaita-icon-theme)
c1354b90
LC
726 ("gdk-pixbuf" ,gdk-pixbuf)
727 ("atk" ,atk)
728 ("pango" ,pango)
729 ("gtk+" ,gtk+)
730 ("glib" ,glib)
731 ("libxml2" ,libxml2)
c1354b90
LC
732 ("libsm" ,libsm)
733 ("libice" ,libice)
96e42467 734 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
735 ("dconf" ,dconf)
736 ("libcanberra" ,libcanberra)
c769cf9f 737 ("libsecret" ,libsecret)
c1354b90
LC
738 ;; For tests.
739 ("dogtail" ,python2-dogtail)))
96e42467 740 (native-inputs
bcb354ad
SB
741 `(("itstool" ,itstool)
742 ("intltool" ,intltool)
426adbe8 743 ("glib" ,glib "bin")
bcb354ad
SB
744 ("pkg-config" ,pkg-config)
745 ("xmllint" ,libxml2)))
c1354b90 746 (home-page
f032d0be 747 "https://www.gnome.org/projects/evince/")
c1354b90
LC
748 (synopsis "GNOME's document viewer")
749 (description
750 "Evince is a document viewer for multiple document formats. It
751currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
752of Evince is to replace the multiple document viewers that exist
96e42467 753on the GNOME Desktop with a single simple application.")
1dd26275 754 (license license:gpl2+)))
c1354b90 755
22e32e69
AE
756(define-public gsettings-desktop-schemas
757 (package
758 (name "gsettings-desktop-schemas")
796a0c03 759 (version "3.24.0")
22e32e69
AE
760 (source
761 (origin
762 (method url-fetch)
763 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 764 (version-major+minor version) "/"
22e32e69
AE
765 name "-" version ".tar.xz"))
766 (sha256
767 (base32
796a0c03 768 "145vpcljy4660cnk8zk91qf7ywa7hqfl5hhw025gy8hxcqzklmzn"))))
22e32e69
AE
769 (build-system gnu-build-system)
770 (inputs
c4c4cc05
JD
771 `(("glib" ,glib)))
772 (native-inputs
773 `(("intltool" ,intltool)
426adbe8 774 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 775 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
776 ("pkg-config" ,pkg-config)))
777 (home-page "https://launchpad.net/gsettings-desktop-schemas")
778 (synopsis
779 "GNOME settings for various desktop components")
780 (description
781 "Gsettings-desktop-schemas contains a collection of GSettings schemas
782for settings shared by various components of the GNOME desktop.")
1dd26275 783 (license license:lgpl2.1+)))
22e32e69 784
27477d2d
AE
785(define-public icon-naming-utils
786 (package
787 (name "icon-naming-utils")
788 (version "0.8.90")
789 (source
790 (origin
791 (method url-fetch)
5cc3096c 792 (uri (string-append "https://tango.freedesktop.org/releases/icon-naming-utils-"
27477d2d
AE
793 version ".tar.bz2"))
794 (sha256
795 (base32
796 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
797 (build-system gnu-build-system)
798 (inputs
799 `(("perl" ,perl)
800 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
801 (arguments
802 '(#:phases
803 (alist-cons-after
804 'install 'set-load-paths
805 ;; Tell 'icon-name-mapping' where XML::Simple is.
806 (lambda* (#:key outputs #:allow-other-keys)
807 (let* ((out (assoc-ref outputs "out"))
808 (prog (string-append out "/libexec/icon-name-mapping")))
809 (wrap-program
810 prog
811 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
812 %standard-phases)))
27477d2d
AE
813 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
814 (synopsis
815 "Utility to implement the Freedesktop Icon Naming Specification")
816 (description
817 "To help with the transition to the Freedesktop Icon Naming
818Specification, the icon naming utility maps the icon names used by the
819GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 820 (license license:lgpl2.1+)))
27477d2d 821
7d3f3651
AE
822(define-public gnome-icon-theme
823 (package
824 (name "gnome-icon-theme")
b32f58dd 825 (version "3.12.0")
7d3f3651
AE
826 (source
827 (origin
828 (method url-fetch)
829 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 830 (version-major+minor version) "/"
7d3f3651
AE
831 name "-" version ".tar.xz"))
832 (sha256
833 (base32
b32f58dd 834 "0fjh9qmmgj34zlgxb09231ld7khys562qxbpsjlaplq2j85p57im"))))
7d3f3651 835 (build-system gnu-build-system)
5613c27d
SB
836 (arguments
837 '(#:configure-flags
838 ;; Don't create 'icon-theme.cache'.
839 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
840 (true (string-append coreutils "/bin/true")))
841 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
c4c4cc05 842 (native-inputs
5613c27d 843 `(("icon-naming-utils" ,icon-naming-utils)
73b6cf42
SB
844 ("intltool" ,intltool)
845 ("pkg-config" ,pkg-config)))
f032d0be 846 (home-page "https://art.gnome.org/")
7d3f3651
AE
847 (synopsis
848 "GNOME icon theme")
849 (description
850 "Icons for the GNOME desktop.")
1dd26275 851 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 852
14eeefa2
SB
853;; gnome-icon-theme was renamed to adwaita-icon-theme after version 3.12.0.
854(define-public adwaita-icon-theme
855 (package (inherit gnome-icon-theme)
856 (name "adwaita-icon-theme")
29548d26 857 (version "3.24.0")
14eeefa2
SB
858 (source (origin
859 (method url-fetch)
860 (uri (string-append "mirror://gnome/sources/" name "/"
861 (version-major+minor version) "/"
862 name "-" version ".tar.xz"))
863 (sha256
864 (base32
29548d26 865 "0ai73gs44yyw276xag6db0rlpvncy23qplp4girm80ilpprrzxyc"))))
5613c27d
SB
866 (native-inputs
867 `(("gtk-encode-symbolic-svg" ,gtk+ "bin")))))
14eeefa2 868
ae792dba
RW
869(define-public tango-icon-theme
870 (package
871 (name "tango-icon-theme")
872 (version "0.8.90")
873 (source (origin
874 (method url-fetch)
875 (uri (string-append "http://tango.freedesktop.org/releases/"
876 "tango-icon-theme-" version ".tar.bz2"))
877 (sha256
878 (base32
879 "034r9s944b4yikyfgn602yv7s54wdzlq0qfvqh52b9x6kbx08h79"))))
880 (build-system gnu-build-system)
881 (native-inputs
882 `(("icon-naming-utils" ,icon-naming-utils)
883 ("intltool" ,intltool)
884 ("imagemagick" ,imagemagick)
885 ("pkg-config" ,pkg-config)))
886 (home-page "http://tango-project.org/")
887 (synopsis "Tango icon theme")
888 (description "This is an icon theme that follows the Tango visual
889guidelines.")
890 (license license:public-domain)))
891
9167f8e6
LC
892(define-public shared-mime-info
893 (package
894 (name "shared-mime-info")
b43b584f 895 (version "1.8")
9167f8e6
LC
896 (source (origin
897 (method url-fetch)
5cc3096c 898 (uri (string-append "https://freedesktop.org/~hadess/"
b38e45d8 899 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
900 (sha256
901 (base32
b43b584f 902 "1sc96lv9dp1lkvs8dh3ngm3hbjb274d363dl9avhb61il3qmxx9a"))))
9167f8e6
LC
903 (build-system gnu-build-system)
904 (arguments
905 ;; The build system appears not to be parallel-safe.
906 '(#:parallel-build? #f))
907 (inputs
908 `(("glib" ,glib)
c4c4cc05 909 ("libxml2" ,libxml2)))
9167f8e6 910 (native-inputs
c4c4cc05
JD
911 `(("intltool" ,intltool)
912 ("pkg-config" ,pkg-config)))
9167f8e6
LC
913 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
914 (synopsis "Database of common MIME types")
915 (description
916 "The shared-mime-info package contains the core database of common types
917and the update-mime-database command used to extend it. It requires glib2 to
918be installed for building the update command. Additionally, it uses intltool
919for translations, though this is only a dependency for the maintainers. This
920database is translated at Transifex.")
1dd26275 921 (license license:gpl2+)))
9167f8e6 922
bef4dd92
AE
923(define-public hicolor-icon-theme
924 (package
925 (name "hicolor-icon-theme")
b62a0070 926 (version "0.15")
bef4dd92
AE
927 (source
928 (origin
929 (method url-fetch)
5cc3096c 930 (uri (string-append "https://icon-theme.freedesktop.org/releases/"
b62a0070 931 "hicolor-icon-theme-" version ".tar.xz"))
bef4dd92
AE
932 (sha256
933 (base32
b62a0070 934 "1k1kf2c5zbqh31nglc3nxs9j6wr083k9kjyql8p22ccc671mmi4w"))))
bef4dd92
AE
935 (build-system gnu-build-system)
936 (arguments
937 `(#:tests? #f)) ; no check target
938 (home-page "http://icon-theme.freedesktop.org/releases/")
939 (synopsis
940 "Freedesktop icon theme")
941 (description
942 "Freedesktop icon theme.")
1dd26275 943 (license license:gpl2)))
bef4dd92 944
d9c1a22b
AE
945(define-public libnotify
946 (package
947 (name "libnotify")
195bfa68 948 (version "0.7.7")
d9c1a22b
AE
949 (source
950 (origin
951 (method url-fetch)
952 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 953 (version-major+minor version) "/"
d9c1a22b
AE
954 name "-" version ".tar.xz"))
955 (sha256
956 (base32
195bfa68 957 "017wgq9n00hx39n0hm784zn18hl721hbaijda868cm96bcqwxd4w"))))
d9c1a22b
AE
958 (build-system gnu-build-system)
959 (inputs
960 `(("gdk-pixbuf" ,gdk-pixbuf)
961 ("glib" ,glib)
962 ("gtk+" ,gtk+)
c4c4cc05
JD
963 ("libpng" ,libpng)))
964 (native-inputs
426adbe8 965 `(("pkg-config" ,pkg-config)
277a7d82
JN
966 ("glib" ,glib "bin")
967 ("gobject-introspection" ,gobject-introspection)))
d9c1a22b
AE
968 (home-page "https://developer-next.gnome.org/libnotify/")
969 (synopsis
970 "GNOME desktop notification library")
971 (description
972 "Libnotify is a library that sends desktop notifications to a
35b9e423 973notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
974notifications can be used to inform the user about an event or display
975some form of information without getting in the user's way.")
1dd26275 976 (license license:lgpl2.1+)))
7a8605ce
CR
977
978(define-public libpeas
979 (package
980 (name "libpeas")
0dd6aed9 981 (version "1.20.0")
7a8605ce
CR
982 (source
983 (origin
984 (method url-fetch)
985 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 986 (version-major+minor version) "/"
7a8605ce
CR
987 name "-" version ".tar.xz"))
988 (sha256
989 (base32
0dd6aed9 990 "0m6k6fcrx40n92nc1cy3z72vs1ja49sb58dj3fjp40605pzgz4pk"))))
7a8605ce 991 (build-system gnu-build-system)
7a8605ce 992 (inputs
2ed6522a
SB
993 `(("gtk+" ,gtk+)
994 ("glade" ,glade3)
995 ("libxml2" ,libxml2) ; XXX: required by gladeui-2.0.pc
996 ("python" ,python)
997 ("python-pygobject" ,python-pygobject)))
141aed80
LC
998 (native-inputs
999 `(("pkg-config" ,pkg-config)
93622993 1000 ("glib:bin" ,glib "bin")
141aed80
LC
1001 ("gobject-introspection" ,gobject-introspection)
1002 ("intltool" ,intltool)))
55b7bbd8
LC
1003 (propagated-inputs
1004 ;; The .pc file "Requires" gobject-introspection.
1005 `(("gobject-introspection" ,gobject-introspection)))
7a8605ce
CR
1006 (home-page "https://wiki.gnome.org/Libpeas")
1007 (synopsis "GObject plugin system")
1008 (description
d1e4ad1b
TGR
1009 "Libpeas is a gobject-based plugin engine, targeted at giving every
1010application the chance to assume its own extensibility. It also has a set of
1011features including, but not limited to: multiple extension points; on-demand
1012(lazy) programming language support for C, Python and JS; simplicity of the
1013API.")
1dd26275 1014 (license license:lgpl2.0+)))
ed19903d
JD
1015
1016(define-public gtkglext
1017 (package
1018 (name "gtkglext")
1019 (version "1.2.0")
1020 (source (origin
1021 (method url-fetch)
0f971a04 1022 (uri (string-append "mirror://sourceforge/gtkglext/gtkglext/"
ed19903d
JD
1023 version "/gtkglext-" version ".tar.gz"))
1024 (sha256
1025 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
fc1adab1
AK
1026 (patches (search-patches
1027 "gtkglext-disable-disable-deprecated.patch"))))
ed19903d
JD
1028 (build-system gnu-build-system)
1029 (inputs `(("gtk+" ,gtk+-2)
1030 ("mesa" ,mesa)
cc8b02f4 1031 ("glu" ,glu)
ed19903d
JD
1032 ("libx11" ,libx11)
1033 ("libxt" ,libxt)))
426adbe8
LC
1034 (native-inputs `(("pkg-config" ,pkg-config)
1035 ("glib" ,glib "bin")))
a83b6a06 1036 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 1037 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 1038 (synopsis "OpenGL extension to GTK+")
35b9e423 1039 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
1040additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
1041API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 1042 (license license:lgpl2.1+)))
3600420e
JD
1043
1044(define-public glade3
1045 (package
1046 (name "glade")
6983ba56 1047 (version "3.20.0")
b38e45d8
EB
1048 (source (origin
1049 (method url-fetch)
1050 (uri (string-append "mirror://gnome/sources/" name "/"
1051 (version-major+minor version) "/"
f5ca44b8 1052 name "-" version ".tar.xz"))
3600420e 1053 (sha256
f714d9fe 1054 (base32
6983ba56
SB
1055 "1zhqvhagy0m85p54jfiayfl0v9af7g0lj7glw8sfwh7cbp56vnc2"))))
1056 (build-system glib-or-gtk-build-system)
f5ca44b8
RW
1057 (arguments
1058 `(#:tests? #f ; needs X, GL, and software rendering
1059 #:phases
1060 (modify-phases %standard-phases
1061 (add-before 'configure 'fix-docbook
1062 (lambda* (#:key inputs #:allow-other-keys)
1063 (substitute* "man/Makefile.in"
1064 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
1065 (string-append (assoc-ref inputs "docbook-xsl")
1066 "/xml/xsl/docbook-xsl-"
1067 ,(package-version docbook-xsl)
1068 "/manpages/docbook.xsl")))
1069 #t)))))
3600420e 1070 (inputs
f5ca44b8 1071 `(("gtk+" ,gtk+)
3600420e
JD
1072 ("libxml2" ,libxml2)))
1073 (native-inputs
1074 `(("intltool" ,intltool)
f5ca44b8
RW
1075 ("itstool" ,itstool)
1076 ("libxslt" ,libxslt) ;for xsltproc
1077 ("docbook-xml" ,docbook-xml-4.2)
1078 ("docbook-xsl" ,docbook-xsl)
1079 ("python" ,python-2)
3600420e
JD
1080 ("pkg-config" ,pkg-config)))
1081 (home-page "https://glade.gnome.org")
1082 (synopsis "GTK+ rapid application development tool")
1083 (description "Glade is a rapid application development (RAD) tool to
1084enable quick & easy development of user interfaces for the GTK+ toolkit and
1085the GNOME desktop environment.")
1dd26275
LC
1086 (license license:lgpl2.0+)))
1087
1088(define-public libcroco
1089 (package
1090 (name "libcroco")
15d34a18 1091 (version "0.6.12")
1dd26275
LC
1092 (source (origin
1093 (method url-fetch)
b38e45d8
EB
1094 (uri (string-append "mirror://gnome/sources/" name "/"
1095 (version-major+minor version) "/"
1096 name "-" version ".tar.xz"))
15d34a18
MB
1097 (patches
1098 (search-patches "libcroco-CVE-2017-7960.patch"
1099 "libcroco-CVE-2017-7961.patch"))
1dd26275
LC
1100 (sha256
1101 (base32
15d34a18 1102 "0q7qhi7z64i26zabg9dbs5706fa8pmzp1qhpa052id4zdiabbi6x"))))
1dd26275
LC
1103 (build-system gnu-build-system)
1104 (native-inputs
1105 `(("pkg-config" ,pkg-config)))
1106 (inputs
1107 `(("glib" ,glib)
1108 ("libxml2" ,libxml2)
1109 ("zlib" ,zlib)))
1110 (home-page "https://github.com/GNOME/libcroco")
1111 (synopsis "CSS2 parsing and manipulation library")
1112 (description
1113 "Libcroco is a standalone CSS2 parsing and manipulation library.
1114The parser provides a low level event driven SAC-like API and a CSS object
1115model like API. Libcroco provides a CSS2 selection engine and an experimental
1116XML/CSS rendering engine.")
1117
1118 ;; LGPLv2.1-only.
1119 (license license:lgpl2.1)))
25178594
LC
1120
1121(define-public libgsf
1122 (package
1123 (name "libgsf")
ef51eb99 1124 (version "1.14.41")
25178594
LC
1125 (source (origin
1126 (method url-fetch)
b38e45d8
EB
1127 (uri (string-append "mirror://gnome/sources/" name "/"
1128 (version-major+minor version) "/"
1129 name "-" version ".tar.xz"))
25178594
LC
1130 (sha256
1131 (base32
ef51eb99 1132 "1lq87wnrsjbjafpk3c8xwd56gqx319fhck9xkg2da88hd9c9h2qm"))))
25178594
LC
1133 (build-system gnu-build-system)
1134 (native-inputs
1135 `(("intltool" ,intltool)
1136 ("pkg-config" ,pkg-config)))
1137 (inputs
1138 `(("python" ,python)
1139 ("zlib" ,zlib)
1140 ("bzip2" ,bzip2)))
1141 (propagated-inputs
1142 `(("gdk-pixbuf" ,gdk-pixbuf)
1143 ("glib" ,glib)
1144 ("libxml2" ,libxml2)))
f032d0be 1145 (home-page "https://www.gnome.org/projects/libgsf")
25178594
LC
1146 (synopsis "GNOME's Structured File Library")
1147 (description
1148 "Libgsf aims to provide an efficient extensible I/O abstraction for
1149dealing with different structured file formats.")
1150
1151 ;; LGPLv2.1-only.
1152 (license license:lgpl2.1)))
63016e7c
LC
1153
1154(define-public librsvg
1155 (package
1156 (name "librsvg")
27880b5e 1157 (version "2.40.16")
63016e7c
LC
1158 (source (origin
1159 (method url-fetch)
b38e45d8
EB
1160 (uri (string-append "mirror://gnome/sources/" name "/"
1161 (version-major+minor version) "/"
1162 name "-" version ".tar.xz"))
63016e7c
LC
1163 (sha256
1164 (base32
27880b5e 1165 "0bpz6gsq8xi1pb5k9ax6vinph460v14znch3y5yz167s0dmwz2yl"))))
63016e7c
LC
1166 (build-system gnu-build-system)
1167 (arguments
ce2df078 1168 `(#:phases
63016e7c 1169 (alist-cons-before
f3045a5b 1170 'configure 'pre-configure
63016e7c 1171 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
1172 (substitute* "gdk-pixbuf-loader/Makefile.in"
1173 ;; By default the gdk-pixbuf loader is installed under
1174 ;; gdk-pixbuf's prefix. Work around that.
1175 (("gdk_pixbuf_moduledir = .*$")
1176 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 1177 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c 1178 "loaders\n"))
f3045a5b 1179 ;; Drop the 'loaders.cache' file, it's in gdk-pixbuf+svg.
63016e7c 1180 (("gdk_pixbuf_cache_file = .*$")
f3045a5b
SB
1181 "gdk_pixbuf_cache_file = $(TMPDIR)/loaders.cache\n")))
1182 %standard-phases)))
63016e7c
LC
1183 (native-inputs
1184 `(("pkg-config" ,pkg-config)
44add1ce 1185 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
1186 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
1187 (inputs
1188 `(("pango" ,pango)
1189 ("libcroco" ,libcroco)
1190 ("bzip2" ,bzip2)
1191 ("libgsf" ,libgsf)
1192 ("libxml2" ,libxml2)))
1193 (propagated-inputs
1194 ;; librsvg-2.0.pc refers to all of that.
1195 `(("cairo" ,cairo)
1196 ("gdk-pixbuf" ,gdk-pixbuf)
1197 ("glib" ,glib)))
1198 (home-page "https://wiki.gnome.org/LibRsvg")
1199 (synopsis "Render SVG files using Cairo")
1200 (description
35b9e423 1201 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
1202library.")
1203 (license license:lgpl2.0+)))
5698b8b8
JD
1204
1205(define-public libidl
1206 (package
1207 (name "libidl")
1208 (version "0.8.14")
1209 (source (origin
1210 (method url-fetch)
1211 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
1212 (string-append "mirror://gnome/sources/" upstream-name "/"
1213 (version-major+minor version) "/"
1214 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1215 (sha256
1216 (base32
1217 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
1218 (build-system gnu-build-system)
1219 (inputs `(("glib" ,glib)))
1220 (native-inputs
1221 `(("pkg-config" ,pkg-config)
b3546174 1222 ("flex" ,flex)
5698b8b8
JD
1223 ("bison" ,bison)))
1224 (home-page "http://freecode.com/projects/libidl")
1225 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 1226 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
1227Definition Language (idl) files, which is a specification for defining
1228portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 1229GNOME project, and the primary means of libidl distribution). However, the
2e6ecc5c 1230functionality was designed to be as reusable and portable as possible.")
5698b8b8
JD
1231 (license license:lgpl2.0+)))
1232
1233
1234(define-public orbit2
1235 (package
1236 (name "orbit2")
1237 (version "2.14.19")
1238 (source (origin
1239 (method url-fetch)
2e6ecc5c 1240 (uri (let ((upstream-name "ORBit2"))
a124bbd2 1241 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1242 (version-major+minor version) "/"
1243 upstream-name "-" version ".tar.bz2")))
5698b8b8 1244 (sha256
a124bbd2
SB
1245 (base32
1246 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
5698b8b8
JD
1247 (build-system gnu-build-system)
1248 (arguments
a124bbd2
SB
1249 `(#:configure-flags
1250 ;; The programmer kindly gives us a hook to turn off deprecation
1251 ;; warnings ...
1252 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1253 ;; ... which they then completly ignore !!
1254 #:phases
1255 (alist-cons-before
1256 'configure 'ignore-deprecations
1257 (lambda _
1258 (substitute* "linc2/src/Makefile.in"
1259 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1260 %standard-phases)))
5698b8b8
JD
1261 (inputs `(("glib" ,glib)
1262 ("libidl" ,libidl)))
1263 (native-inputs
1264 `(("pkg-config" ,pkg-config)))
1265 (home-page "https://projects.gnome.org/orbit2/")
1266 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 1267 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
2e6ecc5c 1268featuring mature C, C++ and Python bindings.")
a124bbd2
SB
1269 ;; Licence notice is unclear. The Web page simply say "GPL" without giving
1270 ;; a version. SOME of the code files have licence notices for GPLv2+.
1271 ;; The tarball contains files of the text of GPLv2 and LGPLv2.
2e6ecc5c 1272 (license license:gpl2+)))
5698b8b8
JD
1273
1274
1275(define-public libbonobo
1276 (package
1277 (name "libbonobo")
1278 (version "2.32.1")
1279 (source (origin
1280 (method url-fetch)
5becd025 1281 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 1282 (version-major+minor version)
5becd025 1283 "/" name "-" version ".tar.bz2"))
5698b8b8 1284 (sha256
f1fc45a9 1285 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
fc1adab1
AK
1286 (patches (search-patches
1287 "libbonobo-activation-test-race.patch"))))
5698b8b8
JD
1288 (build-system gnu-build-system)
1289 (arguments
1290 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
1291 `(#:configure-flags
1292 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
1293 ;; ... which they then completly ignore !!
1294 #:phases
1295 (alist-cons-before
1296 'configure 'ignore-deprecations
1297 (lambda _
1298 (substitute* "activation-server/Makefile.in"
1299 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1300 %standard-phases)))
5698b8b8
JD
1301 (inputs `(("popt" ,popt)
1302 ("libxml2" ,libxml2)))
1303 ;; The following are Required by the .pc file
44add1ce 1304 (propagated-inputs
5698b8b8
JD
1305 `(("glib" ,glib)
1306 ("orbit2" ,orbit2)))
1307 (native-inputs
1308 `(("intltool" ,intltool)
1309 ("pkg-config" ,pkg-config)
221ed17a 1310 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1311 ("flex" ,flex)
1312 ("bison" ,bison)))
1313 (home-page "https://developer.gnome.org/libbonobo/")
1314 (synopsis "Framework for creating reusable components for use in GNOME applications")
1315 (description "Bonobo is a framework for creating reusable components for
2e6ecc5c 1316use in GNOME applications, built on top of CORBA.")
5698b8b8
JD
1317 ;; Licence not explicitly stated. Source files contain no licence notices.
1318 ;; Tarball contains text of both GPLv2 and LGPLv2
1319 ;; GPLv2 covers both conditions
1320 (license license:gpl2+)))
1321
1322
1323(define-public gconf
1324 (package
1325 (name "gconf")
1326 (version "3.2.6")
1327 (source (origin
1328 (method url-fetch)
a124bbd2
SB
1329 (uri
1330 (let ((upstream-name "GConf"))
1331 (string-append "mirror://gnome/sources/" upstream-name "/"
b38e45d8
EB
1332 (version-major+minor version) "/"
1333 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
1334 (sha256
1335 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
1336 (build-system gnu-build-system)
2e88d113 1337 (inputs `(("dbus-glib" ,dbus-glib)
5698b8b8 1338 ("libxml2" ,libxml2)))
2e6ecc5c
AE
1339 (propagated-inputs `(("glib" ,glib) ; referred to in the .pc file
1340 ("orbit2" ,orbit2)))
5698b8b8
JD
1341 (native-inputs
1342 `(("intltool" ,intltool)
221ed17a 1343 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1344 ("pkg-config" ,pkg-config)))
1345 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
1346 (synopsis "Store application preferences")
1347 (description "Gconf is a system for storing application preferences. It
1348is intended for user preferences; not arbitrary data storage.")
29d2f451
LC
1349 (license license:lgpl2.0+)
1350 (properties '((upstream-name . "GConf")))))
5698b8b8
JD
1351
1352
1353(define-public gnome-mime-data
1354 (package
1355 (name "gnome-mime-data")
1356 (version "2.18.0")
1357 (source (origin
1358 (method url-fetch)
b38e45d8
EB
1359 (uri (string-append "mirror://gnome/sources/" name "/"
1360 (version-major+minor version) "/"
1361 name "-" version ".tar.bz2"))
5698b8b8
JD
1362 (sha256
1363 (base32
1364 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
1365 (build-system gnu-build-system)
1366 (native-inputs
1367 `(("perl" ,perl)
1368 ("intltool" ,intltool)))
f032d0be 1369 (home-page "https://www.gnome.org")
35b9e423 1370 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
1371 (description "GNOME Mime Data is a module which contains the base MIME
1372and Application database for GNOME. The data stored by this module is
1373designed to be accessed through the MIME functions in GnomeVFS.")
1374 (license license:gpl2+)))
1375
1376
1377(define-public gnome-vfs
1378 (package
1379 (name "gnome-vfs")
1380 (version "2.24.4")
1381 (source (origin
1382 (method url-fetch)
b38e45d8
EB
1383 (uri (string-append "mirror://gnome/sources/" name "/"
1384 (version-major+minor version) "/"
1385 name "-" version ".tar.bz2"))
5698b8b8 1386 (sha256
9e12bc34
MW
1387 (base32
1388 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
5698b8b8
JD
1389 (build-system gnu-build-system)
1390 (arguments
db5127d8 1391 `(#:phases
9e12bc34
MW
1392 (alist-cons-before
1393 'configure 'ignore-deprecations
1394 (lambda _
1395 (substitute* '("libgnomevfs/Makefile.in"
1396 "daemon/Makefile.in")
1397 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
1398 #t)
db5127d8
MW
1399 (alist-cons-before
1400 'configure 'patch-test-async-cancel-to-never-fail
1401 (lambda _
1402 (substitute* "test/test-async-cancel.c"
1403 (("EXIT_FAILURE") "77")))
1404 %standard-phases))))
2e6ecc5c 1405 (inputs `(("libxml2" ,libxml2)
5698b8b8 1406 ("dbus-glib" ,dbus-glib)
5698b8b8
JD
1407 ("gconf" ,gconf)
1408 ("gnome-mime-data" ,gnome-mime-data)
1409 ("zlib" ,zlib)))
1410 (native-inputs
221ed17a
EB
1411 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1412 ("intltool" ,intltool)
5698b8b8
JD
1413 ("pkg-config" ,pkg-config)))
1414 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 1415 (synopsis "Access files and folders in GNOME applications")
9e12bc34
MW
1416 (description
1417 "GnomeVFS is the core library used to access files and folders in GNOME
1418applications. It provides a file system abstraction which allows applications
1419to access local and remote files with a single consistent API.")
5698b8b8
JD
1420 (license license:lgpl2.0+)))
1421
1422
1423
1424(define-public libgnome
1425 (package
1426 (name "libgnome")
1427 (version "2.32.1")
1428 (source (origin
1429 (method url-fetch)
b38e45d8
EB
1430 (uri (string-append "mirror://gnome/sources/" name "/"
1431 (version-major+minor version) "/"
1432 name "-" version ".tar.bz2"))
5698b8b8
JD
1433 (sha256
1434 (base32
1435 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
1436 (build-system gnu-build-system)
1437 (arguments
1438 `(#:phases
1439 (alist-cons-before
1440 'configure 'enable-deprecated
2e6ecc5c 1441 (lambda _
5698b8b8
JD
1442 (substitute* "libgnome/Makefile.in"
1443 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
1444 %standard-phases)))
25338e9f 1445 (inputs `(("libxml2" ,libxml2)))
5698b8b8 1446 (native-inputs
221ed17a
EB
1447 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1448 ("intltool" ,intltool)
5698b8b8
JD
1449 ("pkg-config" ,pkg-config)))
1450 ;; The following are listed as Required in the .pc file
1451 ;; (except for libcanberra -- which seems to be oversight on the part
1452 ;; of the upstream developers -- anything that links against libgnome,
1453 ;; must also link against libcanberra
1454 (propagated-inputs
1455 `(("libcanberra" ,libcanberra)
1456 ("libbonobo" ,libbonobo)
1457 ("gconf" ,gconf)
a640d3d5
LC
1458 ("gnome-vfs" ,gnome-vfs)
1459 ("popt" ,popt))) ;gnome-program.h includes popt.h
5698b8b8
JD
1460 (home-page "https://developer.gnome.org/libgnome/")
1461 (synopsis "Useful routines for building applications")
1462 (description "The libgnome library provides a number of useful routines
1463for building modern applications, including session management, activation of
1464files and URIs, and displaying help.")
1465 (license license:lgpl2.0+)))
1466
1467
1468(define-public libart-lgpl
1469 (package
1470 (name "libart-lgpl")
76c9b6aa 1471 (version "2.3.21")
5698b8b8
JD
1472 (source (origin
1473 (method url-fetch)
1474 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
1475 (string-append "mirror://gnome/sources/" upstream-name "/"
1476 (version-major+minor version) "/"
1477 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
1478 (sha256
1479 (base32
76c9b6aa 1480 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
1481 (build-system gnu-build-system)
1482 (native-inputs
1483 `(("pkg-config" ,pkg-config)))
1484 (home-page "https://people.gnome.org/~mathieu/libart")
1485 (synopsis "2D drawing library")
2e6ecc5c 1486 (description "Libart is a 2D drawing library intended as a
5698b8b8
JD
1487high-quality vector-based 2D library with antialiasing and alpha composition.")
1488 (license license:lgpl2.0+)))
1489
1490
1491
1492(define-public libgnomecanvas
1493 (package
1494 (name "libgnomecanvas")
1495 (version "2.30.3")
1496 (source (origin
1497 (method url-fetch)
b38e45d8
EB
1498 (uri (string-append "mirror://gnome/sources/" name "/"
1499 (version-major+minor version) "/"
1500 name "-" version ".tar.gz"))
5698b8b8
JD
1501 (sha256
1502 (base32
1503 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
1504 (build-system gnu-build-system)
1505 ;; Mentioned as Required in the .pc file
1506 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1507 ("gtk+" ,gtk+-2)))
1508 (native-inputs
1509 `(("intltool" ,intltool)
221ed17a 1510 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1511 ("pkg-config" ,pkg-config)))
1512 (home-page "https://developer.gnome.org/libgnomecanvas/")
1513 (synopsis "Flexible widget for creating interactive structured graphics")
1514 (description "The GnomeCanvas widget provides a flexible widget for
1515creating interactive structured graphics.")
1516 (license license:lgpl2.0+)))
1517
eadc734e
RW
1518(define-public libgnomecanvasmm
1519 (package
1520 (name "libgnomecanvasmm")
1521 (version "2.26.0")
1522 (source (origin
1523 (method url-fetch)
1524 (uri (string-append "mirror://gnome/sources/" name "/"
1525 (version-major+minor version) "/"
1526 name "-" version ".tar.bz2"))
1527 (sha256
1528 (base32
1529 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1530 (build-system gnu-build-system)
6e4512c4
SB
1531 (arguments
1532 '(#:configure-flags '("CXXFLAGS=-std=c++11"))) ; required by gtkmm
eadc734e
RW
1533 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1534 (native-inputs
1535 `(("gtkmm-2" ,gtkmm-2)
1536 ("pkg-config" ,pkg-config)))
1537 (home-page "http://gtkmm.org")
1538 (synopsis "C++ bindings to the GNOME Canvas library")
1539 (description "C++ bindings to the GNOME Canvas library.")
1540 (license license:lgpl2.0+)))
1541
5698b8b8
JD
1542(define-public libgnomeui
1543 (package
1544 (name "libgnomeui")
1545 (version "2.24.5")
1546 (source (origin
1547 (method url-fetch)
b38e45d8
EB
1548 (uri (string-append "mirror://gnome/sources/" name "/"
1549 (version-major+minor version) "/"
1550 name "-" version ".tar.bz2"))
5698b8b8
JD
1551 (sha256
1552 (base32
1553 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1554 (build-system gnu-build-system)
1555 ;; Mentioned as Required in the .pc file
0a38a497
AE
1556 (propagated-inputs `(("libbonoboui" ,libbonoboui)
1557 ("libgnome" ,libgnome)
1558 ("libgnomecanvas" ,libgnomecanvas)
5698b8b8 1559 ("libgnome-keyring" ,libgnome-keyring)))
0a38a497 1560 (inputs `(("libjpeg" ,libjpeg)
5698b8b8
JD
1561 ("popt" ,popt)
1562 ("libbonobo" ,libbonobo)
1563 ("libxml2" ,libxml2)
1564 ("libglade" ,libglade)))
1565 (native-inputs
221ed17a
EB
1566 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1567 ("intltool" ,intltool)
5698b8b8
JD
1568 ("pkg-config" ,pkg-config)))
1569 (home-page "https://developer.gnome.org/libgnomeui/")
1570 (synopsis "Additional widgets for applications")
35b9e423 1571 (description "The libgnomeui library provides additional widgets for
e881752c
AK
1572applications. Many of the widgets from libgnomeui have already been
1573ported to GTK+.")
5698b8b8
JD
1574 (license license:lgpl2.0+)))
1575
1576(define-public libglade
1577 (package
1578 (name "libglade")
1579 (version "2.6.4")
1580 (source (origin
1581 (method url-fetch)
b38e45d8
EB
1582 (uri (string-append "mirror://gnome/sources/" name "/"
1583 (version-major+minor version) "/"
1584 name "-" version ".tar.bz2"))
5698b8b8
JD
1585 (sha256
1586 (base32
1587 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1588 (build-system gnu-build-system)
1589 (inputs
92dcc23d
AE
1590 `(("python" ,python))) ;; needed for the optional libglade-convert program
1591 (propagated-inputs
5698b8b8 1592 `(("gtk+-2" ,gtk+-2)
92dcc23d 1593 ("libxml2" ,libxml2))) ; required by libglade-2.0.pc
5698b8b8
JD
1594 (native-inputs
1595 `(("pkg-config" ,pkg-config)))
1596 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1597 (synopsis "Load glade interfaces and access the glade built widgets")
1598 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1599graphical interfaces described in glade files and for accessing the
1600widgets built in the loading process.")
1601 (license license:gpl2+))) ; This is correct. GPL not LGPL
1602
1603(define-public libgnomeprint
eb497b66
LC
1604 ;; This library has been deprecated since 2006; see
1605 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1606 (package
1607 (name "libgnomeprint")
1608 (version "2.8.2")
1609 (source (origin
1610 (method url-fetch)
b38e45d8
EB
1611 (uri (string-append "mirror://gnome/sources/" name "/"
1612 (version-major+minor version) "/"
1613 name "-" version ".tar.bz2"))
5698b8b8
JD
1614 (sha256
1615 (base32
6983ba56 1616 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))))
5698b8b8
JD
1617 (build-system gnu-build-system)
1618 (inputs
1619 `(("popt" ,popt)
1620 ("libart-lgpl" ,libart-lgpl)
1621 ("gtk+" ,gtk+-2)
44add1ce 1622 ("libxml2" ,libxml2)))
5698b8b8
JD
1623 (native-inputs
1624 `(("intltool" ,intltool)
221ed17a 1625 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1626 ("pkg-config" ,pkg-config)))
1627 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1628 (synopsis "Printing framework for GNOME")
eb497b66
LC
1629 (description
1630 "GNOME-print was a printing framework for GNOME. It has been deprecated
1631since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1632 (license license:lgpl2.0+)))
1633
1634
1635(define-public libgnomeprintui
eb497b66 1636 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1637 (package
1638 (name "libgnomeprintui")
1639 (version "2.8.2")
1640 (source (origin
1641 (method url-fetch)
b38e45d8
EB
1642 (uri (string-append "mirror://gnome/sources/" name "/"
1643 (version-major+minor version) "/"
1644 name "-" version ".tar.bz2"))
5698b8b8
JD
1645 (sha256
1646 (base32
1647 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1648 (build-system gnu-build-system)
1649 ;; Mentioned as Required in the .pc file
1650 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1651 (inputs `(("gtk+" ,gtk+-2)
1652 ("glib" ,glib)
1653 ("gnome-icon-theme" ,gnome-icon-theme)
1654 ("libgnomecanvas" ,libgnomecanvas)
2e6ecc5c 1655 ("libxml2" ,libxml2)))
5698b8b8
JD
1656 (native-inputs
1657 `(("intltool" ,intltool)
1658 ("pkg-config" ,pkg-config)))
1659 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1660 (synopsis "Printing framework for GNOME")
eb497b66 1661 (description (package-description libgnomeprint))
5698b8b8
JD
1662 (license license:lgpl2.0+)))
1663
5698b8b8
JD
1664(define-public libbonoboui
1665 (package
1666 (name "libbonoboui")
1667 (version "2.24.5")
1668 (source (origin
1669 (method url-fetch)
b38e45d8
EB
1670 (uri (string-append "mirror://gnome/sources/" name "/"
1671 (version-major+minor version) "/"
1672 name "-" version ".tar.bz2"))
5698b8b8
JD
1673 (sha256
1674 (base32
1675 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1676 (build-system gnu-build-system)
1677 (arguments
1678 `(#:phases
1679 (alist-cons-before
1680 'check 'start-xserver
1681 (lambda* (#:key inputs #:allow-other-keys)
1682 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1683 (disp ":1"))
2e6ecc5c 1684
5698b8b8
JD
1685 (setenv "HOME" (getcwd))
1686 (setenv "DISPLAY" disp)
1687 ;; There must be a running X server and make check doesn't start one.
1688 ;; Therefore we must do it.
1689 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1690 %standard-phases)))
1691 ;; Mentioned as Required by the .pc file
1692 (propagated-inputs `(("libxml2" ,libxml2)))
1693 (inputs
1694 `(("popt" ,popt)
1695 ("pangox-compat" ,pangox-compat)
1696 ("libgnome" ,libgnome)
1697 ("libgnomecanvas" ,libgnomecanvas)
1698 ("libglade" ,libglade)))
1699 (native-inputs
221ed17a
EB
1700 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1701 ("intltool" ,intltool)
5698b8b8
JD
1702 ("xorg-server" ,xorg-server) ; For running the tests
1703 ("pkg-config" ,pkg-config)))
1704 (home-page "https://developer.gnome.org/libbonoboui/")
1705 (synopsis "Some user interface controls using Bonobo")
1706 (description "The Bonobo UI library provides a number of user interface
1707controls using the Bonobo component framework.")
1708 (license license:lgpl2.0+)))
1709
fecbf86e
SB
1710(define-public libwnck
1711 (package
1712 (name "libwnck")
cf047019 1713 (version "3.20.1")
fecbf86e
SB
1714 (source (origin
1715 (method url-fetch)
1716 (uri (string-append "mirror://gnome/sources/" name "/"
1717 (version-major+minor version) "/"
1718 name "-" version ".tar.xz"))
1719 (sha256
cf047019 1720 (base32 "0wms3hli6y0b9l3cszq6maqi6fyy6kss9gryvzgmhw27phb3gc0w"))))
fecbf86e
SB
1721 (build-system gnu-build-system)
1722 (native-inputs
1723 `(("pkg-config" ,pkg-config)
1724 ("intltool" ,intltool)))
1725 (propagated-inputs
427476d5
SB
1726 `(("gtk+" ,gtk+)
1727 ("libxres" ,libxres)
1728 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1729 (home-page "https://developer.gnome.org/libwnck/")
1730 (synopsis "Window Navigator Construction Kit")
1731 (description
1732 "Libwnck is the Window Navigator Construction Kit, a library for use in
1733writing pagers, tasklists, and more generally applications that are dealing
1734with window management. It tries hard to respect the Extended Window Manager
1735Hints specification (EWMH).")
1736 (license license:lgpl2.0+)))
1737
1738;; stable version for gtk2, required by xfwm4.
dbb7a081 1739(define-public libwnck-2
fecbf86e
SB
1740 (package (inherit libwnck)
1741 (name "libwnck")
1742 (version "2.30.7")
1743 (source (origin
1744 (method url-fetch)
1745 (uri (string-append "mirror://gnome/sources/" name "/"
1746 (version-major+minor version) "/"
1747 name "-" version ".tar.xz"))
1748 (sha256
1749 (base32
1750 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1751 (propagated-inputs
427476d5
SB
1752 `(("gtk+" ,gtk+-2)
1753 ("libxres" ,libxres)
1754 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1755
1756(define-public goffice
1757 (package
1758 (name "goffice")
0193e3be 1759 (version "0.10.35")
b804c61e
JD
1760 (source (origin
1761 (method url-fetch)
b38e45d8
EB
1762 (uri (string-append "mirror://gnome/sources/" name "/"
1763 (version-major+minor version) "/"
1764 name "-" version ".tar.xz"))
b804c61e 1765 (sha256
0193e3be 1766 (base32 "0f2p3p7idfpbms4mi75031014mqsv09s21b6w1359p09raph3461"))))
b804c61e 1767 (build-system gnu-build-system)
72a06d3e
LC
1768 (outputs '("out"
1769 "doc")) ;4.1 MiB of gtk-doc
1770 (arguments
1771 '(#:configure-flags (list (string-append "--with-html-dir="
1772 (assoc-ref %outputs "doc")
1773 "/share/gtk-doc/html"))))
b804c61e
JD
1774 (inputs
1775 `(("gtk+" ,gtk+)
1776 ("libgsf" ,libgsf)
1777 ("librsvg" ,librsvg)
1778 ("libxslt" ,libxslt)
1779 ("libxml2" ,libxml2)))
1780 (native-inputs
1781 `(("intltool" ,intltool)
f280cdb1 1782 ("glib" ,glib "bin")
b804c61e
JD
1783 ("pkg-config" ,pkg-config)))
1784 (home-page "https://developer.gnome.org/goffice/")
1785 (synopsis "Document-centric objects and utilities")
1786 (description "A GLib/GTK+ set of document-centric objects and utilities.")
2e6ecc5c 1787 (license
b804c61e
JD
1788 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1789 ;; Note: NOT LGPL
1790 (list license:gpl2 license:gpl3))))
1791
c024ae36
RW
1792(define-public goffice-0.8
1793 (package (inherit goffice)
1794 (version "0.8.17")
1795 (source (origin
1796 (method url-fetch)
1797 (uri (string-append "mirror://gnome/sources/" (package-name goffice) "/"
1798 (version-major+minor version) "/"
1799 (package-name goffice) "-" version ".tar.xz"))
1800 (sha256
1801 (base32 "05fvzbs5bin05bbsr4dp79aiva3lnq0a3a40zq55i13vnsz70l0n"))))
1802 (arguments
1803 `(#:phases
1804 (alist-cons-after
1805 'unpack 'fix-pcre-check
1806 (lambda _
1807 ;; Only glib.h can be included directly. See
1808 ;; https://bugzilla.gnome.org/show_bug.cgi?id=670316
1809 (substitute* "configure"
1810 (("glib/gregex\\.h") "glib.h")) #t)
72a06d3e
LC
1811 %standard-phases)
1812
1813 ,@(package-arguments goffice)))
c024ae36
RW
1814 (propagated-inputs
1815 ;; libgoffice-0.8.pc mentions libgsf-1
1816 `(("libgsf" ,libgsf)))
1817 (inputs
1818 `(("gtk" ,gtk+-2)
1819 ,@(alist-delete "gtk" (package-inputs goffice))))))
1820
b804c61e
JD
1821(define-public gnumeric
1822 (package
1823 (name "gnumeric")
9099bedf 1824 (version "1.12.35")
b804c61e
JD
1825 (source (origin
1826 (method url-fetch)
b38e45d8
EB
1827 (uri (string-append "mirror://gnome/sources/" name "/"
1828 (version-major+minor version) "/"
1829 name "-" version ".tar.xz"))
b804c61e
JD
1830 (sha256
1831 (base32
9099bedf 1832 "02kcq2af16m9mlzgkbdzswhw0nl6zf01dmvsfq3shy1mab7f7cbp"))))
bd1b1e05 1833 (build-system glib-or-gtk-build-system)
b804c61e
JD
1834 (arguments
1835 `(;; The gnumeric developers don't worry much about failing tests.
1836 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
2e6ecc5c 1837 #:tests? #f
b804c61e 1838 #:phases
7bcbd40d
EF
1839 (modify-phases %standard-phases
1840 (add-before
1841 'configure 'pre-conf
1842 (lambda* (#:key outputs #:allow-other-keys)
1843 ;; Make install tries to write into the directory of goffice
1844 ;; I am informed that this only affects the possibility to embed a
1845 ;; spreadsheet inside an Abiword document. So presumably when we
1846 ;; package Abiword we'll have to refer it to this directory.
1847 (substitute* "configure"
1848 (("^GOFFICE_PLUGINS_DIR=.*")
1849 (string-append "GOFFICE_PLUGINS_DIR="
1850 (assoc-ref outputs "out")
1851 "/goffice/plugins"))))))))
b804c61e
JD
1852 (inputs
1853 `(("glib" ,glib)
1854 ("gtk+" ,gtk+)
1855 ("goffice" ,goffice)
1856 ("libgsf" ,libgsf)
7bcbd40d 1857 ("librsvg" ,librsvg)
b804c61e 1858 ("libxml2" ,libxml2)
7bcbd40d 1859 ("libxslt" ,libxslt)
2e4c5457 1860 ("python" ,python-2)
6983ba56 1861 ("python2-pygobject" ,python2-pygobject)
b804c61e
JD
1862 ("zlib" ,zlib)))
1863 (native-inputs
6983ba56 1864 `(("bison" ,bison)
1ed398d1 1865 ("docbook-xml" ,docbook-xml)
6983ba56 1866 ("intltool" ,intltool)
1ed398d1 1867 ("itstool" ,itstool)
b9663471 1868 ("glib:bin" ,glib "bin")
b804c61e
JD
1869 ("pkg-config" ,pkg-config)))
1870 (home-page "http://www.gnumeric.org")
66672a45
LC
1871 (synopsis "Spreadsheet application")
1872 (description
1873 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1874interoperable with other spreadsheet applications. It has a vast array of
1875features beyond typical spreadsheet functionality, such as support for linear
1876and non-linear solvers, statistical analysis, and telecommunication
1877engineering.")
1878 (license
b804c61e
JD
1879 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1880 (list license:gpl2 license:gpl3))))
6f885c05
FB
1881
1882(define-public gnome-themes-standard
1883 (package
1884 (name "gnome-themes-standard")
0b7b8fb0 1885 (version "3.22.3")
6f885c05
FB
1886 (source
1887 (origin
1888 (method url-fetch)
2e6ecc5c 1889 (uri (string-append "mirror://gnome/sources/" name "/"
6f885c05
FB
1890 (version-major+minor version) "/" name "-"
1891 version ".tar.xz"))
1892 (sha256
1893 (base32
0b7b8fb0 1894 "0smmiamrgcgf5sa88bsn8hwmvsyx4gczzs359nwxbkv14b2qgp31"))))
6f885c05 1895 (build-system gnu-build-system)
8ac70c7f
SB
1896 (arguments
1897 '(#:configure-flags
1898 ;; Don't create 'icon-theme.cache'.
1899 (let* ((coreutils (assoc-ref %build-inputs "coreutils"))
1900 (true (string-append coreutils "/bin/true")))
1901 (list (string-append "GTK_UPDATE_ICON_CACHE=" true)))))
6f885c05
FB
1902 (inputs
1903 `(("gtk+" ,gtk+)
1904 ("gtk+-2" ,gtk+-2)
1905 ("librsvg" ,librsvg)
1906 ("libxml2" ,libxml2)
1907 ("glib" ,glib)))
1908 (native-inputs
1909 `(("intltool" ,intltool)
1910 ("glib:bin" ,glib "bin")
1911 ("pkg-config" ,pkg-config)))
6f885c05
FB
1912 (home-page "https://launchpad.net/gnome-themes-standard")
1913 (synopsis "Default GNOME 3 themes")
1914 (description
1915 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1916 (license license:lgpl2.1+)))
5a659a48 1917
df90c701
RW
1918(define-public seahorse
1919 (package
1920 (name "seahorse")
6983ba56 1921 (version "3.20.0")
df90c701
RW
1922 (source
1923 (origin
1924 (method url-fetch)
1925 (uri (string-append "mirror://gnome/sources/" name "/"
1926 (version-major+minor version) "/" name "-"
1927 version ".tar.xz"))
1928 (sha256
1929 (base32
6983ba56 1930 "1py6fj19kb8aaxvg6yrpd0876azc2zjvis98aqz37a2lxmhp9c72"))))
df90c701
RW
1931 (build-system glib-or-gtk-build-system)
1932 (inputs
1933 `(("gtk+" ,gtk+)
1934 ("gcr" ,gcr)
34b979b9 1935 ("gnupg" ,gnupg)
df90c701 1936 ("gpgme" ,gpgme)
34b979b9 1937 ("openldap" ,openldap)
4a1bf090 1938 ("openssh" ,openssh)
34b979b9
EF
1939 ("libsecret" ,libsecret)
1940 ("libsoup" ,libsoup)))
df90c701
RW
1941 (native-inputs
1942 `(("intltool" ,intltool)
1943 ("glib:bin" ,glib "bin")
1944 ("itstool" ,itstool)
bcb354ad
SB
1945 ("pkg-config" ,pkg-config)
1946 ("xmllint" ,libxml2)))
df90c701
RW
1947 (home-page "https://launchpad.net/gnome-themes-standard")
1948 (synopsis "Manage encryption keys and passwords in the GNOME keyring")
1949 (description
1950 "Seahorse is a GNOME application for managing encryption keys and
1951passwords in the GNOME keyring.")
1952 (license license:gpl2+)))
1953
5a659a48
SB
1954(define-public vala
1955 (package
1956 (name "vala")
6d836f4d 1957 (version "0.36.3")
5a659a48
SB
1958 (source (origin
1959 (method url-fetch)
1960 (uri (string-append "mirror://gnome/sources/" name "/"
1961 (version-major+minor version) "/"
1962 name "-" version ".tar.xz"))
1963 (sha256
1964 (base32
6d836f4d 1965 "0706izk9prxqclm7gv4f63diwnlc1llvfl5sc9ghqbgn076lx2mc"))))
5a659a48 1966 (build-system gnu-build-system)
1ea90625
SB
1967 (arguments
1968 '(#:phases
1969 (modify-phases %standard-phases
f4925a4f 1970 (add-before 'check 'pre-check
1ea90625
SB
1971 (lambda _
1972 (setenv "CC" "gcc")
f4925a4f
SB
1973 ;; For missing '/etc/machine-id'.
1974 (setenv "DBUS_FATAL_WARNINGS" "0")
0a387b14
LF
1975 #t)))
1976 ;; Build the Vala API generator
1977 #:configure-flags '("--enable-vapigen")))
5a659a48
SB
1978 (native-inputs
1979 `(("pkg-config" ,pkg-config)
1980 ("flex" ,flex)
1981 ("bison" ,bison)
1982 ("xsltproc" ,libxslt)
1983 ("dbus" ,dbus) ; for dbus tests
1984 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1985 (propagated-inputs
1986 `(("glib" ,glib))) ; required by libvala-0.26.pc
f032d0be 1987 (home-page "https://live.gnome.org/Vala/")
5a659a48
SB
1988 (synopsis "Compiler for the GObject type system")
1989 (description
1990 "Vala is a programming language that aims to bring modern programming
1991language features to GNOME developers without imposing any additional runtime
1992requirements and without using a different ABI compared to applications and
1993libraries written in C.")
1994 (license license:lgpl2.1+)))
ea57378f
SB
1995
1996(define-public vte
1997 (package
1998 (name "vte")
f2da7c86 1999 (version "0.48.3")
ea57378f
SB
2000 (source (origin
2001 (method url-fetch)
2002 (uri (string-append "mirror://gnome/sources/" name "/"
2003 (version-major+minor version) "/"
2004 name "-" version ".tar.xz"))
2005 (sha256
2006 (base32
f2da7c86 2007 "1hsqc7238862mqnva5qqdfxnhpwq3ak6zx6kbjj95cs04wcgpad3"))))
ea57378f
SB
2008 (build-system gnu-build-system)
2009 (native-inputs
2010 `(("pkg-config" ,pkg-config)
2011 ("intltool" ,intltool)
2012 ("vala" ,vala)
2013 ("gobject-introspection" ,gobject-introspection)
2014 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
73f0e1ab 2015 ("gperf" ,gperf)
ea57378f
SB
2016 ("xmllint" ,libxml2)))
2017 (propagated-inputs
302393bc 2018 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
de1215e2
MW
2019 ("gnutls" ,gnutls) ;ditto
2020 ("pcre2" ,pcre2))) ;ditto
f032d0be 2021 (home-page "https://www.gnome.org/")
ea57378f
SB
2022 (synopsis "Virtual Terminal Emulator")
2023 (description
2024 "VTE is a library (libvte) implementing a terminal emulator widget for
2025GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
2026gnome-terminal, but can also be used to embed a console/terminal in games,
2027editors, IDEs, etc.")
2028 (license license:lgpl2.1+)))
2029
c44fb4df
MO
2030(define-public vte-ng
2031 (package
2032 (inherit vte)
2033 (name "vte-ng")
52d2a2be 2034 (version "0.48.3.a")
c44fb4df
MO
2035 (native-inputs
2036 `(("gtk-doc" ,gtk-doc)
011b858b 2037 ("gperf" ,gperf)
c44fb4df
MO
2038 ("autoconf" ,autoconf)
2039 ("automake" ,automake)
2040 ("libtool" ,libtool)
2041 ,@(package-native-inputs vte)))
2042 (source (origin
2043 (method url-fetch)
2044 (uri (string-append "https://github.com/thestinger/"
2045 name "/archive/" version ".tar.gz"))
2046 (file-name (string-append name "-" version ".tar.gz"))
2047 (sha256
2048 (base32
52d2a2be 2049 "1wdkf090zclqy11hxdjgy8f6fgzajl0xzzirajikhbaiill7f8zh"))))
c44fb4df
MO
2050 (arguments
2051 `(#:configure-flags '("CXXFLAGS=-Wformat=0")
2052 #:phases (modify-phases %standard-phases
2053 (add-after 'unpack 'bootstrap
2054 (lambda _
2055 (setenv "NOCONFIGURE" "true")
2056 (zero? (system* "sh" "autogen.sh")))))))
2057 (synopsis "Enhanced VTE terminal widget")
2058 (description
2059 "VTE is a library (libvte) implementing a terminal emulator widget for
2060GTK+, this fork provides additional functions exposed for keyboard text
2061selection and URL hints.")))
2062
2776d72c
EF
2063;; provides vte 2.90, required for some terminal emulators
2064;; tilda bug: https://github.com/lanoxx/tilda/issues/94
2065;; pantheon-terminal bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=788021
2066;; roxterm bug: http://sourceforge.net/p/roxterm/bugs/107/
2067;; pantheon-terminal, roxterm are not currently packaged
2068(define-public vte-0.36
2069 (package (inherit vte)
2070 (name "vte")
2071 (version "0.36.5")
2072 (source (origin
2073 (method url-fetch)
2074 (uri (string-append "mirror://gnome/sources/" name "/"
2075 (version-major+minor version) "/"
2076 name "-" version ".tar.xz"))
2077 (sha256
2078 (base32
2079 "1psfnqsmxx4qzc55qwvb8jai824ix4pqcdqhgxk0g2zh82bcxhn2"))))
2080 (propagated-inputs
2081 `(("gtk" ,gtk+)
2082 ("ncurses" ,ncurses)))))
2083
ea57378f
SB
2084;; stable version for gtk2, required by xfce4-terminal.
2085(define-public vte/gtk+-2
2086 (package (inherit vte)
2087 (name "vte")
2088 (version "0.28.2")
2089 (source (origin
2090 (method url-fetch)
2091 (uri (string-append "mirror://gnome/sources/" name "/"
2092 (version-major+minor version) "/"
2093 name "-" version ".tar.xz"))
2094 (sha256
2095 (base32
7d48938a
EF
2096 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))
2097 (patches (search-patches
2098 "vte-CVE-2012-2738-pt1.patch"
2099 "vte-CVE-2012-2738-pt2.patch"))))
ea57378f
SB
2100 (arguments
2101 '(#:configure-flags '("--disable-python")))
2102 (native-inputs
2103 `(("pkg-config" ,pkg-config)
2104 ("intltool" ,intltool)
2105 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
2106 (propagated-inputs
2107 `(("gtk+" ,gtk+-2) ; required by libvte.pc
2108 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20 2109
cce0da5e
TD
2110(define-public vinagre
2111 (package
2112 (name "vinagre")
2113 (version "3.22.0")
2114 (source (origin
2115 (method url-fetch)
2116 (uri (string-append "mirror://gnome/sources/" name "/"
2117 (version-major+minor version) "/"
2118 name "-" version ".tar.xz"))
2119 (sha256
2120 (base32
2121 "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d"))))
2122 (build-system glib-or-gtk-build-system)
2123 (native-inputs
2124 `(("pkg-config" ,pkg-config)
2125 ("intltool" ,intltool)
2126 ("itstool" ,itstool)
2127 ("glib-bin" ,glib "bin") ;for glib-compile-schemas
2128 ("gtk+-bin" ,gtk+ "bin"))) ;for gtk-update-icon-cache
2129 (inputs
2130 `(("libxml2" ,libxml2)
2131 ("gtk-vnc" ,gtk-vnc)
2132 ("gnome-keyring" ,gnome-keyring)
2133 ("libsecret" ,libsecret)
2134 ("freerdp" ,freerdp)
2135 ("spice" ,spice)
2136 ("spice-gtk" ,spice-gtk)
2137 ("telepathy-glib" ,telepathy-glib)
2138 ("vte" ,vte)))
2139 (arguments
2140 `(#:configure-flags '("--enable-rdp")))
2141 (home-page "https://wiki.gnome.org/Apps/Vinagre")
2142 (synopsis "Remote desktop viewer for GNOME")
2143 (description "Vinagre is a remote display client supporting the VNC, SPICE
2144and RDP protocols.")
2145 (license license:gpl3+)))
2146
b47e1b20
FB
2147(define-public dconf
2148 (package
2149 (name "dconf")
6983ba56 2150 (version "0.26.0")
b47e1b20
FB
2151 (source (origin
2152 (method url-fetch)
2153 (uri (string-append
2e6ecc5c 2154 "mirror://gnome/sources/" name "/"
b47e1b20
FB
2155 (version-major+minor version) "/"
2156 name "-" version ".tar.xz"))
2157 (sha256
f05c809f 2158 (base32
6983ba56 2159 "1jaqsr1r0grpd25rbsc2v3vb0sc51lia9w31wlqswgqsncp2k0w6"))))
b47e1b20
FB
2160 (build-system glib-or-gtk-build-system)
2161 (inputs
2162 `(("gtk+" ,gtk+)
2163 ("glib" ,glib)
2164 ("dbus" ,dbus)
2165 ("libxml2" ,libxml2)))
2166 (native-inputs
2167 `(("libxslt" ,libxslt)
2168 ("docbook-xml" ,docbook-xml-4.2)
2169 ("docbook-xsl" ,docbook-xsl)
2170 ("intltool" ,intltool)
2171 ("pkg-config" ,pkg-config)))
2172 (arguments
2173 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
2174 ; or /etc/machine-id.
2175 #:configure-flags
2176 ;; Set the correct RUNPATH in binaries.
2e6ecc5c 2177 (list (string-append "LDFLAGS=-Wl,-rpath="
b47e1b20
FB
2178 (assoc-ref %outputs "out") "/lib")
2179 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
2180 #:phases
2181 (alist-cons-before
2182 'configure 'fix-docbook
2183 (lambda* (#:key inputs #:allow-other-keys)
2184 (substitute* "docs/Makefile.in"
2185 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
2e6ecc5c 2186 (string-append (assoc-ref inputs "docbook-xsl")
b47e1b20
FB
2187 "/xml/xsl/docbook-xsl-"
2188 ,(package-version docbook-xsl)
2189 "/manpages/docbook.xsl")))
2e6ecc5c
AE
2190 (setenv "XML_CATALOG_FILES"
2191 (string-append (assoc-ref inputs "docbook-xml")
b47e1b20
FB
2192 "/xml/dtd/docbook/catalog.xml")))
2193 %standard-phases)))
2194 (home-page "https://developer.gnome.org/dconf")
2195 (synopsis "Low-level GNOME configuration system")
2196 (description "Dconf is a low-level configuration system. Its main purpose
2197is to provide a backend to GSettings on platforms that don't already have
2198configuration storage systems.")
2199 (license license:lgpl2.1)))
109da1c0
AE
2200
2201(define-public json-glib
2202 (package
2203 (name "json-glib")
dbf0424d 2204 (version "1.2.8")
109da1c0
AE
2205 (source (origin
2206 (method url-fetch)
2207 (uri (string-append "mirror://gnome/sources/" name "/"
2208 (version-major+minor version) "/"
2209 name "-" version ".tar.xz"))
2210 (sha256
2211 (base32
dbf0424d 2212 "02pl0wl3mf47c038bgv2r4pa6pr6y3shjhxn1l7s3rrrgl1sjmgx"))))
109da1c0
AE
2213 (build-system gnu-build-system)
2214 (native-inputs
88c6b580 2215 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
2216 ("gobject-introspection" ,gobject-introspection)
2217 ("pkg-config" ,pkg-config)))
2218 (propagated-inputs
88c6b580 2219 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
2220 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
2221 (synopsis "Compiler for the GObject type system")
7c125ce0
AK
2222 (description
2223 "JSON-GLib is a C library based on GLib providing serialization and
2224deserialization support for the JavaScript Object Notation (JSON) format
2225described by RFC 4627. It provides parser and generator GObject classes and
2226various wrappers for the complex data types employed by JSON, such as arrays
2227and objects.")
109da1c0 2228 (license license:lgpl2.1+)))
6f96a359
SB
2229
2230(define-public libxklavier
2231 (package
2232 (name "libxklavier")
2233 (version "5.3")
2234 (source (origin
2235 (method url-fetch)
2236 (uri (string-append "mirror://gnome/sources/" name "/"
2237 version "/" name "-" version ".tar.xz"))
2238 (sha256
2239 (base32
2240 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
2241 (build-system gnu-build-system)
2242 (arguments
2243 '(#:configure-flags
2244 (list (string-append "--with-xkb-base="
2245 (assoc-ref %build-inputs "xkeyboard-config")
b19d6805 2246 "/share/X11/xkb"))))
6f96a359
SB
2247 (native-inputs
2248 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
2249 ("gobject-introspection" ,gobject-introspection)
2250 ("pkg-config" ,pkg-config)))
2251 (propagated-inputs
2252 ;; Required by libxklavier.pc.
2253 `(("glib" ,glib)
2254 ("libxml2" ,libxml2)))
2255 (inputs
2256 `(("iso-codes" ,iso-codes)
2257 ("libxi" ,libxi)
2258 ("libxkbfile" ,libxkbfile)
2259 ("xkbcomp" ,xkbcomp)
2260 ("xkeyboard-config" ,xkeyboard-config)))
2261 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
2262 (synopsis "High-level API for X Keyboard Extension")
2263 (description
2264 "LibXklavier is a library providing high-level API for X Keyboard
e881752c
AK
2265Extension known as XKB. This library is intended to support XFree86 and other
2266commercial X servers. It is useful for creating XKB-related software (layout
6f96a359
SB
2267indicators etc).")
2268 (license license:lgpl2.0+)))
619936a4
LC
2269
2270(define-public python2-rsvg
2271 ;; XXX: This is actually a subset of gnome-python-desktop.
2272 (package
2273 (name "python2-rsvg")
2274 (version "2.32.0")
2275 (source
2276 (origin
2277 (method url-fetch)
2278 (uri (string-append
2279 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
2280 version ".tar.bz2"))
2281 (sha256
2282 (base32
2283 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
2284 (build-system gnu-build-system)
2285 (native-inputs
2286 `(("pkg-config" ,pkg-config)))
2287 (inputs
2288 `(("python" ,python-2)
2289 ("python2-pygtk" ,python2-pygtk)
2290 ("librsvg" ,librsvg)))
f032d0be 2291 (home-page "https://www.gnome.org")
619936a4
LC
2292 (synopsis "Python bindings to librsvg")
2293 (description
2294 "This packages provides Python bindings to librsvg, the SVG rendering
2295library.")
2296
2297 ;; This is the license of the rsvg bindings. The license of each module
2298 ;; of gnome-python-desktop is given in 'COPYING'.
2299 (license license:lgpl2.1+)))
a31a6d22 2300
f2ca414a
SB
2301(define-public glib-networking
2302 (package
2303 (name "glib-networking")
532cbe22 2304 (version "2.50.0")
f2ca414a
SB
2305 (source (origin
2306 (method url-fetch)
2307 (uri (string-append "mirror://gnome/sources/glib-networking/"
2308 (version-major+minor version) "/"
2309 name "-" version ".tar.xz"))
2310 (sha256
2311 (base32
532cbe22 2312 "1vkb53jxawy38y29635izlch64j9xmcwwcimk134jwra7hpl86iz"))
907f939b 2313 (patches
fc1adab1 2314 (search-patches "glib-networking-ssl-cert-file.patch"))))
f2ca414a
SB
2315 (build-system gnu-build-system)
2316 (arguments
2317 `(#:configure-flags
907f939b 2318 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")
f2ca414a
SB
2319 #:phases
2320 (modify-phases %standard-phases
3a4de6b2 2321 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
2322 ;; Install GIO modules into $out/lib/gio/modules.
2323 (lambda _
2324 (substitute* "configure"
2325 (("GIO_MODULE_DIR=.*")
2326 (string-append "GIO_MODULE_DIR=" %output
907f939b
SB
2327 "/lib/gio/modules\n")))))
2328 (add-before 'check 'use-empty-ssl-cert-file
2329 (lambda _
2330 ;; The ca-certificates.crt is not available in the build
2331 ;; environment.
2332 (setenv "SSL_CERT_FILE" "/dev/null")
2333 #t)))))
f2ca414a
SB
2334 (native-inputs
2335 `(("pkg-config" ,pkg-config)
2336 ("intltool" ,intltool)))
2337 (inputs
2338 `(("glib" ,glib)
2339 ("gnutls" ,gnutls)
2340 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2341 ("p11-kit" ,p11-kit)))
f032d0be 2342 (home-page "https://www.gnome.org")
f2ca414a
SB
2343 (synopsis "Network-related GIO modules")
2344 (description
2345 "This package contains various network related extensions for the GIO
2346library.")
2347 (license license:lgpl2.0+)))
2348
ca649680 2349(define-public rest
4510b2da 2350 (package
ca649680 2351 (name "rest")
90000d4b 2352 (version "0.8.0")
4510b2da
SB
2353 (source (origin
2354 (method url-fetch)
2355 (uri (string-append "mirror://gnome/sources/rest/"
ca649680
SB
2356 (version-major+minor version) "/"
2357 name "-" version ".tar.xz"))
4510b2da
SB
2358 (sha256
2359 (base32
90000d4b 2360 "0iznvzhab1jq9z3nwy97dh2pid9azwkqm7kkxwx0f5ql1hh9pf77"))))
4510b2da
SB
2361 (build-system gnu-build-system)
2362 (arguments
2363 '(#:tests? #f ; tests require internet connection
2364 #:configure-flags
2365 '("--with-ca-certificates=/etc/ssl/certs/ca-certificates.crt")))
2366 (native-inputs
2367 `(("glib-mkenums" ,glib "bin")
2368 ("gobject-introspection" ,gobject-introspection)
2369 ("pkg-config" ,pkg-config)))
2370 (propagated-inputs
2371 ;; rest-0.7.pc refers to all these.
2372 `(("glib" ,glib)
2373 ("libsoup" ,libsoup)
2374 ("libxml2" ,libxml2)))
2375 (home-page "http://www.gtk.org/")
2376 (synopsis "RESTful web api query library")
2377 (description
2378 "This library was designed to make it easier to access web services that
2379claim to be \"RESTful\". It includes convenience wrappers for libsoup and
2380libxml to ease remote use of the RESTful API.")
2381 (license license:lgpl2.1+)))
2382
6e1bb642
SB
2383(define-public libsoup
2384 (package
2385 (name "libsoup")
ffaf5cbd 2386 (version "2.58.1")
6e1bb642
SB
2387 (source (origin
2388 (method url-fetch)
2389 (uri (string-append "mirror://gnome/sources/libsoup/"
2390 (version-major+minor version) "/"
2391 name "-" version ".tar.xz"))
2392 (sha256
2393 (base32
ffaf5cbd 2394 "1fggmshk2mfsyfvml6paki65xj9rv1s5p7ds41xmnx6yazsnkik2"))))
6e1bb642
SB
2395 (build-system gnu-build-system)
2396 (outputs '("out" "doc"))
2397 (arguments
b19d6805 2398 `(#:configure-flags
6e1bb642
SB
2399 (list (string-append "--with-html-dir="
2400 (assoc-ref %outputs "doc")
ffaf5cbd
MB
2401 "/share/gtk-doc/html")
2402 (string-append "--with-apache-module-dir="
2403 (assoc-ref %build-inputs "httpd")
2404 "/modules"))
6e1bb642
SB
2405 #:phases
2406 (modify-phases %standard-phases
3a4de6b2 2407 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
2408 ;; This test fails due to missing /etc/nsswitch.conf
2409 ;; in the build environment.
2410 (lambda _
2411 (substitute* "tests/socket-test.c"
2412 ((".*/sockets/unconnected.*") ""))
2413 #t))
907f939b 2414 (add-before 'check 'pre-check
6e1bb642 2415 (lambda _
907f939b
SB
2416 ;; The 'check-local' target runs 'env LANG=C sort -u',
2417 ;; unset 'LC_ALL' to make 'LANG' working.
6e1bb642 2418 (unsetenv "LC_ALL")
907f939b
SB
2419 ;; The ca-certificates.crt is not available in the build
2420 ;; environment.
2421 (setenv "SSL_CERT_FILE" "/dev/null")
ffaf5cbd
MB
2422 ;; HTTPD in Guix uses mod_event and does not build prefork.
2423 (substitute* "tests/httpd.conf"
2424 (("^LoadModule mpm_prefork_module.*$") "\n"))
fd730590
SB
2425 #t))
2426 (replace 'install
2427 (lambda _
2428 (zero?
2429 (system* "make"
2430 ;; Install vala bindings into $out.
2431 (string-append "vapidir=" %output
2432 "/share/vala/vapi")
2433 "install")))))))
6e1bb642
SB
2434 (native-inputs
2435 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2436 ("gobject-introspection" ,gobject-introspection)
2437 ("intltool" ,intltool)
2438 ("pkg-config" ,pkg-config)
2439 ("python" ,python-wrapper)
fd730590 2440 ("vala" ,vala)
6e1bb642
SB
2441 ;; These are needed for the tests.
2442 ;; FIXME: Add PHP once available.
2443 ("curl" ,curl)
2444 ("httpd" ,httpd)))
2445 (propagated-inputs
2446 ;; libsoup-2.4.pc refers to all these.
2447 `(("glib" ,glib)
2448 ("libxml2" ,libxml2)))
2449 (inputs
2450 `(("glib-networking" ,glib-networking)
2451 ("sqlite" ,sqlite)))
2452 (home-page "https://live.gnome.org/LibSoup/")
2453 (synopsis "GLib-based HTTP Library")
2454 (description
2455 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
2456and the GLib main loop, to integrate well with GNOME applications.")
2457 (license license:lgpl2.0+)))
2458
bba229a3
SB
2459(define-public libsecret
2460 (package
2461 (name "libsecret")
6983ba56 2462 (version "0.18.5")
bba229a3
SB
2463 (source (origin
2464 (method url-fetch)
2465 (uri (string-append
896dcbc7
EF
2466 "mirror://gnome/sources/libsecret/"
2467 (version-major+minor version) "/"
bba229a3
SB
2468 name "-" version ".tar.xz"))
2469 (sha256
2470 (base32
6983ba56 2471 "1cychxc3ff8fp857iikw0n2s13s2mhw2dn1mr632f7w3sn6vvrww"))))
bba229a3
SB
2472 (build-system gnu-build-system)
2473 (outputs '("out" "doc"))
2474 (arguments
2475 `(#:tests? #f ; FIXME: Testing hangs.
bba229a3
SB
2476 #:configure-flags
2477 (list (string-append "--with-html-dir="
2478 (assoc-ref %outputs "doc")
2479 "/share/gtk-doc/html"))))
2480 (native-inputs
2481 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
2482 ("gobject-introspection" ,gobject-introspection)
2483 ("intltool" ,intltool)
2484 ("pkg-config" ,pkg-config)
2485 ("vala" ,vala)
2486 ("xsltproc" ,libxslt)))
2487 ;; These are needed for the tests.
2488 ;; FIXME: Add gjs once available.
2489 ;("dbus" ,dbus)
2490 ;("python2" ,python-2)
2491 ;("python2-dbus" ,python2-dbus)
2492 ;("python2-pygobject" ,python2-pygobject)
2493 ;("python2-pygobject-2" ,python2-pygobject-2)))
2494 (propagated-inputs
2495 `(("glib" ,glib))) ; required by libsecret-1.pc
2496 (inputs
2497 `(("docbook-xsl" ,docbook-xsl)
2498 ("libgcrypt" ,libgcrypt)
2499 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
2500 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
2501 (synopsis "GObject bindings for \"Secret Service\" API")
2502 (description
2503 "Libsecret is a GObject based library for storing and retrieving passwords
2504and other secrets. It communicates with the \"Secret Service\" using DBus.")
2505 (license license:lgpl2.1+)))
2506
b6821ee0 2507(define-public five-or-more
2508 (package
2509 (name "five-or-more")
2510 (version "3.22.2")
2511 (source
2512 (origin
2513 (method url-fetch)
2514 (uri (string-append "mirror://gnome/sources/" name "/"
2515 (version-major+minor version) "/"
2516 name "-" version ".tar.xz"))
2517 (sha256
2518 (base32
2519 "1b26afyjr26wqy5j008gzsi3hpblbmabh0192lx6414lml1qxkxs"))))
2520 (build-system glib-or-gtk-build-system)
2521 (native-inputs
2522 `(("pkg-config" ,pkg-config)
2523 ("desktop-file-utils" ,desktop-file-utils)
2524 ("intltool" ,intltool)
2525 ("itstool" ,itstool)
2526 ("xmllint" ,libxml2)))
2527 (inputs
2528 `(("gtk+" ,gtk+)
2529 ("librsvg" ,librsvg)))
2530 (home-page "https://wiki.gnome.org/Apps/Five%20or%20more")
2531 (synopsis "Logic puzzle game")
2532 (description "Five or More is a game where you try to align
2533 five or more objects of the same color and shape causing them to disappear.
2534 On every turn more objects will appear, until the board is full.
2535 Try to last as long as possible.")
2536 (license license:gpl2+)))
2537
a31a6d22
SB
2538(define-public gnome-mines
2539 (package
2540 (name "gnome-mines")
ac89f213 2541 (version "3.24.0")
a31a6d22
SB
2542 (source
2543 (origin
2544 (method url-fetch)
2545 (uri (string-append "mirror://gnome/sources/" name "/"
2546 (version-major+minor version) "/"
2547 name "-" version ".tar.xz"))
2548 (sha256
2549 (base32
ac89f213 2550 "1xh2as2xmh7gx45gpnl0fh9xjpvyyn3m84qgv41kyp2s4clsyqz6"))))
a31a6d22
SB
2551 (build-system glib-or-gtk-build-system)
2552 (arguments
2553 '(#:phases
2554 (modify-phases %standard-phases
f8503e2b 2555 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
2556 (lambda _
2557 (substitute* "configure"
6983ba56 2558 (("/bin/true") (which "true"))))))))
a31a6d22
SB
2559 (native-inputs
2560 `(("pkg-config" ,pkg-config)
2561 ("desktop-file-utils" ,desktop-file-utils)
2562 ("intltool" ,intltool)
bcb354ad
SB
2563 ("itstool" ,itstool)
2564 ("xmllint" ,libxml2)))
a31a6d22
SB
2565 (inputs
2566 `(("gtk+" ,gtk+)
73992962 2567 ("libgnome-games-support" ,libgnome-games-support)
a31a6d22
SB
2568 ("librsvg" ,librsvg)))
2569 (home-page "https://wiki.gnome.org/Apps/Mines")
2570 (synopsis "Minesweeper game")
2571 (description
2572 "Mines (previously gnomine) is a puzzle game where you locate mines
2573floating in an ocean using only your brain and a little bit of luck.")
2574 (license license:gpl2+)))
88f70665 2575
dfc407f3
KY
2576(define-public gnome-sudoku
2577 (package
2578 (name "gnome-sudoku")
34a8af2d 2579 (version "3.24.0")
dfc407f3
KY
2580 (source
2581 (origin
2582 (method url-fetch)
2583 (uri (string-append "mirror://gnome/sources/" name "/"
2584 (version-major+minor version) "/"
2585 name "-" version ".tar.xz"))
2586 (sha256
2587 (base32
34a8af2d 2588 "1mw5ykk7wr0r9770jj5270f07rjws0pmpjs0b1fywj4li13r98h4"))))
dfc407f3
KY
2589 (build-system glib-or-gtk-build-system)
2590 (native-inputs
2591 `(("pkg-config" ,pkg-config)
2592 ("desktop-file-utils" ,desktop-file-utils)
2593 ("intltool" ,intltool)
2594 ("itstool" ,itstool)
2595 ("xmllint" ,libxml2)))
2596 (inputs
2597 `(("gtk+" ,gtk+)
2598 ("json-glib" ,json-glib)
2599 ("libgee" ,libgee)
2600 ("librsvg" ,librsvg)
2601 ("qqwing" ,qqwing)))
2602 (home-page "https://wiki.gnome.org/Apps/Sudoku")
2603 (synopsis "Japanese logic game")
2604 (description
2605 "Sudoku is a Japanese logic game that exploded in popularity in 2005.
2606GNOME Sudoku is meant to have an interface as simple and unobstrusive as
2607possible while still providing features that make playing difficult Sudoku
2608more fun.")
2609 (license license:gpl2+)))
2610
88f70665
AW
2611(define-public gnome-terminal
2612 (package
2613 (name "gnome-terminal")
e20d997f 2614 (version "3.24.2")
88f70665
AW
2615 (source
2616 (origin
2617 (method url-fetch)
2618 (uri (string-append "mirror://gnome/sources/" name "/"
2619 (version-major+minor version) "/"
2620 name "-" version ".tar.xz"))
2621 (sha256
2622 (base32
e20d997f 2623 "03zcvxlzg7n4pz65vrg5xj3qpkqr4bz162mgmaz4bjh71b1xl7i8"))))
88f70665
AW
2624 (build-system glib-or-gtk-build-system)
2625 (arguments
2626 '(#:configure-flags
2627 (list "--disable-migration" "--disable-search-provider"
2628 "--without-nautilus-extension")
2629 #:phases
2630 (modify-phases %standard-phases
3a4de6b2 2631 (add-before 'configure 'patch-/bin/true
88f70665
AW
2632 (lambda _
2633 (substitute* "configure"
2634 (("/bin/true") (which "true"))))))))
2635 (native-inputs
2636 `(("pkg-config" ,pkg-config)
2637 ("desktop-file-utils" ,desktop-file-utils)
2638 ("intltool" ,intltool)
bcb354ad
SB
2639 ("itstool" ,itstool)
2640 ("xmllint" ,libxml2)))
68702167
MW
2641 (propagated-inputs
2642 `(("dconf" ,dconf)))
88f70665
AW
2643 (inputs
2644 `(("gtk+" ,gtk+)
2645 ("vte" ,vte)
2646 ("gnutls" ,gnutls)
88f70665
AW
2647 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2648 ("util-linux" ,util-linux)
2649 ("vala" ,vala)))
2650 (home-page "https://wiki.gnome.org/Apps/Terminal")
2651 (synopsis "Terminal emulator")
2652 (description
2653 "GNOME Terminal is a terminal emulator application for accessing a
2654UNIX shell environment which can be used to run programs available on
2655your system.
2656
2657It supports several profiles, multiple tabs and implements several
2658keyboard shortcuts.")
2659 (license license:gpl3+)))
75016d07
AW
2660
2661(define-public colord
2662 (package
2663 (name "colord")
2664 (version "1.1.8")
2665 (source
2666 (origin
2667 (method url-fetch)
5cc3096c 2668 (uri (string-append "https://www.freedesktop.org/software/colord/releases/"
75016d07
AW
2669 name "-" version ".tar.xz"))
2670 (sha256
2671 (base32
2672 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
2673 (build-system glib-or-gtk-build-system)
2674 (arguments
2675 '(;; The tests want to run valgrind. Punt for now.
2676 #:tests? #f
2677 #:configure-flags (list "--localstatedir=/var"
2678 ;; GUSB not packaged yet.
2679 "--disable-gusb"
2680 ;; No dep on systemd.
2681 "--disable-systemd-login"
2682 ;; Wants to install to global completion dir;
2683 ;; punt.
2684 "--disable-bash-completion"
2685 ;; colord-gtk not packaged yet.
2686 "--disable-session-example"
2687 "--with-daemon-user=colord"
2688 "--enable-sane"
2689 (string-append "--with-udevrulesdir="
2690 (assoc-ref %outputs "out")
2691 "/lib/udev/rules.d"))
2692 #:phases
2693 (modify-phases %standard-phases
3a4de6b2 2694 (add-before 'configure 'patch-/bin/true
75016d07
AW
2695 (lambda _
2696 (substitute* "configure"
2697 (("/bin/true") (which "true")))
2698 (substitute* "src/Makefile.in"
2699 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
b19d6805 2700 "if test -w $(DESTDIR)$(localstatedir);")))))))
75016d07
AW
2701 (native-inputs
2702 `(("pkg-config" ,pkg-config)
2703 ("gobject-introspection" ,gobject-introspection)
2704 ("libtool" ,libtool)
2705 ("intltool" ,intltool)))
65cb2d61
SB
2706 (propagated-inputs
2707 ;; colord.pc refers to all these.
2708 `(("glib" ,glib)
2709 ("udev" ,eudev)
2710 ("lcms" ,lcms)))
75016d07 2711 (inputs
65cb2d61 2712 `(("dbus-glib" ,dbus-glib)
80c7dd1a 2713 ("libgudev" ,libgudev)
75016d07 2714 ("libusb" ,libusb)
75016d07
AW
2715 ("sqlite" ,sqlite)
2716 ("polkit" ,polkit)
4c928743 2717 ("sane-backends" ,sane-backends)))
75016d07
AW
2718 (home-page "http://www.freedesktop.org/software/colord/")
2719 (synopsis "Color management service")
2720 (description "Colord is a system service that makes it easy to manage,
2721install and generate color profiles to accurately color manage input and
2722output devices.")
2723 (license license:gpl2+)))
7b2abd00
AW
2724
2725(define-public geoclue
2726 (package
2727 (name "geoclue")
ccfac09c 2728 (version "2.4.6")
7b2abd00
AW
2729 (source
2730 (origin
2731 (method url-fetch)
5cc3096c 2732 (uri (string-append "https://www.freedesktop.org/software/" name
7b2abd00
AW
2733 "/releases/" (version-major+minor version) "/"
2734 name "-" version ".tar.xz"))
2735 (sha256
2736 (base32
ccfac09c 2737 "1dnknrwln159dj7pdprnfa4zjprgslabxngmn11jyjwvbi2zfzf5"))
fc1adab1 2738 (patches (search-patches "geoclue-config.patch"))))
7b2abd00
AW
2739 (build-system glib-or-gtk-build-system)
2740 (arguments
2741 '(;; The tests want to run the system bus.
2742 #:tests? #f
2743 #:configure-flags (list ;; Disable bits requiring ModemManager.
2744 "--disable-3g-source"
2745 "--disable-cdma-source"
2746 "--disable-modem-gps-source"
2747 "--with-dbus-service-user=geoclue")
2748 #:phases
2749 (modify-phases %standard-phases
3a4de6b2 2750 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
2751 (lambda _
2752 (substitute* "configure"
2753 (("/bin/true") (which "true"))))))))
2754 (native-inputs
2755 `(("pkg-config" ,pkg-config)
758798a9 2756 ("gobject-introspection" ,gobject-introspection)
7b2abd00
AW
2757 ("intltool" ,intltool)))
2758 (inputs
54e911bc
SB
2759 `(("avahi" ,avahi)
2760 ("glib" ,glib)
7b2abd00
AW
2761 ("json-glib" ,json-glib)
2762 ("libsoup" ,libsoup)))
2763 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
2764 (synopsis "Geolocation service")
2765 (description "Geoclue is a D-Bus service that provides location
2766information. The primary goal of the Geoclue project is to make creating
2767location-aware applications as simple as possible, while the secondary goal is
2768to ensure that no application can access location information without explicit
e881752c 2769permission from user.")
7b2abd00 2770 (license license:gpl2+)))
2bfe7437
AW
2771
2772(define-public geocode-glib
2773 (package
2774 (name "geocode-glib")
3ffd46bd 2775 (version "3.20.1")
2bfe7437
AW
2776 (source (origin
2777 (method url-fetch)
2778 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2779 (version-major+minor version) "/"
2780 name "-" version ".tar.xz"))
2781 (sha256
2782 (base32
3ffd46bd 2783 "18iphsx3bybw7lssbb7rxc1rrnsc8vxai521zkqc535zr8rci7v6"))))
2bfe7437
AW
2784 (build-system gnu-build-system)
2785 (arguments
2786 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2787 ;; work for the builder. Punt.
a124bbd2 2788 #:tests? #f))
2bfe7437
AW
2789 (native-inputs
2790 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2791 ("gobject-introspection" ,gobject-introspection)
2792 ("pkg-config" ,pkg-config)
2793 ("json-glib" ,json-glib)))
2794 (propagated-inputs
2795 ;; geocode-glib-1.0.pc refers to GIO.
2796 `(("glib" ,glib)))
2797 (inputs
2798 `(("libsoup" ,libsoup)))
2799 (home-page "https://github.com/GNOME/geocode-glib/")
2800 (synopsis "Geocoding and reverse-geocoding library")
2801 (description
2802 "geocode-glib is a convenience library for geocoding (finding longitude,
2803and latitude from an address) and reverse geocoding (finding an address from
2804coordinates) using the Nominatim service. geocode-glib caches requests for
2805faster results and to avoid unnecessary server load.")
2806 (license license:lgpl2.0+)))
a1d5bb0e
AW
2807
2808(define-public upower
2809 (package
2810 (name "upower")
5e503e73 2811 (version "0.99.4")
a1d5bb0e
AW
2812 (source (origin
2813 (method url-fetch)
5cc3096c 2814 (uri (string-append "https://upower.freedesktop.org/releases/"
a1d5bb0e
AW
2815 name "-" version ".tar.xz"))
2816 (sha256
2817 (base32
5e503e73 2818 "1c1ph1j1fnrf3vipxb7ncmdfc36dpvcvpsv8n8lmal7grjk2b8ww"))
fc1adab1 2819 (patches (search-patches "upower-builddir.patch"))))
a1d5bb0e
AW
2820 (build-system glib-or-gtk-build-system)
2821 (arguments
2822 '( ;; The tests want to contact the system bus, which can't be done in the
2823 ;; build environment. The integration test can run, but the last of
2824 ;; the up-self-tests doesn't. Disable tests for now.
2825 #:tests? #f
2826 #:configure-flags (list "--localstatedir=/var"
2827 (string-append "--with-udevrulesdir="
2828 (assoc-ref %outputs "out")
2829 "/lib/udev/rules.d"))
2830 #:phases
2831 (modify-phases %standard-phases
2832 (add-before 'configure 'patch-/bin/true
2833 (lambda _
2834 (substitute* "configure"
2835 (("/bin/true") (which "true")))))
2836 (add-before 'configure 'patch-integration-test
2837 (lambda _
2838 (substitute* "src/linux/integration-test"
2839 (("/usr/bin/python3") (which "python3"))))))))
2840 (native-inputs
ebeabe2d
SB
2841 `(("gobject-introspection" ,gobject-introspection)
2842 ("pkg-config" ,pkg-config)
a1d5bb0e 2843 ("intltool" ,intltool)
55409295
LC
2844 ("python" ,python)
2845
2846 ;; For man pages.
2847 ("libxslt" ,libxslt) ;for 'xsltproc'
2848 ("libxml2" ,libxml2) ;for 'XML_CATALOG_FILES'
2849 ("docbook-xsl" ,docbook-xsl)))
a1d5bb0e 2850 (inputs
ea226291
SB
2851 `(("dbus-glib" ,dbus-glib)
2852 ("libgudev" ,libgudev)
a1d5bb0e
AW
2853 ("libusb" ,libusb)))
2854 (home-page "http://upower.freedesktop.org/")
2855 (synopsis "System daemon for managing power devices")
2856 (description
2857 "UPower is an abstraction for enumerating power devices,
2858listening to device events and querying history and statistics. Any
2859application or service on the system can access the org.freedesktop.UPower
2860service via the system message bus.")
2861 (license license:gpl2+)))
6a180f6f
AW
2862
2863(define-public libgweather
2864 (package
2865 (name "libgweather")
9cf8d93a 2866 (version "3.24.1")
6a180f6f
AW
2867 (source (origin
2868 (method url-fetch)
2869 (uri (string-append "mirror://gnome/sources/" name "/"
2870 (version-major+minor version) "/"
2871 name "-" version ".tar.xz"))
2872 (sha256
2873 (base32
9cf8d93a 2874 "0g35xfcw9vh3sfff42blk9ksrlmkrjmj46h3ad0sqgdn6xh329qj"))))
6a180f6f
AW
2875 (build-system gnu-build-system)
2876 (arguments
b6072e6b
SB
2877 `(#:configure-flags
2878 `(,(string-append "--with-zoneinfo-dir="
2879 (assoc-ref %build-inputs "tzdata")
2880 "/share/zoneinfo"))
2881 #:phases
2882 (modify-phases %standard-phases
8b8dfa7f
LC
2883 (add-before 'check 'pre-check
2884 (lambda* (#:key inputs #:allow-other-keys)
2885 (substitute* "data/check-timezones.sh"
2886 (("/usr/share/zoneinfo/zone.tab")
2887 (string-append (assoc-ref inputs "tzdata")
2888 "/share/zoneinfo/zone.tab")))
2889
2890 ;; 'Asia/Rangoon' was renamed in tzdata-2016:
2891 ;; <https://github.com/eggert/tz/commit/4368251ebf11310a4aadccd1910daeac9080c501>.
2892 (substitute* "data/Locations.xml"
2893 (("Asia/Rangoon")
2894 "Asia/Yangon"))
b6072e6b 2895 #t)))))
6a180f6f
AW
2896 (native-inputs
2897 `(("glib:bin" ,glib "bin") ; for glib-mkenums
b6072e6b 2898 ("gobject-introspection" ,gobject-introspection)
6a180f6f
AW
2899 ("pkg-config" ,pkg-config)
2900 ("intltool" ,intltool)))
2901 (propagated-inputs
2902 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2903 ;; libsoup.
2904 `(("gtk+" ,gtk+)
2905 ("gdk-pixbuf" ,gdk-pixbuf)
2906 ("libxml2" ,libxml2)
2907 ("libsoup" ,libsoup)))
2908 (inputs
2909 `(("tzdata" ,tzdata)
2910 ("geocode-glib" ,geocode-glib)))
2911 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2912 (synopsis "Location, time zone, and weather library for GNOME")
2913 (description
2914 "libgweather is a library to access weather information from online
2915services for numerous locations.")
2916 (license license:gpl2+)))
23a22af6
AW
2917
2918(define-public gnome-settings-daemon
2919 (package
2920 (name "gnome-settings-daemon")
6481cad7 2921 (version "3.24.2")
23a22af6
AW
2922 (source
2923 (origin
2924 (method url-fetch)
2925 (uri (string-append "mirror://gnome/sources/" name "/"
2926 (version-major+minor version) "/"
2927 name "-" version ".tar.xz"))
2928 (sha256
2929 (base32
6481cad7 2930 "1jnw920zn4cadhgmcv2q5ylzqhwm1rmrhf3a14q8mvp38hkdgaaa"))))
23a22af6
AW
2931 (build-system glib-or-gtk-build-system)
2932 (arguments
eee7878f 2933 `(;; Color management test can't reach the colord system service.
23a22af6
AW
2934 #:tests? #f))
2935 (native-inputs
2936 `(("pkg-config" ,pkg-config)
2937 ("intltool" ,intltool)
2938 ("xsltproc" ,libxslt)
2939 ("libxml2" ,libxml2) ;for XML_CATALOG_FILES
2940 ("docbook-xml" ,docbook-xml-4.2)
2941 ("docbook-xsl" ,docbook-xsl)))
2942 (inputs
2943 `(("colord" ,colord)
ea226291 2944 ("libgudev" ,libgudev)
23a22af6
AW
2945 ("upower" ,upower)
2946 ("polkit" ,polkit)
2947 ("pulseaudio" ,pulseaudio)
2948 ("libcanberra" ,libcanberra)
2949 ("libx11" ,libx11)
2950 ("libxtst" ,libxtst)
2951 ("lcms" ,lcms)
2952 ("libnotify" ,libnotify)
2953 ("geoclue" ,geoclue)
2954 ("geocode-glib" ,geocode-glib)
2955 ("libgweather" ,libgweather)
2956 ("gnome-desktop" ,gnome-desktop)
2957 ("nss" ,nss)
2958 ("cups" ,cups)
ec2b1921
AW
2959 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
2960 ("libwacom" ,libwacom)
2961 ("librsvg" ,librsvg)
eee7878f
CM
2962 ("xf86-input-wacom" ,xf86-input-wacom)
2963 ("network-manager" ,network-manager)))
f032d0be 2964 (home-page "https://www.gnome.org")
23a22af6
AW
2965 (synopsis "GNOME settings daemon")
2966 (description
2967 "This package contains the daemon responsible for setting the various
2968parameters of a GNOME session and the applications that run under it. It
2969handles settings such keyboard layout, shortcuts, and accessibility, clipboard
2970settings, themes, mouse settings, and startup of other daemons.")
2971 (license license:gpl2+)))
1e7464a9
DH
2972
2973(define-public totem-pl-parser
2974 (package
2975 (name "totem-pl-parser")
e980cbe9 2976 (version "3.10.7")
1e7464a9
DH
2977 (source (origin
2978 (method url-fetch)
e980cbe9
MW
2979 (uri (string-append "mirror://gnome/sources/totem-pl-parser/"
2980 (version-major+minor version) "/"
1e7464a9
DH
2981 "totem-pl-parser-" version ".tar.xz"))
2982 (sha256
2983 (base32
e980cbe9 2984 "17089sqyh6w6zr8ci865ihmvqshnslcsk9fbsl4s7yii66y8b0lw"))))
1e7464a9
DH
2985 (build-system gnu-build-system)
2986 (arguments
2987 ;; FIXME: Tests require gvfs.
2988 `(#:tests? #f))
2989 (native-inputs
2990 `(("intltool" ,intltool)
2991 ("glib" ,glib "bin")
4d6d8281 2992 ("gobject-introspection" ,gobject-introspection)
1e7464a9 2993 ("pkg-config" ,pkg-config)))
22a6ad6a 2994 (propagated-inputs
1e7464a9
DH
2995 `(("glib" ,glib)
2996 ("gmime" ,gmime)
22a6ad6a
MW
2997 ("libxml2" ,libxml2)))
2998 (inputs
2999 `(("libarchive" ,libarchive)
1e7464a9
DH
3000 ("libgcrypt" ,libgcrypt)
3001 ("nettle" ,nettle)
22a6ad6a 3002 ("libsoup" ,libsoup)))
1e7464a9
DH
3003 (home-page "https://projects.gnome.org/totem")
3004 (synopsis "Library to parse and save media playlists for GNOME")
3005 (description "Totem-pl-parser is a GObjects-based library to parse and save
3006playlists in a variety of formats.")
3007 (license license:lgpl2.0+)))
3008
6b888eff
SB
3009(define-public aisleriot
3010 (package
3011 (name "aisleriot")
e6a36cf2 3012 (version "3.22.2")
6b888eff
SB
3013 (source (origin
3014 (method url-fetch)
3015 (uri (string-append "mirror://gnome/sources/" name "/"
3016 (version-major+minor version) "/"
3017 name "-" version ".tar.xz"))
3018 (sha256
3019 (base32
e6a36cf2 3020 "0a8cir7vgi67sncl0m7cypq11amardm7r68gr3q52a11l8ajycdx"))))
6b888eff
SB
3021 (build-system glib-or-gtk-build-system)
3022 (arguments
3023 '(#:configure-flags
3024 '("--with-platform=gtk-only"
3025 "--with-card-theme-formats=svg")))
3026 (native-inputs
3027 `(("desktop-file-utils" ,desktop-file-utils)
3028 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
3029 ("intltool" ,intltool)
3030 ("itstool" ,itstool)
3031 ("pkg-config" ,pkg-config)
3032 ("xmllint" ,libxml2)))
3033 (inputs
3034 `(("gtk+" ,gtk+)
3035 ("guile" ,guile-2.0)
3036 ("libcanberra" ,libcanberra)
3037 ("librsvg" ,librsvg)))
3038 (home-page "https://wiki.gnome.org/Apps/Aisleriot")
3039 (synopsis "Solitaire card games")
3040 (description
3041 "Aisleriot (also known as Solitaire or sol) is a collection of card games
3042which are easy to play with the aid of a mouse.")
3043 (license license:gpl3+)))
4a79e256
SB
3044
3045(define-public devhelp
3046 (package
3047 (name "devhelp")
9bf10a74 3048 (version "3.24.0")
4a79e256
SB
3049 (source (origin
3050 (method url-fetch)
3051 (uri (string-append "mirror://gnome/sources/" name "/"
3052 (version-major+minor version) "/"
3053 name "-" version ".tar.xz"))
3054 (sha256
3055 (base32
9bf10a74 3056 "0c74rk46dy3kvy78m42jl3ip56c5536zmy8v1lbascjmh4fdwn28"))))
4a79e256
SB
3057 (build-system glib-or-gtk-build-system)
3058 (native-inputs
3059 `(("intltool" ,intltool)
3060 ("pkg-config" ,pkg-config)))
3061 (inputs
3062 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3063 ("webkitgtk" ,webkitgtk)))
3064 (home-page "https://wiki.gnome.org/Apps/Devhelp")
3065 (synopsis "API documentation browser for GNOME")
3066 (description
3067 "Devhelp is an API documentation browser for GTK+ and GNOME. It works
3068natively with GTK-Doc (the API reference system developed for GTK+ and used
3069throughout GNOME for API documentation).")
3070 (license license:gpl2+)))
ba421ab7
MW
3071
3072(define-public cogl
3073 (package
3074 (name "cogl")
6a55accc 3075 (version "1.22.2")
ba421ab7
MW
3076 (source
3077 (origin
3078 (method url-fetch)
3079 (uri (string-append "mirror://gnome/sources/" name "/"
3080 (version-major+minor version) "/"
3081 name "-" version ".tar.xz"))
3082 (sha256
3083 (base32
6a55accc 3084 "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr"))))
a88d5a0c
MW
3085 ;; NOTE: mutter exports a bundled fork of cogl, so when making changes to
3086 ;; cogl, corresponding changes may be appropriate in mutter as well.
ba421ab7
MW
3087 (build-system gnu-build-system)
3088 (native-inputs
3089 `(("glib:bin" ,glib "bin") ; for glib-mkenums
3090 ("gobject-introspection" ,gobject-introspection)
3091 ;;("xorg-server" ,xorg-server) ; for the test suite
3092 ("pkg-config" ,pkg-config)))
3093 (propagated-inputs
3094 `(("glib" ,glib)
3095 ("gdk-pixbuf" ,gdk-pixbuf)
3096 ("libx11" ,libx11)
3097 ("libxext" ,libxext)
3098 ("libxfixes" ,libxfixes)
3099 ("libxdamage" ,libxdamage)
3100 ("libxcomposite" ,libxcomposite)
3101 ("libxrandr" ,libxrandr)))
3102 (inputs
3103 `(("mesa" ,mesa)
3104 ("cairo" ,cairo)
3105 ("pango" ,pango)
3106 ("gstreamer" ,gstreamer)
31860852
KK
3107 ("gst-plugins-base" ,gst-plugins-base)
3108 ("wayland" ,wayland)))
ba421ab7
MW
3109 (arguments
3110 `(#:configure-flags (list "--enable-cogl-gst"
31860852
KK
3111 "--enable-wayland-egl-platform"
3112 "--enable-wayland-egl-server"
3113
ba421ab7
MW
3114 ;; Arrange to pass an absolute file name to
3115 ;; dlopen for libGL.so.
3116 (string-append "--with-gl-libname="
3117 (assoc-ref %build-inputs "mesa")
3118 "/lib/libGL.so"))
3119 ;; XXX FIXME: All tests fail, with many warnings printed like this:
3120 ;; _FontTransOpen: Unable to Parse address
3121 ;; ${prefix}/share/fonts/X11/misc/
3122 #:tests? #f
3123 #; #:phases
3124 #;
3125 (modify-phases %standard-phases
3126 (add-before 'check 'start-xorg-server
3127 (lambda* (#:key inputs #:allow-other-keys)
3128 ;; The test suite requires a running X server.
3129 (system (format #f "~a/bin/Xvfb :1 &"
3130 (assoc-ref inputs "xorg-server")))
3131 (setenv "DISPLAY" ":1")
3132 #t)))))
3133 (home-page "http://www.cogl3d.org")
3134 (synopsis "Object oriented GL/GLES Abstraction/Utility Layer")
3135 (description
3136 "Cogl is a small library for using 3D graphics hardware to draw pretty
3137pictures. The API departs from the flat state machine style of OpenGL and is
3138designed to make it easy to write orthogonal components that can render
3139without stepping on each others toes.")
3140 (license (list license:expat ; most of the code
3141 license:bsd-3 ; cogl/cogl-point-in-poly.c
3142 license:sgifreeb2.0 ; cogl-path/tesselator/
3143 license:asl2.0)))) ; examples/android/
fb182b8a
MW
3144
3145(define-public clutter
3146 (package
3147 (name "clutter")
6a88e4ee 3148 (version "1.26.2")
fb182b8a
MW
3149 (source
3150 (origin
3151 (method url-fetch)
3152 (uri (string-append "mirror://gnome/sources/" name "/"
3153 (version-major+minor version) "/"
3154 name "-" version ".tar.xz"))
3155 (sha256
3156 (base32
6a88e4ee 3157 "0mif1qnrpkgxi43h7pimim6w6zwywa16ixcliw0yjm9hk0a368z7"))))
a88d5a0c
MW
3158 ;; NOTE: mutter exports a bundled fork of clutter, so when making changes
3159 ;; to clutter, corresponding changes may be appropriate in mutter as well.
fb182b8a 3160 (build-system gnu-build-system)
600233bd
LC
3161 (outputs '("out"
3162 "doc")) ;9 MiB of gtk-doc HTML pages
fb182b8a
MW
3163 (native-inputs
3164 `(("glib:bin" ,glib "bin") ; for glib-genmarshal
3165 ("gobject-introspection" ,gobject-introspection)
3166 ("pkg-config" ,pkg-config)
3167 ("xsltproc" ,libxslt)))
3168 (propagated-inputs
3169 `(("cogl" ,cogl)
3170 ("cairo" ,cairo)
3171 ("atk" ,atk)
3172 ("gtk+" ,gtk+)
3173 ("json-glib" ,json-glib)
3174 ("glib" ,glib)
3175 ("libxcomposite" ,libxcomposite)
3176 ("libxdamage" ,libxdamage)
3177 ("libxext" ,libxext)
3178 ("xinput" ,xinput)))
3179 (inputs
3180 `(("libxkbcommon" ,libxkbcommon)
3181 ("udev" ,eudev)))
3182 (arguments
600233bd
LC
3183 `(#:configure-flags (list "--enable-x11-backend=yes"
3184
3185 ;; This produces share/doc/{clutter,cally}.
3186 (string-append "--with-html-dir="
3187 (assoc-ref %outputs "doc")
3188 "/share/doc"))
fb182b8a
MW
3189 ;; XXX FIXME: Get test suite working. It would probably fail in the
3190 ;; same way the cogl tests fail, since clutter is based on cogl.
3191 #:tests? #f))
3192 (home-page "http://www.clutter-project.org")
3193 (synopsis "Open GL based interactive canvas library")
3194 (description
3195 "Clutter is an Open GL based interactive canvas library, designed for
3196creating fast, mainly 2D single window applications such as media box UIs,
3197presentations, kiosk style applications and so on.")
3198 (license license:lgpl2.0+)))
bf7f17ba
MW
3199
3200(define-public clutter-gtk
3201 (package
3202 (name "clutter-gtk")
a6e44835 3203 (version "1.8.2")
bf7f17ba
MW
3204 (source
3205 (origin
3206 (method url-fetch)
3207 (uri (string-append "mirror://gnome/sources/" name "/"
3208 (version-major+minor version) "/"
3209 name "-" version ".tar.xz"))
3210 (sha256
3211 (base32
a6e44835 3212 "153bl9256yjnfcplp7jmgf7lm2zb790zkayjclzsv42l6a3d89ys"))))
bf7f17ba
MW
3213 (build-system gnu-build-system)
3214 (native-inputs
3215 `(("pkg-config" ,pkg-config)
3216 ("gobject-introspection" ,gobject-introspection)))
9a3a8b8e
SB
3217 (propagated-inputs
3218 ;; clutter-gtk.pc refers to all these.
bf7f17ba
MW
3219 `(("clutter" ,clutter)
3220 ("gtk+" ,gtk+)))
3221 (home-page "http://www.clutter-project.org")
3222 (synopsis "Open GL based interactive canvas library GTK+ widget")
3223 (description
3224 "Clutter is an Open GL based interactive canvas library, designed for
3225creating fast, mainly 2D single window applications such as media box UIs,
3226presentations, kiosk style applications and so on.")
3227 (license license:lgpl2.0+)))
86d6a893
MW
3228
3229(define-public clutter-gst
3230 (package
3231 (name "clutter-gst")
87736005 3232 (version "3.0.24")
86d6a893
MW
3233 (source
3234 (origin
3235 (method url-fetch)
3236 (uri (string-append "mirror://gnome/sources/" name "/"
3237 (version-major+minor version) "/"
3238 name "-" version ".tar.xz"))
3239 (sha256
3240 (base32
87736005 3241 "0v6cg0syh4vx7y7ni47jsvr2r57q0j3h1f1gjlp0ciscixywiwg9"))))
86d6a893
MW
3242 (build-system gnu-build-system)
3243 (native-inputs
3244 `(("glib:bin" ,glib "bin") ; for glib-mkenums
3245 ("pkg-config" ,pkg-config)
3246 ("gobject-introspection" ,gobject-introspection)))
3247 (inputs
3248 `(("clutter" ,clutter)
3249 ("gstreamer" ,gstreamer)
3250 ("gst-plugins-base" ,gst-plugins-base)))
3251 (home-page "http://www.clutter-project.org")
3252 (synopsis "Integration library for using GStreamer with Clutter")
3253 (description
3254 "Clutter-Gst is an integration library for using GStreamer with Clutter.
3255It provides a GStreamer sink to upload frames to GL and an actor that
3256implements the ClutterGstPlayer interface using playbin. Clutter is an Open
3257GL based interactive canvas library.")
3258 (license license:lgpl2.0+)))
607a04ae 3259
30dc88d9
LC
3260(define-public libchamplain
3261 (package
3262 (name "libchamplain")
356f0cef 3263 (version "0.12.15")
30dc88d9
LC
3264 (source (origin
3265 (method url-fetch)
3266 (uri (string-append
3267 "mirror://gnome/sources/libchamplain/0.12/libchamplain-"
3268 version ".tar.xz"))
3269 (sha256
3270 (base32
356f0cef 3271 "0x5qa1aw1y59lzkmf4j4szspn49341a87vcja4ydgxny1chilwjl"))))
30dc88d9 3272 (build-system gnu-build-system)
f7c6833f
LF
3273 (arguments '(#:configure-flags '("--enable-vala")))
3274 (native-inputs
3275 `(("gobject-introspection" ,gobject-introspection)
3276 ("pkg-config" ,pkg-config)
3277 ("vala" ,vala)))
30dc88d9
LC
3278 (propagated-inputs
3279 `(("libsoup" ,libsoup)
3280 ("sqlite" ,sqlite)
3281 ("clutter" ,clutter)
3282 ("clutter-gtk" ,clutter-gtk)
3283 ("glib:bin" ,glib "bin") ;glib-mkenums, etc.
3284 ("cairo" ,cairo)
3285 ("gtk+3" ,gtk+)
3286 ("glib" ,glib)))
f032d0be 3287 (home-page "https://projects.gnome.org/libchamplain/")
30dc88d9
LC
3288 (synopsis "C library providing a ClutterActor to display maps")
3289 (description
3290 "libchamplain is a C library providing a ClutterActor to display maps.
3291It also provides a Gtk+ widget to display maps in Gtk+ applications. Python
3292and Perl bindings are also available. It supports numerous free map sources
3293such as OpenStreetMap, OpenCycleMap, OpenAerialMap, and Maps for free.")
3294 (license license:lgpl2.1+)))
3295
607a04ae
MW
3296(define-public gom
3297 (package
3298 (name "gom")
0510440b 3299 (version "0.3.2")
607a04ae
MW
3300 (source
3301 (origin
3302 (method url-fetch)
3303 (uri (string-append "mirror://gnome/sources/" name "/"
3304 (version-major+minor version) "/"
3305 name "-" version ".tar.xz"))
3306 (sha256
3307 (base32
0510440b 3308 "1zaqqwwkyiswib3v1v8wafpbifpbpak0nn2kp13pizzn9bwz1s5w"))))
607a04ae
MW
3309 (build-system gnu-build-system)
3310 (native-inputs
3311 `(("intltool" ,intltool)
3312 ("pkg-config" ,pkg-config)
3313 ("gobject-introspection" ,gobject-introspection)))
3314 (inputs
3315 `(("glib" ,glib)
3316 ("gdk-pixbuf" ,gdk-pixbuf)
3317 ("sqlite" ,sqlite)))
3318 ;; XXX TODO: Figure out how to run the test suite.
3319 (arguments `(#:tests? #f))
3320 (home-page "https://wiki.gnome.org/Projects/Gom")
3321 (synopsis "Object mapper from GObjects to SQLite")
3322 (description
3323 "Gom provides an object mapper from GObjects to SQLite. It helps you
3324write applications that need to store structured data as well as make complex
3325queries upon that data.")
3326 (license license:lgpl2.1+)))
b7a3cf11 3327
f09520db
SB
3328(define-public libgames-support
3329 (package
3330 (name "libgames-support")
3331 (version "1.0.2")
3332 (source (origin
3333 (method url-fetch)
3334 (uri (string-append "mirror://gnome/sources/" name "/"
3335 (version-major+minor version) "/"
3336 name "-" version ".tar.xz"))
3337 (sha256
3338 (base32
3339 "0rms2ksiv7j9944km7r87q22nh05si1fisn5xm3z4zy5vpcfi5mh"))))
3340 (build-system gnu-build-system)
3341 (arguments
3342 '(#:phases
3343 (modify-phases %standard-phases
3344 (add-before 'check 'pre-check
3345 (lambda _
3346 ;; tests require a writable HOME.
3347 (setenv "HOME" (getcwd))
3348 #t)))))
3349 (native-inputs
3350 `(("intltool" ,intltool)
3351 ("pkg-config" ,pkg-config)
3352 ("vala" ,vala)))
3353 (propagated-inputs
3354 ;; Required by libgames-support-1.0.pc
3355 `(("gtk+" ,gtk+)
3356 ("libgee" ,libgee)))
3357 (home-page "https://www.gnome.org/")
3358 (synopsis "Useful functionality shared among GNOME games")
3359 (description
3360 "libgames-support is a small library intended for internal use by
3361GNOME Games, but it may be used by others.")
3362 (license license:lgpl3+)))
3363
43ec2604
MW
3364(define-public libgnome-games-support
3365 (package
3366 (inherit libgames-support)
3367 (name "libgnome-games-support")
3368 (version "1.2.1")
3369 (source (origin
3370 (method url-fetch)
3371 (uri (string-append "mirror://gnome/sources/" name "/"
3372 (version-major+minor version) "/"
3373 name "-" version ".tar.xz"))
3374 (sha256
3375 (base32
3376 "1rsyf5hbjim7zpk1yar3gv65g1nmw6zbbc0smrmxsfk0f9n3j9m6"))))))
3377
b7a3cf11
SB
3378(define-public gnome-klotski
3379 (package
3380 (name "gnome-klotski")
f4eae76f 3381 (version "3.22.1")
b7a3cf11
SB
3382 (source (origin
3383 (method url-fetch)
3384 (uri (string-append "mirror://gnome/sources/" name "/"
3385 (version-major+minor version) "/"
3386 name "-" version ".tar.xz"))
3387 (sha256
3388 (base32
f4eae76f 3389 "04ragvrz29sydi2kf1zk2aimi3b3hn34jrndfd2lx6h8l45anq3q"))))
b7a3cf11
SB
3390 (build-system glib-or-gtk-build-system)
3391 (native-inputs
3392 `(("desktop-file-utils" ,desktop-file-utils)
3393 ("intltool" ,intltool)
3394 ("itstool" ,itstool)
bcb354ad
SB
3395 ("pkg-config" ,pkg-config)
3396 ("xmllint" ,libxml2)))
b7a3cf11
SB
3397 (inputs
3398 `(("gtk+" ,gtk+)
f4eae76f 3399 ("libgnome-games-support" ,libgnome-games-support)
b7a3cf11
SB
3400 ("librsvg" ,librsvg)))
3401 (home-page "https://wiki.gnome.org/Apps/Klotski")
3402 (synopsis "Sliding block puzzles")
3403 (description
3404 "GNOME Klotski is a set of block sliding puzzles. The objective is to move
3405the patterned block to the area bordered by green markers. To do so, you will
3406need to slide other blocks out of the way. Complete each puzzle in as few moves
3407as possible!")
3408 (license license:gpl2+)))
8d4791bf
MW
3409
3410(define-public grilo
3411 (package
3412 (name "grilo")
99dd2af9 3413 (version "0.3.3")
8d4791bf
MW
3414 (source
3415 (origin
3416 (method url-fetch)
3417 (uri (string-append "mirror://gnome/sources/" name "/"
3418 (version-major+minor version) "/"
3419 name "-" version ".tar.xz"))
3420 (sha256
3421 (base32
99dd2af9 3422 "1qx072m0gl6m3d5g5cbbf13p4h217icmlxjnrn829x5xqwi451sw"))))
8d4791bf
MW
3423 (build-system gnu-build-system)
3424 (native-inputs
3425 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3426 ("intltool" ,intltool)
3427 ("pkg-config" ,pkg-config)
3428 ("gobject-introspection" ,gobject-introspection)))
3429 (inputs
6d7273a0
KK
3430 `(("cyrus-sasl" ,cyrus-sasl)
3431 ("glib" ,glib)
8d4791bf
MW
3432 ("gtk+" ,gtk+)
3433 ("libxml2" ,libxml2)
6d7273a0 3434 ("liboauth" ,liboauth)
8d4791bf 3435 ("libsoup" ,libsoup)
e7305878 3436 ("nettle" ,nettle)
8d4791bf
MW
3437 ("totem-pl-parser" ,totem-pl-parser)))
3438 (arguments
3439 `(#:phases
3440 (modify-phases %standard-phases
3441 (add-after 'unpack 'fix-introspection-install-dir
3442 (lambda* (#:key outputs #:allow-other-keys)
3443 (let ((out (assoc-ref outputs "out")))
3444 (substitute* '("src/Makefile.in"
3445 "libs/pls/Makefile.in"
3446 "libs/net/Makefile.in")
3447 (("@INTROSPECTION_GIRDIR@")
3448 (string-append out "/share/gir-1.0/"))
3449 (("@INTROSPECTION_TYPELIBDIR@")
3450 (string-append out "/lib/girepository-1.0/")))))))))
3451 (native-search-paths
3452 (list (search-path-specification
3453 (variable "GRL_PLUGIN_PATH")
3454 (files (list (string-append "lib/grilo-"
3455 (version-major+minor version)))))))
f032d0be 3456 (home-page "https://live.gnome.org/Grilo")
8d4791bf
MW
3457 (synopsis "Framework for discovering and browsing media")
3458 (description
3459 "Grilo is a framework focused on making media discovery and browsing easy
3460for application developers.")
3461 (license license:lgpl2.1+)))
7b212526
MW
3462
3463(define-public grilo-plugins
3464 (package
3465 (name "grilo-plugins")
22753632 3466 (version "0.3.3")
7b212526
MW
3467 (source
3468 (origin
3469 (method url-fetch)
3470 (uri (string-append "mirror://gnome/sources/" name "/"
3471 (version-major+minor version) "/"
3472 name "-" version ".tar.xz"))
3473 (sha256
3474 (base32
22753632 3475 "172vr1y98d2mzlmg5akjn4ibrcj3gh22cwnb3cv9rvvzhj3yhrpy"))))
7b212526
MW
3476 (build-system gnu-build-system)
3477 (native-inputs
3478 `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal
3479 ("intltool" ,intltool)
3480 ("itstool" ,itstool)
3481 ("pkg-config" ,pkg-config)))
3482 (inputs
3483 `(("grilo" ,grilo)
924ae80f 3484 ("nettle" ,nettle) ; XXX: required by libgrlpls-0.3.la
7b212526
MW
3485 ("glib" ,glib)
3486 ("libxml2" ,libxml2)
3487 ("sqlite" ,sqlite)
3488 ("gom" ,gom)
3489 ;; XXX TODO: Add oauth
3490 ;; XXX TODO: Add goa
3491 ;; XXX TODO: Add gdata (e.g. needed for youtube plugin)
3492 ;; XXX TODO: Add lua (needs help finding it)
3493 ("json-glib" ,json-glib)
3494 ("avahi" ,avahi)
3495 ("gmime" ,gmime)
3496 ("libsoup" ,libsoup)
3497 ("libarchive" ,libarchive)
3498 ("totem-pl-parser" ,totem-pl-parser)))
3499 (arguments
3500 `(#:make-flags (list (string-append "GRL_PLUGINS_DIR="
3501 %output
3502 "/lib/grilo-"
3503 ,(version-major+minor version)))
3504 ;; XXX FIXME: Try to get the test suite working. It appears to require
3505 ;; a working system dbus. Inside the build container, all tests fail
3506 ;; with: "assertion failed: (source)". Outside of the build container,
3507 ;; most tests succeed.
3508 #:tests? #f))
f032d0be 3509 (home-page "https://live.gnome.org/Grilo")
7b212526
MW
3510 (synopsis "Plugins for the Grilo media discovery library")
3511 (description
3512 "Grilo is a framework focused on making media discovery and browsing easy
3513for application developers.")
3514 (license license:lgpl2.1+)))
4e3fc547
MW
3515
3516(define-public totem
3517 (package
3518 (name "totem")
aad56d0e 3519 (version "3.24.0")
4e3fc547
MW
3520 (source
3521 (origin
3522 (method url-fetch)
3523 (uri (string-append "mirror://gnome/sources/" name "/"
3524 (version-major+minor version) "/"
3525 name "-" version ".tar.xz"))
3526 (sha256
3527 (base32
aad56d0e 3528 "00cdlll5b0wj5ckl1pc0a3g39a0hlq0gxkcsh1f6p20fjixqzmwv"))))
4e3fc547
MW
3529 (build-system glib-or-gtk-build-system)
3530 (native-inputs
3531 `(("pkg-config" ,pkg-config)
3532 ("desktop-file-utils" ,desktop-file-utils)
3533 ("gobject-introspection" ,gobject-introspection)
3534 ("intltool" ,intltool)
bcb354ad
SB
3535 ("itstool" ,itstool)
3536 ("xmllint" ,libxml2)))
4e3fc547
MW
3537 (propagated-inputs
3538 `(("dconf" ,dconf)))
3539 (inputs
3540 `(("gtk+" ,gtk+)
3541 ("gdk-pixbuf" ,gdk-pixbuf)
3542 ("atk" ,atk)
3543 ("cairo" ,cairo)
3544 ("dbus-glib" ,dbus-glib)
3545 ("clutter" ,clutter)
3546 ("clutter-gtk" ,clutter-gtk)
3547 ("clutter-gst" ,clutter-gst)
3548 ("xproto" ,xproto)
3549 ("libxxf86vm" ,libxxf86vm)
3550 ("libxtst" ,libxtst)
3551 ("libxrandr" ,libxrandr)
3552 ("libxml2" ,libxml2)
3553 ("libsoup" ,libsoup)
3554 ("libpeas" ,libpeas)
3555 ("librsvg" ,librsvg)
3556 ("lirc" ,lirc)
3557 ("gnome-desktop" ,gnome-desktop)
3558 ("gstreamer" ,gstreamer)
3559 ("gst-plugins-base" ,gst-plugins-base)
3560 ("gst-plugins-good" ,gst-plugins-good)
3561 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3562 ("adwaita-icon-theme" ,adwaita-icon-theme)
3563 ;; XXX We use python-2 because libxml2 because itstool (which needs
3564 ;; libxml) currently uses python-2.
3565 ("python" ,python-2)
3566 ("python-pygobject" ,python2-pygobject)
3567 ;; XXX TODO pylint needed for python support
3568 ("totem-pl-parser" ,totem-pl-parser)
3569 ("grilo" ,grilo)
3570 ("grilo-plugins" ,grilo-plugins)
3571 ("nettle" ,nettle)
3572 ("vala" ,vala)))
3573 (arguments
ec5c24f9
LC
3574 `(;; Disable automatic GStreamer plugin installation via PackageKit and
3575 ;; all that.
a388c951
LC
3576 #:configure-flags '("--disable-easy-codec-installation"
3577
3578 ;; Do not build .a files for the plugins, it's
3579 ;; completely useless. This saves 2 MiB.
3580 "--disable-static")
ec5c24f9
LC
3581
3582 #:phases
4e3fc547
MW
3583 (modify-phases %standard-phases
3584 (add-after
3585 'install 'wrap-totem
3586 (lambda* (#:key inputs outputs #:allow-other-keys)
3587 (let ((out (assoc-ref outputs "out"))
3588 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
3589 (grl-plugin-path (getenv "GRL_PLUGIN_PATH")))
3590 (wrap-program (string-append out "/bin/totem")
3591 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
3592 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))))
3593 #t)))))
3594 (home-page "https://wiki.gnome.org/Apps/Videos")
3595 (synopsis "Simple media player for GNOME based on GStreamer")
3596 (description "Totem is a simple yet featureful media player for GNOME
3597which can read a large number of file formats.")
3598 ;; GPL2+ with an exception clause for non-GPL compatible GStreamer plugins
3599 ;; to be used and distributed together with GStreamer and Totem. See
3600 ;; file://COPYING in the source distribution for details.
3601 (license license:gpl2+)))
f0afb0c8
DH
3602
3603(define-public rhythmbox
3604 (package
3605 (name "rhythmbox")
4faa8abe 3606 (version "3.4.1")
f0afb0c8
DH
3607 (source (origin
3608 (method url-fetch)
3609 (uri (string-append "mirror://gnome/sources/" name "/"
3610 (version-major+minor version) "/"
3611 name "-" version ".tar.xz"))
3612 (sha256
3613 (base32
4faa8abe 3614 "1dj1hgdyhmwzs6h2zr89b1ipk0p6g7x74rfz56a5yjds3ik8d7q3"))))
f0afb0c8
DH
3615 (build-system glib-or-gtk-build-system)
3616 (arguments
3617 `(#:configure-flags
3618 (list "--enable-lirc"
3619 "--enable-python"
3620 "--enable-vala"
3621 "--with-brasero"
3622 "--with-gudev"
3623 "--with-libsecret")
3624 #:phases
3625 (modify-phases %standard-phases
3626 (add-after
3627 'install 'wrap-rhythmbox
3628 (lambda* (#:key inputs outputs #:allow-other-keys)
3629 (let ((out (assoc-ref outputs "out"))
3630 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
3631 (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))
349cef58
TGR
3632 (grl-plugin-path (getenv "GRL_PLUGIN_PATH"))
3633 (python-path (getenv "PYTHONPATH")))
f0afb0c8
DH
3634 (wrap-program (string-append out "/bin/rhythmbox")
3635 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
3636 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
349cef58
TGR
3637 `("GRL_PLUGIN_PATH" ":" prefix (,grl-plugin-path))
3638 `("PYTHONPATH" ":" prefix (,python-path))))
f0afb0c8
DH
3639 #t)))))
3640 (propagated-inputs
3641 `(("dconf" ,dconf)))
3642 (native-inputs
bcb354ad
SB
3643 `(("itstool" ,itstool)
3644 ("intltool" ,intltool)
f0afb0c8
DH
3645 ("glib" ,glib "bin")
3646 ("gobject-introspection" ,gobject-introspection)
3647 ("desktop-file-utils" ,desktop-file-utils)
bcb354ad
SB
3648 ("pkg-config" ,pkg-config)
3649 ("xmllint" ,libxml2)))
f0afb0c8
DH
3650 (inputs
3651 `(("json-glib" ,json-glib)
3652 ("tdb" ,tdb)
3653 ("gnome-desktop" ,gnome-desktop)
3654 ("python" ,python)
3655 ("python-pygobject" ,python2-pygobject)
3656 ("vala" ,vala)
3657 ("gmime" ,gmime)
3658 ("nettle" ,nettle)
f0afb0c8
DH
3659 ("adwaita-icon-theme" ,adwaita-icon-theme)
3660 ("grilo" ,grilo)
3661 ("grilo-plugins" ,grilo-plugins)
3662 ("gstreamer" ,gstreamer)
3663 ("gst-plugins-base" ,gst-plugins-base)
3664 ("gst-plugins-good" ,gst-plugins-good)
f0afb0c8 3665 ("totem-pl-parser" ,totem-pl-parser)
ea226291 3666 ("libgudev" ,libgudev)
f0afb0c8
DH
3667 ;;("libmtp" ,libmtp) FIXME: Not detected
3668 ("libsecret" ,libsecret)
3669 ("libsoup" ,libsoup)
3670 ("libnotify" ,libnotify)
3671 ("libpeas" ,libpeas)
3672 ("lirc" ,lirc)
3673 ;; TODO: clutter* only used by visualizer plugin, which also requires mx
3674 ;;("clutter" ,clutter)
3675 ;;("clutter-gtk" ,clutter-gtk)
3676 ;;("clutter-gst" ,clutter-gst)
3677 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3678 ("atk" ,atk)
3679 ("pango" ,pango)
3680 ("gtk+" ,gtk+)
3681 ;; TODO:
3682 ;; * libgpod
3683 ;; * mx
f0afb0c8
DH
3684 ("brasero" ,brasero)))
3685 (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
3686 (synopsis "Music player for GNOME")
3687 (description "Rhythmbox is a music playing application for GNOME. It
3688supports playlists, song ratings, and any codecs installed through gstreamer.")
3689 (license license:gpl2+)))
f70d8383
DH
3690
3691(define-public eog
3692 (package
3693 (name "eog")
dc4b64ae 3694 (version "3.24.1")
f70d8383
DH
3695 (source (origin
3696 (method url-fetch)
3697 (uri (string-append "mirror://gnome/sources/" name "/"
3698 (version-major+minor version) "/"
3699 name "-" version ".tar.xz"))
3700 (sha256
3701 (base32
dc4b64ae 3702 "1rr7zy8afqgl15j1zz8l37svyv6bw4r3l04yf70zlnf1w8bf27pm"))))
f70d8383
DH
3703 (build-system glib-or-gtk-build-system)
3704 (arguments
3705 `(#:phases
3706 (modify-phases %standard-phases
3707 (add-after
3708 'install 'wrap-eog
3709 (lambda* (#:key outputs #:allow-other-keys)
3710 (let ((out (assoc-ref outputs "out"))
3711 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
3712 (wrap-program (string-append out "/bin/eog")
3713 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
3714 #t)))))
3715 (propagated-inputs
3716 `(("dconf" ,dconf)))
3717 (native-inputs
3718 `(("intltool" ,intltool)
b3546174 3719 ("itstool" ,itstool)
f70d8383
DH
3720 ("glib" ,glib "bin")
3721 ("gobject-introspection" ,gobject-introspection)
bcb354ad
SB
3722 ("pkg-config" ,pkg-config)
3723 ("xmllint" ,libxml2)))
f70d8383
DH
3724 (inputs
3725 `(("gnome-desktop" ,gnome-desktop)
3726 ("shared-mime-info" ,shared-mime-info)
3727 ("adwaita-icon-theme" ,adwaita-icon-theme)
3728 ("exempi" ,exempi)
3729 ("lcms" ,lcms)
3730 ("libexif" ,libexif)
3731 ("libpeas" ,libpeas)
3732 ("libjpeg" ,libjpeg)
3733 ("librsvg" ,librsvg)
3734 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
3735 ("gtk+" ,gtk+)))
3736 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome")
3737 (synopsis "GNOME image viewer")
3738 (description "Eye of GNOME is the GNOME image viewer. It
3739supports image conversion, rotation, and slideshows.")
3740 (license license:gpl2+)))
41af5e7b 3741
0c3f8cb8
LC
3742(define-public eog-plugins
3743 ;; Note: EOG looks for its plugins (via libpeas) in ~/.local as well as
3744 ;; $DATA/lib/eog/plugins, where DATA is one of the entries in
3745 ;; $XDG_DATA_DIRS. Thus, for EOG to find these, you have to have
3746 ;; 'XDG_DATA_DIRS' appropriately set.
3747 (package
3748 (name "eog-plugins")
3749 (version "3.25.1")
3750 (source (origin
3751 (method url-fetch)
3752 (uri (string-append "mirror://gnome/sources/" name "/"
3753 (version-major+minor version) "/"
3754 name "-" version ".tar.xz"))
3755 (sha256
3756 (base32
3757 "0an04z8v83qa6j950rbwdzf1s86y7zd8h1r4p2x36fwbkk1m617q"))))
3758 (build-system gnu-build-system)
3759 (home-page "https://wiki.gnome.org/Apps/EyeOfGnome/Plugins")
3760 (synopsis "Extensions for the Eye of GNOME image viewer")
3761 (native-inputs
3762 `(("pkg-config" ,pkg-config)
3763 ("gettext" ,gnu-gettext)))
3764 (inputs
3765 `(("eog" ,eog)
3766 ("glib" ,glib)
3767 ("gtk+" ,gtk+)
3768 ("libpeas" ,libpeas)
3769 ("libexif" ,libexif)
3770 ("libchamplain" ,libchamplain)))
3771 (description
3772 "This package provides plugins for the Eye of GNOME (EOG) image viewer,
3773notably:
3774
3775@itemize
3776@item @dfn{EXIF Display}, which displays camera (EXIF) information;
3777@item @dfn{Map}, which displays a map of where the picture was taken on the
3778side panel;
3779@item @dfn{Slideshow Shuffle}, to shuffle images in slideshow mode.
3780@end itemize\n")
3781
3782 ;; XXX: eog-postasa-plugin-resources.c (which we don't build) contains a
3783 ;; long suspicious byte stream that goes to a
3784 ;; ".gresource.eog_postasa_plugin" ELF section.
3785 (license license:gpl2+)))
3786
41af5e7b
SB
3787(define-public libgudev
3788 (package
3789 (name "libgudev")
3790 (version "230")
3791 (source (origin
3792 (method url-fetch)
3793 (uri (string-append "mirror://gnome/sources/" name "/"
3794 version "/" name "-" version ".tar.xz"))
3795 (sha256
3796 (base32
3797 "063w6j35n0i0ssmv58kivc1mw4070z6fzb83hi4xfrhcxnn7zrx2"))))
3798 (build-system gnu-build-system)
3799 (native-inputs
3800 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3801 ("gobject-introspection" ,gobject-introspection)
3802 ("pkg-config" ,pkg-config)))
3803 (propagated-inputs
3804 `(("glib" ,glib))) ; required by gudev-1.0.pc
3805 (inputs
3806 `(("udev" ,eudev)))
3807 (home-page "https://wiki.gnome.org/Projects/libgudev")
3808 (synopsis "GObject bindings for libudev")
3809 (description
3810 "This library provides GObject bindings for libudev. It was originally
3811part of udev-extras, then udev, then systemd. It's now a project on its own.")
3812 (license license:lgpl2.1+)))
3dc8828f
SB
3813
3814(define-public gvfs
3815 (package
3816 (name "gvfs")
8e8fefb6 3817 (version "1.32.1")
3dc8828f
SB
3818 (source (origin
3819 (method url-fetch)
3820 (uri (string-append "mirror://gnome/sources/" name "/"
3821 (version-major+minor version) "/"
3822 name "-" version ".tar.xz"))
3823 (sha256
3824 (base32
8e8fefb6 3825 "1pkahczniar1yyas7awcqpkb4ca8l7qa4msn6mr29m89mgnwkdnh"))))
3dc8828f
SB
3826 (build-system gnu-build-system)
3827 (arguments
3828 '(#:tests? #f)) ; XXX: requiring `pidof'
3829 (native-inputs
3830 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3831 ("intltool" ,intltool)
3832 ("pkg-config" ,pkg-config)
3833 ("xsltproc" ,libxslt)))
3834 (inputs
3835 `(("avahi" ,avahi)
3836 ("docbook-xml" ,docbook-xml-4.2)
3837 ("docbook-xsl" ,docbook-xsl)
3838 ("dbus" ,dbus)
3839 ("fuse" ,fuse)
24a78aa6 3840 ("gcr" ,gcr)
3dc8828f
SB
3841 ("glib" ,glib)
3842 ("libarchive" ,libarchive)
3843 ("libbluray" ,libbluray)
8852ca24 3844 ("libcap" ,libcap)
3dc8828f
SB
3845 ("libcdio-paranoia" ,libcdio-paranoia)
3846 ("libgcrypt" ,libgcrypt)
3847 ("libgphoto2" ,libgphoto2)
3848 ("libgudev" ,libgudev)
3849 ("libmtp" ,libmtp)
3850 ("libsecret" ,libsecret)
3851 ("libsmbclient" ,samba)
3852 ("libsoup" ,libsoup)
3853 ("libxml2" ,libxml2)
3854 ("nettle" ,nettle) ; XXX: required by libarchive.pc
8852ca24 3855 ("polkit" ,polkit)
3dc8828f
SB
3856 ("udisks" ,udisks)))
3857 (home-page "https://wiki.gnome.org/gvfs/")
8f65585b 3858 (synopsis "Userspace virtual file system for GIO")
3dc8828f 3859 (description
8f65585b 3860 "GVFS is a userspace virtual file system designed to work with the I/O
3dc8828f
SB
3861abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support
3862to all applications using the GIO API. It also supports exposing the GVFS
3863mounts to non-GIO applications using FUSE.
3864
3865GVFS comes with a set of backends, including trash support, SFTP, SMB, HTTP,
3866DAV, and others.")
3867 (license license:lgpl2.0+)))
7c88b6bd
AW
3868
3869(define-public gusb
3870 (package
3871 (name "gusb")
6b7d7e9b 3872 (version "0.2.9")
7c88b6bd
AW
3873 (source (origin
3874 (method url-fetch)
3875 (uri (string-append "https://github.com/hughsie/libgusb/archive/"
3876 "gusb_"
3877 (string-join (string-split version #\.)
3878 "_")
3879 ".tar.gz"))
3880 (sha256
3881 (base32
6b7d7e9b 3882 "1500mgpidmnjfkcz1fzqkbqv547iy1cvr8bwf3k9vqgqcjx3844n"))))
7c88b6bd
AW
3883 (build-system gnu-build-system)
3884 (native-inputs
3885 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
3886 ("gobject-introspection" ,gobject-introspection)
3887 ("pkg-config" ,pkg-config)
3888 ("vala" ,vala)
3889 ("autoconf" ,autoconf)
3890 ("automake" ,automake)
3891 ("libtool" ,libtool)
3892 ("gtk-doc" ,gtk-doc)))
3893 (propagated-inputs
3894 ;; Both of these are required by gusb.pc.
3895 `(("glib" ,glib)
3896 ("libusb" ,libusb)))
3897 (arguments
3898 `(#:tests? #f ; libusb fails to initialize. Wonder what that is.
3899 #:phases
3900 (modify-phases %standard-phases
3901 (add-after 'unpack 'autogen
3902 (lambda _
3903 (and (zero? (system* "gtkdocize"))
3904 (zero? (system* "autoreconf" "-vif"))))))))
8f1640ed 3905 (home-page "https://github.com/hughsie/libgusb")
a124bbd2 3906 (synopsis "GLib binding for libusb1")
7c88b6bd
AW
3907 (description
3908 "GUsb is a GObject wrapper for libusb1 that makes it easy to do
3909asynchronous control, bulk and interrupt transfers with proper cancellation
3910and integration into a mainloop. This makes it easy to integrate low level
3911USB transfers with your high-level application or system daemon.")
3912 (license license:lgpl2.1+)))
0abe1d86
AW
3913
3914(define-public simple-scan
3915 (package
3916 (name "simple-scan")
baca5333 3917 (version "3.24.1")
0abe1d86
AW
3918 (source (origin
3919 (method url-fetch)
3920 (uri (string-append "https://launchpad.net/simple-scan/"
3921 (version-major+minor version) "/"
3922 version "/+download/simple-scan-"
3923 version ".tar.xz"))
3924 (sha256
3925 (base32
baca5333 3926 "1czg21cdbd2fgqylxfnzfhhzy69gycf816d5bbaq6hb62hmq7bjy"))))
0abe1d86
AW
3927 (build-system glib-or-gtk-build-system)
3928 (inputs
3929 `(("gtk" ,gtk+)
3930 ("zlib" ,zlib)
3931 ("cairo" ,cairo)
3932 ("gdk-pixbuf" ,gdk-pixbuf)
3933 ("gusb" ,gusb)
4c928743 3934 ("libsane" ,sane-backends)))
0abe1d86 3935 (native-inputs
b94a6ca0 3936 `(("gettext" ,gettext-minimal)
0abe1d86
AW
3937 ("itstool" ,itstool)
3938 ("colord" ,colord)
3939 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
3940 ("pkg-config" ,pkg-config)
bcb354ad
SB
3941 ("vala" ,vala)
3942 ("xmllint" ,libxml2)))
fb9ca511
TGR
3943 (arguments
3944 '(#:configure-flags '("--disable-packagekit")
3945 #:phases
3946 (modify-phases %standard-phases
3947 (add-after 'unpack 'clean
3948 (lambda _
3949 ;; Remove a left-over reference to PackageKit.
3950
3951 ;; https://bugs.launchpad.net/simple-scan/+bug/1462769
3952
3953 ;; There are some generated C files erroneously
3954 ;; included in the source distribution, and this
3955 ;; one breaks the build by referring to a
3956 ;; non-existent header (packagekit.h)
3957 (delete-file "src/ui.c"))))))
0abe1d86
AW
3958 (home-page "https://launchpad.net/simple-scan")
3959 (synopsis "Document and image scanner")
3960 (description "Simple Scan is an easy-to-use application, designed to let
3961users connect their scanner and quickly have the image/document in an
3962appropriate format. Simple Scan is basically a frontend for SANE - which is
3963the same backend as XSANE uses. This means that all existing scanners will
3964work and the interface is well tested.")
3965 (license license:gpl3+)))
7549f984 3966
ab466d79
RW
3967(define-public eolie
3968 (package
3969 (name "eolie")
3970 (version "0.9.0")
3971 (source (origin
3972 (method url-fetch)
3973 (uri (string-append "https://github.com/gnumdk/eolie/"
3974 "releases/download/"
3975 (version-major+minor version)
3976 "/eolie-" version ".tar.xz"))
3977 (sha256
3978 (base32
3979 "1lb3rd2as12vq24fcf9nmlhggf8vka3kli2i92i8iylwi7nq5n2a"))))
3980 (build-system glib-or-gtk-build-system)
3981 (arguments
3982 `(#:modules ((guix build glib-or-gtk-build-system)
3983 (guix build utils)
3984 (ice-9 match))
3985 #:phases
3986 (modify-phases %standard-phases
3987 (add-after 'wrap 'wrap-more
3988 (lambda* (#:key inputs outputs #:allow-other-keys)
3989 (let* ((out (assoc-ref outputs "out"))
3990 ;; These libraries must be on LD_LIBRARY_PATH.
3991 (libs '("gtkspell3" "webkitgtk" "libsoup" "libsecret"
3992 "atk" "gtk+" "gsettings-desktop-schemas"
3993 "gobject-introspection"))
3994 (path (string-join
3995 (map (lambda (lib)
3996 (string-append (assoc-ref inputs lib) "/lib"))
3997 libs)
3998 ":")))
3999 (wrap-program (string-append out "/bin/eolie")
4000 `("LD_LIBRARY_PATH" ":" prefix (,path))
4001 `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))
4002 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
4003 #t)))))
4004 (native-inputs
4005 `(("intltool" ,intltool)
4006 ("itstool" ,itstool)
4007 ("pkg-config" ,pkg-config)))
4008 (inputs
4009 `(("gobject-introspection" ,gobject-introspection)
4010 ("glib-networking" ,glib-networking)
4011 ("cairo" ,cairo)
4012 ("gtk+" ,gtk+)
4013 ("atk" ,atk) ; propagated by gtk+, but we need it in LD_LIBRARY_PATH
4014 ("python" ,python-wrapper)
4015 ("python-pygobject" ,python-pygobject)
4016 ("python-pycairo" ,python-pycairo)
4017 ("libsecret" ,libsecret)
4018 ("gtkspell3" ,gtkspell3)
4019 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4020 ("webkitgtk" ,webkitgtk)))
4021 (home-page "https://github.com/gnumdk/eolie/")
4022 (synopsis "Web browser for GNOME")
4023 (description
4024 "Eolie is a new web browser for GNOME. It features Firefox sync support,
4025a secret password store, an adblocker, and a modern UI.")
4026 (license license:gpl3+)))
4027
7549f984
SB
4028(define-public epiphany
4029 (package
4030 (name "epiphany")
16c2b151 4031 (version "3.24.2")
7549f984
SB
4032 (source (origin
4033 (method url-fetch)
4034 (uri (string-append "mirror://gnome/sources/" name "/"
4035 (version-major+minor version) "/"
4036 name "-" version ".tar.xz"))
4037 (sha256
4038 (base32
16c2b151 4039 "13f5h7mbxdyjf93jp46hiaxsrngpr6frgf69d8iza7arc060vg2s"))))
7549f984
SB
4040 (build-system glib-or-gtk-build-system)
4041 (arguments
4042 ;; FIXME: tests run under Xvfb, but fail with:
4043 ;; /src/bookmarks/ephy-bookmarks/create:
4044 ;; ** (test-ephy-bookmarks:19591): WARNING **: Unable to start Zeroconf
4045 ;; subsystem
4046 ;; FAIL
6f48d9db
MW
4047 '(#:tests? #f
4048 #:configure-flags '("CFLAGS=-std=gnu99")))
80a747c4
SB
4049 (propagated-inputs
4050 `(("dconf" ,dconf)))
7549f984
SB
4051 (native-inputs
4052 `(("intltool" ,intltool)
4053 ("itstool" ,itstool)
bcb354ad
SB
4054 ("pkg-config" ,pkg-config)
4055 ("xmllint" ,libxml2)))
7549f984
SB
4056 (inputs
4057 `(("avahi" ,avahi)
4058 ("gcr" ,gcr)
0e5c9cf5 4059 ("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files
7549f984
SB
4060 ("glib-networking" ,glib-networking)
4061 ("gnome-desktop" ,gnome-desktop)
4062 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
eb6f315b 4063 ("json-glib" ,json-glib)
7549f984
SB
4064 ("iso-codes" ,iso-codes)
4065 ("libnotify" ,libnotify)
4066 ("libsecret" ,libsecret)
7549f984 4067 ("libxslt" ,libxslt)
7549f984
SB
4068 ("sqlite" ,sqlite)
4069 ("webkitgtk" ,webkitgtk)))
4070 (home-page "https://wiki.gnome.org/Apps/Web")
4071 (synopsis "GNOME web browser")
4072 (description
4073 "Epiphany is a GNOME web browser targeted at non-technical users. Its
4074principles are simplicity and standards compliance.")
4075 (license license:gpl2+)))
a3856b2c
SB
4076
4077(define-public d-feet
4078 (package
4079 (name "d-feet")
7d04b13c 4080 (version "0.3.11")
a3856b2c
SB
4081 (source (origin
4082 (method url-fetch)
4083 (uri (string-append "mirror://gnome/sources/" name "/"
4084 (version-major+minor version) "/"
4085 name "-" version ".tar.xz"))
4086 (sha256
4087 (base32
7d04b13c 4088 "1hmrijm4d9vwzx2r8qzzsy8ccpj79l1y6cc569n9jjzqcq699p53"))))
a3856b2c
SB
4089 (build-system glib-or-gtk-build-system)
4090 (arguments
4091 '(#:out-of-source? #f ; tests need to run in the source directory.
4092 #:phases
4093 (modify-phases %standard-phases
4094 (add-before
4095 'check 'pre-check
86aff791 4096 (lambda _
a3856b2c
SB
4097 ;; The test suite requires a running X server.
4098 (system "Xvfb :1 &")
4099 (setenv "DISPLAY" ":1")
4100 ;; Don't fail on missing '/etc/machine-id'.
4101 (setenv "DBUS_FATAL_WARNINGS" "0")
4102 ;; tests.py and window.py don't meet E402:
4103 ;; E402 module level import not at top of file
4104 (substitute* "src/tests/Makefile"
86aff791
MW
4105 (("--ignore=E123") "--ignore=E123,E402"))
4106 #t))
a3856b2c
SB
4107 (add-after
4108 'install 'wrap-program
4109 (lambda* (#:key outputs #:allow-other-keys)
4110 (let ((prog (string-append (assoc-ref outputs "out")
4111 "/bin/d-feet")))
4112 (wrap-program prog
4113 `("PYTHONPATH" = (,(getenv "PYTHONPATH")))
86aff791
MW
4114 `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
4115 #t))))))
a3856b2c
SB
4116 (native-inputs
4117 `(("intltool" ,intltool)
4118 ("itstool" ,itstool)
4119 ("pkg-config" ,pkg-config)
4120 ("python-pep8" ,python-pep8)
4121 ("xmllint" ,libxml2)
4122 ("xorg-server" ,xorg-server)))
4123 (inputs
4124 `(("gobject-introspection" ,gobject-introspection)
4125 ("gtk+" ,gtk+)
4126 ("python" ,python-wrapper)
4127 ("python-pygobject" ,python-pygobject)))
4128 (home-page "https://wiki.gnome.org/Apps/DFeet")
4129 (synopsis "D-Bus debugger")
4130 (description
4131 "D-Feet is a D-Bus debugger, which can be used to inspect D-Bus interfaces
4132of running programs and invoke methods on those interfaces.")
4133 (license license:gpl2+)))
c3b97bd9
SB
4134
4135(define-public yelp-xsl
4136 (package
4137 (name "yelp-xsl")
27ad5743 4138 (version "3.20.1")
c3b97bd9
SB
4139 (source (origin
4140 (method url-fetch)
4141 (uri (string-append "mirror://gnome/sources/" name "/"
4142 (version-major+minor version) "/"
4143 name "-" version ".tar.xz"))
4144 (sha256
4145 (base32
27ad5743 4146 "183vz4aw8fcmw8k8q7r4zrm1p76gwg2cca1fsdrkaiyabng88qfw"))))
c3b97bd9
SB
4147 (build-system gnu-build-system)
4148 (native-inputs
4149 `(("intltool" ,intltool)
4150 ("itstool" ,itstool)
4151 ("xmllint" ,libxml2)))
4152 (home-page "https://wiki.gnome.org/Apps/Yelp")
4153 (synopsis "XSL stylesheets for Yelp")
4154 (description
4155 "Yelp-xsl contains XSL stylesheets that are used by the yelp help browser
4156to format Docbook and Mallard documents.")
4157 (license license:gpl2+)))
de3d612a
SB
4158
4159(define-public yelp
4160 (package
4161 (name "yelp")
491cc0dc 4162 (version "3.22.0")
de3d612a
SB
4163 (source (origin
4164 (method url-fetch)
4165 (uri (string-append "mirror://gnome/sources/" name "/"
4166 (version-major+minor version) "/"
4167 name "-" version ".tar.xz"))
4168 (sha256
4169 (base32
491cc0dc 4170 "13kpi0qmnfx2xwizyhmf5i5xaw9ckcn1k7v0289p7als4dybf5l6"))))
de3d612a
SB
4171 (build-system glib-or-gtk-build-system)
4172 (native-inputs
4173 `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
4174 ("intltool" ,intltool)
4175 ("itstool" ,itstool)
4176 ("pkg-config" ,pkg-config)))
4177 (propagated-inputs
4178 `(("dconf" ,dconf)))
4179 (inputs
ad1b7d8b
SB
4180 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4181 ("libxslt" ,libxslt)
de3d612a 4182 ("sqlite" ,sqlite)
4c28ca1d
SB
4183 ("webkitgtk" ,webkitgtk)
4184 ("yelp-xsl" ,yelp-xsl)))
de3d612a
SB
4185 (home-page "https://wiki.gnome.org/Apps/Yelp")
4186 (synopsis "GNOME help browser")
4187 (description
4188 "Yelp is the help viewer in Gnome. It natively views Mallard, DocBook,
4189man, info, and HTML documents. It can locate documents according to the
4190freedesktop.org help system specification.")
4191 (license license:gpl2+)))
122d0d10
SB
4192
4193(define-public yelp-tools
4194 (package
4195 (name "yelp-tools")
50695955 4196 (version "3.18.0")
122d0d10
SB
4197 (source (origin
4198 (method url-fetch)
4199 (uri (string-append "mirror://gnome/sources/" name "/"
4200 (version-major+minor version) "/"
4201 name "-" version ".tar.xz"))
4202 (sha256
4203 (base32
50695955 4204 "0ck9f78c1xka8a823bd7w1k0gdn4k19zvaj7viy2d5r3h1gxdhf6"))))
122d0d10
SB
4205 (build-system gnu-build-system)
4206 (native-inputs
4207 `(("pkg-config" ,pkg-config)))
4208 (propagated-inputs
4209 ;; Needed by `yelp-build', `yelp-check' or 'yelp.m4'.
4210 `(("itstool" ,itstool)
4211 ("xmllint" ,libxml2)
4212 ("xsltproc" ,libxslt)))
4213 (inputs
4214 `(("yelp-xsl" ,yelp-xsl)))
4215 (home-page "https://wiki.gnome.org/Apps/Yelp/Tools")
4216 (synopsis "Yelp documentation tools")
4217 (description
4218 "Yelp-tools is a collection of scripts and build utilities to help create,
4219manage, and publish documentation for Yelp and the web. Most of the heavy
4220lifting is done by packages like yelp-xsl and itstool. This package just
4221wraps things up in a developer-friendly way.")
4222 (license license:gpl2+)))
af8f9f23
RW
4223
4224(define-public libgee
4225 (package
4226 (name "libgee")
afd8e16b 4227 (version "0.20.0")
af8f9f23
RW
4228 (source (origin
4229 (method url-fetch)
4230 (uri (string-append "mirror://gnome/sources/" name "/"
4231 (version-major+minor version) "/"
4232 name "-" version ".tar.xz"))
4233 (sha256
4234 (base32
afd8e16b 4235 "1fy24dr8imrjlmsqj1syn0gi139gba6hwk3j5vd6sr3pxniqnc11"))))
af8f9f23
RW
4236 (build-system gnu-build-system)
4237 (arguments
4238 `(#:phases
4239 (modify-phases %standard-phases
4240 (add-after 'unpack 'fix-introspection-install-dir
4241 (lambda* (#:key outputs #:allow-other-keys)
4242 (let ((out (assoc-ref outputs "out")))
4243 (substitute* "gee/Makefile.in"
4244 (("@INTROSPECTION_GIRDIR@")
4245 (string-append out "/share/gir-1.0/"))
4246 (("@INTROSPECTION_TYPELIBDIR@")
4247 (string-append out "/lib/girepository-1.0/")))))))))
4248 (native-inputs
4249 `(("glib" ,glib "bin")
4250 ("pkg-config" ,pkg-config)))
4251 (inputs
4252 `(("glib" ,glib)
4253 ("gobject-introspection" ,gobject-introspection)))
4254 (home-page "https://wiki.gnome.org/Projects/Libgee")
4255 (synopsis "GObject collection library")
4256 (description
4257 "Libgee is a utility library providing GObject-based interfaces and
4258classes for commonly used data structures.")
4259 (license license:lgpl2.1+)))
b0f9c4b8
RW
4260
4261(define-public gexiv2
4262 (package
4263 (name "gexiv2")
b7c0c756 4264 (version "0.10.6")
b0f9c4b8
RW
4265 (source (origin
4266 (method url-fetch)
4267 (uri (string-append "mirror://gnome/sources/" name "/"
4268 (version-major+minor version) "/"
4269 name "-" version ".tar.xz"))
4270 (sha256
4271 (base32
b7c0c756 4272 "09aqsnpah71p9gx0ap2px2dyanrs7jmkkar6q114n9b7js8qh9qk"))))
b0f9c4b8
RW
4273 (build-system gnu-build-system)
4274 (native-inputs
4275 `(("glib" ,glib "bin")
4276 ("pkg-config" ,pkg-config)))
4277 (propagated-inputs
4278 ;; Listed in "Requires" section of gexiv2.pc
4279 `(("exiv2" ,exiv2)))
4280 (inputs
4281 `(("glib" ,glib)
4282 ("gobject-introspection" ,gobject-introspection)))
4283 (home-page "https://wiki.gnome.org/Projects/gexiv2")
4284 (synopsis "GObject wrapper around the Exiv2 photo metadata library")
4285 (description
4286 "Gexiv2 is a GObject wrapper around the Exiv2 photo metadata library. It
4287allows for GNOME applications to easily inspect and update EXIF, IPTC, and XMP
4288metadata in photo and video files of various formats.")
4289 (license license:gpl2+)))
fed5a689
RW
4290
4291(define-public shotwell
4292 (package
4293 (name "shotwell")
c8fc9a37 4294 (version "0.26.2")
fed5a689
RW
4295 (source (origin
4296 (method url-fetch)
4297 (uri (string-append "mirror://gnome/sources/" name "/"
4298 (version-major+minor version) "/"
4299 name "-" version ".tar.xz"))
4300 (sha256
4301 (base32
c8fc9a37 4302 "0frjqa6nmh025clwnb74z2rzbdq65wjcp2lf9csgcbkpahyjhrag"))))
fed5a689 4303 (build-system glib-or-gtk-build-system)
735b8db6
TGR
4304 (propagated-inputs
4305 `(("dconf" ,dconf)))
fed5a689
RW
4306 (native-inputs
4307 `(("pkg-config" ,pkg-config)
f819c21d 4308 ("itstool" ,itstool)
b94a6ca0 4309 ("gettext" ,gettext-minimal)
77e9c993 4310 ("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
735b8db6
TGR
4311 ("itstool" ,itstool)
4312 ("vala" ,vala)))
fed5a689 4313 (inputs
735b8db6
TGR
4314 `(("glib:bin" ,glib "bin")
4315 ("gstreamer" ,gstreamer)
fed5a689 4316 ("gst-plugins-base" ,gst-plugins-base)
dfb0323d 4317 ("libgdata" ,libgdata)
fed5a689
RW
4318 ("libgee" ,libgee)
4319 ("gexiv2" ,gexiv2)
4320 ("libraw" ,libraw)
4321 ("json-glib" ,json-glib)
7108425c 4322 ("webkitgtk" ,webkitgtk)
fed5a689
RW
4323 ("sqlite" ,sqlite)
4324 ("libsoup" ,libsoup)
4325 ("libxml2" ,libxml2)
fed5a689 4326 ("libgudev" ,libgudev)
522fc32e
LF
4327 ("libgphoto2" ,libgphoto2)
4328 ("gcr" ,gcr)))
fed5a689
RW
4329 (home-page "https://wiki.gnome.org/Apps/Shotwell")
4330 (synopsis "Photo manager for GNOME 3")
4331 (description
4332 "Shotwell is a digital photo manager designed for the GNOME desktop
4333environment. It allows you to import photos from disk or camera, organize
4334them by keywords and events, view them in full-window or fullscreen mode, and
4335share them with others via social networking and more.")
4336 (license license:lgpl2.1+)))
293ff8b2
DT
4337
4338(define-public file-roller
4339 (package
4340 (name "file-roller")
e62a38d4 4341 (version "3.24.1")
293ff8b2
DT
4342 (source (origin
4343 (method url-fetch)
4344 (uri (string-append "mirror://gnome/sources/" name "/"
4345 (version-major+minor version) "/"
4346 name "-" version ".tar.xz"))
4347 (sha256
4348 (base32
e62a38d4 4349 "0fkz9h9a6149crmf6311fsqlmv9wyrxk86470vxib941ppl4a581"))))
293ff8b2 4350 (build-system glib-or-gtk-build-system)
c282c55d
SB
4351 (arguments
4352 '(#:phases
4353 (modify-phases %standard-phases
4354 (add-before 'install 'skip-gtk-update-icon-cache
4355 (lambda _
4356 ;; Don't create 'icon-theme.cache'
4357 (substitute* (find-files "data" "^Makefile$")
4358 (("gtk-update-icon-cache") (which "true")))
4359 #t)))))
293ff8b2
DT
4360 (native-inputs
4361 `(("intltool" ,intltool)
4362 ("pkg-config" ,pkg-config)))
4363 ;; TODO: Add libnautilus.
4364 (inputs
4365 `(("gtk+" ,gtk+)
4366 ("gdk-pixbuf" ,gdk-pixbuf)
4367 ("json-glib" ,json-glib)
4368 ("libarchive" ,libarchive)
4369 ("libnotify" ,libnotify)
4370 ("nettle" ,nettle)
4371 ("itstool" ,itstool)
4372 ("libxml2" ,libxml2)))
4373 (synopsis "Graphical archive manager for GNOME")
4374 (description "File Roller is an archive manager for the GNOME desktop
4375environment that allows users to view, unpack, and create compressed archives
4376such as gzip tarballs.")
4377 (home-page "http://fileroller.sourceforge.net/")
4378 (license license:gpl2+)))
7ce49365
SB
4379
4380(define-public gnome-session
4381 (package
4382 (name "gnome-session")
17cf06c3 4383 (version "3.24.1")
7ce49365
SB
4384 (source (origin
4385 (method url-fetch)
4386 (uri (string-append "mirror://gnome/sources/" name "/"
4387 (version-major+minor version) "/"
4388 name "-" version ".tar.xz"))
4389 (sha256
4390 (base32
17cf06c3 4391 "1vkfjsgks9czajivcg3y1krzlnilv2cnzzbdc7wrasrriqilji1v"))))
2914af3c
AW
4392 (arguments
4393 '(#:phases
4394 (modify-phases %standard-phases
4395 (add-before 'configure 'pre-configure
4396 (lambda* (#:key outputs #:allow-other-keys)
4397 ;; Use elogind instead of systemd.
4398 (substitute* "configure"
4399 (("libsystemd-login >= 183 libsystemd-daemon libsystemd-journal")
4400 "libelogind")
4401 (("systemd") "elogind"))
4402 (substitute* "gnome-session/gsm-systemd.c"
4403 (("#include <systemd/sd-login.h>")
4404 "#include <elogind/sd-login.h>"))
4405 ;; Remove uses of the systemd journal.
4406 (substitute* "gnome-session/main.c"
4407 (("#ifdef HAVE_SYSTEMD") "#if 0"))
4408 (substitute* "gnome-session/gsm-manager.c"
4409 (("#ifdef HAVE_SYSTEMD") "#if 0"))
803ab416
SB
4410 (substitute* "gnome-session/gsm-autostart-app.c"
4411 (("#ifdef HAVE_SYSTEMD") "#if 0"))
a0d7baaf
LC
4412 #t))
4413 (add-after 'install 'wrap-gnome-session
4414 (lambda* (#:key inputs outputs #:allow-other-keys)
4415 ;; Make sure 'gnome-session' finds the 'gsettings' program.
4416 (let ((glib (assoc-ref inputs "glib:bin"))
4417 (out (assoc-ref outputs "out")))
4418 (wrap-program (string-append out "/bin/gnome-session")
4419 `("PATH" ":" prefix (,(string-append glib "/bin"))))
6cbc8d57
LC
4420 #t)))
4421 (add-after 'install 'disable-hardware-acceleration-check
4422 (lambda* (#:key outputs #:allow-other-keys)
4423 ;; Do not abort if hardware acceleration is missing. This allows
4424 ;; GNOME to run in QEMU and on low-end devices.
4425 (let ((out (assoc-ref outputs "out")))
4426 (substitute* (string-append out
4427 "/share/xsessions/gnome.desktop")
4428 (("gnome-session")
4429 "gnome-session --disable-acceleration-check"))
a0d7baaf 4430 #t))))
6cbc8d57 4431
2914af3c
AW
4432 #:configure-flags
4433 '("--enable-elogind")))
ba3cb5ab 4434 (build-system glib-or-gtk-build-system)
7ce49365
SB
4435 (native-inputs
4436 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4437 ("pkg-config" ,pkg-config)
4438 ("intltool" ,intltool)
4439 ("xsltproc" ,libxslt)))
4440 (inputs
2914af3c
AW
4441 `(("elogind" ,elogind)
4442 ("gnome-desktop" ,gnome-desktop)
ba3cb5ab 4443 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
7ce49365
SB
4444 ("gtk+" ,gtk+)
4445 ("json-glib" ,json-glib)
4446 ("libsm" ,libsm)
4447 ("libxcomposite" ,libxcomposite)
4448 ("libxtst" ,libxtst)
4449 ("mesa" ,mesa)
4450 ("upower" ,upower)
4451 ("xtrans" ,xtrans)))
4452 (synopsis "Session manager for GNOME")
4453 (description
4454 "This package contains the GNOME session manager, as well as a
4455configuration program to choose applications starting on login.")
4456 (home-page "https://wiki.gnome.org/Projects/SessionManagement")
4457 (license license:gpl2+)))
f47ba77e
SB
4458
4459(define-public gjs
4460 (package
4461 (name "gjs")
144f94d0 4462 (version "1.48.3")
f47ba77e
SB
4463 (source (origin
4464 (method url-fetch)
4465 (uri (string-append "mirror://gnome/sources/" name "/"
4466 (version-major+minor version) "/"
4467 name "-" version ".tar.xz"))
4468 (sha256
4469 (base32
144f94d0 4470 "0cqgv460wfhwkw6j1h46v6bg29bycg6dfl7c5rv0lfcqmmw7v6v6"))))
f47ba77e
SB
4471 (build-system gnu-build-system)
4472 (arguments
4473 '(#:phases
4474 (modify-phases %standard-phases
4475 (add-before
4476 'check 'pre-check
4477 (lambda _
fc119619
MW
4478 ;; The test suite requires a running X server.
4479 (system "Xvfb :1 &")
4480 (setenv "DISPLAY" ":1")
4481
f47ba77e
SB
4482 ;; For the missing /etc/machine-id.
4483 (setenv "DBUS_FATAL_WARNINGS" "0")
ba666b07 4484
144f94d0
KK
4485 ;; Our mozjs-38 package does not compile the required Intl API
4486 ;; support for these failing tests.
4487 (substitute* "installed-tests/js/testLocale.js"
4488 ((".*toBeDefined.*") "")
4489 ((".*expect\\(datestr\\).*") ""))
f47ba77e
SB
4490 #t)))))
4491 (native-inputs
4492 `(("glib:bin" ,glib "bin") ; for glib-compile-resources
4493 ("pkg-config" ,pkg-config)
4494 ("xmllint" ,libxml2)
4495 ;; For testing
4496 ("dbus-launch" ,dbus)
4497 ("uuidgen" ,util-linux)
4498 ("xvfb" ,xorg-server)))
4499 (propagated-inputs
4500 ;; These are all in the Requires.private field of gjs-1.0.pc.
144f94d0
KK
4501 `(("cairo" ,cairo)
4502 ("gobject-introspection" ,gobject-introspection)
4503 ("mozjs" ,mozjs-38)))
f47ba77e
SB
4504 (inputs
4505 `(("gtk+" ,gtk+)
4506 ("readline" ,readline)))
4507 (synopsis "Javascript bindings for GNOME")
f032d0be 4508 (home-page "https://live.gnome.org/Gjs")
f47ba77e
SB
4509 (description
4510 "Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
4511javascript engine and the GObject introspection framework.")
4512 (license license:gpl2+)))
329d731b
DH
4513
4514(define-public gedit
4515 (package
4516 (name "gedit")
9beae2a2 4517 (version "3.22.0")
329d731b
DH
4518 (source (origin
4519 (method url-fetch)
4520 (uri (string-append "mirror://gnome/sources/" name "/"
4521 (version-major+minor version) "/"
4522 name "-" version ".tar.xz"))
4523 (sha256
4524 (base32
9beae2a2 4525 "0i9z5d31vibb3dd329gwvyga38zq5k1a2glcdq7m93ycbl5mlfq6"))))
329d731b
DH
4526 (build-system glib-or-gtk-build-system)
4527 (arguments
33cd9bef
SB
4528 `(#:configure-flags '("--disable-spell") ; XXX: gspell not packaged yet
4529 #:phases
329d731b
DH
4530 (modify-phases %standard-phases
4531 (add-after
4532 'install 'wrap-gedit
4533 (lambda* (#:key inputs outputs #:allow-other-keys)
4534 (let ((out (assoc-ref outputs "out"))
4535 (gtksourceview (assoc-ref inputs "gtksourceview"))
afc25242
SB
4536 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
4537 (python-path (getenv "PYTHONPATH")))
329d731b 4538 (wrap-program (string-append out "/bin/gedit")
afc25242 4539 ;; For plugins.
329d731b 4540 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
afc25242 4541 `("PYTHONPATH" ":" prefix (,python-path))
329d731b
DH
4542 ;; For language-specs.
4543 `("XDG_DATA_DIRS" ":" prefix (,(string-append gtksourceview
4544 "/share")))))
4545 #t)))))
4546 (propagated-inputs
4547 `(("dconf" ,dconf)))
4548 (native-inputs
4549 `(("intltool" ,intltool)
b3546174 4550 ("itstool" ,itstool)
329d731b
DH
4551 ("gobject-introspection" ,gobject-introspection)
4552 ("pkg-config" ,pkg-config)))
4553 (inputs
4554 `(("glib" ,glib)
4555 ("gtk+" ,gtk+)
4556 ("gtksourceview" ,gtksourceview)
4557 ("libpeas" ,libpeas)
4558 ("libxml2" ,libxml2)
329d731b
DH
4559 ("iso-codes" ,iso-codes)
4560 ("python-pygobject" ,python-pygobject)
4561 ("python" ,python)
4562 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4563 ("libx11" ,libx11)
4564 ("vala" ,vala)
4565 ("adwaita-icon-theme" ,adwaita-icon-theme)
4566 ("libsoup" ,libsoup)
4567 ("gnome-desktop" ,gnome-desktop)))
4568 (home-page "https://wiki.gnome.org/Apps/Gedit")
4569 (synopsis "GNOME text editor")
4570 (description "While aiming at simplicity and ease of use, gedit is a
4571powerful general purpose text editor.")
4572 (license license:gpl2+)))
b7179363
SB
4573
4574(define-public zenity
4575 (package
4576 (name "zenity")
380cb96e 4577 (version "3.24.0")
b7179363
SB
4578 (source (origin
4579 (method url-fetch)
4580 (uri (string-append "mirror://gnome/sources/" name "/"
4581 (version-major+minor version) "/"
4582 name "-" version ".tar.xz"))
4583 (sha256
4584 (base32
380cb96e 4585 "1xzpm63cib2xzr99phplhbcjzy7lahggk3gp60dvrrclxhka1w3g"))))
b7179363
SB
4586 (build-system gnu-build-system)
4587 (native-inputs
b94a6ca0 4588 `(("gettext" ,gettext-minimal)
b7179363
SB
4589 ("itstool" ,itstool)
4590 ("pkg-config" ,pkg-config)))
4591 (inputs
4592 `(("libnotify" ,libnotify)
4593 ("webkitgtk" ,webkitgtk)))
4594 (synopsis "Display graphical dialog boxes from shell scripts")
f032d0be 4595 (home-page "https://www.gnome.org")
b7179363
SB
4596 (description
4597 "Zenity is a rewrite of gdialog, the GNOME port of dialog which allows you
4598to display dialog boxes from the commandline and shell scripts.")
4599 (license license:lgpl2.0+)))
60c3627c
SB
4600
4601(define-public mutter
4602 (package
4603 (name "mutter")
de20d910 4604 (version "3.24.2")
60c3627c 4605 (source (origin
86c44e72
KK
4606 (method url-fetch)
4607 (uri (string-append "mirror://gnome/sources/" name "/"
4608 (version-major+minor version) "/"
4609 name "-" version ".tar.xz"))
60c3627c
SB
4610 (sha256
4611 (base32
de20d910 4612 "043q3384vwrkjdfhbwn9pwdml6z0g0ad0cj2fjnjzg6402i67071"))))
86c44e72
KK
4613 ;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
4614 ;; versions of cogl and clutter. As a result, many of the inputs,
4615 ;; propagated-inputs, and configure flags used in cogl and clutter are
4616 ;; needed here as well.
60c3627c
SB
4617 (build-system gnu-build-system)
4618 (arguments
4619 '(#:configure-flags
4620 ;; XXX: build fails with [-Werror]:
4621 ;; backends/meta-cursor-renderer.c:112:5: error:
4622 ;; implicit declaration of function ?roundf?
a88d5a0c
MW
4623 (list "--enable-compile-warnings=minimum"
4624
86c44e72 4625 "--enable-native-backend"
a88d5a0c
MW
4626
4627 ;; The following flags are needed for the bundled clutter
4628 "--enable-x11-backend=yes"
4629
4630 ;; the remaining flags are needed for the bundled cogl
4631 "--enable-cogl-gst"
4632 (string-append "--with-gl-libname="
4633 (assoc-ref %build-inputs "mesa")
f23052a6
DC
4634 "/lib/libGL.so"))
4635 #:phases
4636 (modify-phases %standard-phases
86c44e72
KK
4637 ;; Replace references to systemd libraries to elogind references.
4638 (add-before 'configure 'use-elogind
4639 (lambda _
4640 (substitute* (list "configure"
4641 "src/backends/native/meta-launcher.c"
4642 "src/core/main.c")
4643 (("systemd") "elogind"))
4644 #t)))))
60c3627c
SB
4645 (native-inputs
4646 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4647 ("gobject-introspection" ,gobject-introspection)
4648 ("intltool" ,intltool)
f23052a6
DC
4649 ("pkg-config" ,pkg-config)
4650 ;; For git build
4651 ("autoconf" ,autoconf)
4652 ("automake" ,automake)
4653 ("libtool" ,libtool)))
60c3627c 4654 (propagated-inputs
a88d5a0c
MW
4655 `(;; libmutter.pc refers to these:
4656 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
4657 ("gtk+" ,gtk+)
4658 ;; mutter-clutter-1.0.pc and mutter-cogl-1.0.pc refer to these:
4659 ("atk" ,atk)
4660 ("cairo" ,cairo)
4661 ("gdk-pixbuf" ,gdk-pixbuf)
4662 ("glib" ,glib)
4663 ("glib" ,glib)
60c3627c 4664 ("gtk+" ,gtk+)
a88d5a0c
MW
4665 ("json-glib" ,json-glib)
4666 ("libinput" ,libinput)
4667 ("libx11" ,libx11)
4668 ("libxcomposite" ,libxcomposite)
4669 ("libxdamage" ,libxdamage)
4670 ("libxext" ,libxext)
4671 ("libxfixes" ,libxfixes)
4672 ("libxkbcommon" ,libxkbcommon)
4673 ("libxrandr" ,libxrandr)
4674 ("mesa" ,mesa)
4675 ("pango" ,pango)
4676 ("udev" ,eudev)
a88d5a0c 4677 ("xinput" ,xinput)))
60c3627c 4678 (inputs
86c44e72
KK
4679 `(("elogind" ,elogind)
4680 ("gnome-desktop" ,gnome-desktop)
60c3627c 4681 ("libcanberra-gtk" ,libcanberra)
a88d5a0c 4682 ("libgudev" ,libgudev)
60c3627c
SB
4683 ("libice" ,libice)
4684 ("libsm" ,libsm)
60c3627c 4685 ("libxkbfile" ,libxkbfile)
a88d5a0c 4686 ("libxrandr" ,libxrandr)
86c44e72 4687 ("libxtst" ,libxtst)
60c3627c
SB
4688 ("startup-notification" ,startup-notification)
4689 ("upower-glib" ,upower)
4690 ("xkeyboard-config" ,xkeyboard-config)
4691 ("zenity" ,zenity)))
4692 (synopsis "Window and compositing manager")
f032d0be 4693 (home-page "https://www.gnome.org")
60c3627c
SB
4694 (description
4695 "Mutter is a window and compositing manager that displays and manages your
4696desktop via OpenGL. Mutter combines a sophisticated display engine using the
4697Clutter toolkit with solid window-management logic inherited from the Metacity
4698window manager.")
86c44e72 4699 (license license:gpl2+)))
685cee87
SB
4700
4701(define-public gnome-online-accounts
4702 (package
4703 (name "gnome-online-accounts")
8cdbaebc 4704 (version "3.24.1")
685cee87
SB
4705 (source (origin
4706 (method url-fetch)
4707 (uri (string-append "mirror://gnome/sources/" name "/"
4708 (version-major+minor version) "/"
4709 name "-" version ".tar.xz"))
4710 (sha256
4711 (base32
8cdbaebc 4712 "0lgniqmkr6ffdw3kcqd34lvp969j2q2qzcy30zkzl5c09r7anc0a"))))
685cee87
SB
4713 (build-system glib-or-gtk-build-system)
4714 (native-inputs
4715 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4716 ("gobject-introspection" ,gobject-introspection)
4717 ("intltool" ,intltool)
4718 ("pkg-config" ,pkg-config)
4719 ("xsltproc" ,libxslt)))
4720 (propagated-inputs
4721 `(("glib" ,glib) ; required by goa-1.0.pc
4722 ("gtk+" ,gtk+))) ; required by goa-backend-1.0.pc
4723 (inputs
4724 `(("docbook-xsl" ,docbook-xsl)
4725 ("json-glib" ,json-glib)
4726 ("libsecret" ,libsecret)
4727 ("rest" ,rest)
4728 ("telepathy-glib" ,telepathy-glib)
4729 ("webkitgtk" ,webkitgtk)))
4730 (synopsis "Single sign-on framework for GNOME")
4731 (home-page "https://wiki.gnome.org/Projects/GnomeOnlineAccounts")
4732 (description
4733 "GNOME Online Accounts provides interfaces so that applications and
4734libraries in GNOME can access the user's online accounts. It has providers for
4735Google, ownCloud, Facebook, Flickr, Windows Live, Pocket, Foursquare, Microsoft
4736Exchange, Last.fm, IMAP/SMTP, Jabber, SIP and Kerberos.")
4737 (license license:lgpl2.0+)))
df217748
SB
4738
4739(define-public evolution-data-server
4740 (package
4741 (name "evolution-data-server")
07cabcb1 4742 (version "3.24.3")
df217748
SB
4743 (source (origin
4744 (method url-fetch)
4745 (uri (string-append "mirror://gnome/sources/" name "/"
4746 (version-major+minor version) "/"
4747 name "-" version ".tar.xz"))
4748 (sha256
4749 (base32
07cabcb1 4750 "1jj1q81bl3r0c8rnsfqi83igqlprzdcjim1fvygbyfy7b8gigqqk"))))
743aebd7 4751 (build-system cmake-build-system)
df217748 4752 (arguments
743aebd7 4753 '(;; XXX FIXME: 11/85 tests are failing.
df217748
SB
4754 #:tests? #f
4755 #:configure-flags
743aebd7
MB
4756 (list "-DENABLE_UOA=OFF" ;disable Ubuntu Online Accounts support
4757 "-DENABLE_GOOGLE=OFF" ;disable Google Contacts support
4758 "-DENABLE_GOOGLE_AUTH=OFF" ;disable Google authentication
4759 "-DENABLE_VALA_BINDINGS=ON"
4760 "-DENABLE_INTROSPECTION=ON") ;required for Vala bindings
df217748
SB
4761 #:phases
4762 (modify-phases %standard-phases
743aebd7 4763 (add-after 'unpack 'patch-paths
df217748
SB
4764 (lambda _
4765 (substitute* "tests/test-server-utils/e-test-server-utils.c"
4766 (("/bin/rm") (which "rm")))
4767 #t)))))
4768 (native-inputs
4769 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
4770 ("gobject-introspection" ,gobject-introspection)
4771 ("gperf" ,gperf)
4772 ("intltool" ,intltool)
4773 ("pkg-config" ,pkg-config)
a73c1cf8 4774 ("vala" ,vala)
743aebd7 4775 ("python" ,python-wrapper)))
df217748
SB
4776 (propagated-inputs
4777 ;; These are all in the Requires field of .pc files.
4778 `(("gtk+" ,gtk+)
4779 ("libical" ,libical)
4780 ("libsecret" ,libsecret)
4781 ("libsoup" ,libsoup)
4782 ("nss" ,nss)
4783 ("sqlite" ,sqlite)))
4784 (inputs
4785 `(("bdb" ,bdb)
4786 ("gcr" ,gcr)
4787 ("gnome-online-accounts" ,gnome-online-accounts)
743aebd7
MB
4788 ("libgweather" ,libgweather)
4789 ("mit-krb5" ,mit-krb5)
4790 ("openldap" ,openldap)))
df217748
SB
4791 (synopsis "Store address books and calendars")
4792 (home-page "https://wiki.gnome.org/Apps/Evolution")
4793 (description
4794 "This package provides a unified backend for programs that work with
4795contacts, tasks, and calendar information. It was originally developed for
4796Evolution (hence the name), but is now used by other packages as well.")
4797 (license license:lgpl2.0)))
bd7dfafa
SB
4798
4799(define-public caribou
4800 (package
4801 (name "caribou")
fe964bb5 4802 (version "0.4.21")
bd7dfafa
SB
4803 (source (origin
4804 (method url-fetch)
4805 (uri (string-append "mirror://gnome/sources/" name "/"
4806 (version-major+minor version) "/"
4807 name "-" version ".tar.xz"))
4808 (sha256
4809 (base32
fe964bb5 4810 "0mfychh1q3dx0b96pjz9a9y112bm9yqyim40yykzxx1hppsdjhww"))))
bd7dfafa
SB
4811 (build-system glib-or-gtk-build-system)
4812 (arguments
4813 '(#:phases
4814 (modify-phases %standard-phases
4815 (add-before
4816 'build 'pre-build
4817 (lambda* (#:key outputs #:allow-other-keys)
4818 (let ((out (assoc-ref outputs "out")))
4819 ;; Use absolute shared library path in Caribou-1.0.typelib.
4820 (substitute* "libcaribou/Makefile"
4821 (("--shared-library=libcaribou.so")
4822 (string-append "--shared-library="
4823 out "/lib/libcaribou.so")))
4824 #t)))
4825 (add-after 'install 'wrap-programs
4826 (lambda* (#:key outputs #:allow-other-keys)
4827 (let* ((out (assoc-ref outputs "out"))
4828 (python-path (getenv "PYTHONPATH"))
4829 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
4830 (for-each
4831 (lambda (prog)
4832 (wrap-program prog
4833 `("PYTHONPATH" ":" prefix (,python-path))
4834 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
4835 (list (string-append out "/bin/caribou-preferences")
4836 (string-append out "/libexec/antler-keyboard"))))
4837 #t)))))
4838 (native-inputs
4839 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
4840 ("gobject-introspection" ,gobject-introspection)
4841 ("intltool" ,intltool)
4842 ("pkg-config" ,pkg-config)
4843 ("python" ,python-2) ; incompatible with Python 3 (print syntax)
4844 ("vala" ,vala)
4845 ("xsltproc" ,libxslt)))
4846 (propagated-inputs
4847 ;; caribou-1.0.pc refers to all these.
4848 `(("libgee" ,libgee)
4849 ("libxklavier" ,libxklavier)
4850 ("libxtst" ,libxtst)
4851 ("gtk+" ,gtk+)))
4852 (inputs
4853 `(("clutter" ,clutter)
4854 ("dconf" ,dconf)
4855 ("gtk+-2" ,gtk+-2)
4856 ("python-pygobject" ,python2-pygobject)))
4857 (synopsis "Text entry and UI navigation application")
4858 (home-page "https://wiki.gnome.org/Projects/Caribou")
4859 (description
4860 "Caribou is an input assistive technology intended for switch and pointer
4861users.")
4862 (license license:lgpl2.1)))
ba5dd105 4863
ba5dd105
SB
4864(define-public network-manager
4865 (package
4866 (name "network-manager")
856ca567 4867 (version "1.8.0")
ba5dd105
SB
4868 (source (origin
4869 (method url-fetch)
4870 (uri (string-append "mirror://gnome/sources/NetworkManager/"
4871 (version-major+minor version) "/"
4872 "NetworkManager-" version ".tar.xz"))
4873 (sha256
4874 (base32
856ca567 4875 "17pn7kzilyl0qk525gp9xnbz4x0ssrdmgk1lvw95pyfd6rm5qnps"))
fd070f35
CM
4876 (snippet
4877 '(begin
4878 (use-modules (guix build utils))
4879 (substitute* "configure"
4880 ;; Replace libsystemd-login with libelogind.
4881 (("libsystemd-login") "libelogind"))
4882 (substitute* "src/devices/wwan/nm-modem-manager.c"
4883 (("systemd") "elogind"))
4884 (substitute* "src/nm-session-monitor.c"
4885 (("systemd") "elogind"))
4886 (substitute* "./src/nm-logging.c"
4887 (("systemd") "elogind"))))))
ba5dd105
SB
4888 (build-system gnu-build-system)
4889 (outputs '("out"
4890 "doc")) ; 8 MiB of gtk-doc HTML
4891 (arguments
4892 '(#:configure-flags
4893 (let ((out (assoc-ref %outputs "out"))
4894 (doc (assoc-ref %outputs "doc"))
4895 (dhclient (string-append (assoc-ref %build-inputs "isc-dhcp")
4896 "/sbin/dhclient")))
fd070f35
CM
4897 (list "--with-systemd-logind=yes" ;In GuixSD, this is provided by elogind.
4898 "--with-consolekit=no"
4899 "--with-crypto=gnutls"
ba5dd105
SB
4900 "--disable-config-plugin-ibft"
4901 "--sysconfdir=/etc"
4902 "--localstatedir=/var"
4903 (string-append "--with-udev-dir="
4904 out "/lib/udev")
4905 (string-append "--with-dbus-sys-dir="
4906 out "/etc/dbus-1/system.d")
4907 (string-append "--with-html-dir="
4908 doc "/share/gtk-doc/html")
4909 (string-append "--with-dhclient=" dhclient)))
4910 #:phases
4911 (modify-phases %standard-phases
b4f59d87
AW
4912 (add-before 'configure 'pre-configure
4913 (lambda _
4914 ;; These tests try to test aspects of network-manager's
4915 ;; functionality within restricted containers, but they don't
4916 ;; cope with being already in the Guix build jail as that jail
4917 ;; lacks some features that they would like to proxy over (like
4918 ;; a /sys mount).
d04687dc
HG
4919 (substitute* '("Makefile.in")
4920 (("src/platform/tests/test-address-linux") " ")
4921 (("src/platform/tests/test-cleanup-linux") " ")
4922 (("src/platform/tests/test-link-linux") " ")
4923 (("src/platform/tests/test-route-linux") " ")
4924 (("src/devices/tests/test-arping") " ")
4925 (("src/devices/tests/test-lldp") " ")
4926 (("src/tests/test-route-manager-linux") " "))
b4f59d87 4927 #t))
ba5dd105
SB
4928 (add-before 'check 'pre-check
4929 (lambda _
4930 ;; For the missing /etc/machine-id.
4931 (setenv "DBUS_FATAL_WARNINGS" "0")
4932 #t))
4933 (replace 'install
4934 (lambda _
4935 (zero? (system* "make"
4936 "sysconfdir=/tmp"
142bdcbc
SB
4937 "rundir=/tmp"
4938 "statedir=/tmp"
d04687dc 4939 "nmstatedir=/tmp/nm"
ba5dd105 4940 "install")))))))
b93502d6
DC
4941 (propagated-inputs
4942 `(("glib" ,glib)))
ba5dd105
SB
4943 (native-inputs
4944 `(("glib:bin" ,glib "bin") ; for gdbus-codegen
4945 ("gobject-introspection" ,gobject-introspection)
d04687dc 4946 ("docbook-xsl" ,docbook-xsl)
ba5dd105 4947 ("intltool" ,intltool)
d04687dc
HG
4948 ("libxslt" ,libxslt)
4949 ("libxml2" ,libxml2)
ba5dd105
SB
4950 ("pkg-config" ,pkg-config)
4951 ;; For testing.
4952 ("python" ,python-wrapper)
4953 ("python-dbus" ,python-dbus)
4954 ("python-pygobject" ,python-pygobject)))
4955 (inputs
856ca567
KK
4956 `(("curl" ,curl)
4957 ("cyrus-sasl" ,cyrus-sasl)
4958 ("dbus-glib" ,dbus-glib)
ba5dd105 4959 ("dnsmasq" ,dnsmasq)
856ca567 4960 ("eudev" ,eudev)
ba5dd105
SB
4961 ("gnutls" ,gnutls)
4962 ("iptables" ,iptables)
4963 ("isc-dhcp" ,isc-dhcp)
d04687dc 4964 ("jansson" ,jansson)
ba5dd105
SB
4965 ("libgcrypt" ,libgcrypt)
4966 ("libgudev" ,libgudev)
4967 ("libndp" ,libndp)
4968 ("libnl" ,libnl)
4969 ("libsoup" ,libsoup)
142bdcbc 4970 ("modem-manager" ,modem-manager)
c27e02bf 4971 ("newt" ,newt) ;for the 'nmtui' console interface
ba5dd105
SB
4972 ("polkit" ,polkit)
4973 ("ppp" ,ppp)
4974 ("readline" ,readline)
fd070f35
CM
4975 ("util-linux" ,util-linux)
4976 ("elogind" ,elogind)))
ba5dd105 4977 (synopsis "Network connection manager")
f032d0be 4978 (home-page "https://www.gnome.org/projects/NetworkManager/")
ba5dd105
SB
4979 (description
4980 "NetworkManager is a system network service that manages your network
4981devices and connections, attempting to keep active network connectivity when
4982available. It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
4983devices, and provides VPN integration with a variety of different VPN
4984services.")
29d2f451
LC
4985 (license license:gpl2+)
4986 (properties '((upstream-name . "NetworkManager")))))
4d62a9d3 4987
e5e1df4d
DC
4988(define-public mobile-broadband-provider-info
4989 (package
4990 (name "mobile-broadband-provider-info")
4991 (version "20151214")
4992 (source (origin
4993 (method url-fetch)
4994 (uri (string-append
4995 "mirror://gnome/sources/"
4996 "mobile-broadband-provider-info/" version "/"
4997 "mobile-broadband-provider-info-" version ".tar.xz"))
4998 (sha256
4999 (base32
5000 "1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a"))))
5001 (build-system gnu-build-system)
5002 (arguments
5003 `(#:tests? #f)) ; No tests
5004 (home-page "https://wiki.gnome.org/Projects/NetworkManager")
5005 (synopsis "Database of broadband connection configuration")
5006 (description "Database of broadband connection configuration.")
5007 (license license:public-domain)))
5008
4d62a9d3
SB
5009(define-public network-manager-applet
5010 (package
5011 (name "network-manager-applet")
240cee8a 5012 (version "1.8.2")
4d62a9d3
SB
5013 (source (origin
5014 (method url-fetch)
5015 (uri (string-append "mirror://gnome/sources/" name "/"
5016 (version-major+minor version) "/"
5017 name "-" version ".tar.xz"))
5018 (sha256
5019 (base32
240cee8a 5020 "09f9hjpn9nkhw57mk6pi7q1bq3lhf5hvmwas0fknscssak7yjmry"))))
4d62a9d3 5021 (build-system glib-or-gtk-build-system)
240cee8a 5022 (arguments '(#:configure-flags '("--disable-migration")))
4d62a9d3
SB
5023 (native-inputs
5024 `(("intltool" ,intltool)
5025 ("gobject-introspection" ,gobject-introspection)
5026 ("pkg-config" ,pkg-config)))
5027 (propagated-inputs
5028 ;; libnm-gtk.pc refers to all these.
5029 `(("dbus-glib" ,dbus-glib)
5030 ("gtk+" ,gtk+)
5031 ("network-manager" ,network-manager)))
5032 (inputs
5033 `(("iso-codes" ,iso-codes)
5034 ("libgudev" ,libgudev)
5035 ("libnotify" ,libnotify)
2116bfb3 5036 ("libsecret" ,libsecret)
240cee8a
KK
5037 ("libselinux" ,libselinux)
5038 ("jansson" ,jansson) ; for team support
5039 ("modem-manager" ,modem-manager)))
4d62a9d3 5040 (synopsis "Applet for managing network connections")
f032d0be 5041 (home-page "https://www.gnome.org/projects/NetworkManager/")
4d62a9d3
SB
5042 (description
5043 "This package contains a systray applet for NetworkManager. It displays
5044the available networks and allows users to easily switch between them.")
5045 (license license:gpl2+)))
56196594
RW
5046
5047(define-public libxml++
5048 (package
5049 (name "libxml++")
8344a85e 5050 (version "3.0.1")
56196594
RW
5051 (source (origin
5052 (method url-fetch)
5053 (uri (string-append "mirror://gnome/sources/" name "/"
5054 (version-major+minor version) "/"
5055 name "-" version ".tar.xz"))
5056 (sha256
5057 (base32
8344a85e 5058 "19kik79fmg61nv0by0a5f9wchrcfjwzvih4v2waw01hqflhqvp0r"))))
56196594
RW
5059 (build-system gnu-build-system)
5060 ;; libxml++-3.0.pc refers to all these.
5061 (propagated-inputs
5062 `(("libxml2" ,libxml2)
5063 ("glibmm" ,glibmm)))
5064 (native-inputs
5065 `(("perl" ,perl)
5066 ("pkg-config" ,pkg-config)))
5067 (home-page "http://libxmlplusplus.sourceforge.net/")
5068 (synopsis "C++ wrapper for XML parser library libxml2")
5069 (description
5070 "This package provides a C++ wrapper for the XML parser library
5071libxml2.")
5072 (license license:lgpl2.1+)))
df12f04a 5073
b61d9627
AW
5074(define-public libxml++-2
5075 (package
5076 (inherit libxml++)
5077 (name "libxml++")
5078 (version "2.40.1")
5079 (source (origin
5080 (method url-fetch)
5081 (uri (string-append "mirror://gnome/sources/" name "/"
5082 (version-major+minor version) "/"
5083 name "-" version ".tar.xz"))
5084 (sha256
5085 (base32
5086 "1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a"))))))
5087
df12f04a
SB
5088(define-public gdm
5089 (package
5090 (name "gdm")
8f37813e 5091 (version "3.24.2")
df12f04a
SB
5092 (source (origin
5093 (method url-fetch)
5094 (uri (string-append "mirror://gnome/sources/" name "/"
5095 (version-major+minor version) "/"
5096 name "-" version ".tar.xz"))
5097 (sha256
5098 (base32
8f37813e 5099 "1s2xzrwcjhfb4ra8jrxqfycs1jpv97id0f6idb2h6vjkspxbjy23"))))
df12f04a
SB
5100 (build-system gnu-build-system)
5101 (arguments
5102 '(#:configure-flags
5103 '("--without-plymouth")
5104 #:phases
5105 (modify-phases %standard-phases
5106 (add-before
5107 'configure 'pre-configure
5108 (lambda _
5109 ;; We don't have <systemd/sd-daemon.h>.
5110 (substitute* '("common/gdm-log.c"
5111 "daemon/gdm-server.c"
5112 "daemon/gdm-session-worker.c"
5113 "daemon/gdm-session-worker-job.c")
5114 (("#include <systemd/sd-daemon\\.h>") ""))
5115 ;; Use elogind for sd-login.
5116 (substitute* '("common/gdm-common.c"
5117 "daemon/gdm-manager.c"
5118 "libgdm/gdm-user-switching.c")
5119 (("#include <systemd/sd-login\\.h>")
5120 "#include <elogind/sd-login.h>"))
5121 ;; Avoid checking SYSTEMD using pkg-config.
5122 (setenv "SYSTEMD_CFLAGS" " ")
5123 (setenv "SYSTEMD_LIBS" "-lelogind")
5124 #t)))))
5125 (native-inputs
5126 `(("dconf" ,dconf)
5127 ("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5128 ("gobject-introspection" ,gobject-introspection)
5129 ("intltool" ,intltool)
5130 ("itstool" ,itstool)
5131 ("pkg-config" ,pkg-config)
5132 ("xmllint" ,libxml2)))
5133 (inputs
5134 `(("accountsservice" ,accountsservice)
5135 ("check" ,check) ; for testing
5136 ("elogind" ,elogind)
5137 ("gtk+" ,gtk+)
5138 ("iso-codes" ,iso-codes)
5139 ("libcanberra" ,libcanberra)
5140 ("linux-pam" ,linux-pam)))
5141 (synopsis "Display manager for GNOME")
f032d0be 5142 (home-page "https://wiki.gnome.org/Projects/GDM/")
df12f04a
SB
5143 (description
5144 "GNOME Display Manager is a system service that is responsible for
5145providing graphical log-ins and managing local and remote displays.")
5146 (license license:gpl2+)))
8e1dd04f
SB
5147
5148(define-public libgtop
5149 (package
5150 (name "libgtop")
6206db89 5151 (version "2.36.0")
8e1dd04f
SB
5152 (source (origin
5153 (method url-fetch)
5154 (uri (string-append "mirror://gnome/sources/" name "/"
5155 (version-major+minor version) "/"
5156 name "-" version ".tar.xz"))
5157 (sha256
5158 (base32
6206db89 5159 "0ax17c7nplghxgsf8zl92nmhkbnggj62wwzl7nq00aqb2m6f7gqk"))))
8e1dd04f
SB
5160 (build-system gnu-build-system)
5161 (native-inputs
5162 `(("gobject-introspection" ,gobject-introspection)
5163 ("intltool" ,intltool)
5164 ("perl" ,perl)
5165 ("pkg-config" ,pkg-config)))
5166 (propagated-inputs
5167 `(("glib" ,glib))) ; required by libgtop-2.0.pc
5168 (synopsis "Portable system access library")
5169 (home-page "https://www.gnome.org/")
5170 (description
5171 "LibGTop is a library to get system specific data such as CPU and memory
5172usage and information about running processes.")
5173 (license license:gpl2+)))
b96c4260
SB
5174
5175(define-public gnome-bluetooth
5176 (package
5177 (name "gnome-bluetooth")
f8cb2fbf 5178 (version "3.20.1")
b96c4260
SB
5179 (source (origin
5180 (method url-fetch)
5181 (uri (string-append "mirror://gnome/sources/" name "/"
5182 (version-major+minor version) "/"
5183 name "-" version ".tar.xz"))
5184 (sha256
5185 (base32
f8cb2fbf 5186 "1zlqcz6jz4vzzr8gd1678i9s4015kiwcpr5szrwz4kmryfsm147a"))))
b96c4260
SB
5187 (build-system glib-or-gtk-build-system)
5188 (native-inputs
5189 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
5190 ("gobject-introspection" ,gobject-introspection)
5191 ("intltool" ,intltool)
5192 ("pkg-config" ,pkg-config)
5193 ("xmllint" ,libxml2)))
5194 (propagated-inputs
5195 ;; gnome-bluetooth-1.0.pc refers to all these.
5196 `(("gtk+" ,gtk+)
5197 ("udev" ,eudev)))
5198 (inputs
5199 `(("libcanberra" ,libcanberra)
5200 ("libnotify" ,libnotify)))
5201 (synopsis "GNOME Bluetooth subsystem")
5202 (home-page "https://wiki.gnome.org/Projects/GnomeBluetooth")
5203 (description
5204 "This package contains tools for managing and manipulating Bluetooth
5205devices using the GNOME desktop.")
5206 (license license:lgpl2.1+)))
b645146f
SB
5207
5208(define-public gnome-control-center
5209 (package
5210 (name "gnome-control-center")
44da12be 5211 (version "3.24.2")
b645146f
SB
5212 (source (origin
5213 (method url-fetch)
5214 (uri (string-append "mirror://gnome/sources/" name "/"
5215 (version-major+minor version) "/"
5216 name "-" version ".tar.xz"))
5217 (sha256
5218 (base32
44da12be 5219 "0awga40jh6gvn335mn6kyl6yg79frap1znrsz3sw2m27yldlnaiq"))))
b645146f
SB
5220 (build-system glib-or-gtk-build-system)
5221 (arguments
5222 '(#:phases
5223 (modify-phases %standard-phases
5224 (add-before 'configure 'patch-paths
5225 (lambda* (#:key inputs #:allow-other-keys)
5226 (let ((libc (assoc-ref inputs "libc"))
5227 (tzdata (assoc-ref inputs "tzdata")))
5228 (substitute* "panels/datetime/tz.h"
5229 (("/usr/share/zoneinfo/zone.tab")
5230 (string-append tzdata "/share/zoneinfo/zone.tab")))
5231 (substitute* "panels/datetime/test-endianess.c"
5232 (("/usr/share/locale")
5233 (string-append libc "/share/locale")))
5234 #t))))))
5235 (native-inputs
5236 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
5237 ("intltool" ,intltool)
5238 ("pkg-config" ,pkg-config)
5239 ("xsltproc" ,libxslt)))
5240 (inputs
5241 `(("accountsservice" ,accountsservice)
5242 ("clutter-gtk" ,clutter-gtk)
5243 ("colord-gtk" ,colord-gtk)
5244 ("cups" ,cups)
5245 ("dconf" ,dconf)
5246 ("docbook-xsl" ,docbook-xsl)
3446ffb5 5247 ("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files
b645146f
SB
5248 ("gnome-bluetooth" ,gnome-bluetooth)
5249 ("gnome-desktop" ,gnome-desktop)
5250 ("gnome-online-accounts" ,gnome-online-accounts)
5251 ("gnome-settings-daemon" ,gnome-settings-daemon)
5252 ("grilo" ,grilo)
5253 ("ibus" ,ibus)
5254 ("libcanberra" ,libcanberra)
5255 ("libgudev" ,libgudev)
5256 ("libgtop" ,libgtop)
5257 ("libpwquality" ,libpwquality)
5258 ("libsoup" ,libsoup)
5259 ("libxml2" ,libxml2)
5260 ("libwacom" ,libwacom)
5261 ("mesa" ,mesa)
5262 ("mit-krb5" ,mit-krb5)
5263 ("modem-manager" ,modem-manager)
5264 ("network-manager-applet" ,network-manager-applet)
5265 ("polkit" ,polkit)
5266 ("pulseaudio" ,pulseaudio)
5267 ("smbclient" ,samba)
5268 ("tzdata" ,tzdata)
5269 ("upower" ,upower)))
5270 (synopsis "Utilities to configure the GNOME desktop")
5271 (home-page "https://www.gnome.org/")
5272 (description
5273 "This package contains configuration applets for the GNOME desktop,
5274allowing to set accessibility configuration, desktop fonts, keyboard and mouse
5275properties, sound setup, desktop theme and background, user interface
5276properties, screen resolution, and other GNOME parameters.")
5277 (license license:gpl2+)))
a4df5756
SB
5278
5279(define-public gnome-shell
5280 (package
5281 (name "gnome-shell")
ce1e6de0 5282 (version "3.24.2")
a4df5756
SB
5283 (source (origin
5284 (method url-fetch)
5285 (uri (string-append "mirror://gnome/sources/" name "/"
5286 (version-major+minor version) "/"
5287 name "-" version ".tar.xz"))
5288 (sha256
5289 (base32
ce1e6de0 5290 "1xp2ccmdrvzlczsrcplykwqwx2v4lbmkr0rxyylb06danlw9mivh"))))
a4df5756
SB
5291 (build-system glib-or-gtk-build-system)
5292 (arguments
5293 '(#:phases
5294 (modify-phases %standard-phases
5295 (replace 'install
5296 (lambda* (#:key outputs #:allow-other-keys)
5297 (let* ((out (assoc-ref outputs "out"))
5298 (keysdir (string-append
5299 out "/share/gnome-control-center/keybindings")))
5300 (zero? (system* "make"
5301 (string-append "keysdir=" keysdir)
5302 "install")))))
5303 (add-after
5304 'install 'wrap-programs
5305 (lambda* (#:key outputs #:allow-other-keys)
5306 (let ((out (assoc-ref outputs "out"))
5307 (gi-typelib-path (getenv "GI_TYPELIB_PATH"))
5308 (python-path (getenv "PYTHONPATH")))
5309 (wrap-program (string-append out "/bin/gnome-shell")
5310 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
5311 (for-each
5312 (lambda (prog)
5313 (wrap-program (string-append out "/bin/" prog)
5314 `("PYTHONPATH" ":" prefix (,python-path))
5315 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5316 '("gnome-shell-extension-tool" "gnome-shell-perf-tool"))
5317 #t))))))
5318 (native-inputs
5319 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5320 ("gobject-introspection" ,gobject-introspection)
5321 ("intltool" ,intltool)
5322 ("pkg-config" ,pkg-config)
5323 ("python" ,python)
5324 ("xsltproc" ,libxslt)))
5325 (inputs
5326 `(("accountsservice" ,accountsservice)
5327 ("caribou" ,caribou)
5328 ("docbook-xsl" ,docbook-xsl)
5329 ("evolution-data-server" ,evolution-data-server)
5330 ("gcr" ,gcr)
5331 ("gdm" ,gdm)
5332 ("gjs" ,gjs)
5333 ("gnome-bluetooth" ,gnome-bluetooth)
5334 ("gnome-control-center" ,gnome-control-center)
5335 ("gnome-desktop" ,gnome-desktop)
5336 ("gnome-settings-daemon" ,gnome-settings-daemon)
5337 ("gst-plugins-base" ,gst-plugins-base)
5338 ("ibus" ,ibus)
5339 ("libcanberra" ,libcanberra)
5340 ("libcroco" ,libcroco)
5341 ("libgweather" ,libgweather)
5342 ("libsoup" ,libsoup)
5343 ("mesa-headers" ,mesa-headers)
5344 ("mutter" ,mutter)
5345 ("network-manager-applet" ,network-manager-applet)
5346 ("polkit" ,polkit)
5347 ("pulseaudio" ,pulseaudio)
5348 ("python-pygobject" ,python-pygobject)
5349 ("startup-notification" ,startup-notification)
5350 ("telepathy-logger" ,telepathy-logger)
5351 ("upower" ,upower)
30e760f0
MB
5352 ;; XXX: These requirements were added in 3.24, but no mention in NEWS.
5353 ;; Missing propagation? See also: <https://bugs.gnu.org/27264>
5354 ("librsvg" ,librsvg)
5355 ("geoclue" ,geoclue)
a4df5756
SB
5356 ;; XXX: required by libgjs.la.
5357 ("readline" ,readline)))
5358 (synopsis "Desktop shell for GNOME")
5359 (home-page "https://wiki.gnome.org/Projects/GnomeShell")
5360 (description
5361 "GNOME Shell provides core user interface functions for the GNOME desktop,
5362like switching to windows and launching applications.")
5363 (license license:gpl2+)))
c3f29bc9
RS
5364
5365(define-public gtk-vnc
5366 (package
5367 (name "gtk-vnc")
26653538 5368 (version "0.7.0")
c3f29bc9
RS
5369 (source
5370 (origin
5371 (method url-fetch)
5372 (uri (string-append "mirror://gnome/sources/" name "/"
5373 (version-major+minor version) "/"
5374 name "-" version ".tar.xz"))
5375 (sha256
5376 (base32
26653538 5377 "0gj8dpy3sj4dp810gy67spzh5f0jd8aqg69clcwqjcskj1yawbiw"))))
c3f29bc9
RS
5378 (build-system gnu-build-system)
5379 (arguments
5380 '(#:configure-flags '("--with-gtk=3.0")))
5381 (propagated-inputs
5382 `(("gtk+" ,gtk+))) ; required by gtk-vnc-2.0.pc.
5383 (inputs
5384 `(("cyrus-sasl" ,cyrus-sasl)
5385 ("gnutls" ,gnutls)
5386 ("libgcrypt" ,libgcrypt)
5387 ("pulseaudio" ,pulseaudio)))
5388 (native-inputs
5389 `(("glib:bin" ,glib "bin")
5390 ("gobject-introspection" ,gobject-introspection)
5391 ("intltool" ,intltool)
5392 ("pkg-config" ,pkg-config)
5393 ("vala" ,vala)))
5394 (home-page "https://wiki.gnome.org/Projects/gtk-vnc")
5395 (synopsis "VNC viewer widget for GTK+")
5396 (description
5397 "GTK-VNC is a VNC viewer widget for GTK+, used by remote desktop viewing
5398applications, for instance the Vinagre client, GNOME Boxes and virt-viewer.
5399GTK-VNC implements client side RFB protocol and authentication extensions such
5400as SASL, TLS and VeNCrypt. Additionally it supports encoding extensions.")
5401 (license license:lgpl2.1+)))
8b877545 5402
dc69fe18
MW
5403(define-public gnome-autoar
5404 (package
5405 (name "gnome-autoar")
4063a40a 5406 (version "0.2.2")
dc69fe18
MW
5407 (source (origin
5408 (method url-fetch)
5409 (uri (string-append "mirror://gnome/sources/" name "/"
5410 (version-major+minor version) "/"
5411 name "-" version ".tar.xz"))
5412 (sha256
5413 (base32
4063a40a 5414 "0qnafiwgajsaryh669lfclb4f6z5n1r9r4zhig1ha0ykxq32rzp1"))))
dc69fe18
MW
5415 (build-system glib-or-gtk-build-system)
5416 (native-inputs
5417 `(("gnome-common" ,gnome-common)
5418 ("gobject-introspection" ,gobject-introspection)
5419 ("pkg-config" ,pkg-config)))
5420 (propagated-inputs
5421 `(("libarchive" ,libarchive))) ; XXX document why
5422 (inputs
5423 `(("gtk+" ,gtk+)
5424 ("nettle" ,nettle))) ; XXX: required by libarchive.pc
5425 (synopsis "Archives integration support for GNOME")
5426 (home-page "https://git.gnome.org/browse/gnome-autoar/")
5427 (description
5428 "GNOME Autoar is a library which makes creating and extracting archives
5429easy, safe, and automatic.")
5430 (license license:lgpl2.1+)))
5431
b64e217f
MW
5432(define-public tracker
5433 (package
5434 (name "tracker")
0ef48cd9 5435 (version "1.12.0")
b64e217f
MW
5436 (source (origin
5437 (method url-fetch)
5438 (uri (string-append "mirror://gnome/sources/" name "/"
5439 (version-major+minor version) "/"
5440 name "-" version ".tar.xz"))
5441 (sha256
5442 (base32
0ef48cd9 5443 "0vsrzzkcfvmylhpk1ww6xdx8z9sgjs0gn74gz82qngjyq3c3s6c3"))))
b64e217f
MW
5444 (build-system glib-or-gtk-build-system)
5445 (native-inputs
5446 `(("gnome-common" ,gnome-common)
5447 ("gobject-introspection" ,gobject-introspection)
5448 ("intltool" ,intltool)
5449 ("pkg-config" ,pkg-config)
5450 ("vala" ,vala)))
5451 (inputs
5452 `(("gtk+" ,gtk+)
5453 ("dbus" ,dbus)
5454 ("gstreamer" ,gstreamer)
5455 ("gst-plugins-base" ,gst-plugins-base)
5456 ("sqlite" ,sqlite)
5457 ("nettle" ,nettle) ; XXX why is this needed?
5458 ("poppler" ,poppler)
5459 ("libgsf" ,libgsf)
5460 ("libexif" ,libexif)
5461 ("libpng" ,libpng)
5462 ("libtiff" ,libtiff)
5463 ("libvorbis" ,libvorbis)
5464 ("flac" ,flac)
5465 ("totem-pl-parser" ,totem-pl-parser)
5466 ("zlib" ,zlib)
5467 ("exempi" ,exempi)
5468 ("libxml2" ,libxml2)
5469 ("upower" ,upower)
b64e217f
MW
5470 ("libunistring" ,libunistring)
5471 ("giflib" ,giflib)
0ef48cd9 5472 ("json-glib" ,json-glib)
b64e217f
MW
5473 ("openjpeg" ,openjpeg-1)
5474 ("libosinfo" ,libosinfo)
5475 ("libcue" ,libcue)
5476 ("libseccomp" ,libseccomp)
0ef48cd9 5477 ("libsoup" ,libsoup)
b64e217f
MW
5478 ("libuuid" ,util-linux)))
5479 (arguments `(#:tests? #f)) ; XXX FIXME enable tests (some fail)
5480 (synopsis "Metadata database, indexer and search tool")
5481 (home-page "https://wiki.gnome.org/Projects/Tracker")
5482 (description
5483 "Tracker is an advanced framework for first class objects with associated
5484metadata and tags. It provides a one stop solution for all metadata, tags,
5485shared object databases, search tools and indexing.")
5486 ;; src/libtracker-*/* and src/tracker-extract/* are covered by lgpl2.1+,
5487 ;; src/gvdb/* are covered by lgpl2.0+, and the rest is gpl2+.
5488 (license (list license:gpl2+
5489 license:lgpl2.1+
5490 license:lgpl2.0+))))
5491
8b877545
RS
5492(define-public nautilus
5493 (package
5494 (name "nautilus")
0f6cf5a6 5495 (version "3.24.2.1")
8b877545
RS
5496 (source (origin
5497 (method url-fetch)
5498 (uri (string-append "mirror://gnome/sources/" name "/"
5499 (version-major+minor version) "/"
5500 name "-" version ".tar.xz"))
5501 (sha256
5502 (base32
0f6cf5a6 5503 "1cv138z04qx0fh1a2z2hvxy4p1x15vdv5gmkx5f3hb6c3w2rsz9m"))))
8b877545
RS
5504 (build-system glib-or-gtk-build-system)
5505 (arguments
6983ba56 5506 '(#:configure-flags
09d88905 5507 '("--disable-selinux") ; XXX: not packaged
8b877545
RS
5508 ;; XXX: FAIL: check-nautilus
5509 ;; Settings schema 'org.gnome.nautilus.preferences' is not installed
5510 #:tests? #f))
5511 (native-inputs
5512 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
5513 ("gobject-introspection" ,gobject-introspection)
5514 ("intltool" ,intltool)
5515 ("pkg-config" ,pkg-config)))
8b877545 5516 (inputs
8b877545 5517 `(("dconf" ,dconf)
dd05e731 5518 ("gvfs" ,gvfs)
8b877545
RS
5519 ("exempi" ,exempi)
5520 ("gnome-desktop" ,gnome-desktop)
09d88905
MW
5521 ("gnome-autoar" ,gnome-autoar)
5522 ("nettle" ,nettle) ; XXX required by libarchive.pc via gnome-autoar
5523 ("tracker" ,tracker)
ce6027bf
SB
5524 ;; XXX: gtk+ is required by libnautilus-extension.pc
5525 ;;
5526 ;; Don't propagate it to reduces "profile pollution" of the 'gnome' meta
5527 ;; package. See:
5528 ;; <http://lists.gnu.org/archive/html/guix-devel/2016-03/msg00283.html>.
5529 ("gtk+" ,gtk+)
8b877545
RS
5530 ("libexif" ,libexif)
5531 ("libxml2" ,libxml2)))
5532 (synopsis "File manager for GNOME")
5533 (home-page "https://wiki.gnome.org/Apps/Nautilus")
5534 (description
5535 "Nautilus (Files) is a file manager designed to fit the GNOME desktop
5536design and behaviour, giving the user a simple way to navigate and manage its
5537files.")
5538 (license license:gpl2+)))
3c697ffd
JR
5539
5540(define-public baobab
5541 (package
5542 (name "baobab")
9be54b15 5543 (version "3.24.0")
3c697ffd
JR
5544 (source (origin
5545 (method url-fetch)
5546 (uri (string-append
5547 "mirror://gnome/sources/" name "/"
5548 (version-major+minor version) "/"
5549 name "-" version ".tar.xz"))
5550 (sha256
5551 (base32
9be54b15 5552 "0gzwzn8p0agidjq3wnkxcsny6jhqph3yqscqjqd7blgkz5nyk02r"))))
3c697ffd
JR
5553 (build-system glib-or-gtk-build-system)
5554 (native-inputs
5555 `(("intltool" ,intltool)
5556 ("pkg-config" ,pkg-config)
5557 ("itstool" ,itstool)
5558 ("xmllint" ,libxml2)
5559 ("glib" ,glib "bin")
5560 ("vala" ,vala)))
5561 (inputs
5562 `(("gtk+" ,gtk+)))
5563 (synopsis "Disk usage analyzer for GNOME")
5564 (description
5565 "Baobab (Disk Usage Analyzer) is a graphical application to analyse disk
5566usage in the GNOME desktop environment. It can easily scan device volumes or
5567a specific user-requested directory branch (local or remote). Once the scan
5568is complete it provides a graphical representation of each selected folder.")
5569 (home-page "https://wiki.gnome.org/Apps/Baobab")
5570 (license license:gpl2+)))
dc050251 5571
fdba447c
RS
5572(define-public gnome-backgrounds
5573 (package
5574 (name "gnome-backgrounds")
2df65d37 5575 (version "3.24.0")
fdba447c
RS
5576 (source
5577 (origin
5578 (method url-fetch)
5579 (uri (string-append "mirror://gnome/sources/" name "/"
5580 (version-major+minor version) "/"
5581 name "-" version ".tar.xz"))
5582 (sha256
5583 (base32
2df65d37 5584 "1jkikis9k3psp6rb8axnqy86awdyg5rzfbcp9gx40a99b4hlrnnb"))))
fdba447c
RS
5585 (build-system glib-or-gtk-build-system)
5586 (native-inputs
5587 `(("intltool" ,intltool)))
5588 (home-page "https://git.gnome.org/browse/gnome-backgrounds")
5589 (synopsis "Background images for the GNOME desktop")
5590 (description
5591 "GNOME backgrounds package contains a collection of graphics files which
5592can be used as backgrounds in the GNOME Desktop environment. Additionally,
5593the package creates the proper framework and directory structure so that you
5594can add your own files to the collection.")
5595 (license (list license:gpl2+
5596 license:cc-by2.0
5597 license:cc-by-sa2.0
5598 license:cc-by-sa3.0))))
5599
b784b1a9
RS
5600(define-public gnome-screenshot
5601 (package
5602 (name "gnome-screenshot")
efa355bc 5603 (version "3.22.0")
b784b1a9
RS
5604 (source
5605 (origin
5606 (method url-fetch)
5607 (uri (string-append "mirror://gnome/sources/" name "/"
5608 (version-major+minor version) "/"
5609 name "-" version ".tar.xz"))
5610 (sha256
5611 (base32
efa355bc 5612 "0c02n1hgv21m4082jx399b1yazsc0cr07ba8k0pv8v3w7i5z21ca"))))
b784b1a9
RS
5613 (build-system glib-or-gtk-build-system)
5614 (native-inputs
5615 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
5616 ("intltool" ,intltool)
5617 ("pkg-config" ,pkg-config)))
5618 (inputs
5619 `(("gtk+" ,gtk+)
5620 ("libcanberra" ,libcanberra)
5621 ("libx11" ,libx11)
5622 ("libxext" ,libxext)))
5623 (home-page "https://git.gnome.org/browse/gnome-screenshot")
5624 (synopsis "Take pictures of your screen")
5625 (description
5626 "GNOME Screenshot is a utility used for taking screenshots of the entire
5627screen, a window or a user defined area of the screen, with optional
5628beautifying border effects.")
5629 (license license:gpl2+)))
5630
66d59111
RS
5631(define-public dconf-editor
5632 (package
5633 (name "dconf-editor")
123e8168 5634 (version "3.22.3")
66d59111
RS
5635 (source
5636 (origin
5637 (method url-fetch)
5638 (uri (string-append "mirror://gnome/sources/" name "/"
5639 (version-major+minor version) "/"
5640 name "-" version ".tar.xz"))
5641 (sha256
5642 (base32
123e8168 5643 "1939yq3fl55c2dqkc6nzp6cbpxq9sli74gdj0rj7c50pwvbngwam"))))
66d59111 5644 (build-system glib-or-gtk-build-system)
d25c1836
SB
5645 (arguments
5646 '(#:phases
5647 (modify-phases %standard-phases
5648 (add-before 'install 'skip-gtk-update-icon-cache
5649 (lambda _
5650 ;; Don't create 'icon-theme.cache'.
5651 (substitute* "editor/Makefile"
5652 (("gtk-update-icon-cache") "true"))
5653 #t)))))
66d59111
RS
5654 (native-inputs
5655 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
5656 ("intltool" ,intltool)
5657 ("pkg-config" ,pkg-config)))
5658 (inputs
5659 `(("dconf" ,dconf)
5660 ("gtk+" ,gtk+)
5661 ("libxml2" ,libxml2)))
5662 (home-page "https://git.gnome.org/browse/dconf-editor")
5663 (synopsis "Graphical editor for GNOME's dconf configuration system")
5664 (description
5665 "Dconf-editor is a graphical tool for browsing and editing the dconf
5666configuration system for GNOME. It allows users to configure desktop
5667software that do not provide their own configuration interface.")
5668 (license license:lgpl2.1+)))
5669
dc050251
SB
5670(define-public gnome
5671 (package
5672 (name "gnome")
5673 (version (package-version gnome-shell))
5674 (source #f)
5675 (build-system trivial-build-system)
5676 (arguments '(#:builder (mkdir %output)))
5677 (propagated-inputs
5678 ;; TODO: Add more packages according to:
5679 ;; <https://packages.debian.org/jessie/gnome-core>.
5680 `(("adwaita-icon-theme" ,adwaita-icon-theme)
05f651c4 5681 ("baobab" ,baobab)
0bd3597b 5682 ("font-cantarell" ,font-cantarell)
dc050251
SB
5683 ("at-spi2-core" ,at-spi2-core)
5684 ("dbus" ,dbus)
5685 ("dconf" ,dconf)
72360453 5686 ("desktop-file-utils" ,desktop-file-utils)
dc050251
SB
5687 ("eog" ,eog)
5688 ("epiphany" ,epiphany)
5689 ("evince" ,evince)
71d9b980 5690 ("file-roller" ,file-roller)
dc050251
SB
5691 ("gedit" ,gedit)
5692 ("glib-networking" ,glib-networking)
05f651c4 5693 ("gnome-backgrounds" ,gnome-backgrounds)
dc050251
SB
5694 ("gnome-control-center" ,gnome-control-center)
5695 ("gnome-keyring" ,gnome-keyring)
5696 ("gnome-session" ,gnome-session)
5697 ("gnome-settings-daemon" ,gnome-settings-daemon)
5698 ("gnome-shell" ,gnome-shell)
5699 ("gnome-terminal" ,gnome-terminal)
5700 ("gnome-themes-standard" ,gnome-themes-standard)
05f651c4 5701 ("gvfs" ,gvfs)
dc050251
SB
5702 ("hicolor-icon-theme" ,hicolor-icon-theme)
5703 ("nautilus" ,nautilus)
69308043 5704 ("pinentry-gnome3" ,pinentry-gnome3)
dc050251
SB
5705 ("pulseaudio" ,pulseaudio)
5706 ("shared-mime-info" ,shared-mime-info)
5707 ("totem" ,totem)
5708 ("yelp" ,yelp)
5709 ("zenity" ,zenity)))
fe4e698d 5710 (synopsis "The GNU desktop environment")
dc050251
SB
5711 (home-page "https://www.gnome.org/")
5712 (description
fe4e698d
LC
5713 "GNOME is the graphical desktop for GNU. It includes a wide variety of
5714applications for browsing the web, editing text and images, creating
5715documents and diagrams, playing media, scanning, and much more.")
dc050251 5716 (license license:gpl2+)))
4a526711
DT
5717
5718(define-public byzanz
5719 ;; The last stable release of Byzanz was in 2011, but there have been many
5720 ;; useful commits made to the Byzanz repository since then that it would be
5721 ;; silly to use such an old release.
5722 (let ((commit "f7af3a5bd252db84af8365bd059c117a7aa5c4af"))
5723 (package
5724 (name "byzanz")
5725 (version (string-append "0.2-1." (string-take commit 7)))
5726 (source (origin
5727 (method git-fetch)
5728 (uri (git-reference
5729 (url "git://git.gnome.org/byzanz")
5730 (commit commit)))
5a6527e4 5731 (file-name (string-append name "-" version "-checkout"))
4a526711
DT
5732 (sha256
5733 (base32
5734 "1l60myzxf9cav27v5v3nsijlslz9r7ip6d5kiirfpkf9k0w26hz3"))))
5735 (build-system glib-or-gtk-build-system)
5736 (arguments
5737 '(#:phases
5738 (modify-phases %standard-phases
5739 (add-after 'unpack 'bootstrap
5740 (lambda _
5741 ;; The build system cleverly detects that we're not building from
5742 ;; a release tarball and turns on -Werror for GCC.
5743 ;; Unsurprisingly, there is a warning during compilation that
5744 ;; causes the build to fail unnecessarily, so we remove the flag.
5745 (substitute* '("configure.ac")
5746 (("-Werror") ""))
5747 ;; The autogen.sh script in gnome-common will run ./configure
5748 ;; by default, which is problematic because source shebangs
5749 ;; have not yet been patched.
5750 (setenv "NOCONFIGURE" "t")
5751 (zero? (system* "sh" "autogen.sh")))))))
5752 (native-inputs
5753 `(("autoconf" ,autoconf)
5754 ("automake" ,automake)
5755 ("gnome-common" ,gnome-common)
5756 ("intltool" ,intltool)
5757 ("libtool" ,libtool)
5758 ("pkg-config" ,pkg-config)
5759 ("which" ,which)))
5760 (inputs
5761 `(("glib" ,glib)
5762 ("gstreamer" ,gstreamer)
5763 ("gst-plugins-base" ,gst-plugins-base)
5764 ("gtk+" ,gtk+)))
5765 (synopsis "Desktop recording program")
5766 (description "Byzanz is a simple desktop recording program with a
5767command-line interface. It can record part or all of an X display for a
5768specified duration and save it as a GIF encoded animated image file.")
5769 (home-page "https://git.gnome.org/browse/byzanz")
5770 (license license:gpl2+))))
3a9a4c51
RS
5771
5772(define-public libzapojit
5773 (package
5774 (name "libzapojit")
5775 (version "0.0.3")
5776 (source (origin
5777 (method url-fetch)
5778 (uri (string-append "mirror://gnome/sources/" name "/"
5779 (version-major+minor version) "/"
5780 name "-" version ".tar.xz"))
5781 (sha256
5782 (base32
5783 "0zn3s7ryjc3k1abj4k55dr2na844l451nrg9s6cvnnhh569zj99x"))))
5784 (build-system gnu-build-system)
5785 (native-inputs
5786 `(("gobject-introspection" ,gobject-introspection)
5787 ("intltool" ,intltool)
5788 ("pkg-config" ,pkg-config)))
5789 (inputs
5790 `(("gnome-online-accounts" ,gnome-online-accounts)
5791 ("json-glib" ,json-glib)
5792 ("rest" ,rest)))
5793 (home-page "https://wiki.gnome.org/Projects/Zapojit")
5794 (synopsis "Library for accessing SkyDrive and Hotmail")
5795 (description
5796 "Libzapojit is a GLib-based library for accessing online service APIs of
5797Microsoft SkyDrive and Hotmail, using their REST protocols.")
5798 (license license:lgpl2.1+)))
9365ee1c 5799
3c474897
KY
5800(define-public gnome-calendar
5801 (package
5802 (name "gnome-calendar")
a93f14ea 5803 (version "3.24.3")
3c474897
KY
5804 (source (origin
5805 (method url-fetch)
5806 (uri (string-append "mirror://gnome/sources/" name "/"
5807 (version-major+minor version) "/"
5808 name "-" version ".tar.xz"))
5809 (sha256
5810 (base32
a93f14ea 5811 "1v7k1wcl5yg9bd4l0rz0z03h32d35zgfp4qzz21widjcyis41jry"))))
3c474897
KY
5812 (build-system glib-or-gtk-build-system)
5813 (native-inputs
5814 `(("intltool" ,intltool)
5815 ("pkg-config" ,pkg-config)))
5816 (inputs
5817 `(("bdb" ,bdb)
5818 ("desktop-file-utils" ,desktop-file-utils)
5819 ("evolution-data-server" ,evolution-data-server)
4b8aae41
MW
5820 ("gnome-online-accounts" ,gnome-online-accounts)
5821 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
3c474897
KY
5822 (home-page "https://wiki.gnome.org/Apps/Calendar")
5823 (synopsis "GNOME's calendar application")
5824 (description
5825 "GNOME Calendar is a simple calendar application designed to fit the GNOME
5826desktop. It supports multiple calendars, monthly view and yearly view.")
5827 (license license:gpl3+)))
5828
ab179eaf
SB
5829(define-public gnome-dictionary
5830 (package
5831 (name "gnome-dictionary")
6e2fc6c7 5832 (version "3.24.0")
ab179eaf
SB
5833 (source (origin
5834 (method url-fetch)
5835 (uri (string-append "mirror://gnome/sources/" name "/"
5836 (version-major+minor version) "/"
5837 name "-" version ".tar.xz"))
5838 (sha256
5839 (base32
6e2fc6c7 5840 "1wnrpg8yndacq0xnzc84d519yp7f28brzklm3a48xcgs1i50drs1"))))
ab179eaf
SB
5841 (build-system glib-or-gtk-build-system)
5842 (native-inputs
5843 `(("glib:bin" ,glib "bin")
5844 ("gobject-introspection" ,gobject-introspection)
5845 ("intltool" ,intltool)
5846 ("itstool" ,itstool)
5847 ("pkg-config" ,pkg-config)
5848 ("xmllint" ,libxml2)))
5849 (inputs
5850 `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5851 ("gtk+" ,gtk+)))
5852 (home-page "https://wiki.gnome.org/Apps/Dictionary")
5853 (synopsis "Look up words in dictionary sources")
5854 (description
5855 "GNOME Dictionary can look for the definition or translation of a word in
5856existing databases over the internet.")
5857 (license license:gpl3+)))
5858
9365ee1c
JN
5859(define-public gnome-tweak-tool
5860 (package
5861 (name "gnome-tweak-tool")
a7850769 5862 (version "3.24.1")
9365ee1c
JN
5863 (source (origin
5864 (method url-fetch)
5865 (uri (string-append "mirror://gnome/sources/gnome-tweak-tool/"
5866 (version-major+minor version) "/"
5867 "gnome-tweak-tool-" version ".tar.xz"))
5868 (patches (list
5869 (search-patch "gnome-tweak-tool-search-paths.patch")))
5870 (sha256
5871 (base32
a7850769 5872 "0rgmm7n6jwc5hz64sprm4jxnky62hw839a7r18rn1mj884vnn8hr"))))
7ef335b0 5873 (build-system glib-or-gtk-build-system)
9365ee1c
JN
5874 (arguments
5875 `(#:configure-flags '("--localstatedir=/tmp"
5876 "--sysconfdir=/tmp")
5877 #:imported-modules ((guix build python-build-system)
7ef335b0 5878 ,@%glib-or-gtk-build-system-modules)
9365ee1c 5879 #:phases (modify-phases %standard-phases
9af6bce1
CB
5880 (add-after 'install 'wrap-program
5881 (lambda* (#:key outputs #:allow-other-keys)
5882 (let ((out (assoc-ref outputs "out"))
5883 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
5884 (wrap-program (string-append out "/bin/gnome-tweak-tool")
5885 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
5886 #t))
9365ee1c
JN
5887 (add-after 'install 'wrap
5888 (@@ (guix build python-build-system) wrap)))))
5889 (native-inputs
5890 `(("intltool" ,intltool)
5891 ("pkg-config" ,pkg-config)))
5892 (inputs
5893 `(("python" ,python-2)
adb41527 5894 ("python2-pygobject" ,python2-pygobject)
fab2784d
CB
5895 ("gnome-desktop" ,gnome-desktop)
5896 ("libsoup" ,libsoup)
adb41527 5897 ("libnotify" ,libnotify)
9365ee1c
JN
5898 ("gobject-introspection" ,gobject-introspection)
5899 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
5900 ("gtk+" ,gtk+)))
5901 (synopsis "Customize advanced GNOME 3 options")
5902 (home-page "https://wiki.gnome.org/action/show/Apps/GnomeTweakTool")
5903 (description
5904 "GNOME Tweak Tool allows adjusting advanced configuration settings in
5905GNOME 3. This includes things like the fonts used in user interface elements,
5906alternative user interface themes, changes in window management behavior,
5907GNOME Shell appearance and extension, etc.")
5908 (license license:gpl3+)))
813f814a 5909
32ac717c
DT
5910(define-public gnome-shell-extensions
5911 (package
5912 (name "gnome-shell-extensions")
a5b5fcae 5913 (version "3.24.2")
32ac717c
DT
5914 (source (origin
5915 (method url-fetch)
5916 (uri (string-append "mirror://gnome/sources/" name "/"
5917 (version-major+minor version) "/"
5918 name "-" version ".tar.xz"))
5919 (sha256
5920 (base32
a5b5fcae 5921 "10sg87wml5cmyk90pybnr6r942ba7173sl7yplhj2sfggp0wc74s"))))
32ac717c
DT
5922 (build-system gnu-build-system)
5923 (arguments
5924 '(#:configure-flags '("--enable-extensions=all")))
5925 (native-inputs
5926 `(("intltool" ,intltool)
5927 ("pkg-config" ,pkg-config)))
5928 (propagated-inputs
5929 `(("glib" ,glib)
5930 ("glib" ,glib "bin")))
5931 (synopsis "Extensions for GNOME Shell")
5932 (description "GNOME Shell extensions modify and extend GNOME Shell
5933functionality and behavior.")
5934 (home-page "https://extensions.gnome.org/")
5935 (license license:gpl3+)))
5936
813f814a
DT
5937(define-public arc-theme
5938 (package
5939 (name "arc-theme")
7967efc1 5940 (version "20170302")
813f814a
DT
5941 (source (origin
5942 (method url-fetch)
5943 (uri (string-append "https://github.com/horst3180/arc-theme"
5944 "/archive/" version ".tar.gz"))
5945 (file-name (string-append name "-" version ".tar.gz"))
5946 (sha256
5947 (base32
7967efc1 5948 "0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw"))))
813f814a
DT
5949 (build-system gnu-build-system)
5950 (arguments
5951 '(#:phases
5952 (modify-phases %standard-phases
5953 (add-after 'unpack 'bootstrap
5954 (lambda _
5955 (zero? (system* "autoreconf" "-vif")))))))
5956 (native-inputs
5957 `(("autoconf" ,autoconf)
5958 ("automake" ,automake)
5959 ("pkg-config" ,pkg-config)))
5960 (inputs
5961 `(("gtk+" ,gtk+)))
5962 (synopsis "A flat GTK+ theme with transparent elements")
5963 (description "Arc is a flat theme with transparent elements for GTK 3, GTK
59642, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments
5965like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.")
5966 (home-page "https://github.com/horst3180/arc-theme")
5967 ;; No "or later" language found.
5968 (license license:gpl3)))
9987c57c
DT
5969
5970(define-public moka-icon-theme
5971 (package
5972 (name "moka-icon-theme")
e4e52509 5973 (version "5.3.6")
9987c57c
DT
5974 (source (origin
5975 (method url-fetch)
5976 (uri (string-append "https://github.com/moka-project"
5977 "/moka-icon-theme/archive/v"
5978 version ".tar.gz"))
5979 (file-name (string-append name "-" version ".tar.gz"))
5980 (sha256
5981 (base32
e4e52509 5982 "04axinv79qnngsxkwqzi5j9lc3hn24rjqps5ai8d42pdnfaf0x37"))))
9987c57c
DT
5983 (build-system gnu-build-system)
5984 (arguments
5985 '(#:phases
5986 (modify-phases %standard-phases
5987 (add-after 'unpack 'patch-makefile.am
5988 (lambda _
5989 (substitute* '("Makefile.am")
5990 (("\\$\\(DESTDIR\\)/usr/share")
5991 "$(datadir)"))
5992 #t))
5993 (add-after 'patch-makefile.am 'bootstrap
5994 (lambda _
5995 (zero? (system* "autoreconf" "-vif")))))))
5996 (native-inputs
5997 `(("autoconf" ,autoconf)
5998 ("automake" ,automake)))
5999 (synopsis "Moka icon theme")
6000 (description "Moka is a stylized desktop icon set, designed to be clear,
6001simple and consistent.")
6002 (home-page "http://snwh.org/moka")
6003 (license license:gpl3+)))
6fd8f8d6
DT
6004
6005(define-public arc-icon-theme
6006 (package
6007 (name "arc-icon-theme")
c4180240 6008 (version "20161122")
6fd8f8d6
DT
6009 (source (origin
6010 (method url-fetch)
6011 (uri (string-append "https://github.com/horst3180/arc-icon-theme"
6012 "/archive/" version ".tar.gz"))
6013 (file-name (string-append name "-" version ".tar.gz"))
6014 (sha256
6015 (base32
c4180240 6016 "1ya1cqvv8q847c0rpcg6apzky87q3h04y8jz5nmi52qk6kg8si0b"))))
6fd8f8d6
DT
6017 (build-system gnu-build-system)
6018 (arguments
6019 '(#:phases
6020 (modify-phases %standard-phases
6021 (add-after 'unpack 'bootstrap
6022 (lambda _
6023 (zero? (system* "autoreconf" "-vif")))))))
6024 (native-inputs
6025 `(("autoconf" ,autoconf)
6026 ("automake" ,automake)))
6027 ;; When Arc is missing an icon, it looks in the Moka icon theme for it.
6028 (propagated-inputs
6029 `(("moka-icon-theme" ,moka-icon-theme)))
6030 (synopsis "Arc icon theme")
6031 (description "The Arc icon theme provides a set of icons matching the
6032style of the Arc GTK theme. Icons missing from the Arc theme are provided by
6033the Moka icon theme.")
6034 (home-page "https://github.com/horst3180/arc-icon-theme")
6035 (license license:gpl3+)))
6064a4e8
LF
6036
6037(define-public folks
6038 (package
6039 (name "folks")
6040 (version "0.11.2")
6041 (source (origin
6042 (method url-fetch)
6043 (uri (string-append
6044 "mirror://gnome/sources/" name "/"
6045 (version-major+minor version) "/"
6046 name "-" version ".tar.xz"))
6047 (sha256
6048 (base32
6049 "1f51albxgfqxbax57i3pcgv2fx7i419xaapzdvldas6gw100ma1m"))))
6050 (build-system glib-or-gtk-build-system)
6051 (inputs
6052 `(("bdb" ,bdb)
6053 ("dbus-glib" ,dbus-glib)
6054 ("evolution-data-server" ,evolution-data-server)
6055 ("glib" ,glib)
6056 ("libgee" ,libgee)
6057 ("telepathy-glib" ,telepathy-glib)))
6058 (native-inputs
6059 `(("gobject-introspection" ,gobject-introspection)
6060 ("intltool" ,intltool)
6061 ("pkg-config" ,pkg-config)
6062 ("vala" ,vala)))
6063 (synopsis "Library to aggregate data about people")
6064 (description "Libfolks is a library that aggregates information about people
6065from multiple sources (e.g., Telepathy connection managers for IM contacts,
6066Evolution Data Server for local contacts, libsocialweb for web service contacts,
6067etc.) to create metacontacts. It's written in Vala, which generates C code when
6068compiled.")
6069 (home-page "https://wiki.gnome.org/Projects/Folks")
6070 (license license:lgpl2.1+)))
01ea778f
LF
6071
6072(define-public gfbgraph
6073 (package
6074 (name "gfbgraph")
6075 (version "0.2.3")
6076 (source (origin
6077 (method url-fetch)
6078 (uri (string-append
6079 "mirror://gnome/sources/" name "/"
6080 (version-major+minor version) "/"
6081 name "-" version ".tar.xz"))
6082 (sha256
6083 (base32
6084 "1dp0v8ia35fxs9yhnqpxj3ir5lh018jlbiwifjfn8ayy7h47j4fs"))))
6085 (build-system glib-or-gtk-build-system)
6086 (arguments
6087 `(#:tests? #f ; Tests appear to require the network.
6088 ;; FIXME --enable-gtk-doc fails even with gtk-doc as a native-input.
6089 #:configure-flags '("--disable-gtk-doc"
6090 "--disable-static"
6091 "--enable-introspection")))
6092 (native-inputs
6093 `(("pkg-config" ,pkg-config)
6094 ("gobject-introspection" ,gobject-introspection)))
6095 (inputs
6096 `(("json-glib" ,json-glib)
6097 ("gnome-online-accounts" ,gnome-online-accounts)
6098 ("rest" ,rest)))
6099 (synopsis "GLib/GObject wrapper for the Facebook API")
6100 (description "This library allows you to use the Facebook API from
6101GLib/GObject code.")
6102 (home-page "https://wiki.gnome.org/Projects/GFBGraph")
6103 (license license:lgpl2.1+)))
3920868c 6104
6105(define-public libgnomekbd
6106 (package
6107 (name "libgnomekbd")
47b93ae5 6108 (version "3.22.0.1")
3920868c 6109 (source (origin
6110 (method url-fetch)
6111 (uri (string-append "mirror://gnome/sources/" name "/"
6112 (version-major+minor version) "/"
6113 name "-" version ".tar.xz"))
6114 (sha256
6115 (base32
47b93ae5 6116 "1plkkack6s8b21gcmmly0lapgcjz53dmw2vixnn4rw4jxjwbdzaf"))))
3920868c 6117 (build-system gnu-build-system)
6118 (native-inputs
6119 `(("pkg-config" ,pkg-config)
6120 ("glib" ,glib "bin")
6121 ("intltool" ,intltool)))
6122 (propagated-inputs
6123 ;; Referred to in .h files and .pc.
6124 `(("glib" ,glib)
6125 ("gtk+" ,gtk+)
6126 ("libxklavier" ,libxklavier)))
6127 (home-page "https://www.gnome.org")
6128 (synopsis "GNOME keyboard configuration library")
6129 (description
6130 "Libgnomekbd is a keyboard configuration library for the GNOME desktop
6131environment, which can notably display keyboard layouts.")
6132 (license license:lgpl2.0+)))
85327d0d 6133
6134;;; This package is no longer maintained:
6135;;; https://wiki.gnome.org/Attic/LibUnique
6136;;; "Unique is now in maintenance mode, and its usage is strongly discouraged.
6137;;; Applications should use the GtkApplication class provided by GTK+ 3.0."
6138(define-public libunique
6139 (package
6140 (name "libunique")
6141 (version "3.0.2")
6142 (source (origin
6143 (method url-fetch)
6144 (uri (string-append "mirror://gnome/sources/" name "/"
6145 (version-major+minor version) "/"
6146 name "-" version ".tar.xz"))
6147 (sha256
6148 (base32
6149 "0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58"))))
6150 (build-system glib-or-gtk-build-system)
6151 (arguments
6152 `(#:configure-flags '("--disable-static"
6153 "--disable-dbus" ; use gdbus
6154 "--enable-introspection")))
6155 (native-inputs
6156 `(("pkg-config" ,pkg-config)
6157 ("gobject-introspection" ,gobject-introspection)
6158 ("glib:bin" ,glib "bin")
6159 ("gtk-doc" ,gtk-doc)))
6160 (propagated-inputs
6161 ;; Referred to in .h files and .pc.
6162 `(("gtk+" ,gtk+)))
6163 (home-page "https://wiki.gnome.org/Attic/LibUnique")
6164 (synopsis "Library for writing single instance applications")
6165 (description
6166 "Libunique is a library for writing single instance applications. If you
6167launch a single instance application twice, the second instance will either just
6168quit or will send a message to the running instance. Libunique makes it easy to
6169write this kind of application, by providing a base class, taking care of all
6170the IPC machinery needed to send messages to a running instance, and also
6171handling the startup notification side.")
6172 (license license:lgpl2.1+)))
54021cd8
RS
6173
6174(define-public gnome-calculator
6175 (package
6176 (name "gnome-calculator")
2c2da7ec 6177 (version "3.24.0")
54021cd8
RS
6178 (source
6179 (origin
6180 (method url-fetch)
6181 (uri (string-append "mirror://gnome/sources/" name "/"
6182 (version-major+minor version) "/"
6183 name "-" version ".tar.xz"))
6184 (sha256
6185 (base32
2c2da7ec 6186 "041d40as8y0r5d0kk83dy842711zchydwwqh71kh1lpd373qlxa4"))))
54021cd8
RS
6187 (build-system glib-or-gtk-build-system)
6188 (native-inputs
6189 `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
6190 ("intltool" ,intltool)
6191 ("itstool" ,itstool)
6192 ("pkg-config" ,pkg-config)))
6193 (inputs
6194 `(("gtksourceview" ,gtksourceview)
6195 ("libsoup" ,libsoup)
2c2da7ec 6196 ("mpc" ,mpc)
54021cd8
RS
6197 ("mpfr" ,mpfr)))
6198 (home-page "https://wiki.gnome.org/Apps/Calculator")
6199 (synopsis "Desktop calculator")
6200 (description
6201 "Calculator is an application that solves mathematical equations and
6202is suitable as a default application in a Desktop environment.")
6203 (license license:gpl3)))
0bd69759
RS
6204
6205(define-public xpad
6206 (package
6207 (name "xpad")
6208 (version "4.8.0")
6209 (source
6210 (origin
6211 (method url-fetch)
6212 (uri (string-append "https://launchpad.net/xpad/trunk/4.8.0/+download/"
6213 name "-" version ".tar.bz2"))
6214 (sha256
6215 (base32
6216 "17f915yyvfa2fsavq6wh0q0dfhib28b4k1gc0292b9xdlrvy7f22"))))
6217 (build-system gnu-build-system)
6218 (native-inputs
6219 `(("intltool" ,intltool)
6220 ("pkg-config" ,pkg-config)))
6221 (inputs
6222 `(("gtk+" ,gtk+)
6223 ("gtksourceview" ,gtksourceview)
6224 ("libsm" ,libsm)))
6225 (home-page "https://wiki.gnome.org/Apps/Xpad")
6226 (synopsis "Virtual sticky note")
6227 (description
6228 "Xpad is a sticky note that strives to be simple, fault tolerant,
6229and customizable. Xpad consists of independent pad windows, each is
6230basically a text box in which notes can be written.")
6231 (license license:gpl3+)))
3ad7dce1
RS
6232
6233(define-public gucharmap
6234 (package
6235 (name "gucharmap")
6236 (version "3.18.0")
6237 (source
6238 (origin
6239 (method url-fetch)
6240 (uri (string-append "mirror://gnome/sources/" name "/"
6241 (version-major+minor version) "/"
6242 name "-" version ".tar.xz"))
6243 (sha256
6244 (base32
6245 "0c1q9w5vql0vvg6g0knxfnv4ap19fg5cdrwndi1cj9lsym92c78j"))))
6246 (build-system gnu-build-system)
6247 (native-inputs
6248 `(("desktop-file-utils" ,desktop-file-utils)
6249 ("glib:bin" ,glib "bin") ; for glib-compile-resources.
6250 ("gobject-introspection" ,gobject-introspection)
6251 ("intltool" ,intltool)
6252 ("itstool" ,itstool)
6253 ("pkg-config" ,pkg-config)))
6254 (inputs
6255 `(("gtk+" ,gtk+)
6256 ("xmllint" ,libxml2)))
6257 (home-page "https://wiki.gnome.org/Apps/Gucharmap")
6258 (synopsis "Unicode character picker and font browser")
6259 (description
6260 "This program allows you to browse through all the available Unicode
6261characters and categories for the installed fonts, and to examine their
6262detailed properties. It is an easy way to find the character you might
6263only know by its Unicode name or code point.")
6264 (license license:gpl3+)))
04ce840a
RS
6265
6266(define-public bluefish
6267 (package
6268 (name "bluefish")
6269 (version "2.2.9")
6270 (source
6271 (origin
6272 (method url-fetch)
6273 (uri (string-append "http://www.bennewitz.com/bluefish/stable/source/"
6274 name "-" version ".tar.gz"))
6275 (sha256
6276 (base32
6277 "1vnl6raxbvc4hacg3pr6sqyjh707d304dhk5nyhlp7m0m1y3j756"))))
6278 (build-system gnu-build-system)
6279 (native-inputs
6280 `(("desktop-file-utils" ,desktop-file-utils)
6281 ("intltool" ,intltool)
6282 ("pkg-config" ,pkg-config)))
6283 (inputs
6284 `(("enchant" ,enchant)
6285 ("gtk+" ,gtk+)
6286 ("python" ,python-2)
6287 ("xmllint" ,libxml2)
6288 ("gucharmap" ,gucharmap)))
6289 (home-page "http://bluefish.openoffice.nl")
6290 (synopsis "Web development studio")
6291 (description
6292 "Bluefish is an editor targeted towards programmers and web developers,
6293with many options to write web sites, scripts and other code.
6294Bluefish supports many programming and markup languages.")
6295 (license license:gpl3+)))
1f6a73ee
RS
6296
6297(define-public gnome-system-monitor
6298 (package
6299 (name "gnome-system-monitor")
155f0d69 6300 (version "3.24.0")
1f6a73ee
RS
6301 (source
6302 (origin
6303 (method url-fetch)
6304 (uri (string-append "mirror://gnome/sources/" name "/"
6305 (version-major+minor version) "/"
6306 name "-" version ".tar.xz"))
6307 (sha256
6308 (base32
155f0d69 6309 "1x3343hchkllj8wyifk844v8psi45kyjhphyd03fzahi4h34aay3"))))
1f6a73ee
RS
6310 (build-system glib-or-gtk-build-system)
6311 (native-inputs
6312 `(("glib:bin" ,glib "bin") ; for glib-mkenums.
6313 ("intltool" ,intltool)
6314 ("itstool" ,itstool)
6315 ("libgtop" ,libgtop)
6316 ("pkg-config" ,pkg-config)))
6317 (inputs
6318 `(("gdk-pixbuf" ,gdk-pixbuf) ; for loading SVG files.
6319 ("gtk+" ,gtk+)
6320 ("gtkmm" ,gtkmm)
6321 ("librsvg" ,librsvg)
6322 ("libxml2" ,libxml2)))
6323 (home-page "https://wiki.gnome.org/Apps/SystemMonitor")
6324 (synopsis "Process viewer and system resource monitor for GNOME")
6325 (description
6326 "GNOME System Monitor is a GNOME process viewer and system monitor with
6327an attractive, easy-to-use interface. It has features, such as a tree view
6328for process dependencies, icons for processes, the ability to hide processes,
6329graphical time histories of CPU/memory/swap usage and the ability to
6330kill/reinice processes.")
6331 (license license:gpl2+)))
3e00ac47
SB
6332
6333(define-public python-pyatspi
6334 (package
6335 (name "python-pyatspi")
6336 (version "2.24.0")
6337 (source (origin
6338 (method url-fetch)
6339 (uri (string-append
6340 "mirror://gnome/sources/pyatspi/"
6341 (version-major+minor version)
6342 "/pyatspi-" version ".tar.xz"))
6343 (sha256
6344 (base32
6345 "14m6y27ziqc9f6339gjz49mlsk6mrsyg4bkj055cdzc7sfjlgvz7"))))
6346 (build-system gnu-build-system)
6347 (native-inputs
6348 `(("pkg-config" ,pkg-config)))
6349 (inputs
6350 `(("python" ,python)
6351 ("python-pygobject" ,python-pygobject)))
6352 (synopsis "Python client bindings for D-Bus AT-SPI")
6353 (home-page "https://wiki.linuxfoundation.org/accessibility\
6354/atk/at-spi/at-spi_on_d-bus")
6355 (description
6356 "This package includes a python client library for the AT-SPI D-Bus
6357accessibility infrastructure.")
6358 (license license:lgpl2.0)
6359 (properties '((upstream-name . "pyatspi")))))
53201c0d
SB
6360
6361(define-public orca
6362 (package
6363 (name "orca")
6364 (version "3.24.0")
6365 (source (origin
6366 (method url-fetch)
6367 (uri (string-append
6368 "mirror://gnome/sources/" name "/"
6369 (version-major+minor version) "/"
6370 name "-" version ".tar.xz"))
6371 (sha256
6372 (base32
6373 "1la6f815drykrgqf791jx1dda6716cfv6052frqp7nhjxr75xg97"))))
6374 (build-system glib-or-gtk-build-system)
6375 (arguments
6376 '(#:phases
6377 (modify-phases %standard-phases
6378 (add-before 'configure 'qualify-xkbcomp
6379 (lambda* (#:key inputs #:allow-other-keys)
6380 (let ((xkbcomp (string-append
6381 (assoc-ref inputs "xkbcomp") "/bin/xkbcomp")))
6382 (substitute* "src/orca/orca.py"
6383 (("'xkbcomp'") (format #f "'~a'" xkbcomp))))
6384 #t))
6385 (add-after 'install 'wrap-orca
6386 (lambda* (#:key outputs #:allow-other-keys)
6387 (let* ((out (assoc-ref outputs "out"))
6388 (prog (string-append out "/bin/orca")))
6389 (wrap-program prog
6390 `("GI_TYPELIB_PATH" ":" prefix
6391 (,(getenv "GI_TYPELIB_PATH")))
6392 `("GST_PLUGIN_SYSTEM_PATH" ":" prefix
6393 (,(getenv "GST_PLUGIN_SYSTEM_PATH")))
6394 `("PYTHONPATH" ":" prefix
6395 (,(getenv "PYTHONPATH")))))
6396 #t)))))
6397 (native-inputs
6398 `(("intltool" ,intltool)
6399 ("itstool" ,itstool)
6400 ("pkg-config" ,pkg-config)
6401 ("xmllint" ,libxml2)))
6402 (inputs
6403 `(("at-spi2-atk" ,at-spi2-atk)
6404 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
6405 ("gstreamer" ,gstreamer)
6406 ("gst-plugins-base" ,gst-plugins-base)
6407 ("gst-plugins-good" ,gst-plugins-good)
6408 ("gtk+" ,gtk+)
6409 ("python" ,python)
6410 ("python-pygobject" ,python-pygobject)
6411 ("python-pyatspi" ,python-pyatspi)
6412 ("python-speechd" ,speech-dispatcher)
6413 ("xkbcomp" ,xkbcomp)))
6414 (synopsis
6415 "Screen reader for individuals who are blind or visually impaired")
6416 (home-page "https://wiki.gnome.org/Projects/Orca")
6417 (description
6418 "Orca is a screen reader that provides access to the graphical desktop
6419via speech and refreshable braille. Orca works with applications and toolkits
6420that support the Assistive Technology Service Provider Interface (AT-SPI).")
6421 (license license:lgpl2.1+)))
411ba511
LC
6422
6423(define-public gspell
6424 (package
6425 (name "gspell")
f54efbdc 6426 (version "1.4.1")
411ba511
LC
6427 (source (origin
6428 (method url-fetch)
6429 (uri (string-append "mirror://gnome/sources/" name "/"
6430 (version-major+minor version) "/"
6431 name "-" version ".tar.xz"))
6432 (sha256
6433 (base32
f54efbdc 6434 "1ghh1xdzf04mfgb13zqpj88krpa44xv2vbyhm6k017kzrpz8hbs4"))
411ba511
LC
6435 (patches (search-patches "gspell-dash-test.patch"))))
6436 (build-system glib-or-gtk-build-system)
6437 (arguments
6438 '(#:phases
6439 (modify-phases %standard-phases
6440 (add-before 'check 'pre-check
6441 (lambda* (#:key inputs #:allow-other-keys)
6442 ;; Tests require a running X server.
6443 (system "Xvfb :1 &")
6444 (setenv "DISPLAY" ":1")
6445
6446 ;; For the missing /etc/machine-id.
6447 (setenv "DBUS_FATAL_WARNINGS" "0")
6448
6449 ;; Allow Enchant and its Aspell backend to find the en_US
6450 ;; dictionary.
6451 (setenv "ASPELL_DICT_DIR"
6452 (string-append (assoc-ref inputs "aspell-dict-en")
6453 "/lib/aspell"))
6454 #t)))))
6455 (inputs
6456 `(("enchant" ,enchant)
411ba511 6457 ("gtk+" ,gtk+)
a801ae4c
TGR
6458 ("glib" ,glib)
6459 ("iso-codes" ,iso-codes)))
411ba511
LC
6460 (native-inputs
6461 `(("glib" ,glib "bin")
6462 ("pkg-config" ,pkg-config)
6463 ("xmllint" ,libxml2)
6464
6465 ;; For tests.
a801ae4c
TGR
6466 ("aspell-dict-en" ,aspell-dict-en)
6467 ("xorg-server" ,xorg-server)))
411ba511
LC
6468 (home-page "https://wiki.gnome.org/Projects/gspell")
6469 (synopsis "GNOME's alternative spell checker")
6470 (description
6471 "gspell provides a flexible API to add spell-checking to a GTK+
6472application. It provides a GObject API, spell-checking to text entries and
6473text views, and buttons to choose the language.")
6474 (license license:gpl2+)))
d1d739fa
CM
6475
6476(define-public gnome-planner
6477 (package
6478 (name "gnome-planner")
6479 (version "0.14.6")
6480 (source (origin
6481 (method url-fetch)
6482 (uri (string-append "mirror://gnome/sources/planner/"
6483 (version-major+minor version) "/planner-"
6484 version ".tar.xz"))
6485 (sha256
6486 (base32
6487 "15h6ps58giy5r1g66sg1l4xzhjssl362mfny2x09khdqsvk2j38k"))))
6488 (build-system glib-or-gtk-build-system)
6489 (arguments
6490 ;; Disable the Python bindings because the Planner program functions
6491 ;; without them, and (as of 2017-06-13) we have not packaged all of
6492 ;; packages that are necessary for building the Python bindings.
20b7b75c
EF
6493 `(#:configure-flags
6494 (list "--disable-python"
6495 ,@(if (string=? "aarch64-linux" (%current-system))
6496 '("--build=aarch64-unknown-linux-gnu")
6497 '()))))
d1d739fa
CM
6498 (inputs
6499 `(("libgnomecanvas" ,libgnomecanvas)
6500 ("libgnomeui" ,libgnomeui)
6501 ("libglade" ,libglade)
6502 ("gnome-vfs" ,gnome-vfs)
6503 ("gconf" ,gconf)
6504 ("libxml2" ,libxml2)
6505 ("libxslt" ,libxslt)
6506 ("gtk+" ,gtk+)
6507 ("glib" ,glib)))
6508 (native-inputs
6509 `(("intltool" ,intltool)
6510 ("scrollkeeper" ,scrollkeeper)
6511 ("pkg-config" ,pkg-config)))
6512 (home-page "https://wiki.gnome.org/Apps/Planner")
6513 (synopsis "Project management software for the GNOME desktop")
6514 (description
6515 "GNOME Planner is a project management tool based on the Work Breakdown
6516Structure (WBS). Its goal is to enable you to easily plan projects. Based on
6517the resources, tasks, and constraints that you define, Planner generates
6518various views into a project. For example, Planner can show a Gantt chart of
6519the project. It can show a detailed summary of tasks including their
6520duration, cost, and current progress. It can also show a report of resource
6521utilization that highlights under-utilized and over-utilized resources. These
6522views can be printed as PDF or PostScript files, or exported to HTML.")
4b926cb6 6523 (license license:gpl2+)))
64fce637
RS
6524
6525(define-public lollypop
6526 (package
6527 (name "lollypop")
6528 (version "0.9.240")
6529 (source
6530 (origin
6531 (method url-fetch)
6532 (uri (string-append "https://github.com/gnumdk/lollypop/"
6533 "releases/download/" version "/"
6534 name "-" version ".tar.xz"))
6535 (sha256
6536 (base32
6537 "0n1ycmg6dgz1pajs80fwlcbxw3rx1hff1xw6ja67zngm85ydbjvq"))))
6538 (build-system glib-or-gtk-build-system)
6539 (arguments
6540 `(#:imported-modules ((guix build python-build-system)
6541 ,@%glib-or-gtk-build-system-modules)
6542 #:phases (modify-phases %standard-phases
6543 (add-after 'install 'wrap-program
6544 (lambda* (#:key outputs #:allow-other-keys)
6545 (let ((out (assoc-ref outputs "out"))
6546 (gi-typelib-path (getenv "GI_TYPELIB_PATH")))
6547 (wrap-program (string-append out "/bin/lollypop")
6548 `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
6549 #t))
6550 (add-after 'install 'wrap
6551 (@@ (guix build python-build-system) wrap)))))
6552 (native-inputs
6553 `(("intltool" ,intltool)
6554 ("itstool" ,itstool)
6555 ("pkg-config" ,pkg-config)))
6556 (inputs
6557 `(("gobject-introspection" ,gobject-introspection)
6558 ("gtk+" ,gtk+)
6559 ("libnotify" ,libnotify)
6560 ("libsecret" ,libsecret)
6561 ("libsoup" ,libsoup)
6562 ("python" ,python)
6563 ("python-beautifulsoup4" ,python-beautifulsoup4)
6564 ("python-gst" ,python-gst)
6565 ("python-pycairo" ,python-pycairo)
6566 ("python-pygobject" ,python-pygobject)
6567 ("python-pylast" ,python-pylast)
6568 ("totem-pl-parser" ,totem-pl-parser)
6569 ("webkitgtk" ,webkitgtk)))
6570 (propagated-inputs
6571 `(;; gst-plugins-base is required to start Lollypop,
6572 ;; the others are required to play streaming.
6573 ("gst-plugins-base" ,gst-plugins-base)
6574 ("gst-plugins-good" ,gst-plugins-good)
6575 ("gst-plugins-ugly" ,gst-plugins-ugly)))
6576 (home-page "https://gnumdk.github.io/lollypop-web")
6577 (synopsis "GNOME music playing application")
6578 (description
6579 "Lollypop is a music player designed to play well with GNOME desktop.
6580Lollypop plays audio formats such as mp3, mp4, ogg and flac and gets information
6581from artists and tracks from the web. It also fetches cover artworks
6582automatically and it can stream songs from online music services and charts.")
6583 (license license:gpl3+)))