gnu: Add libgweather.
[jackhill/guix/guix.git] / gnu / packages / gnome.scm
CommitLineData
995b7261 1;;; GNU Guix --- Functional package management for GNU
109da1c0 2;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
eb497b66 3;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
29a7c98a 4;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
b38e45d8 5;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
58d32305 6;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch>
6f96a359 7;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
88f70665 8;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
995b7261
AE
9;;;
10;;; This file is part of GNU Guix.
11;;;
12;;; GNU Guix is free software; you can redistribute it and/or modify it
13;;; under the terms of the GNU General Public License as published by
14;;; the Free Software Foundation; either version 3 of the License, or (at
15;;; your option) any later version.
16;;;
17;;; GNU Guix is distributed in the hope that it will be useful, but
18;;; WITHOUT ANY WARRANTY; without even the implied warranty of
19;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20;;; GNU General Public License for more details.
21;;;
22;;; You should have received a copy of the GNU General Public License
23;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
24
25(define-module (gnu packages gnome)
b5b73a82 26 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
27 #:use-module (guix packages)
28 #:use-module (guix download)
29a7c98a 29 #:use-module (guix utils)
995b7261 30 #:use-module (guix build-system gnu)
121de2e1 31 #:use-module (guix build-system glib-or-gtk)
ed19903d 32 #:use-module (gnu packages)
75016d07 33 #:use-module (gnu packages autotools)
6a180f6f 34 #:use-module (gnu packages base)
5698b8b8 35 #:use-module (gnu packages bison)
6e1bb642
SB
36 #:use-module (gnu packages curl)
37 #:use-module (gnu packages databases)
121de2e1 38 #:use-module (gnu packages flex)
75016d07 39 #:use-module (gnu packages databases)
b4ce6300 40 #:use-module (gnu packages docbook)
995b7261 41 #:use-module (gnu packages glib)
c1354b90 42 #:use-module (gnu packages gnupg)
85f5dc19 43 #:use-module (gnu packages gstreamer)
d9c1a22b 44 #:use-module (gnu packages gtk)
c1354b90 45 #:use-module (gnu packages pdf)
75016d07 46 #:use-module (gnu packages polkit)
5698b8b8 47 #:use-module (gnu packages popt)
c1354b90 48 #:use-module (gnu packages ghostscript)
191e9b4e 49 #:use-module (gnu packages gnutls)
9cc98f8a 50 #:use-module (gnu packages iso-codes)
85f5dc19 51 #:use-module (gnu packages libcanberra)
88f70665 52 #:use-module (gnu packages linux)
75016d07 53 #:use-module (gnu packages libusb)
e55354b8 54 #:use-module (gnu packages image)
27477d2d 55 #:use-module (gnu packages perl)
995b7261
AE
56 #:use-module (gnu packages pkg-config)
57 #:use-module (gnu packages python)
75016d07 58 #:use-module (gnu packages scanner)
85f5dc19 59 #:use-module (gnu packages xml)
200726ed 60 #:use-module (gnu packages gl)
1dd26275 61 #:use-module (gnu packages compression)
6e1bb642 62 #:use-module (gnu packages web)
fecbf86e 63 #:use-module (gnu packages xorg)
ea57378f
SB
64 #:use-module (gnu packages xdisorg)
65 #:use-module (gnu packages ncurses))
85f5dc19
AE
66
67(define-public brasero
68 (package
69 (name "brasero")
70 (version "3.8.0")
71 (source (origin
72 (method url-fetch)
73 (uri (string-append "mirror://gnome/sources/brasero/3.8/brasero-"
74 version ".tar.xz"))
75 (sha256
76 (base32
77 "1r5wjsrm47amdaf862ymkdlwlb636c45wg14x20hdr99c653d2nr"))))
78 (build-system gnu-build-system)
79 (propagated-inputs
80 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
81 (native-inputs
82 `(("intltool" ,intltool)
426adbe8 83 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
9cc98f8a 84 ("pkg-config" ,pkg-config)))
85f5dc19
AE
85 (inputs
86 `(("glib" ,glib)
87 ("gnome-doc-utils" ,gnome-doc-utils)
88 ("gstreamer" ,gstreamer)
89 ("gst-plugins-base" ,gst-plugins-base)
90 ("gtk+" ,gtk+)
85f5dc19
AE
91 ("itstool" ,itstool)
92 ("libcanberra" ,libcanberra)
93 ("libice" ,libice)
94 ("libnotify" ,libnotify)
95 ("libsm" ,libsm)
c4c4cc05 96 ("libxml2" ,libxml2)))
85f5dc19
AE
97 (home-page "https://projects.gnome.org/brasero/")
98 (synopsis "CD/DVD burning tool for Gnome")
99 (description "Brasero is an application to burn CD/DVD for the Gnome
100Desktop. It is designed to be as simple as possible and has some unique
101features to enable users to create their discs easily and quickly.")
1dd26275 102 (license license:gpl2+)))
995b7261 103
9cc98f8a
CR
104(define-public gnome-desktop
105 (package
106 (name "gnome-desktop")
12f7f4aa 107 (version "3.16.0")
9cc98f8a
CR
108 (source
109 (origin
110 (method url-fetch)
b38e45d8
EB
111 (uri (string-append "mirror://gnome/sources/" name "/"
112 (version-major+minor version) "/"
9cc98f8a
CR
113 name "-" version ".tar.xz"))
114 (sha256
115 (base32
12f7f4aa 116 "05lvik5cdh51xqd332qingph09zdhiaa1kqy9k2sk1simz4pvf8m"))))
9cc98f8a
CR
117 (build-system gnu-build-system)
118 (native-inputs
119 `(("intltool" ,intltool)
120 ("pkg-config" ,pkg-config)))
121 (inputs
122 `(("gdk-pixbuf" ,gdk-pixbuf)
123 ("glib" ,glib)
124 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
125 ("gtk+" ,gtk+)
126 ("iso-codes" ,iso-codes)
127 ("itstool" ,itstool)
128 ("libx11" ,libx11)
129 ("libxext" ,libxext)
130 ("libxkbfile" ,libxkbfile)
131 ("libxrandr" ,libxrandr)
132 ("xkeyboard-config" ,xkeyboard-config)))
133 (home-page "https://www.gnome.org/")
134 (synopsis
35b9e423 135 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
136 (description
137 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
138on the desktop, but that cannot live in the platform for various reasons.
139There is no API or ABI guarantee, although we are doing our best to provide
140stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
141
142The gnome-about program helps find which version of GNOME is installed.")
143 ; Some bits under the LGPL.
1dd26275 144 (license license:gpl2+)))
9cc98f8a 145
995b7261
AE
146(define-public gnome-doc-utils
147 (package
148 (name "gnome-doc-utils")
149 (version "0.20.10")
150 (source
151 (origin
152 (method url-fetch)
b38e45d8
EB
153 (uri (string-append "mirror://gnome/sources/" name "/"
154 (version-major+minor version) "/"
995b7261
AE
155 name "-" version ".tar.xz"))
156 (sha256
157 (base32
158 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
159 (build-system gnu-build-system)
c4c4cc05 160 (native-inputs
995b7261 161 `(("intltool" ,intltool)
b4ce6300 162 ("docbook-xml" ,docbook-xml-4.4)
995b7261
AE
163 ("libxml2" ,libxml2)
164 ("libxslt" ,libxslt)
165 ("pkg-config" ,pkg-config)
166 ("python-2" ,python-2)))
995b7261
AE
167 (home-page "https://wiki.gnome.org/GnomeDocUtils")
168 (synopsis
169 "Documentation utilities for the Gnome project")
170 (description
171 "Gnome-doc-utils is a collection of documentation utilities for the
172Gnome project. It includes xml2po tool which makes it easier to translate
173and keep up to date translations of documentation.")
1dd26275 174 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 175
c1354b90
LC
176(define-public libgnome-keyring
177 (package
178 (name "libgnome-keyring")
179 (version "3.6.0")
180 (source (origin
181 (method url-fetch)
b38e45d8
EB
182 (uri (string-append "mirror://gnome/sources/" name "/"
183 (version-major+minor version) "/"
184 name "-" version ".tar.xz"))
c1354b90
LC
185 (sha256
186 (base32
187 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
188 (build-system gnu-build-system)
c1354b90 189 (inputs
c4c4cc05 190 `(("libgcrypt" ,libgcrypt)
c1354b90 191 ("dbus" ,dbus)))
c4c4cc05
JD
192 (native-inputs
193 `(("pkg-config" ,pkg-config)
426adbe8 194 ("glib" ,glib "bin")
c4c4cc05 195 ("intltool" ,intltool)))
c1354b90
LC
196 (propagated-inputs
197 ;; Referred to in .h files and .pc.
198 `(("glib" ,glib)))
199 (home-page "http://www.gnome.org")
200 (synopsis "Accessing passwords from the GNOME keyring")
201 (description
202 "Client library to access passwords from the GNOME keyring.")
203
204 ;; Though a couple of files are LGPLv2.1+.
1dd26275 205 (license license:lgpl2.0+)))
c1354b90
LC
206
207(define-public evince
208 (package
209 (name "evince")
210 (version "3.6.1")
211 (source (origin
212 (method url-fetch)
b38e45d8
EB
213 (uri (string-append "mirror://gnome/sources/" name "/"
214 (version-major+minor version) "/"
215 name "-" version ".tar.xz"))
c1354b90
LC
216 (sha256
217 (base32
218 "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv"))))
121de2e1 219 (build-system glib-or-gtk-build-system)
c1354b90
LC
220 (arguments
221 `(#:configure-flags '("--disable-nautilus")
222
223 ;; FIXME: Tests fail with:
224 ;; ImportError: No module named gi.repository
225 ;; Where should that module come from?
3d243e9c 226 #:tests? #f))
c1354b90
LC
227 (inputs
228 `(("libspectre" ,libspectre)
229 ;; ("djvulibre" ,djvulibre)
230 ("ghostscript" ,ghostscript)
231 ("poppler" ,poppler)
232 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
233 ("libgnome-keyring" ,libgnome-keyring)
234 ("gnome-icon-theme" ,gnome-icon-theme)
235 ("itstool" ,itstool)
236 ("gdk-pixbuf" ,gdk-pixbuf)
237 ("atk" ,atk)
238 ("pango" ,pango)
239 ("gtk+" ,gtk+)
240 ("glib" ,glib)
241 ("libxml2" ,libxml2)
c1354b90
LC
242 ("libsm" ,libsm)
243 ("libice" ,libice)
96e42467 244 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
245 ("dconf" ,dconf)
246 ("libcanberra" ,libcanberra)
247
c1354b90
LC
248 ;; For tests.
249 ("dogtail" ,python2-dogtail)))
96e42467 250 (native-inputs
c4c4cc05 251 `(("intltool" ,intltool)
426adbe8 252 ("glib" ,glib "bin")
c4c4cc05 253 ("pkg-config" ,pkg-config)))
c1354b90
LC
254 (home-page
255 "http://www.gnome.org/projects/evince/")
256 (synopsis "GNOME's document viewer")
257 (description
258 "Evince is a document viewer for multiple document formats. It
259currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
260of Evince is to replace the multiple document viewers that exist
96e42467 261on the GNOME Desktop with a single simple application.")
1dd26275 262 (license license:gpl2+)))
c1354b90 263
22e32e69
AE
264(define-public gsettings-desktop-schemas
265 (package
266 (name "gsettings-desktop-schemas")
67bdcfbc 267 (version "3.16.0")
22e32e69
AE
268 (source
269 (origin
270 (method url-fetch)
271 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 272 (version-major+minor version) "/"
22e32e69
AE
273 name "-" version ".tar.xz"))
274 (sha256
275 (base32
67bdcfbc 276 "02dp1hl38k16m9abydfca1n236mdazqdz0p3n92s7haf9mdqsf16"))))
22e32e69
AE
277 (build-system gnu-build-system)
278 (inputs
c4c4cc05
JD
279 `(("glib" ,glib)))
280 (native-inputs
281 `(("intltool" ,intltool)
426adbe8 282 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
7211944a 283 ("gobject-introspection" ,gobject-introspection)
22e32e69
AE
284 ("pkg-config" ,pkg-config)))
285 (home-page "https://launchpad.net/gsettings-desktop-schemas")
286 (synopsis
287 "GNOME settings for various desktop components")
288 (description
289 "Gsettings-desktop-schemas contains a collection of GSettings schemas
290for settings shared by various components of the GNOME desktop.")
1dd26275 291 (license license:lgpl2.1+)))
22e32e69 292
27477d2d
AE
293(define-public icon-naming-utils
294 (package
295 (name "icon-naming-utils")
296 (version "0.8.90")
297 (source
298 (origin
299 (method url-fetch)
300 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
301 version ".tar.bz2"))
302 (sha256
303 (base32
304 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
305 (build-system gnu-build-system)
306 (inputs
307 `(("perl" ,perl)
308 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
309 (arguments
310 '(#:phases
311 (alist-cons-after
312 'install 'set-load-paths
313 ;; Tell 'icon-name-mapping' where XML::Simple is.
314 (lambda* (#:key outputs #:allow-other-keys)
315 (let* ((out (assoc-ref outputs "out"))
316 (prog (string-append out "/libexec/icon-name-mapping")))
317 (wrap-program
318 prog
319 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
320 %standard-phases)))
27477d2d
AE
321 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
322 (synopsis
323 "Utility to implement the Freedesktop Icon Naming Specification")
324 (description
325 "To help with the transition to the Freedesktop Icon Naming
326Specification, the icon naming utility maps the icon names used by the
327GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 328 (license license:lgpl2.1+)))
27477d2d 329
686e025d
SB
330(define-public desktop-file-utils
331 (package
332 (name "desktop-file-utils")
333 (version "0.22")
334 (source (origin
335 (method url-fetch)
336 (uri (string-append "http://www.freedesktop.org/software/" name
337 "/releases/" name "-" version ".tar.xz"))
338 (sha256
339 (base32
340 "1ianvr2a69yjv4rpyv30w7yjsmnsb23crrka5ndqxycj4rkk4dc4"))))
341 (build-system gnu-build-system)
342 (native-inputs
343 `(("pkg-config" ,pkg-config)))
344 (inputs
345 `(("glib" ,glib)))
346 (home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
347 (synopsis "Utilities for working with desktop entries")
348 (description
349 "This package contains a few command line utilities for working with
350desktop entries:
351
352desktop-file-validate: validates a desktop file and prints warnings/errors
353 about desktop entry specification violations.
354
355desktop-file-install: installs a desktop file to the applications directory,
356 optionally munging it a bit in transit.
357
358update-desktop-database: updates the database containing a cache of MIME types
359 handled by desktop files.")
360 (license license:gpl2+)))
361
7d3f3651
AE
362(define-public gnome-icon-theme
363 (package
364 (name "gnome-icon-theme")
365 (version "3.10.0")
366 (source
367 (origin
368 (method url-fetch)
369 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 370 (version-major+minor version) "/"
7d3f3651
AE
371 name "-" version ".tar.xz"))
372 (sha256
373 (base32
374 "1xinbgkkvlhazj887ajcl13i7kdc1wcca02jwxzvjrvchjsp4m66"))))
375 (build-system gnu-build-system)
376 (inputs
377 `(("gtk+" ,gtk+)
c4c4cc05
JD
378 ("icon-naming-utils" ,icon-naming-utils)))
379 (native-inputs
380 `(("intltool" ,intltool)
381 ("pkg-config" ,pkg-config)))
7d3f3651
AE
382 (home-page "http://art.gnome.org/")
383 (synopsis
384 "GNOME icon theme")
385 (description
386 "Icons for the GNOME desktop.")
1dd26275 387 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 388
9167f8e6
LC
389(define-public shared-mime-info
390 (package
391 (name "shared-mime-info")
392 (version "1.2")
393 (source (origin
394 (method url-fetch)
b38e45d8
EB
395 (uri (string-append "http://freedesktop.org/~hadess/"
396 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
397 (sha256
398 (base32
399 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
400 (build-system gnu-build-system)
401 (arguments
402 ;; The build system appears not to be parallel-safe.
403 '(#:parallel-build? #f))
404 (inputs
405 `(("glib" ,glib)
c4c4cc05 406 ("libxml2" ,libxml2)))
9167f8e6 407 (native-inputs
c4c4cc05
JD
408 `(("intltool" ,intltool)
409 ("pkg-config" ,pkg-config)))
9167f8e6
LC
410 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
411 (synopsis "Database of common MIME types")
412 (description
413 "The shared-mime-info package contains the core database of common types
414and the update-mime-database command used to extend it. It requires glib2 to
415be installed for building the update command. Additionally, it uses intltool
416for translations, though this is only a dependency for the maintainers. This
417database is translated at Transifex.")
1dd26275 418 (license license:gpl2+)))
9167f8e6 419
bef4dd92
AE
420(define-public hicolor-icon-theme
421 (package
422 (name "hicolor-icon-theme")
423 (version "0.12")
424 (source
425 (origin
426 (method url-fetch)
b38e45d8
EB
427 (uri (string-append "http://icon-theme.freedesktop.org/releases/"
428 "hicolor-icon-theme-" version ".tar.gz"))
bef4dd92
AE
429 (sha256
430 (base32
431 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
432 (build-system gnu-build-system)
433 (arguments
434 `(#:tests? #f)) ; no check target
435 (home-page "http://icon-theme.freedesktop.org/releases/")
436 (synopsis
437 "Freedesktop icon theme")
438 (description
439 "Freedesktop icon theme.")
1dd26275 440 (license license:gpl2)))
bef4dd92 441
d9c1a22b
AE
442(define-public libnotify
443 (package
444 (name "libnotify")
445 (version "0.7.6")
446 (source
447 (origin
448 (method url-fetch)
449 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 450 (version-major+minor version) "/"
d9c1a22b
AE
451 name "-" version ".tar.xz"))
452 (sha256
453 (base32
454 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
455 (build-system gnu-build-system)
456 (inputs
457 `(("gdk-pixbuf" ,gdk-pixbuf)
458 ("glib" ,glib)
459 ("gtk+" ,gtk+)
c4c4cc05
JD
460 ("libpng" ,libpng)))
461 (native-inputs
426adbe8
LC
462 `(("pkg-config" ,pkg-config)
463 ("glib" ,glib "bin")))
d9c1a22b
AE
464 (home-page "https://developer-next.gnome.org/libnotify/")
465 (synopsis
466 "GNOME desktop notification library")
467 (description
468 "Libnotify is a library that sends desktop notifications to a
35b9e423 469notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
470notifications can be used to inform the user about an event or display
471some form of information without getting in the user's way.")
1dd26275 472 (license license:lgpl2.1+)))
7a8605ce
CR
473
474(define-public libpeas
475 (package
476 (name "libpeas")
58d32305 477 (version "1.12.1")
7a8605ce
CR
478 (source
479 (origin
480 (method url-fetch)
481 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 482 (version-major+minor version) "/"
7a8605ce
CR
483 name "-" version ".tar.xz"))
484 (sha256
485 (base32
58d32305 486 "1mjjjjwphc83bjznmbsm7x0jg7ql261nys6qnl7mi0nkr4qvw476"))))
7a8605ce 487 (build-system gnu-build-system)
7a8605ce
CR
488 (inputs
489 `(("atk" ,atk)
490 ("gdk-pixbuf" ,gdk-pixbuf)
491 ("glib" ,glib)
7a8605ce 492 ("gtk+" ,gtk+)
141aed80
LC
493 ("pango" ,pango)))
494 (native-inputs
495 `(("pkg-config" ,pkg-config)
93622993 496 ("glib:bin" ,glib "bin")
141aed80
LC
497 ("gobject-introspection" ,gobject-introspection)
498 ("intltool" ,intltool)))
58d32305
FB
499 (arguments
500 `(#:phases
501 (alist-cons-before
502 'build 'pre-build
503 (lambda* _
504 (setenv "CC" "gcc"))
505 %standard-phases)))
7a8605ce
CR
506 (home-page "https://wiki.gnome.org/Libpeas")
507 (synopsis "GObject plugin system")
508 (description
35b9e423 509 "Libpeas is a gobject-based plugins engine, and is targetted at giving
7a8605ce
CR
510every application the chance to assume its own extensibility. It also has a
511set of features including, but not limited to: multiple extension points; on
512demand (lazy) programming language support for C, Python and JS; simplicity of
513the API")
1dd26275 514 (license license:lgpl2.0+)))
ed19903d
JD
515
516(define-public gtkglext
517 (package
518 (name "gtkglext")
519 (version "1.2.0")
520 (source (origin
521 (method url-fetch)
522 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
523 version "/gtkglext-" version ".tar.gz"))
524 (sha256
525 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
526 (patches (list
ed19903d
JD
527 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
528 (build-system gnu-build-system)
529 (inputs `(("gtk+" ,gtk+-2)
530 ("mesa" ,mesa)
cc8b02f4 531 ("glu" ,glu)
ed19903d
JD
532 ("libx11" ,libx11)
533 ("libxt" ,libxt)))
426adbe8
LC
534 (native-inputs `(("pkg-config" ,pkg-config)
535 ("glib" ,glib "bin")))
a83b6a06 536 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 537 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 538 (synopsis "OpenGL extension to GTK+")
35b9e423 539 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
540additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
541API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 542 (license license:lgpl2.1+)))
3600420e
JD
543
544(define-public glade3
545 (package
546 (name "glade")
547 (version "3.8.4")
b38e45d8
EB
548 (source (origin
549 (method url-fetch)
550 (uri (string-append "mirror://gnome/sources/" name "/"
551 (version-major+minor version) "/"
552 name "3-" version ".tar.xz"))
3600420e
JD
553 (sha256
554 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
555 (build-system gnu-build-system)
556 (inputs
557 `(("gtk+" ,gtk+-2)
558 ("libxml2" ,libxml2)))
559 (native-inputs
560 `(("intltool" ,intltool)
561 ("python" ,python)
562 ("pkg-config" ,pkg-config)))
563 (home-page "https://glade.gnome.org")
564 (synopsis "GTK+ rapid application development tool")
565 (description "Glade is a rapid application development (RAD) tool to
566enable quick & easy development of user interfaces for the GTK+ toolkit and
567the GNOME desktop environment.")
1dd26275
LC
568 (license license:lgpl2.0+)))
569
570(define-public libcroco
571 (package
572 (name "libcroco")
573 (version "0.6.8")
574 (source (origin
575 (method url-fetch)
b38e45d8
EB
576 (uri (string-append "mirror://gnome/sources/" name "/"
577 (version-major+minor version) "/"
578 name "-" version ".tar.xz"))
1dd26275
LC
579 (sha256
580 (base32
581 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
582 (build-system gnu-build-system)
583 (native-inputs
584 `(("pkg-config" ,pkg-config)))
585 (inputs
586 `(("glib" ,glib)
587 ("libxml2" ,libxml2)
588 ("zlib" ,zlib)))
589 (home-page "https://github.com/GNOME/libcroco")
590 (synopsis "CSS2 parsing and manipulation library")
591 (description
592 "Libcroco is a standalone CSS2 parsing and manipulation library.
593The parser provides a low level event driven SAC-like API and a CSS object
594model like API. Libcroco provides a CSS2 selection engine and an experimental
595XML/CSS rendering engine.")
596
597 ;; LGPLv2.1-only.
598 (license license:lgpl2.1)))
25178594
LC
599
600(define-public libgsf
601 (package
602 (name "libgsf")
603 (version "1.14.30")
604 (source (origin
605 (method url-fetch)
b38e45d8
EB
606 (uri (string-append "mirror://gnome/sources/" name "/"
607 (version-major+minor version) "/"
608 name "-" version ".tar.xz"))
25178594
LC
609 (sha256
610 (base32
611 "0w2v1a9sxsymd1mcy4mwsz4r6za9iwq69rj86nb939p41d4c6j6b"))))
612 (build-system gnu-build-system)
613 (native-inputs
614 `(("intltool" ,intltool)
615 ("pkg-config" ,pkg-config)))
616 (inputs
617 `(("python" ,python)
618 ("zlib" ,zlib)
619 ("bzip2" ,bzip2)))
620 (propagated-inputs
621 `(("gdk-pixbuf" ,gdk-pixbuf)
622 ("glib" ,glib)
623 ("libxml2" ,libxml2)))
624 (home-page "http://www.gnome.org/projects/libgsf")
625 (synopsis "GNOME's Structured File Library")
626 (description
627 "Libgsf aims to provide an efficient extensible I/O abstraction for
628dealing with different structured file formats.")
629
630 ;; LGPLv2.1-only.
631 (license license:lgpl2.1)))
63016e7c
LC
632
633(define-public librsvg
634 (package
635 (name "librsvg")
dc67ebd2 636 (version "2.40.6")
63016e7c
LC
637 (source (origin
638 (method url-fetch)
b38e45d8
EB
639 (uri (string-append "mirror://gnome/sources/" name "/"
640 (version-major+minor version) "/"
641 name "-" version ".tar.xz"))
63016e7c
LC
642 (sha256
643 (base32
dc67ebd2 644 "01jgb11779080b80k2ncrhdphgillqrrnszal6vh8yv787r4kwwa"))))
63016e7c
LC
645 (build-system gnu-build-system)
646 (arguments
ce2df078 647 `(#:phases
63016e7c
LC
648 (alist-cons-before
649 'configure 'augment-gir-search-path
650 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
651 (substitute* "gdk-pixbuf-loader/Makefile.in"
652 ;; By default the gdk-pixbuf loader is installed under
653 ;; gdk-pixbuf's prefix. Work around that.
654 (("gdk_pixbuf_moduledir = .*$")
655 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 656 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c
LC
657 "loaders\n"))
658 ;; Likewise, create a separate 'loaders.cache' file.
659 (("gdk_pixbuf_cache_file = .*$")
660 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
cd14b5e3
FB
661 (alist-cons-after
662 'install 'generate-full-cache
663 (lambda* (#:key inputs outputs #:allow-other-keys)
664 (let ((loaders-directory
665 (string-append (assoc-ref outputs "out")
dc67ebd2 666 "/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
cd14b5e3
FB
667 (zero?
668 (system
669 (string-append
670 "gdk-pixbuf-query-loaders "
671 loaders-directory "/libpixbufloader-svg.so "
672 (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
673 "libpixbufloader-.*\\.so") " ")
674 "> " loaders-directory ".cache")))))
dc67ebd2
FB
675 (alist-cons-before
676 'build 'pre-build
677 (lambda* _
678 (setenv "CC" "gcc"))
679 %standard-phases)))))
63016e7c
LC
680 (native-inputs
681 `(("pkg-config" ,pkg-config)
44add1ce 682 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
683 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
684 (inputs
685 `(("pango" ,pango)
686 ("libcroco" ,libcroco)
687 ("bzip2" ,bzip2)
688 ("libgsf" ,libgsf)
689 ("libxml2" ,libxml2)))
690 (propagated-inputs
691 ;; librsvg-2.0.pc refers to all of that.
692 `(("cairo" ,cairo)
693 ("gdk-pixbuf" ,gdk-pixbuf)
694 ("glib" ,glib)))
695 (home-page "https://wiki.gnome.org/LibRsvg")
696 (synopsis "Render SVG files using Cairo")
697 (description
35b9e423 698 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
699library.")
700 (license license:lgpl2.0+)))
5698b8b8
JD
701
702(define-public libidl
703 (package
704 (name "libidl")
705 (version "0.8.14")
706 (source (origin
707 (method url-fetch)
708 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
709 (string-append "mirror://gnome/sources/" upstream-name "/"
710 (version-major+minor version) "/"
711 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
712 (sha256
713 (base32
714 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
715 (build-system gnu-build-system)
716 (inputs `(("glib" ,glib)))
717 (native-inputs
718 `(("pkg-config" ,pkg-config)
719 ("flex", flex)
720 ("bison" ,bison)))
721 (home-page "http://freecode.com/projects/libidl")
722 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 723 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
724Definition Language (idl) files, which is a specification for defining
725portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 726GNOME project, and the primary means of libidl distribution). However, the
5698b8b8
JD
727functionality was designed to be as reusable and portable as possible.")
728 (license license:lgpl2.0+)))
729
730
731(define-public orbit2
732 (package
733 (name "orbit2")
734 (version "2.14.19")
735 (source (origin
736 (method url-fetch)
737 (uri (let ((upstream-name "ORBit2"))
b38e45d8
EB
738 (string-append "mirror://gnome/sources/" upstream-name "/"
739 (version-major+minor version) "/"
740 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
741 (sha256
742 (base32 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
743 (build-system gnu-build-system)
744 (arguments
745 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
746 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
747 ;; ... which they then completly ignore !!
748 #:phases
749 (alist-cons-before
750 'configure 'ignore-deprecations
751 (lambda _
752 (substitute* "linc2/src/Makefile.in"
753 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
754 %standard-phases)))
755 (inputs `(("glib" ,glib)
756 ("libidl" ,libidl)))
757 (native-inputs
758 `(("pkg-config" ,pkg-config)))
759 (home-page "https://projects.gnome.org/orbit2/")
760 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 761 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
5698b8b8
JD
762featuring mature C, C++ and Python bindings.")
763 ;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
764 ;; SOME of the code files have licence notices for GPLv2+
765 ;; The tarball contains files of the text of GPLv2 and LGPLv2
766 (license license:gpl2+)))
767
768
769(define-public libbonobo
770 (package
771 (name "libbonobo")
772 (version "2.32.1")
773 (source (origin
774 (method url-fetch)
5becd025 775 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 776 (version-major+minor version)
5becd025 777 "/" name "-" version ".tar.bz2"))
5698b8b8 778 (sha256
f1fc45a9
EB
779 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
780 (patches (list (search-patch "libbonobo-activation-test-race.patch")))))
5698b8b8
JD
781 (build-system gnu-build-system)
782 (arguments
783 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
784 `(#:configure-flags
785 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
786 ;; ... which they then completly ignore !!
787 #:phases
788 (alist-cons-before
789 'configure 'ignore-deprecations
790 (lambda _
791 (substitute* "activation-server/Makefile.in"
792 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
793 %standard-phases)))
5698b8b8
JD
794 (inputs `(("popt" ,popt)
795 ("libxml2" ,libxml2)))
796 ;; The following are Required by the .pc file
44add1ce 797 (propagated-inputs
5698b8b8
JD
798 `(("glib" ,glib)
799 ("orbit2" ,orbit2)))
800 (native-inputs
801 `(("intltool" ,intltool)
802 ("pkg-config" ,pkg-config)
221ed17a 803 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
804 ("flex" ,flex)
805 ("bison" ,bison)))
806 (home-page "https://developer.gnome.org/libbonobo/")
807 (synopsis "Framework for creating reusable components for use in GNOME applications")
808 (description "Bonobo is a framework for creating reusable components for
809use in GNOME applications, built on top of CORBA.")
810 ;; Licence not explicitly stated. Source files contain no licence notices.
811 ;; Tarball contains text of both GPLv2 and LGPLv2
812 ;; GPLv2 covers both conditions
813 (license license:gpl2+)))
814
815
816(define-public gconf
817 (package
818 (name "gconf")
819 (version "3.2.6")
820 (source (origin
821 (method url-fetch)
822 (uri
823 (let ((upstream-name "GConf"))
b38e45d8
EB
824 (string-append "mirror://gnome/sources/" upstream-name "/"
825 (version-major+minor version) "/"
826 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
827 (sha256
828 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
829 (build-system gnu-build-system)
830 (inputs `(("glib" ,glib)
831 ("dbus" ,dbus)
832 ("dbus-glib" ,dbus-glib)
833 ("libxml2" ,libxml2)))
834 (propagated-inputs `(("orbit2" ,orbit2))) ; referred to in the .pc file
835 (native-inputs
836 `(("intltool" ,intltool)
221ed17a 837 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
838 ("pkg-config" ,pkg-config)))
839 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
840 (synopsis "Store application preferences")
841 (description "Gconf is a system for storing application preferences. It
842is intended for user preferences; not arbitrary data storage.")
5698b8b8
JD
843 (license license:lgpl2.0+)))
844
845
846(define-public gnome-mime-data
847 (package
848 (name "gnome-mime-data")
849 (version "2.18.0")
850 (source (origin
851 (method url-fetch)
b38e45d8
EB
852 (uri (string-append "mirror://gnome/sources/" name "/"
853 (version-major+minor version) "/"
854 name "-" version ".tar.bz2"))
5698b8b8
JD
855 (sha256
856 (base32
857 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
858 (build-system gnu-build-system)
859 (native-inputs
860 `(("perl" ,perl)
861 ("intltool" ,intltool)))
862 (home-page "http://www.gnome.org")
35b9e423 863 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
864 (description "GNOME Mime Data is a module which contains the base MIME
865and Application database for GNOME. The data stored by this module is
866designed to be accessed through the MIME functions in GnomeVFS.")
867 (license license:gpl2+)))
868
869
870(define-public gnome-vfs
871 (package
872 (name "gnome-vfs")
873 (version "2.24.4")
874 (source (origin
875 (method url-fetch)
b38e45d8
EB
876 (uri (string-append "mirror://gnome/sources/" name "/"
877 (version-major+minor version) "/"
878 name "-" version ".tar.bz2"))
5698b8b8
JD
879 (sha256
880 (base32 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
881 (build-system gnu-build-system)
882 (arguments
883 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
884 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
885 ;; ... which they then completly ignore !!
886 #:phases
887 (alist-cons-before
888 'configure 'ignore-deprecations
889 (lambda _
890 (begin
891 (substitute* "libgnomevfs/Makefile.in"
892 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
893 (substitute* "daemon/Makefile.in"
894 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))))
895 %standard-phases)))
896 (inputs `(("glib" ,glib)
897 ("libxml2" ,libxml2)
898 ("dbus-glib" ,dbus-glib)
899 ("dbus" ,dbus)
900 ("gconf" ,gconf)
901 ("gnome-mime-data" ,gnome-mime-data)
902 ("zlib" ,zlib)))
903 (native-inputs
221ed17a
EB
904 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
905 ("intltool" ,intltool)
5698b8b8
JD
906 ("pkg-config" ,pkg-config)))
907 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 908 (synopsis "Access files and folders in GNOME applications")
5698b8b8 909 (description "GnomeVFS is the core library used to access files and
35b9e423 910folders in GNOME applications. It provides a file system abstraction which
5698b8b8
JD
911allows applications to access local and remote files with a single consistent API.")
912 (license license:lgpl2.0+)))
913
914
915
916(define-public libgnome
917 (package
918 (name "libgnome")
919 (version "2.32.1")
920 (source (origin
921 (method url-fetch)
b38e45d8
EB
922 (uri (string-append "mirror://gnome/sources/" name "/"
923 (version-major+minor version) "/"
924 name "-" version ".tar.bz2"))
5698b8b8
JD
925 (sha256
926 (base32
927 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
928 (build-system gnu-build-system)
929 (arguments
930 `(#:phases
931 (alist-cons-before
932 'configure 'enable-deprecated
933 (lambda _
934 (substitute* "libgnome/Makefile.in"
935 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
936 %standard-phases)))
937 (inputs `(("popt" ,popt)
938 ("libxml2" ,libxml2)))
939 (native-inputs
221ed17a
EB
940 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
941 ("intltool" ,intltool)
5698b8b8
JD
942 ("pkg-config" ,pkg-config)))
943 ;; The following are listed as Required in the .pc file
944 ;; (except for libcanberra -- which seems to be oversight on the part
945 ;; of the upstream developers -- anything that links against libgnome,
946 ;; must also link against libcanberra
947 (propagated-inputs
948 `(("libcanberra" ,libcanberra)
949 ("libbonobo" ,libbonobo)
950 ("gconf" ,gconf)
951 ("gnome-vfs" ,gnome-vfs)
952 ("glib" ,glib)))
953 (home-page "https://developer.gnome.org/libgnome/")
954 (synopsis "Useful routines for building applications")
955 (description "The libgnome library provides a number of useful routines
956for building modern applications, including session management, activation of
957files and URIs, and displaying help.")
958 (license license:lgpl2.0+)))
959
960
961(define-public libart-lgpl
962 (package
963 (name "libart-lgpl")
76c9b6aa 964 (version "2.3.21")
5698b8b8
JD
965 (source (origin
966 (method url-fetch)
967 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
968 (string-append "mirror://gnome/sources/" upstream-name "/"
969 (version-major+minor version) "/"
970 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
971 (sha256
972 (base32
76c9b6aa 973 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
974 (build-system gnu-build-system)
975 (native-inputs
976 `(("pkg-config" ,pkg-config)))
977 (home-page "https://people.gnome.org/~mathieu/libart")
978 (synopsis "2D drawing library")
979 (description "Libart is a 2D drawing library intended as a
980high-quality vector-based 2D library with antialiasing and alpha composition.")
981 (license license:lgpl2.0+)))
982
983
984
985(define-public libgnomecanvas
986 (package
987 (name "libgnomecanvas")
988 (version "2.30.3")
989 (source (origin
990 (method url-fetch)
b38e45d8
EB
991 (uri (string-append "mirror://gnome/sources/" name "/"
992 (version-major+minor version) "/"
993 name "-" version ".tar.gz"))
5698b8b8
JD
994 (sha256
995 (base32
996 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
997 (build-system gnu-build-system)
998 ;; Mentioned as Required in the .pc file
999 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
1000 ("gtk+" ,gtk+-2)))
1001 (native-inputs
1002 `(("intltool" ,intltool)
221ed17a 1003 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1004 ("pkg-config" ,pkg-config)))
1005 (home-page "https://developer.gnome.org/libgnomecanvas/")
1006 (synopsis "Flexible widget for creating interactive structured graphics")
1007 (description "The GnomeCanvas widget provides a flexible widget for
1008creating interactive structured graphics.")
1009 (license license:lgpl2.0+)))
1010
eadc734e
RW
1011(define-public libgnomecanvasmm
1012 (package
1013 (name "libgnomecanvasmm")
1014 (version "2.26.0")
1015 (source (origin
1016 (method url-fetch)
1017 (uri (string-append "mirror://gnome/sources/" name "/"
1018 (version-major+minor version) "/"
1019 name "-" version ".tar.bz2"))
1020 (sha256
1021 (base32
1022 "0679hcnpam2gkag2i63sm0wdm35gwvzafnz1354mg6j5gzwpfrcr"))))
1023 (build-system gnu-build-system)
1024 (propagated-inputs `(("libgnomecanvas" ,libgnomecanvas)))
1025 (native-inputs
1026 `(("gtkmm-2" ,gtkmm-2)
1027 ("pkg-config" ,pkg-config)))
1028 (home-page "http://gtkmm.org")
1029 (synopsis "C++ bindings to the GNOME Canvas library")
1030 (description "C++ bindings to the GNOME Canvas library.")
1031 (license license:lgpl2.0+)))
1032
5698b8b8
JD
1033(define-public libgnomeui
1034 (package
1035 (name "libgnomeui")
1036 (version "2.24.5")
1037 (source (origin
1038 (method url-fetch)
b38e45d8
EB
1039 (uri (string-append "mirror://gnome/sources/" name "/"
1040 (version-major+minor version) "/"
1041 name "-" version ".tar.bz2"))
5698b8b8
JD
1042 (sha256
1043 (base32
1044 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
1045 (build-system gnu-build-system)
1046 ;; Mentioned as Required in the .pc file
1047 (propagated-inputs `(("libgnome" ,libgnome)
1048 ("libgnome-keyring" ,libgnome-keyring)))
1049 (inputs `(("libgnomecanvas" ,libgnomecanvas)
1050 ("libbonoboui" ,libbonoboui)
1051 ("libjpeg" ,libjpeg)
1052 ("popt" ,popt)
1053 ("libbonobo" ,libbonobo)
1054 ("libxml2" ,libxml2)
1055 ("libglade" ,libglade)))
1056 (native-inputs
221ed17a
EB
1057 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
1058 ("intltool" ,intltool)
5698b8b8
JD
1059 ("pkg-config" ,pkg-config)))
1060 (home-page "https://developer.gnome.org/libgnomeui/")
1061 (synopsis "Additional widgets for applications")
35b9e423
EB
1062 (description "The libgnomeui library provides additional widgets for
1063applications. Many of the widgets from libgnomeui have already been ported to GTK+.")
5698b8b8
JD
1064 (license license:lgpl2.0+)))
1065
1066(define-public libglade
1067 (package
1068 (name "libglade")
1069 (version "2.6.4")
1070 (source (origin
1071 (method url-fetch)
b38e45d8
EB
1072 (uri (string-append "mirror://gnome/sources/" name "/"
1073 (version-major+minor version) "/"
1074 name "-" version ".tar.bz2"))
5698b8b8
JD
1075 (sha256
1076 (base32
1077 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1078 (build-system gnu-build-system)
1079 (inputs
1080 `(("gtk+-2" ,gtk+-2)
1081 ("libxml2" ,libxml2)
1082 ("python" ,python))) ;; needed for the optional libglade-convert program
1083 (native-inputs
1084 `(("pkg-config" ,pkg-config)))
1085 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1086 (synopsis "Load glade interfaces and access the glade built widgets")
1087 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1088graphical interfaces described in glade files and for accessing the
1089widgets built in the loading process.")
1090 (license license:gpl2+))) ; This is correct. GPL not LGPL
1091
1092(define-public libgnomeprint
eb497b66
LC
1093 ;; This library has been deprecated since 2006; see
1094 ;; <https://mail.gnome.org/archives/devel-announce-list/2006-August/msg00005.html>.
5698b8b8
JD
1095 (package
1096 (name "libgnomeprint")
1097 (version "2.8.2")
1098 (source (origin
1099 (method url-fetch)
b38e45d8
EB
1100 (uri (string-append "mirror://gnome/sources/" name "/"
1101 (version-major+minor version) "/"
1102 name "-" version ".tar.bz2"))
5698b8b8
JD
1103 (sha256
1104 (base32
3edce2c9
RW
1105 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))
1106 (modules '((guix build utils)))
1107 (snippet
1108 ;; Adapt to newer freetype. As the package is deprecated, there
1109 ;; is no use in creating a patch and reporting it.
1110 '(substitute* '("libgnomeprint/gnome-font-face.c"
1111 "libgnomeprint/gnome-rfont.c")
1112 (("freetype/") "freetype2/")))))
5698b8b8
JD
1113 (build-system gnu-build-system)
1114 (inputs
1115 `(("popt" ,popt)
1116 ("libart-lgpl" ,libart-lgpl)
1117 ("gtk+" ,gtk+-2)
44add1ce 1118 ("libxml2" ,libxml2)))
5698b8b8
JD
1119 (native-inputs
1120 `(("intltool" ,intltool)
221ed17a 1121 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1122 ("pkg-config" ,pkg-config)))
1123 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423 1124 (synopsis "Printing framework for GNOME")
eb497b66
LC
1125 (description
1126 "GNOME-print was a printing framework for GNOME. It has been deprecated
1127since ca. 2006, when GTK+ itself incorporated printing support.")
5698b8b8
JD
1128 (license license:lgpl2.0+)))
1129
1130
1131(define-public libgnomeprintui
eb497b66 1132 ;; Deprecated; see libgnomeprint.
5698b8b8
JD
1133 (package
1134 (name "libgnomeprintui")
1135 (version "2.8.2")
1136 (source (origin
1137 (method url-fetch)
b38e45d8
EB
1138 (uri (string-append "mirror://gnome/sources/" name "/"
1139 (version-major+minor version) "/"
1140 name "-" version ".tar.bz2"))
5698b8b8
JD
1141 (sha256
1142 (base32
1143 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1144 (build-system gnu-build-system)
1145 ;; Mentioned as Required in the .pc file
1146 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1147 (inputs `(("gtk+" ,gtk+-2)
1148 ("glib" ,glib)
1149 ("gnome-icon-theme" ,gnome-icon-theme)
1150 ("libgnomecanvas" ,libgnomecanvas)
1151 ("libxml2" ,libxml2)))
1152 (native-inputs
1153 `(("intltool" ,intltool)
1154 ("pkg-config" ,pkg-config)))
1155 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1156 (synopsis "Printing framework for GNOME")
eb497b66 1157 (description (package-description libgnomeprint))
5698b8b8
JD
1158 (license license:lgpl2.0+)))
1159
5698b8b8
JD
1160(define-public libbonoboui
1161 (package
1162 (name "libbonoboui")
1163 (version "2.24.5")
1164 (source (origin
1165 (method url-fetch)
b38e45d8
EB
1166 (uri (string-append "mirror://gnome/sources/" name "/"
1167 (version-major+minor version) "/"
1168 name "-" version ".tar.bz2"))
5698b8b8
JD
1169 (sha256
1170 (base32
1171 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1172 (build-system gnu-build-system)
1173 (arguments
1174 `(#:phases
1175 (alist-cons-before
1176 'check 'start-xserver
1177 (lambda* (#:key inputs #:allow-other-keys)
1178 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1179 (disp ":1"))
1180
1181 (setenv "HOME" (getcwd))
1182 (setenv "DISPLAY" disp)
1183 ;; There must be a running X server and make check doesn't start one.
1184 ;; Therefore we must do it.
1185 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1186 %standard-phases)))
1187 ;; Mentioned as Required by the .pc file
1188 (propagated-inputs `(("libxml2" ,libxml2)))
1189 (inputs
1190 `(("popt" ,popt)
1191 ("pangox-compat" ,pangox-compat)
1192 ("libgnome" ,libgnome)
1193 ("libgnomecanvas" ,libgnomecanvas)
1194 ("libglade" ,libglade)))
1195 (native-inputs
221ed17a
EB
1196 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1197 ("intltool" ,intltool)
5698b8b8
JD
1198 ("xorg-server" ,xorg-server) ; For running the tests
1199 ("pkg-config" ,pkg-config)))
1200 (home-page "https://developer.gnome.org/libbonoboui/")
1201 (synopsis "Some user interface controls using Bonobo")
1202 (description "The Bonobo UI library provides a number of user interface
1203controls using the Bonobo component framework.")
1204 (license license:lgpl2.0+)))
1205
fecbf86e
SB
1206(define-public libwnck
1207 (package
1208 (name "libwnck")
1209 (version "3.14.0")
1210 (source (origin
1211 (method url-fetch)
1212 (uri (string-append "mirror://gnome/sources/" name "/"
1213 (version-major+minor version) "/"
1214 name "-" version ".tar.xz"))
1215 (sha256
1216 (base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
1217 (build-system gnu-build-system)
1218 (native-inputs
1219 `(("pkg-config" ,pkg-config)
1220 ("intltool" ,intltool)))
1221 (propagated-inputs
427476d5
SB
1222 `(("gtk+" ,gtk+)
1223 ("libxres" ,libxres)
1224 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1225 (home-page "https://developer.gnome.org/libwnck/")
1226 (synopsis "Window Navigator Construction Kit")
1227 (description
1228 "Libwnck is the Window Navigator Construction Kit, a library for use in
1229writing pagers, tasklists, and more generally applications that are dealing
1230with window management. It tries hard to respect the Extended Window Manager
1231Hints specification (EWMH).")
1232 (license license:lgpl2.0+)))
1233
1234;; stable version for gtk2, required by xfwm4.
1235(define-public libwnck-1
1236 (package (inherit libwnck)
1237 (name "libwnck")
1238 (version "2.30.7")
1239 (source (origin
1240 (method url-fetch)
1241 (uri (string-append "mirror://gnome/sources/" name "/"
1242 (version-major+minor version) "/"
1243 name "-" version ".tar.xz"))
1244 (sha256
1245 (base32
1246 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1247 (propagated-inputs
427476d5
SB
1248 `(("gtk+" ,gtk+-2)
1249 ("libxres" ,libxres)
1250 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1251
1252(define-public goffice
1253 (package
1254 (name "goffice")
1255 (version "0.10.14")
1256 (source (origin
1257 (method url-fetch)
b38e45d8
EB
1258 (uri (string-append "mirror://gnome/sources/" name "/"
1259 (version-major+minor version) "/"
1260 name "-" version ".tar.xz"))
b804c61e
JD
1261 (sha256
1262 (base32 "0kj0iwng6w4axm7yv2zy7myn5dhw5ilrlq2pzrjlm9i852ikqy60"))))
1263 (build-system gnu-build-system)
1264 (inputs
1265 `(("gtk+" ,gtk+)
1266 ("libgsf" ,libgsf)
1267 ("librsvg" ,librsvg)
1268 ("libxslt" ,libxslt)
1269 ("libxml2" ,libxml2)))
1270 (native-inputs
1271 `(("intltool" ,intltool)
f280cdb1 1272 ("glib" ,glib "bin")
b804c61e
JD
1273 ("pkg-config" ,pkg-config)))
1274 (home-page "https://developer.gnome.org/goffice/")
1275 (synopsis "Document-centric objects and utilities")
1276 (description "A GLib/GTK+ set of document-centric objects and utilities.")
1277 (license
1278 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1279 ;; Note: NOT LGPL
1280 (list license:gpl2 license:gpl3))))
1281
1282(define-public gnumeric
1283 (package
1284 (name "gnumeric")
1285 (version "1.12.17")
1286 (source (origin
1287 (method url-fetch)
b38e45d8
EB
1288 (uri (string-append "mirror://gnome/sources/" name "/"
1289 (version-major+minor version) "/"
1290 name "-" version ".tar.xz"))
b804c61e
JD
1291 (sha256
1292 (base32
1293 "18bvc3phghr4p5440fp8hm6gvp53d3mqs9cyc637zpmk0b6bcp7c"))))
1294 (build-system gnu-build-system)
1295 (arguments
1296 `(;; The gnumeric developers don't worry much about failing tests.
1297 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
1298 #:tests? #f
1299 #:phases
1300 (alist-cons-before
1301 'configure 'pre-conf
1302 (lambda* (#:key outputs #:allow-other-keys)
1303 ;; Make install tries to write into the directory of goffice
1304 ;; I am informed that this only affects the possibility to embed a
1305 ;; spreadsheet inside an Abiword document. So presumably when we
1306 ;; package Abiword we'll have to refer it to this directory.
1307 (substitute* "configure"
1308 (("^GOFFICE_PLUGINS_DIR=.*")
1309 (string-append "GOFFICE_PLUGINS_DIR="
1310 (assoc-ref outputs "out") "/goffice/plugins"))))
1311 %standard-phases)))
1312 (inputs
1313 `(("glib" ,glib)
1314 ("gtk+" ,gtk+)
1315 ("goffice" ,goffice)
1316 ("libgsf" ,libgsf)
1317 ("libxml2" ,libxml2)
1318 ("zlib" ,zlib)))
1319 (native-inputs
1320 `(("intltool" ,intltool)
b9663471 1321 ("glib:bin" ,glib "bin")
b804c61e
JD
1322 ("pkg-config" ,pkg-config)))
1323 (home-page "http://www.gnumeric.org")
66672a45
LC
1324 (synopsis "Spreadsheet application")
1325 (description
1326 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1327interoperable with other spreadsheet applications. It has a vast array of
1328features beyond typical spreadsheet functionality, such as support for linear
1329and non-linear solvers, statistical analysis, and telecommunication
1330engineering.")
1331 (license
b804c61e
JD
1332 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1333 (list license:gpl2 license:gpl3))))
6f885c05
FB
1334
1335(define-public gnome-themes-standard
1336 (package
1337 (name "gnome-themes-standard")
1338 ;; The version of this package should be the same as the version of
1339 ;; gnome-desktop.
1340 (version (package-version gnome-desktop))
1341 (source
1342 (origin
1343 (method url-fetch)
1344 (uri (string-append "mirror://gnome/sources/" name "/"
1345 (version-major+minor version) "/" name "-"
1346 version ".tar.xz"))
1347 (sha256
1348 (base32
7dae5ac4 1349 "0kyrbfrgl6g6wm6zpllldz36fclvl8vwmn1snwk18kf7f6ncpsac"))))
6f885c05
FB
1350 (build-system gnu-build-system)
1351 (inputs
1352 `(("gtk+" ,gtk+)
1353 ("gtk+-2" ,gtk+-2)
1354 ("librsvg" ,librsvg)
1355 ("libxml2" ,libxml2)
1356 ("glib" ,glib)))
1357 (native-inputs
1358 `(("intltool" ,intltool)
1359 ("glib:bin" ,glib "bin")
1360 ("pkg-config" ,pkg-config)))
1361 (arguments
1362 `(#:phases
1363 (alist-cons-before
1364 'build 'use-full-cache
1365 ;; Use librsvg's loaders.cache instead of the one provided by
1366 ;; gdk-pixbuf because the latter does not include support for SVG
1367 ;; files.
1368 (lambda* (#:key inputs #:allow-other-keys)
1369 (setenv "GDK_PIXBUF_MODULE_FILE"
1370 (car (find-files (assoc-ref inputs "librsvg")
1371 "loaders\\.cache"))))
1372 %standard-phases)))
1373 (home-page "https://launchpad.net/gnome-themes-standard")
1374 (synopsis "Default GNOME 3 themes")
1375 (description
1376 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1377 (license license:lgpl2.1+)))
5a659a48
SB
1378
1379(define-public vala
1380 (package
1381 (name "vala")
1382 (version "0.26.1")
1383 (source (origin
1384 (method url-fetch)
1385 (uri (string-append "mirror://gnome/sources/" name "/"
1386 (version-major+minor version) "/"
1387 name "-" version ".tar.xz"))
1388 (sha256
1389 (base32
1390 "0swyym2papln0f62ah05dpvq3vv6fssap26jq2zqp9dkkaqsn1w4"))))
1391 (build-system gnu-build-system)
1392 (arguments '(#:make-flags '("CC=gcc")))
1393 (native-inputs
1394 `(("pkg-config" ,pkg-config)
1395 ("flex" ,flex)
1396 ("bison" ,bison)
1397 ("xsltproc" ,libxslt)
1398 ("dbus" ,dbus) ; for dbus tests
1399 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1400 (propagated-inputs
1401 `(("glib" ,glib))) ; required by libvala-0.26.pc
1402 (home-page "http://live.gnome.org/Vala/")
1403 (synopsis "Compiler for the GObject type system")
1404 (description
1405 "Vala is a programming language that aims to bring modern programming
1406language features to GNOME developers without imposing any additional runtime
1407requirements and without using a different ABI compared to applications and
1408libraries written in C.")
1409 (license license:lgpl2.1+)))
ea57378f
SB
1410
1411(define-public vte
1412 (package
1413 (name "vte")
191e9b4e 1414 (version "0.40.0")
ea57378f
SB
1415 (source (origin
1416 (method url-fetch)
1417 (uri (string-append "mirror://gnome/sources/" name "/"
1418 (version-major+minor version) "/"
1419 name "-" version ".tar.xz"))
1420 (sha256
1421 (base32
191e9b4e 1422 "0lnq0bgkmsixjwmfacb2ch9qfjqjxa8zkk1hiv3l29kgca0n3nal"))))
ea57378f
SB
1423 (build-system gnu-build-system)
1424 (native-inputs
1425 `(("pkg-config" ,pkg-config)
1426 ("intltool" ,intltool)
1427 ("vala" ,vala)
1428 ("gobject-introspection" ,gobject-introspection)
1429 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1430 ("xmllint" ,libxml2)))
1431 (propagated-inputs
302393bc
LC
1432 `(("gtk+" ,gtk+) ;required by vte-2.91.pc
1433 ("gnutls" ,gnutls))) ;ditto
7ed6ee1e
FB
1434 (arguments
1435 `(#:phases
1436 (alist-cons-before
1437 'build 'pre-build
1438 (lambda* _
1439 (setenv "CC" "gcc"))
1440 %standard-phases)))
ea57378f
SB
1441 (home-page "http://www.gnome.org/")
1442 (synopsis "Virtual Terminal Emulator")
1443 (description
1444 "VTE is a library (libvte) implementing a terminal emulator widget for
1445GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1446gnome-terminal, but can also be used to embed a console/terminal in games,
1447editors, IDEs, etc.")
1448 (license license:lgpl2.1+)))
1449
1450;; stable version for gtk2, required by xfce4-terminal.
1451(define-public vte/gtk+-2
1452 (package (inherit vte)
1453 (name "vte")
1454 (version "0.28.2")
1455 (source (origin
1456 (method url-fetch)
1457 (uri (string-append "mirror://gnome/sources/" name "/"
1458 (version-major+minor version) "/"
1459 name "-" version ".tar.xz"))
1460 (sha256
1461 (base32
1462 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1463 (arguments
1464 '(#:configure-flags '("--disable-python")))
1465 (native-inputs
1466 `(("pkg-config" ,pkg-config)
1467 ("intltool" ,intltool)
1468 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1469 (propagated-inputs
1470 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1471 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1472
1473(define-public dconf
1474 (package
1475 (name "dconf")
1476 (version "0.22.0")
1477 (source (origin
1478 (method url-fetch)
1479 (uri (string-append
1480 "mirror://gnome/sources/" name "/"
1481 (version-major+minor version) "/"
1482 name "-" version ".tar.xz"))
1483 (sha256
1484 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1485 (build-system glib-or-gtk-build-system)
1486 (inputs
1487 `(("gtk+" ,gtk+)
1488 ("glib" ,glib)
1489 ("dbus" ,dbus)
1490 ("libxml2" ,libxml2)))
1491 (native-inputs
1492 `(("libxslt" ,libxslt)
1493 ("docbook-xml" ,docbook-xml-4.2)
1494 ("docbook-xsl" ,docbook-xsl)
1495 ("intltool" ,intltool)
1496 ("pkg-config" ,pkg-config)))
1497 (arguments
1498 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1499 ; or /etc/machine-id.
1500 #:configure-flags
1501 ;; Set the correct RUNPATH in binaries.
1502 (list (string-append "LDFLAGS=-Wl,-rpath="
1503 (assoc-ref %outputs "out") "/lib")
1504 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1505 #:phases
1506 (alist-cons-before
1507 'configure 'fix-docbook
1508 (lambda* (#:key inputs #:allow-other-keys)
1509 (substitute* "docs/Makefile.in"
1510 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
1511 (string-append (assoc-ref inputs "docbook-xsl")
1512 "/xml/xsl/docbook-xsl-"
1513 ,(package-version docbook-xsl)
1514 "/manpages/docbook.xsl")))
1515 (setenv "XML_CATALOG_FILES"
1516 (string-append (assoc-ref inputs "docbook-xml")
1517 "/xml/dtd/docbook/catalog.xml")))
1518 %standard-phases)))
1519 (home-page "https://developer.gnome.org/dconf")
1520 (synopsis "Low-level GNOME configuration system")
1521 (description "Dconf is a low-level configuration system. Its main purpose
1522is to provide a backend to GSettings on platforms that don't already have
1523configuration storage systems.")
1524 (license license:lgpl2.1)))
109da1c0
AE
1525
1526(define-public json-glib
1527 (package
1528 (name "json-glib")
1529 (version "1.0.2")
1530 (source (origin
1531 (method url-fetch)
1532 (uri (string-append "mirror://gnome/sources/" name "/"
1533 (version-major+minor version) "/"
1534 name "-" version ".tar.xz"))
1535 (sha256
1536 (base32
1537 "02k66lpc4cmgygj66n8zcy59bggy7yzm3v4hni9xqplgva9d2yw8"))))
1538 (build-system gnu-build-system)
88c6b580
LC
1539 (arguments
1540 '(#:phases (alist-cons-before
1541 'build 'set-cc
1542 (lambda _
1543 ;; Set $CC so that g-ir-scanner works.
1544 (setenv "CC" "gcc")
1545 #t)
1546 %standard-phases)))
109da1c0 1547 (native-inputs
88c6b580 1548 `(("glib" ,glib "bin") ;for glib-mkenums and glib-genmarshal
109da1c0
AE
1549 ("gobject-introspection" ,gobject-introspection)
1550 ("pkg-config" ,pkg-config)))
1551 (propagated-inputs
88c6b580 1552 `(("glib" ,glib))) ;according to json-glib-1.0.pc
109da1c0
AE
1553 (home-page "https://wiki.gnome.org/Projects/JsonGlib")
1554 (synopsis "Compiler for the GObject type system")
1555 (description "JSON-GLib is a C library based on GLib providing
1556serialization and deserialization support for the JavaScript Object Notation
1557(JSON) format described by RFC 4627. It provides parser and generator
1558GObject classes and various wrappers for the complex data types employed by
1559JSON, such as arrays and objects.")
1560 (license license:lgpl2.1+)))
6f96a359
SB
1561
1562(define-public libxklavier
1563 (package
1564 (name "libxklavier")
1565 (version "5.3")
1566 (source (origin
1567 (method url-fetch)
1568 (uri (string-append "mirror://gnome/sources/" name "/"
1569 version "/" name "-" version ".tar.xz"))
1570 (sha256
1571 (base32
1572 "016lpdv35z0qsw1cprdc2k5qzkdi5waj6qmr0a2q6ljn9g2kpv7b"))))
1573 (build-system gnu-build-system)
1574 (arguments
1575 '(#:configure-flags
1576 (list (string-append "--with-xkb-base="
1577 (assoc-ref %build-inputs "xkeyboard-config")
1578 "/share/X11/xkb"))
1579 #:phases
1580 (alist-cons-before
1581 'build 'set-cc
1582 (lambda _
1583 (setenv "CC" "gcc")) ; for g-ir-scanner.
1584 %standard-phases)))
1585 (native-inputs
1586 `(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
1587 ("gobject-introspection" ,gobject-introspection)
1588 ("pkg-config" ,pkg-config)))
1589 (propagated-inputs
1590 ;; Required by libxklavier.pc.
1591 `(("glib" ,glib)
1592 ("libxml2" ,libxml2)))
1593 (inputs
1594 `(("iso-codes" ,iso-codes)
1595 ("libxi" ,libxi)
1596 ("libxkbfile" ,libxkbfile)
1597 ("xkbcomp" ,xkbcomp)
1598 ("xkeyboard-config" ,xkeyboard-config)))
1599 (home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
1600 (synopsis "High-level API for X Keyboard Extension")
1601 (description
1602 "LibXklavier is a library providing high-level API for X Keyboard
1603Extension known as XKB. This library is indended to support XFree86 and other
1604commercial X servers. It is useful for creating XKB-related software (layout
1605indicators etc).")
1606 (license license:lgpl2.0+)))
619936a4
LC
1607
1608(define-public python2-rsvg
1609 ;; XXX: This is actually a subset of gnome-python-desktop.
1610 (package
1611 (name "python2-rsvg")
1612 (version "2.32.0")
1613 (source
1614 (origin
1615 (method url-fetch)
1616 (uri (string-append
1617 "mirror://gnome/sources/gnome-python-desktop/2.32/gnome-python-desktop-"
1618 version ".tar.bz2"))
1619 (sha256
1620 (base32
1621 "1s8f9rns9v7qlwjv9qh9lr8crp88dpzfm45hj47zc3ivpy0dbnq9"))))
1622 (build-system gnu-build-system)
1623 (native-inputs
1624 `(("pkg-config" ,pkg-config)))
1625 (inputs
1626 `(("python" ,python-2)
1627 ("python2-pygtk" ,python2-pygtk)
1628 ("librsvg" ,librsvg)))
1629 (home-page "http://www.gnome.org")
1630 (synopsis "Python bindings to librsvg")
1631 (description
1632 "This packages provides Python bindings to librsvg, the SVG rendering
1633library.")
1634
1635 ;; This is the license of the rsvg bindings. The license of each module
1636 ;; of gnome-python-desktop is given in 'COPYING'.
1637 (license license:lgpl2.1+)))
a31a6d22 1638
f2ca414a
SB
1639(define-public glib-networking
1640 (package
1641 (name "glib-networking")
1642 (version "2.44.0")
1643 (source (origin
1644 (method url-fetch)
1645 (uri (string-append "mirror://gnome/sources/glib-networking/"
1646 (version-major+minor version) "/"
1647 name "-" version ".tar.xz"))
1648 (sha256
1649 (base32
1650 "0ij33bhvn7y5gagx4sbrw906dsjjjs9dllxn73pzv6x97c6k92lg"))))
1651 (build-system gnu-build-system)
1652 (arguments
1653 `(#:configure-flags
1654 ;; FIXME: ca-certificates.crt is not available in the build environment.
1655 '("--with-ca-certificates=no")
1656 #:phases
1657 (modify-phases %standard-phases
3a4de6b2 1658 (add-before 'configure 'patch-giomoduledir
f2ca414a
SB
1659 ;; Install GIO modules into $out/lib/gio/modules.
1660 (lambda _
1661 (substitute* "configure"
1662 (("GIO_MODULE_DIR=.*")
1663 (string-append "GIO_MODULE_DIR=" %output
1664 "/lib/gio/modules\n"))))))))
1665 (native-inputs
1666 `(("pkg-config" ,pkg-config)
1667 ("intltool" ,intltool)))
1668 (inputs
1669 `(("glib" ,glib)
1670 ("gnutls" ,gnutls)
1671 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1672 ("p11-kit" ,p11-kit)))
1673 (home-page "http://www.gnome.org")
1674 (synopsis "Network-related GIO modules")
1675 (description
1676 "This package contains various network related extensions for the GIO
1677library.")
1678 (license license:lgpl2.0+)))
1679
6e1bb642
SB
1680(define-public libsoup
1681 (package
1682 (name "libsoup")
1683 (version "2.50.0")
1684 (source (origin
1685 (method url-fetch)
1686 (uri (string-append "mirror://gnome/sources/libsoup/"
1687 (version-major+minor version) "/"
1688 name "-" version ".tar.xz"))
1689 (sha256
1690 (base32
1691 "0yv61y5vfar1rfksa6f53zhfw9wcb39zjix8gqc1ff5gqid3c08y"))))
1692 (build-system gnu-build-system)
1693 (outputs '("out" "doc"))
1694 (arguments
1695 `(#:make-flags '("CC=gcc") ; for g-ir-scanner
1696 #:configure-flags
1697 (list (string-append "--with-html-dir="
1698 (assoc-ref %outputs "doc")
1699 "/share/gtk-doc/html")
1700 ;; To find GIO modules from glib-networking.
1701 (string-append "GIO_EXTRA_MODULES="
1702 (assoc-ref %build-inputs "glib-networking")
1703 "/lib/gio/modules"))
1704 #:phases
1705 (modify-phases %standard-phases
3a4de6b2 1706 (add-before 'configure 'disable-unconnected-socket-test
6e1bb642
SB
1707 ;; This test fails due to missing /etc/nsswitch.conf
1708 ;; in the build environment.
1709 (lambda _
1710 (substitute* "tests/socket-test.c"
1711 ((".*/sockets/unconnected.*") ""))
1712 #t))
3a4de6b2 1713 (add-before 'check 'unset-LC_ALL
6e1bb642
SB
1714 ;; The 'check-local' target runs 'env LANG=C sort -u',
1715 ;; unset 'LC_ALL' to make 'LANG' working.
1716 (lambda _
1717 (unsetenv "LC_ALL")
1718 #t)))))
1719 (native-inputs
1720 `(("glib:bin" ,glib "bin") ; for glib-mkenums
1721 ("gobject-introspection" ,gobject-introspection)
1722 ("intltool" ,intltool)
1723 ("pkg-config" ,pkg-config)
1724 ("python" ,python-wrapper)
1725 ;; These are needed for the tests.
1726 ;; FIXME: Add PHP once available.
1727 ("curl" ,curl)
1728 ("httpd" ,httpd)))
1729 (propagated-inputs
1730 ;; libsoup-2.4.pc refers to all these.
1731 `(("glib" ,glib)
1732 ("libxml2" ,libxml2)))
1733 (inputs
1734 `(("glib-networking" ,glib-networking)
1735 ("sqlite" ,sqlite)))
1736 (home-page "https://live.gnome.org/LibSoup/")
1737 (synopsis "GLib-based HTTP Library")
1738 (description
1739 "LibSoup is an HTTP client/server library for GNOME. It uses GObjects
1740and the GLib main loop, to integrate well with GNOME applications.")
1741 (license license:lgpl2.0+)))
1742
bba229a3
SB
1743(define-public libsecret
1744 (package
1745 (name "libsecret")
1746 (version "0.18")
1747 (source (origin
1748 (method url-fetch)
1749 (uri (string-append
1750 "mirror://gnome/sources/libsecret/" version "/"
1751 name "-" version ".tar.xz"))
1752 (sha256
1753 (base32
1754 "1qq29c01xxjyx5sl6y5h22w8r0ff4c73bph3gfx3h7mx5mvalwqc"))))
1755 (build-system gnu-build-system)
1756 (outputs '("out" "doc"))
1757 (arguments
1758 `(#:tests? #f ; FIXME: Testing hangs.
1759 #:make-flags '("CC=gcc") ; for g-ir-scanner.
1760 #:configure-flags
1761 (list (string-append "--with-html-dir="
1762 (assoc-ref %outputs "doc")
1763 "/share/gtk-doc/html"))))
1764 (native-inputs
1765 `(("glib:bin" ,glib "bin") ; for gdbus-codegen, etc.
1766 ("gobject-introspection" ,gobject-introspection)
1767 ("intltool" ,intltool)
1768 ("pkg-config" ,pkg-config)
1769 ("vala" ,vala)
1770 ("xsltproc" ,libxslt)))
1771 ;; These are needed for the tests.
1772 ;; FIXME: Add gjs once available.
1773 ;("dbus" ,dbus)
1774 ;("python2" ,python-2)
1775 ;("python2-dbus" ,python2-dbus)
1776 ;("python2-pygobject" ,python2-pygobject)
1777 ;("python2-pygobject-2" ,python2-pygobject-2)))
1778 (propagated-inputs
1779 `(("glib" ,glib))) ; required by libsecret-1.pc
1780 (inputs
1781 `(("docbook-xsl" ,docbook-xsl)
1782 ("libgcrypt" ,libgcrypt)
1783 ("libxml2" ,libxml2))) ; for XML_CATALOG_FILES
1784 (home-page "https://wiki.gnome.org/Projects/Libsecret/")
1785 (synopsis "GObject bindings for \"Secret Service\" API")
1786 (description
1787 "Libsecret is a GObject based library for storing and retrieving passwords
1788and other secrets. It communicates with the \"Secret Service\" using DBus.")
1789 (license license:lgpl2.1+)))
1790
a31a6d22
SB
1791(define-public gnome-mines
1792 (package
1793 (name "gnome-mines")
121398e7 1794 (version "3.16.0")
a31a6d22
SB
1795 (source
1796 (origin
1797 (method url-fetch)
1798 (uri (string-append "mirror://gnome/sources/" name "/"
1799 (version-major+minor version) "/"
1800 name "-" version ".tar.xz"))
1801 (sha256
1802 (base32
121398e7 1803 "0wfvqyryc1093l4dr75zv9h0jyn28z6wirdq03lm5w24qf9lvjjx"))))
a31a6d22
SB
1804 (build-system glib-or-gtk-build-system)
1805 (arguments
1806 '(#:phases
1807 (modify-phases %standard-phases
f8503e2b 1808 (add-before 'configure 'patch-/bin/true
a31a6d22
SB
1809 (lambda _
1810 (substitute* "configure"
1811 (("/bin/true") (which "true")))))
f8503e2b 1812 (add-after 'install 'wrap-pixbuf
a31a6d22
SB
1813 ;; Use librsvg's loaders.cache to support SVG files.
1814 (lambda* (#:key inputs outputs #:allow-other-keys)
1815 (let* ((out (assoc-ref outputs "out"))
1816 (prog (string-append out "/bin/gnome-mines"))
1817 (rsvg (assoc-ref inputs "librsvg"))
1818 (pixbuf (find-files rsvg "^loaders\\.cache$")))
1819 (wrap-program prog
1820 `("GDK_PIXBUF_MODULE_FILE" = ,pixbuf))))))))
1821 (native-inputs
1822 `(("pkg-config" ,pkg-config)
1823 ("desktop-file-utils" ,desktop-file-utils)
1824 ("intltool" ,intltool)
1825 ("itstool" ,itstool)))
1826 (inputs
1827 `(("gtk+" ,gtk+)
1828 ("librsvg" ,librsvg)))
1829 (home-page "https://wiki.gnome.org/Apps/Mines")
1830 (synopsis "Minesweeper game")
1831 (description
1832 "Mines (previously gnomine) is a puzzle game where you locate mines
1833floating in an ocean using only your brain and a little bit of luck.")
1834 (license license:gpl2+)))
88f70665
AW
1835
1836(define-public gnome-terminal
1837 (package
1838 (name "gnome-terminal")
1839 (version "3.16.0")
1840 (source
1841 (origin
1842 (method url-fetch)
1843 (uri (string-append "mirror://gnome/sources/" name "/"
1844 (version-major+minor version) "/"
1845 name "-" version ".tar.xz"))
1846 (sha256
1847 (base32
1848 "1s3zwqxs4crlqmh6l7s7n87pbmh2nnjdvhxlkalh58pbl0bk0qrd"))))
1849 (build-system glib-or-gtk-build-system)
1850 (arguments
1851 '(#:configure-flags
1852 (list "--disable-migration" "--disable-search-provider"
1853 "--without-nautilus-extension")
1854 #:phases
1855 (modify-phases %standard-phases
3a4de6b2 1856 (add-before 'configure 'patch-/bin/true
88f70665
AW
1857 (lambda _
1858 (substitute* "configure"
1859 (("/bin/true") (which "true"))))))))
1860 (native-inputs
1861 `(("pkg-config" ,pkg-config)
1862 ("desktop-file-utils" ,desktop-file-utils)
1863 ("intltool" ,intltool)
1864 ("itstool" ,itstool)))
1865 (inputs
1866 `(("gtk+" ,gtk+)
1867 ("vte" ,vte)
1868 ("gnutls" ,gnutls)
1869 ("dconf" ,dconf)
1870 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
1871 ("util-linux" ,util-linux)
1872 ("vala" ,vala)))
1873 (home-page "https://wiki.gnome.org/Apps/Terminal")
1874 (synopsis "Terminal emulator")
1875 (description
1876 "GNOME Terminal is a terminal emulator application for accessing a
1877UNIX shell environment which can be used to run programs available on
1878your system.
1879
1880It supports several profiles, multiple tabs and implements several
1881keyboard shortcuts.")
1882 (license license:gpl3+)))
75016d07
AW
1883
1884(define-public colord
1885 (package
1886 (name "colord")
1887 (version "1.1.8")
1888 (source
1889 (origin
1890 (method url-fetch)
1891 (uri (string-append "http://www.freedesktop.org/software/colord/releases/"
1892 name "-" version ".tar.xz"))
1893 (sha256
1894 (base32
1895 "01w97rgzk4qi6fp03scq5jyw0ayx11b479p7dkm2r77k84b9agph"))))
1896 (build-system glib-or-gtk-build-system)
1897 (arguments
1898 '(;; The tests want to run valgrind. Punt for now.
1899 #:tests? #f
1900 #:configure-flags (list "--localstatedir=/var"
1901 ;; GUSB not packaged yet.
1902 "--disable-gusb"
1903 ;; No dep on systemd.
1904 "--disable-systemd-login"
1905 ;; Wants to install to global completion dir;
1906 ;; punt.
1907 "--disable-bash-completion"
1908 ;; colord-gtk not packaged yet.
1909 "--disable-session-example"
1910 "--with-daemon-user=colord"
1911 "--enable-sane"
1912 (string-append "--with-udevrulesdir="
1913 (assoc-ref %outputs "out")
1914 "/lib/udev/rules.d"))
1915 #:phases
1916 (modify-phases %standard-phases
3a4de6b2 1917 (add-before 'configure 'patch-/bin/true
75016d07
AW
1918 (lambda _
1919 (substitute* "configure"
1920 (("/bin/true") (which "true")))
1921 (substitute* "src/Makefile.in"
1922 (("if test -w \\$\\(DESTDIR\\)\\$\\(prefix\\)/;")
1923 "if test -w $(DESTDIR)$(localstatedir);"))))
3a4de6b2 1924 (add-before 'build 'set-cc
75016d07
AW
1925 (lambda _
1926 ;; Set $CC so that g-ir-scanner works.
1927 (setenv "CC" "gcc")
1928 #t)))))
1929 (native-inputs
1930 `(("pkg-config" ,pkg-config)
1931 ("gobject-introspection" ,gobject-introspection)
1932 ("libtool" ,libtool)
1933 ("intltool" ,intltool)))
1934 (inputs
1935 `(("eudev" ,eudev)
1936 ("dbus" ,dbus)
1937 ("dbus-glib" ,dbus-glib)
1938 ("libusb" ,libusb)
1939 ("lcms" ,lcms)
1940 ("sqlite" ,sqlite)
1941 ("polkit" ,polkit)
1942 ("sane-backends" ,sane-backends)))
1943 (home-page "http://www.freedesktop.org/software/colord/")
1944 (synopsis "Color management service")
1945 (description "Colord is a system service that makes it easy to manage,
1946install and generate color profiles to accurately color manage input and
1947output devices.")
1948 (license license:gpl2+)))
7b2abd00
AW
1949
1950(define-public geoclue
1951 (package
1952 (name "geoclue")
1953 (version "2.1.10")
1954 (source
1955 (origin
1956 (method url-fetch)
1957 (uri (string-append "http://www.freedesktop.org/software/" name
1958 "/releases/" (version-major+minor version) "/"
1959 name "-" version ".tar.xz"))
1960 (sha256
1961 (base32
1962 "0s0ws2bx5g1cbjamxmm448r4n4crha2fwpzm8zbx6cq6qslygmzi"))
1963 (patches (list (search-patch "geoclue-config.patch")))))
1964 (build-system glib-or-gtk-build-system)
1965 (arguments
1966 '(;; The tests want to run the system bus.
1967 #:tests? #f
1968 #:configure-flags (list ;; Disable bits requiring ModemManager.
1969 "--disable-3g-source"
1970 "--disable-cdma-source"
1971 "--disable-modem-gps-source"
1972 "--with-dbus-service-user=geoclue")
1973 #:phases
1974 (modify-phases %standard-phases
3a4de6b2 1975 (add-before 'configure 'patch-/bin/true
7b2abd00
AW
1976 (lambda _
1977 (substitute* "configure"
1978 (("/bin/true") (which "true"))))))))
1979 (native-inputs
1980 `(("pkg-config" ,pkg-config)
1981 ("intltool" ,intltool)))
1982 (inputs
1983 `(("glib" ,glib)
1984 ("json-glib" ,json-glib)
1985 ("libsoup" ,libsoup)))
1986 (home-page "http://freedesktop.org/wiki/Software/GeoClue/")
1987 (synopsis "Geolocation service")
1988 (description "Geoclue is a D-Bus service that provides location
1989information. The primary goal of the Geoclue project is to make creating
1990location-aware applications as simple as possible, while the secondary goal is
1991to ensure that no application can access location information without explicit
1992permission from user. ")
1993 (license license:gpl2+)))
2bfe7437
AW
1994
1995(define-public geocode-glib
1996 (package
1997 (name "geocode-glib")
1998 (version "3.16.0")
1999 (source (origin
2000 (method url-fetch)
2001 (uri (string-append "mirror://gnome/sources/geocode-glib/"
2002 (version-major+minor version) "/"
2003 name "-" version ".tar.xz"))
2004 (sha256
2005 (base32
2006 "1cbfv0kds6b6k0cl7q47xpj3x1scwcd7m68zl1rf7i4hmhw4hpqj"))))
2007 (build-system gnu-build-system)
2008 (arguments
2009 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2010 ;; work for the builder. Punt.
2011 #:tests? #f
2012 #:make-flags '("CC=gcc") ; for g-ir-scanner
2013 ))
2014 (native-inputs
2015 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2016 ("gobject-introspection" ,gobject-introspection)
2017 ("pkg-config" ,pkg-config)
2018 ("json-glib" ,json-glib)))
2019 (propagated-inputs
2020 ;; geocode-glib-1.0.pc refers to GIO.
2021 `(("glib" ,glib)))
2022 (inputs
2023 `(("libsoup" ,libsoup)))
2024 (home-page "https://github.com/GNOME/geocode-glib/")
2025 (synopsis "Geocoding and reverse-geocoding library")
2026 (description
2027 "geocode-glib is a convenience library for geocoding (finding longitude,
2028and latitude from an address) and reverse geocoding (finding an address from
2029coordinates) using the Nominatim service. geocode-glib caches requests for
2030faster results and to avoid unnecessary server load.")
2031 (license license:lgpl2.0+)))
a1d5bb0e
AW
2032
2033(define-public upower
2034 (package
2035 (name "upower")
2036 (version "0.99.2")
2037 (source (origin
2038 (method url-fetch)
2039 (uri (string-append "http://upower.freedesktop.org/releases/"
2040 name "-" version ".tar.xz"))
2041 (sha256
2042 (base32
2043 "0vwlh20jmaf01m38kfn8yx2869a3clmkzlycrj99rf4nvwx4bp79"))
2044 (patches (list (search-patch "upower-builddir.patch")))))
2045 (build-system glib-or-gtk-build-system)
2046 (arguments
2047 '( ;; The tests want to contact the system bus, which can't be done in the
2048 ;; build environment. The integration test can run, but the last of
2049 ;; the up-self-tests doesn't. Disable tests for now.
2050 #:tests? #f
2051 #:configure-flags (list "--localstatedir=/var"
2052 (string-append "--with-udevrulesdir="
2053 (assoc-ref %outputs "out")
2054 "/lib/udev/rules.d"))
2055 #:phases
2056 (modify-phases %standard-phases
2057 (add-before 'configure 'patch-/bin/true
2058 (lambda _
2059 (substitute* "configure"
2060 (("/bin/true") (which "true")))))
2061 (add-before 'configure 'patch-integration-test
2062 (lambda _
2063 (substitute* "src/linux/integration-test"
2064 (("/usr/bin/python3") (which "python3"))))))))
2065 (native-inputs
2066 `(("pkg-config" ,pkg-config)
2067 ("intltool" ,intltool)
2068 ("python" ,python)))
2069 (inputs
2070 `(("eudev" ,eudev)
2071 ("dbus" ,dbus)
2072 ("dbus-glib" ,dbus-glib)
2073 ("libusb" ,libusb)))
2074 (home-page "http://upower.freedesktop.org/")
2075 (synopsis "System daemon for managing power devices")
2076 (description
2077 "UPower is an abstraction for enumerating power devices,
2078listening to device events and querying history and statistics. Any
2079application or service on the system can access the org.freedesktop.UPower
2080service via the system message bus.")
2081 (license license:gpl2+)))
6a180f6f
AW
2082
2083(define-public libgweather
2084 (package
2085 (name "libgweather")
2086 (version "3.16.0")
2087 (source (origin
2088 (method url-fetch)
2089 (uri (string-append "mirror://gnome/sources/" name "/"
2090 (version-major+minor version) "/"
2091 name "-" version ".tar.xz"))
2092 (sha256
2093 (base32
2094 "0x1z6wv7hdw2ivlkifcbd940zyrnvqvc4zh2drgvd2r6jmd7bjza"))))
2095 (build-system gnu-build-system)
2096 (arguments
2097 `(;; The tests want to write to $HOME/.cache/geocode-glib, which doesn't
2098 ;; work for the builder. Punt.
2099 #:tests? #f
2100 #:make-flags '("CC=gcc") ; for g-ir-scanner
2101 #:configure-flags
2102 `(;; No introspection for now, as it wants to install to
2103 ;; gobject-introspection's own directory and I don't know how to easily
2104 ;; override this.
2105 "--enable-introspection=no"
2106 ,(string-append "--with-zoneinfo-dir="
2107 (assoc-ref %build-inputs "tzdata")
2108 "/share/zoneinfo"))))
2109 (native-inputs
2110 `(("glib:bin" ,glib "bin") ; for glib-mkenums
2111 ("pkg-config" ,pkg-config)
2112 ("intltool" ,intltool)))
2113 (propagated-inputs
2114 ;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
2115 ;; libsoup.
2116 `(("gtk+" ,gtk+)
2117 ("gdk-pixbuf" ,gdk-pixbuf)
2118 ("libxml2" ,libxml2)
2119 ("libsoup" ,libsoup)))
2120 (inputs
2121 `(("tzdata" ,tzdata)
2122 ("geocode-glib" ,geocode-glib)))
2123 (home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
2124 (synopsis "Location, time zone, and weather library for GNOME")
2125 (description
2126 "libgweather is a library to access weather information from online
2127services for numerous locations.")
2128 (license license:gpl2+)))