gnu: vte: Add 'pre-build phase.
[jackhill/guix/guix.git] / gnu / packages / gnome.scm
CommitLineData
995b7261
AE
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
1dd26275 3;;; Copyright © 2014 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>
995b7261
AE
6;;;
7;;; This file is part of GNU Guix.
8;;;
9;;; GNU Guix is free software; you can redistribute it and/or modify it
10;;; under the terms of the GNU General Public License as published by
11;;; the Free Software Foundation; either version 3 of the License, or (at
12;;; your option) any later version.
13;;;
14;;; GNU Guix is distributed in the hope that it will be useful, but
15;;; WITHOUT ANY WARRANTY; without even the implied warranty of
16;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17;;; GNU General Public License for more details.
18;;;
19;;; You should have received a copy of the GNU General Public License
20;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
21
22(define-module (gnu packages gnome)
b5b73a82 23 #:use-module ((guix licenses) #:prefix license:)
995b7261
AE
24 #:use-module (guix packages)
25 #:use-module (guix download)
29a7c98a 26 #:use-module (guix utils)
995b7261 27 #:use-module (guix build-system gnu)
121de2e1 28 #:use-module (guix build-system glib-or-gtk)
ed19903d 29 #:use-module (gnu packages)
5698b8b8 30 #:use-module (gnu packages bison)
121de2e1 31 #:use-module (gnu packages flex)
b4ce6300 32 #:use-module (gnu packages docbook)
995b7261 33 #:use-module (gnu packages glib)
c1354b90 34 #:use-module (gnu packages gnupg)
85f5dc19 35 #:use-module (gnu packages gstreamer)
d9c1a22b 36 #:use-module (gnu packages gtk)
c1354b90 37 #:use-module (gnu packages pdf)
5698b8b8 38 #:use-module (gnu packages popt)
c1354b90 39 #:use-module (gnu packages ghostscript)
9cc98f8a 40 #:use-module (gnu packages iso-codes)
85f5dc19 41 #:use-module (gnu packages libcanberra)
e55354b8 42 #:use-module (gnu packages image)
27477d2d 43 #:use-module (gnu packages perl)
995b7261
AE
44 #:use-module (gnu packages pkg-config)
45 #:use-module (gnu packages python)
85f5dc19 46 #:use-module (gnu packages xml)
200726ed 47 #:use-module (gnu packages gl)
1dd26275 48 #:use-module (gnu packages compression)
fecbf86e 49 #:use-module (gnu packages xorg)
ea57378f
SB
50 #:use-module (gnu packages xdisorg)
51 #:use-module (gnu packages ncurses))
85f5dc19
AE
52
53(define-public brasero
54 (package
55 (name "brasero")
56 (version "3.8.0")
57 (source (origin
58 (method url-fetch)
59 (uri (string-append "mirror://gnome/sources/brasero/3.8/brasero-"
60 version ".tar.xz"))
61 (sha256
62 (base32
63 "1r5wjsrm47amdaf862ymkdlwlb636c45wg14x20hdr99c653d2nr"))))
64 (build-system gnu-build-system)
65 (propagated-inputs
66 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
9cc98f8a
CR
67 (native-inputs
68 `(("intltool" ,intltool)
426adbe8 69 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
9cc98f8a 70 ("pkg-config" ,pkg-config)))
85f5dc19
AE
71 (inputs
72 `(("glib" ,glib)
73 ("gnome-doc-utils" ,gnome-doc-utils)
74 ("gstreamer" ,gstreamer)
75 ("gst-plugins-base" ,gst-plugins-base)
76 ("gtk+" ,gtk+)
85f5dc19
AE
77 ("itstool" ,itstool)
78 ("libcanberra" ,libcanberra)
79 ("libice" ,libice)
80 ("libnotify" ,libnotify)
81 ("libsm" ,libsm)
c4c4cc05 82 ("libxml2" ,libxml2)))
85f5dc19
AE
83 (home-page "https://projects.gnome.org/brasero/")
84 (synopsis "CD/DVD burning tool for Gnome")
85 (description "Brasero is an application to burn CD/DVD for the Gnome
86Desktop. It is designed to be as simple as possible and has some unique
87features to enable users to create their discs easily and quickly.")
1dd26275 88 (license license:gpl2+)))
995b7261 89
9cc98f8a
CR
90(define-public gnome-desktop
91 (package
92 (name "gnome-desktop")
93 (version "3.10.0")
94 (source
95 (origin
96 (method url-fetch)
b38e45d8
EB
97 (uri (string-append "mirror://gnome/sources/" name "/"
98 (version-major+minor version) "/"
9cc98f8a
CR
99 name "-" version ".tar.xz"))
100 (sha256
101 (base32
102 "0p5p6wvmy5zvcdnmp5h2biz7rjrcw99chq5kkwcnb68flcmkb1ry"))))
103 (build-system gnu-build-system)
104 (native-inputs
105 `(("intltool" ,intltool)
106 ("pkg-config" ,pkg-config)))
107 (inputs
108 `(("gdk-pixbuf" ,gdk-pixbuf)
109 ("glib" ,glib)
110 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
111 ("gtk+" ,gtk+)
112 ("iso-codes" ,iso-codes)
113 ("itstool" ,itstool)
114 ("libx11" ,libx11)
115 ("libxext" ,libxext)
116 ("libxkbfile" ,libxkbfile)
117 ("libxrandr" ,libxrandr)
118 ("xkeyboard-config" ,xkeyboard-config)))
119 (home-page "https://www.gnome.org/")
120 (synopsis
35b9e423 121 "Libgnome-desktop, gnome-about, and desktop-wide documents")
9cc98f8a
CR
122 (description
123 "The libgnome-desktop library provides API shared by several applications
35b9e423
EB
124on the desktop, but that cannot live in the platform for various reasons.
125There is no API or ABI guarantee, although we are doing our best to provide
126stability. Documentation for the API is available with gtk-doc.
9cc98f8a
CR
127
128The gnome-about program helps find which version of GNOME is installed.")
129 ; Some bits under the LGPL.
1dd26275 130 (license license:gpl2+)))
9cc98f8a 131
995b7261
AE
132(define-public gnome-doc-utils
133 (package
134 (name "gnome-doc-utils")
135 (version "0.20.10")
136 (source
137 (origin
138 (method url-fetch)
b38e45d8
EB
139 (uri (string-append "mirror://gnome/sources/" name "/"
140 (version-major+minor version) "/"
995b7261
AE
141 name "-" version ".tar.xz"))
142 (sha256
143 (base32
144 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
145 (build-system gnu-build-system)
c4c4cc05 146 (native-inputs
995b7261 147 `(("intltool" ,intltool)
b4ce6300 148 ("docbook-xml" ,docbook-xml-4.4)
995b7261
AE
149 ("libxml2" ,libxml2)
150 ("libxslt" ,libxslt)
151 ("pkg-config" ,pkg-config)
152 ("python-2" ,python-2)))
995b7261
AE
153 (home-page "https://wiki.gnome.org/GnomeDocUtils")
154 (synopsis
155 "Documentation utilities for the Gnome project")
156 (description
157 "Gnome-doc-utils is a collection of documentation utilities for the
158Gnome project. It includes xml2po tool which makes it easier to translate
159and keep up to date translations of documentation.")
1dd26275 160 (license license:gpl2+))) ; xslt under lgpl
d9c1a22b 161
c1354b90
LC
162(define-public libgnome-keyring
163 (package
164 (name "libgnome-keyring")
165 (version "3.6.0")
166 (source (origin
167 (method url-fetch)
b38e45d8
EB
168 (uri (string-append "mirror://gnome/sources/" name "/"
169 (version-major+minor version) "/"
170 name "-" version ".tar.xz"))
c1354b90
LC
171 (sha256
172 (base32
173 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
174 (build-system gnu-build-system)
c1354b90 175 (inputs
c4c4cc05 176 `(("libgcrypt" ,libgcrypt)
c1354b90 177 ("dbus" ,dbus)))
c4c4cc05
JD
178 (native-inputs
179 `(("pkg-config" ,pkg-config)
426adbe8 180 ("glib" ,glib "bin")
c4c4cc05 181 ("intltool" ,intltool)))
c1354b90
LC
182 (propagated-inputs
183 ;; Referred to in .h files and .pc.
184 `(("glib" ,glib)))
185 (home-page "http://www.gnome.org")
186 (synopsis "Accessing passwords from the GNOME keyring")
187 (description
188 "Client library to access passwords from the GNOME keyring.")
189
190 ;; Though a couple of files are LGPLv2.1+.
1dd26275 191 (license license:lgpl2.0+)))
c1354b90
LC
192
193(define-public evince
194 (package
195 (name "evince")
196 (version "3.6.1")
197 (source (origin
198 (method url-fetch)
b38e45d8
EB
199 (uri (string-append "mirror://gnome/sources/" name "/"
200 (version-major+minor version) "/"
201 name "-" version ".tar.xz"))
c1354b90
LC
202 (sha256
203 (base32
204 "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv"))))
121de2e1 205 (build-system glib-or-gtk-build-system)
c1354b90
LC
206 (arguments
207 `(#:configure-flags '("--disable-nautilus")
208
209 ;; FIXME: Tests fail with:
210 ;; ImportError: No module named gi.repository
211 ;; Where should that module come from?
3d243e9c 212 #:tests? #f))
c1354b90
LC
213 (inputs
214 `(("libspectre" ,libspectre)
215 ;; ("djvulibre" ,djvulibre)
216 ("ghostscript" ,ghostscript)
217 ("poppler" ,poppler)
218 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
219 ("libgnome-keyring" ,libgnome-keyring)
220 ("gnome-icon-theme" ,gnome-icon-theme)
221 ("itstool" ,itstool)
222 ("gdk-pixbuf" ,gdk-pixbuf)
223 ("atk" ,atk)
224 ("pango" ,pango)
225 ("gtk+" ,gtk+)
226 ("glib" ,glib)
227 ("libxml2" ,libxml2)
c1354b90
LC
228 ("libsm" ,libsm)
229 ("libice" ,libice)
96e42467 230 ("shared-mime-info" ,shared-mime-info)
3d243e9c
FB
231 ("dconf" ,dconf)
232 ("libcanberra" ,libcanberra)
233
c1354b90
LC
234 ;; For tests.
235 ("dogtail" ,python2-dogtail)))
96e42467 236 (native-inputs
c4c4cc05 237 `(("intltool" ,intltool)
426adbe8 238 ("glib" ,glib "bin")
c4c4cc05 239 ("pkg-config" ,pkg-config)))
c1354b90
LC
240 (home-page
241 "http://www.gnome.org/projects/evince/")
242 (synopsis "GNOME's document viewer")
243 (description
244 "Evince is a document viewer for multiple document formats. It
245currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
246of Evince is to replace the multiple document viewers that exist
96e42467 247on the GNOME Desktop with a single simple application.")
1dd26275 248 (license license:gpl2+)))
c1354b90 249
22e32e69
AE
250(define-public gsettings-desktop-schemas
251 (package
252 (name "gsettings-desktop-schemas")
253 (version "3.10.0")
254 (source
255 (origin
256 (method url-fetch)
257 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 258 (version-major+minor version) "/"
22e32e69
AE
259 name "-" version ".tar.xz"))
260 (sha256
261 (base32
262 "1km8qxwrzvravmg8j680qv64bwnwbdgrmy8bqmhs0dgxn2b1as6a"))))
263 (build-system gnu-build-system)
264 (inputs
c4c4cc05
JD
265 `(("glib" ,glib)))
266 (native-inputs
267 `(("intltool" ,intltool)
426adbe8 268 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
22e32e69
AE
269 ("pkg-config" ,pkg-config)))
270 (home-page "https://launchpad.net/gsettings-desktop-schemas")
271 (synopsis
272 "GNOME settings for various desktop components")
273 (description
274 "Gsettings-desktop-schemas contains a collection of GSettings schemas
275for settings shared by various components of the GNOME desktop.")
1dd26275 276 (license license:lgpl2.1+)))
22e32e69 277
27477d2d
AE
278(define-public icon-naming-utils
279 (package
280 (name "icon-naming-utils")
281 (version "0.8.90")
282 (source
283 (origin
284 (method url-fetch)
285 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
286 version ".tar.bz2"))
287 (sha256
288 (base32
289 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
290 (build-system gnu-build-system)
291 (inputs
292 `(("perl" ,perl)
293 ("perl-xml-simple" ,perl-xml-simple)))
f4e97277
SB
294 (arguments
295 '(#:phases
296 (alist-cons-after
297 'install 'set-load-paths
298 ;; Tell 'icon-name-mapping' where XML::Simple is.
299 (lambda* (#:key outputs #:allow-other-keys)
300 (let* ((out (assoc-ref outputs "out"))
301 (prog (string-append out "/libexec/icon-name-mapping")))
302 (wrap-program
303 prog
304 `("PERL5LIB" = ,(list (getenv "PERL5LIB"))))))
305 %standard-phases)))
27477d2d
AE
306 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
307 (synopsis
308 "Utility to implement the Freedesktop Icon Naming Specification")
309 (description
310 "To help with the transition to the Freedesktop Icon Naming
311Specification, the icon naming utility maps the icon names used by the
312GNOME and KDE desktops to the icon names proposed in the specification.")
1dd26275 313 (license license:lgpl2.1+)))
27477d2d 314
7d3f3651
AE
315(define-public gnome-icon-theme
316 (package
317 (name "gnome-icon-theme")
318 (version "3.10.0")
319 (source
320 (origin
321 (method url-fetch)
322 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 323 (version-major+minor version) "/"
7d3f3651
AE
324 name "-" version ".tar.xz"))
325 (sha256
326 (base32
327 "1xinbgkkvlhazj887ajcl13i7kdc1wcca02jwxzvjrvchjsp4m66"))))
328 (build-system gnu-build-system)
329 (inputs
330 `(("gtk+" ,gtk+)
c4c4cc05
JD
331 ("icon-naming-utils" ,icon-naming-utils)))
332 (native-inputs
333 `(("intltool" ,intltool)
334 ("pkg-config" ,pkg-config)))
7d3f3651
AE
335 (home-page "http://art.gnome.org/")
336 (synopsis
337 "GNOME icon theme")
338 (description
339 "Icons for the GNOME desktop.")
1dd26275 340 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
7d3f3651 341
9167f8e6
LC
342(define-public shared-mime-info
343 (package
344 (name "shared-mime-info")
345 (version "1.2")
346 (source (origin
347 (method url-fetch)
b38e45d8
EB
348 (uri (string-append "http://freedesktop.org/~hadess/"
349 "shared-mime-info-" version ".tar.xz"))
9167f8e6
LC
350 (sha256
351 (base32
352 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
353 (build-system gnu-build-system)
354 (arguments
355 ;; The build system appears not to be parallel-safe.
356 '(#:parallel-build? #f))
357 (inputs
358 `(("glib" ,glib)
c4c4cc05 359 ("libxml2" ,libxml2)))
9167f8e6 360 (native-inputs
c4c4cc05
JD
361 `(("intltool" ,intltool)
362 ("pkg-config" ,pkg-config)))
9167f8e6
LC
363 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
364 (synopsis "Database of common MIME types")
365 (description
366 "The shared-mime-info package contains the core database of common types
367and the update-mime-database command used to extend it. It requires glib2 to
368be installed for building the update command. Additionally, it uses intltool
369for translations, though this is only a dependency for the maintainers. This
370database is translated at Transifex.")
1dd26275 371 (license license:gpl2+)))
9167f8e6 372
bef4dd92
AE
373(define-public hicolor-icon-theme
374 (package
375 (name "hicolor-icon-theme")
376 (version "0.12")
377 (source
378 (origin
379 (method url-fetch)
b38e45d8
EB
380 (uri (string-append "http://icon-theme.freedesktop.org/releases/"
381 "hicolor-icon-theme-" version ".tar.gz"))
bef4dd92
AE
382 (sha256
383 (base32
384 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
385 (build-system gnu-build-system)
386 (arguments
387 `(#:tests? #f)) ; no check target
388 (home-page "http://icon-theme.freedesktop.org/releases/")
389 (synopsis
390 "Freedesktop icon theme")
391 (description
392 "Freedesktop icon theme.")
1dd26275 393 (license license:gpl2)))
bef4dd92 394
d9c1a22b
AE
395(define-public libnotify
396 (package
397 (name "libnotify")
398 (version "0.7.6")
399 (source
400 (origin
401 (method url-fetch)
402 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 403 (version-major+minor version) "/"
d9c1a22b
AE
404 name "-" version ".tar.xz"))
405 (sha256
406 (base32
407 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
408 (build-system gnu-build-system)
409 (inputs
410 `(("gdk-pixbuf" ,gdk-pixbuf)
411 ("glib" ,glib)
412 ("gtk+" ,gtk+)
c4c4cc05
JD
413 ("libpng" ,libpng)))
414 (native-inputs
426adbe8
LC
415 `(("pkg-config" ,pkg-config)
416 ("glib" ,glib "bin")))
d9c1a22b
AE
417 (home-page "https://developer-next.gnome.org/libnotify/")
418 (synopsis
419 "GNOME desktop notification library")
420 (description
421 "Libnotify is a library that sends desktop notifications to a
35b9e423 422notification daemon, as defined in the Desktop Notifications spec. These
d9c1a22b
AE
423notifications can be used to inform the user about an event or display
424some form of information without getting in the user's way.")
1dd26275 425 (license license:lgpl2.1+)))
7a8605ce
CR
426
427(define-public libpeas
428 (package
429 (name "libpeas")
430 (version "1.9.0")
431 (source
432 (origin
433 (method url-fetch)
434 (uri (string-append "mirror://gnome/sources/" name "/"
b38e45d8 435 (version-major+minor version) "/"
7a8605ce
CR
436 name "-" version ".tar.xz"))
437 (sha256
438 (base32
439 "13fzyzv6c0cfdj83z1s16lv8k997wpnzyzr0wfwcfkcmvz64g1q0"))))
440 (build-system gnu-build-system)
7a8605ce
CR
441 (inputs
442 `(("atk" ,atk)
443 ("gdk-pixbuf" ,gdk-pixbuf)
444 ("glib" ,glib)
7a8605ce 445 ("gtk+" ,gtk+)
141aed80
LC
446 ("pango" ,pango)))
447 (native-inputs
448 `(("pkg-config" ,pkg-config)
93622993 449 ("glib:bin" ,glib "bin")
141aed80
LC
450 ("gobject-introspection" ,gobject-introspection)
451 ("intltool" ,intltool)))
7a8605ce
CR
452 (home-page "https://wiki.gnome.org/Libpeas")
453 (synopsis "GObject plugin system")
454 (description
35b9e423 455 "Libpeas is a gobject-based plugins engine, and is targetted at giving
7a8605ce
CR
456every application the chance to assume its own extensibility. It also has a
457set of features including, but not limited to: multiple extension points; on
458demand (lazy) programming language support for C, Python and JS; simplicity of
459the API")
460
1dd26275 461 (license license:lgpl2.0+)))
ed19903d
JD
462
463(define-public gtkglext
464 (package
465 (name "gtkglext")
466 (version "1.2.0")
467 (source (origin
468 (method url-fetch)
469 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
470 version "/gtkglext-" version ".tar.gz"))
471 (sha256
472 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
473 (patches (list
ed19903d
JD
474 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
475 (build-system gnu-build-system)
476 (inputs `(("gtk+" ,gtk+-2)
477 ("mesa" ,mesa)
cc8b02f4 478 ("glu" ,glu)
ed19903d
JD
479 ("libx11" ,libx11)
480 ("libxt" ,libxt)))
426adbe8
LC
481 (native-inputs `(("pkg-config" ,pkg-config)
482 ("glib" ,glib "bin")))
a83b6a06 483 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
ed19903d 484 (home-page "https://projects.gnome.org/gtkglext")
9e771e3b 485 (synopsis "OpenGL extension to GTK+")
35b9e423 486 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
ed19903d
JD
487additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
488API add-ons to make GTK+ widgets OpenGL-capable.")
1dd26275 489 (license license:lgpl2.1+)))
3600420e
JD
490
491(define-public glade3
492 (package
493 (name "glade")
494 (version "3.8.4")
b38e45d8
EB
495 (source (origin
496 (method url-fetch)
497 (uri (string-append "mirror://gnome/sources/" name "/"
498 (version-major+minor version) "/"
499 name "3-" version ".tar.xz"))
3600420e
JD
500 (sha256
501 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
502 (build-system gnu-build-system)
503 (inputs
504 `(("gtk+" ,gtk+-2)
505 ("libxml2" ,libxml2)))
506 (native-inputs
507 `(("intltool" ,intltool)
508 ("python" ,python)
509 ("pkg-config" ,pkg-config)))
510 (home-page "https://glade.gnome.org")
511 (synopsis "GTK+ rapid application development tool")
512 (description "Glade is a rapid application development (RAD) tool to
513enable quick & easy development of user interfaces for the GTK+ toolkit and
514the GNOME desktop environment.")
1dd26275
LC
515 (license license:lgpl2.0+)))
516
517(define-public libcroco
518 (package
519 (name "libcroco")
520 (version "0.6.8")
521 (source (origin
522 (method url-fetch)
b38e45d8
EB
523 (uri (string-append "mirror://gnome/sources/" name "/"
524 (version-major+minor version) "/"
525 name "-" version ".tar.xz"))
1dd26275
LC
526 (sha256
527 (base32
528 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
529 (build-system gnu-build-system)
530 (native-inputs
531 `(("pkg-config" ,pkg-config)))
532 (inputs
533 `(("glib" ,glib)
534 ("libxml2" ,libxml2)
535 ("zlib" ,zlib)))
536 (home-page "https://github.com/GNOME/libcroco")
537 (synopsis "CSS2 parsing and manipulation library")
538 (description
539 "Libcroco is a standalone CSS2 parsing and manipulation library.
540The parser provides a low level event driven SAC-like API and a CSS object
541model like API. Libcroco provides a CSS2 selection engine and an experimental
542XML/CSS rendering engine.")
543
544 ;; LGPLv2.1-only.
545 (license license:lgpl2.1)))
25178594
LC
546
547(define-public libgsf
548 (package
549 (name "libgsf")
550 (version "1.14.30")
551 (source (origin
552 (method url-fetch)
b38e45d8
EB
553 (uri (string-append "mirror://gnome/sources/" name "/"
554 (version-major+minor version) "/"
555 name "-" version ".tar.xz"))
25178594
LC
556 (sha256
557 (base32
558 "0w2v1a9sxsymd1mcy4mwsz4r6za9iwq69rj86nb939p41d4c6j6b"))))
559 (build-system gnu-build-system)
560 (native-inputs
561 `(("intltool" ,intltool)
562 ("pkg-config" ,pkg-config)))
563 (inputs
564 `(("python" ,python)
565 ("zlib" ,zlib)
566 ("bzip2" ,bzip2)))
567 (propagated-inputs
568 `(("gdk-pixbuf" ,gdk-pixbuf)
569 ("glib" ,glib)
570 ("libxml2" ,libxml2)))
571 (home-page "http://www.gnome.org/projects/libgsf")
572 (synopsis "GNOME's Structured File Library")
573 (description
574 "Libgsf aims to provide an efficient extensible I/O abstraction for
575dealing with different structured file formats.")
576
577 ;; LGPLv2.1-only.
578 (license license:lgpl2.1)))
63016e7c
LC
579
580(define-public librsvg
581 (package
582 (name "librsvg")
dc67ebd2 583 (version "2.40.6")
63016e7c
LC
584 (source (origin
585 (method url-fetch)
b38e45d8
EB
586 (uri (string-append "mirror://gnome/sources/" name "/"
587 (version-major+minor version) "/"
588 name "-" version ".tar.xz"))
63016e7c
LC
589 (sha256
590 (base32
dc67ebd2 591 "01jgb11779080b80k2ncrhdphgillqrrnszal6vh8yv787r4kwwa"))))
63016e7c
LC
592 (build-system gnu-build-system)
593 (arguments
ce2df078 594 `(#:phases
63016e7c
LC
595 (alist-cons-before
596 'configure 'augment-gir-search-path
597 (lambda* (#:key inputs #:allow-other-keys)
63016e7c
LC
598 (substitute* "gdk-pixbuf-loader/Makefile.in"
599 ;; By default the gdk-pixbuf loader is installed under
600 ;; gdk-pixbuf's prefix. Work around that.
601 (("gdk_pixbuf_moduledir = .*$")
602 (string-append "gdk_pixbuf_moduledir = "
dc67ebd2 603 "$(prefix)/lib/gdk-pixbuf-2.0/2.10.0/"
63016e7c
LC
604 "loaders\n"))
605 ;; Likewise, create a separate 'loaders.cache' file.
606 (("gdk_pixbuf_cache_file = .*$")
607 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
cd14b5e3
FB
608 (alist-cons-after
609 'install 'generate-full-cache
610 (lambda* (#:key inputs outputs #:allow-other-keys)
611 (let ((loaders-directory
612 (string-append (assoc-ref outputs "out")
dc67ebd2 613 "/lib/gdk-pixbuf-2.0/2.10.0/loaders")))
cd14b5e3
FB
614 (zero?
615 (system
616 (string-append
617 "gdk-pixbuf-query-loaders "
618 loaders-directory "/libpixbufloader-svg.so "
619 (string-join (find-files (assoc-ref inputs "gdk-pixbuf")
620 "libpixbufloader-.*\\.so") " ")
621 "> " loaders-directory ".cache")))))
dc67ebd2
FB
622 (alist-cons-before
623 'build 'pre-build
624 (lambda* _
625 (setenv "CC" "gcc"))
626 %standard-phases)))))
63016e7c
LC
627 (native-inputs
628 `(("pkg-config" ,pkg-config)
44add1ce 629 ("glib" ,glib "bin") ; glib-mkenums, etc.
63016e7c
LC
630 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
631 (inputs
632 `(("pango" ,pango)
633 ("libcroco" ,libcroco)
634 ("bzip2" ,bzip2)
635 ("libgsf" ,libgsf)
636 ("libxml2" ,libxml2)))
637 (propagated-inputs
638 ;; librsvg-2.0.pc refers to all of that.
639 `(("cairo" ,cairo)
640 ("gdk-pixbuf" ,gdk-pixbuf)
641 ("glib" ,glib)))
642 (home-page "https://wiki.gnome.org/LibRsvg")
643 (synopsis "Render SVG files using Cairo")
644 (description
35b9e423 645 "Librsvg is a C library to render SVG files using the Cairo 2D graphics
63016e7c
LC
646library.")
647 (license license:lgpl2.0+)))
5698b8b8
JD
648
649(define-public libidl
650 (package
651 (name "libidl")
652 (version "0.8.14")
653 (source (origin
654 (method url-fetch)
655 (uri (let ((upstream-name "libIDL"))
b38e45d8
EB
656 (string-append "mirror://gnome/sources/" upstream-name "/"
657 (version-major+minor version) "/"
658 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
659 (sha256
660 (base32
661 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
662 (build-system gnu-build-system)
663 (inputs `(("glib" ,glib)))
664 (native-inputs
665 `(("pkg-config" ,pkg-config)
666 ("flex", flex)
667 ("bison" ,bison)))
668 (home-page "http://freecode.com/projects/libidl")
669 (synopsis "Create trees of CORBA Interface Definition Language files")
35b9e423 670 (description "Libidl is a library for creating trees of CORBA Interface
5698b8b8
JD
671Definition Language (idl) files, which is a specification for defining
672portable interfaces. libidl was initially written for orbit (the orb from the
35b9e423 673GNOME project, and the primary means of libidl distribution). However, the
5698b8b8
JD
674functionality was designed to be as reusable and portable as possible.")
675 (license license:lgpl2.0+)))
676
677
678(define-public orbit2
679 (package
680 (name "orbit2")
681 (version "2.14.19")
682 (source (origin
683 (method url-fetch)
684 (uri (let ((upstream-name "ORBit2"))
b38e45d8
EB
685 (string-append "mirror://gnome/sources/" upstream-name "/"
686 (version-major+minor version) "/"
687 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
688 (sha256
689 (base32 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
690 (build-system gnu-build-system)
691 (arguments
692 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
693 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
694 ;; ... which they then completly ignore !!
695 #:phases
696 (alist-cons-before
697 'configure 'ignore-deprecations
698 (lambda _
699 (substitute* "linc2/src/Makefile.in"
700 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
701 %standard-phases)))
702 (inputs `(("glib" ,glib)
703 ("libidl" ,libidl)))
704 (native-inputs
705 `(("pkg-config" ,pkg-config)))
706 (home-page "https://projects.gnome.org/orbit2/")
707 (synopsis "CORBA 2.4-compliant Object Request Broker")
35b9e423 708 (description "ORBit2 is a CORBA 2.4-compliant Object Request Broker (orb)
5698b8b8
JD
709featuring mature C, C++ and Python bindings.")
710 ;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
711 ;; SOME of the code files have licence notices for GPLv2+
712 ;; The tarball contains files of the text of GPLv2 and LGPLv2
713 (license license:gpl2+)))
714
715
716(define-public libbonobo
717 (package
718 (name "libbonobo")
719 (version "2.32.1")
720 (source (origin
721 (method url-fetch)
5becd025 722 (uri (string-append "mirror://gnome/sources/" name "/"
29a7c98a 723 (version-major+minor version)
5becd025 724 "/" name "-" version ".tar.bz2"))
5698b8b8 725 (sha256
f1fc45a9
EB
726 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))
727 (patches (list (search-patch "libbonobo-activation-test-race.patch")))))
5698b8b8
JD
728 (build-system gnu-build-system)
729 (arguments
730 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
5becd025
EB
731 `(#:configure-flags
732 '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
733 ;; ... which they then completly ignore !!
734 #:phases
735 (alist-cons-before
736 'configure 'ignore-deprecations
737 (lambda _
738 (substitute* "activation-server/Makefile.in"
739 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
740 %standard-phases)))
5698b8b8
JD
741 (inputs `(("popt" ,popt)
742 ("libxml2" ,libxml2)))
743 ;; The following are Required by the .pc file
44add1ce 744 (propagated-inputs
5698b8b8
JD
745 `(("glib" ,glib)
746 ("orbit2" ,orbit2)))
747 (native-inputs
748 `(("intltool" ,intltool)
749 ("pkg-config" ,pkg-config)
221ed17a 750 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
751 ("flex" ,flex)
752 ("bison" ,bison)))
753 (home-page "https://developer.gnome.org/libbonobo/")
754 (synopsis "Framework for creating reusable components for use in GNOME applications")
755 (description "Bonobo is a framework for creating reusable components for
756use in GNOME applications, built on top of CORBA.")
757 ;; Licence not explicitly stated. Source files contain no licence notices.
758 ;; Tarball contains text of both GPLv2 and LGPLv2
759 ;; GPLv2 covers both conditions
760 (license license:gpl2+)))
761
762
763(define-public gconf
764 (package
765 (name "gconf")
766 (version "3.2.6")
767 (source (origin
768 (method url-fetch)
769 (uri
770 (let ((upstream-name "GConf"))
b38e45d8
EB
771 (string-append "mirror://gnome/sources/" upstream-name "/"
772 (version-major+minor version) "/"
773 upstream-name "-" version ".tar.xz")))
5698b8b8
JD
774 (sha256
775 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
776 (build-system gnu-build-system)
777 (inputs `(("glib" ,glib)
778 ("dbus" ,dbus)
779 ("dbus-glib" ,dbus-glib)
780 ("libxml2" ,libxml2)))
781 (propagated-inputs `(("orbit2" ,orbit2))) ; referred to in the .pc file
782 (native-inputs
783 `(("intltool" ,intltool)
221ed17a 784 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
785 ("pkg-config" ,pkg-config)))
786 (home-page "https://projects.gnome.org/gconf/")
35b9e423
EB
787 (synopsis "Store application preferences")
788 (description "Gconf is a system for storing application preferences. It
789is intended for user preferences; not arbitrary data storage.")
5698b8b8
JD
790 (license license:lgpl2.0+)))
791
792
793(define-public gnome-mime-data
794 (package
795 (name "gnome-mime-data")
796 (version "2.18.0")
797 (source (origin
798 (method url-fetch)
b38e45d8
EB
799 (uri (string-append "mirror://gnome/sources/" name "/"
800 (version-major+minor version) "/"
801 name "-" version ".tar.bz2"))
5698b8b8
JD
802 (sha256
803 (base32
804 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
805 (build-system gnu-build-system)
806 (native-inputs
807 `(("perl" ,perl)
808 ("intltool" ,intltool)))
809 (home-page "http://www.gnome.org")
35b9e423 810 (synopsis "Base MIME and Application database for GNOME")
5698b8b8
JD
811 (description "GNOME Mime Data is a module which contains the base MIME
812and Application database for GNOME. The data stored by this module is
813designed to be accessed through the MIME functions in GnomeVFS.")
814 (license license:gpl2+)))
815
816
817(define-public gnome-vfs
818 (package
819 (name "gnome-vfs")
820 (version "2.24.4")
821 (source (origin
822 (method url-fetch)
b38e45d8
EB
823 (uri (string-append "mirror://gnome/sources/" name "/"
824 (version-major+minor version) "/"
825 name "-" version ".tar.bz2"))
5698b8b8
JD
826 (sha256
827 (base32 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
828 (build-system gnu-build-system)
829 (arguments
830 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
831 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
832 ;; ... which they then completly ignore !!
833 #:phases
834 (alist-cons-before
835 'configure 'ignore-deprecations
836 (lambda _
837 (begin
838 (substitute* "libgnomevfs/Makefile.in"
839 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
840 (substitute* "daemon/Makefile.in"
841 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))))
842 %standard-phases)))
843 (inputs `(("glib" ,glib)
844 ("libxml2" ,libxml2)
845 ("dbus-glib" ,dbus-glib)
846 ("dbus" ,dbus)
847 ("gconf" ,gconf)
848 ("gnome-mime-data" ,gnome-mime-data)
849 ("zlib" ,zlib)))
850 (native-inputs
221ed17a
EB
851 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
852 ("intltool" ,intltool)
5698b8b8
JD
853 ("pkg-config" ,pkg-config)))
854 (home-page "https://developer.gnome.org/gnome-vfs/")
35b9e423 855 (synopsis "Access files and folders in GNOME applications")
5698b8b8 856 (description "GnomeVFS is the core library used to access files and
35b9e423 857folders in GNOME applications. It provides a file system abstraction which
5698b8b8
JD
858allows applications to access local and remote files with a single consistent API.")
859 (license license:lgpl2.0+)))
860
861
862
863(define-public libgnome
864 (package
865 (name "libgnome")
866 (version "2.32.1")
867 (source (origin
868 (method url-fetch)
b38e45d8
EB
869 (uri (string-append "mirror://gnome/sources/" name "/"
870 (version-major+minor version) "/"
871 name "-" version ".tar.bz2"))
5698b8b8
JD
872 (sha256
873 (base32
874 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
875 (build-system gnu-build-system)
876 (arguments
877 `(#:phases
878 (alist-cons-before
879 'configure 'enable-deprecated
880 (lambda _
881 (substitute* "libgnome/Makefile.in"
882 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
883 %standard-phases)))
884 (inputs `(("popt" ,popt)
885 ("libxml2" ,libxml2)))
886 (native-inputs
221ed17a
EB
887 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
888 ("intltool" ,intltool)
5698b8b8
JD
889 ("pkg-config" ,pkg-config)))
890 ;; The following are listed as Required in the .pc file
891 ;; (except for libcanberra -- which seems to be oversight on the part
892 ;; of the upstream developers -- anything that links against libgnome,
893 ;; must also link against libcanberra
894 (propagated-inputs
895 `(("libcanberra" ,libcanberra)
896 ("libbonobo" ,libbonobo)
897 ("gconf" ,gconf)
898 ("gnome-vfs" ,gnome-vfs)
899 ("glib" ,glib)))
900 (home-page "https://developer.gnome.org/libgnome/")
901 (synopsis "Useful routines for building applications")
902 (description "The libgnome library provides a number of useful routines
903for building modern applications, including session management, activation of
904files and URIs, and displaying help.")
905 (license license:lgpl2.0+)))
906
907
908(define-public libart-lgpl
909 (package
910 (name "libart-lgpl")
76c9b6aa 911 (version "2.3.21")
5698b8b8
JD
912 (source (origin
913 (method url-fetch)
914 (uri (let ((upstream-name "libart_lgpl"))
b38e45d8
EB
915 (string-append "mirror://gnome/sources/" upstream-name "/"
916 (version-major+minor version) "/"
917 upstream-name "-" version ".tar.bz2")))
5698b8b8
JD
918 (sha256
919 (base32
76c9b6aa 920 "1yknfkyzgz9s616is0l9gp5aray0f2ry4dw533jgzj8gq5s1xhgx"))))
5698b8b8
JD
921 (build-system gnu-build-system)
922 (native-inputs
923 `(("pkg-config" ,pkg-config)))
924 (home-page "https://people.gnome.org/~mathieu/libart")
925 (synopsis "2D drawing library")
926 (description "Libart is a 2D drawing library intended as a
927high-quality vector-based 2D library with antialiasing and alpha composition.")
928 (license license:lgpl2.0+)))
929
930
931
932(define-public libgnomecanvas
933 (package
934 (name "libgnomecanvas")
935 (version "2.30.3")
936 (source (origin
937 (method url-fetch)
b38e45d8
EB
938 (uri (string-append "mirror://gnome/sources/" name "/"
939 (version-major+minor version) "/"
940 name "-" version ".tar.gz"))
5698b8b8
JD
941 (sha256
942 (base32
943 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
944 (build-system gnu-build-system)
945 ;; Mentioned as Required in the .pc file
946 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
947 ("gtk+" ,gtk+-2)))
948 (native-inputs
949 `(("intltool" ,intltool)
221ed17a 950 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
951 ("pkg-config" ,pkg-config)))
952 (home-page "https://developer.gnome.org/libgnomecanvas/")
953 (synopsis "Flexible widget for creating interactive structured graphics")
954 (description "The GnomeCanvas widget provides a flexible widget for
955creating interactive structured graphics.")
956 (license license:lgpl2.0+)))
957
958(define-public libgnomeui
959 (package
960 (name "libgnomeui")
961 (version "2.24.5")
962 (source (origin
963 (method url-fetch)
b38e45d8
EB
964 (uri (string-append "mirror://gnome/sources/" name "/"
965 (version-major+minor version) "/"
966 name "-" version ".tar.bz2"))
5698b8b8
JD
967 (sha256
968 (base32
969 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
970 (build-system gnu-build-system)
971 ;; Mentioned as Required in the .pc file
972 (propagated-inputs `(("libgnome" ,libgnome)
973 ("libgnome-keyring" ,libgnome-keyring)))
974 (inputs `(("libgnomecanvas" ,libgnomecanvas)
975 ("libbonoboui" ,libbonoboui)
976 ("libjpeg" ,libjpeg)
977 ("popt" ,popt)
978 ("libbonobo" ,libbonobo)
979 ("libxml2" ,libxml2)
980 ("libglade" ,libglade)))
981 (native-inputs
221ed17a
EB
982 `(("glib" ,glib "bin") ; for glib-mkenums, etc.
983 ("intltool" ,intltool)
5698b8b8
JD
984 ("pkg-config" ,pkg-config)))
985 (home-page "https://developer.gnome.org/libgnomeui/")
986 (synopsis "Additional widgets for applications")
35b9e423
EB
987 (description "The libgnomeui library provides additional widgets for
988applications. Many of the widgets from libgnomeui have already been ported to GTK+.")
5698b8b8
JD
989 (license license:lgpl2.0+)))
990
991(define-public libglade
992 (package
993 (name "libglade")
994 (version "2.6.4")
995 (source (origin
996 (method url-fetch)
b38e45d8
EB
997 (uri (string-append "mirror://gnome/sources/" name "/"
998 (version-major+minor version) "/"
999 name "-" version ".tar.bz2"))
5698b8b8
JD
1000 (sha256
1001 (base32
1002 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
1003 (build-system gnu-build-system)
1004 (inputs
1005 `(("gtk+-2" ,gtk+-2)
1006 ("libxml2" ,libxml2)
1007 ("python" ,python))) ;; needed for the optional libglade-convert program
1008 (native-inputs
1009 `(("pkg-config" ,pkg-config)))
1010 (home-page "https://developer.gnome.org/libglade")
35b9e423
EB
1011 (synopsis "Load glade interfaces and access the glade built widgets")
1012 (description "Libglade is a library that provides interfaces for loading
5698b8b8
JD
1013graphical interfaces described in glade files and for accessing the
1014widgets built in the loading process.")
1015 (license license:gpl2+))) ; This is correct. GPL not LGPL
1016
1017(define-public libgnomeprint
1018 (package
1019 (name "libgnomeprint")
1020 (version "2.8.2")
1021 (source (origin
1022 (method url-fetch)
b38e45d8
EB
1023 (uri (string-append "mirror://gnome/sources/" name "/"
1024 (version-major+minor version) "/"
1025 name "-" version ".tar.bz2"))
5698b8b8
JD
1026 (sha256
1027 (base32
1028 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))))
1029 (build-system gnu-build-system)
1030 (inputs
1031 `(("popt" ,popt)
1032 ("libart-lgpl" ,libart-lgpl)
1033 ("gtk+" ,gtk+-2)
44add1ce 1034 ("libxml2" ,libxml2)))
5698b8b8
JD
1035 (native-inputs
1036 `(("intltool" ,intltool)
221ed17a 1037 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
5698b8b8
JD
1038 ("pkg-config" ,pkg-config)))
1039 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
35b9e423
EB
1040 (synopsis "Printing framework for GNOME")
1041 (description "Gnome-print is a high-quality printing framework for GNOME.")
5698b8b8
JD
1042 (license license:lgpl2.0+)))
1043
1044
1045(define-public libgnomeprintui
1046 (package
1047 (name "libgnomeprintui")
1048 (version "2.8.2")
1049 (source (origin
1050 (method url-fetch)
b38e45d8
EB
1051 (uri (string-append "mirror://gnome/sources/" name "/"
1052 (version-major+minor version) "/"
1053 name "-" version ".tar.bz2"))
5698b8b8
JD
1054 (sha256
1055 (base32
1056 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1057 (build-system gnu-build-system)
1058 ;; Mentioned as Required in the .pc file
1059 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1060 (inputs `(("gtk+" ,gtk+-2)
1061 ("glib" ,glib)
1062 ("gnome-icon-theme" ,gnome-icon-theme)
1063 ("libgnomecanvas" ,libgnomecanvas)
1064 ("libxml2" ,libxml2)))
1065 (native-inputs
1066 `(("intltool" ,intltool)
1067 ("pkg-config" ,pkg-config)))
1068 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1069 (synopsis "Printing framework for GNOME")
1070 (description "Gnome-print is a high-quality printing framework for GNOME.")
1071 (license license:lgpl2.0+)))
1072
1073
1074(define-public libbonoboui
1075 (package
1076 (name "libbonoboui")
1077 (version "2.24.5")
1078 (source (origin
1079 (method url-fetch)
b38e45d8
EB
1080 (uri (string-append "mirror://gnome/sources/" name "/"
1081 (version-major+minor version) "/"
1082 name "-" version ".tar.bz2"))
5698b8b8
JD
1083 (sha256
1084 (base32
1085 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1086 (build-system gnu-build-system)
1087 (arguments
1088 `(#:phases
1089 (alist-cons-before
1090 'check 'start-xserver
1091 (lambda* (#:key inputs #:allow-other-keys)
1092 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1093 (disp ":1"))
1094
1095 (setenv "HOME" (getcwd))
1096 (setenv "DISPLAY" disp)
1097 ;; There must be a running X server and make check doesn't start one.
1098 ;; Therefore we must do it.
1099 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1100 %standard-phases)))
1101 ;; Mentioned as Required by the .pc file
1102 (propagated-inputs `(("libxml2" ,libxml2)))
1103 (inputs
1104 `(("popt" ,popt)
1105 ("pangox-compat" ,pangox-compat)
1106 ("libgnome" ,libgnome)
1107 ("libgnomecanvas" ,libgnomecanvas)
1108 ("libglade" ,libglade)))
1109 (native-inputs
221ed17a
EB
1110 `(("glib" ,glib "bin") ; for glib-genmarshal, etc.
1111 ("intltool" ,intltool)
5698b8b8
JD
1112 ("xorg-server" ,xorg-server) ; For running the tests
1113 ("pkg-config" ,pkg-config)))
1114 (home-page "https://developer.gnome.org/libbonoboui/")
1115 (synopsis "Some user interface controls using Bonobo")
1116 (description "The Bonobo UI library provides a number of user interface
1117controls using the Bonobo component framework.")
1118 (license license:lgpl2.0+)))
1119
fecbf86e
SB
1120(define-public libwnck
1121 (package
1122 (name "libwnck")
1123 (version "3.14.0")
1124 (source (origin
1125 (method url-fetch)
1126 (uri (string-append "mirror://gnome/sources/" name "/"
1127 (version-major+minor version) "/"
1128 name "-" version ".tar.xz"))
1129 (sha256
1130 (base32 "074jww04z8g9r1acndqap79wx4kbm3rpkf4lcg1v82b66iv0027m"))))
1131 (build-system gnu-build-system)
1132 (native-inputs
1133 `(("pkg-config" ,pkg-config)
1134 ("intltool" ,intltool)))
1135 (propagated-inputs
427476d5
SB
1136 `(("gtk+" ,gtk+)
1137 ("libxres" ,libxres)
1138 ("startup-notification" ,startup-notification)))
fecbf86e
SB
1139 (home-page "https://developer.gnome.org/libwnck/")
1140 (synopsis "Window Navigator Construction Kit")
1141 (description
1142 "Libwnck is the Window Navigator Construction Kit, a library for use in
1143writing pagers, tasklists, and more generally applications that are dealing
1144with window management. It tries hard to respect the Extended Window Manager
1145Hints specification (EWMH).")
1146 (license license:lgpl2.0+)))
1147
1148;; stable version for gtk2, required by xfwm4.
1149(define-public libwnck-1
1150 (package (inherit libwnck)
1151 (name "libwnck")
1152 (version "2.30.7")
1153 (source (origin
1154 (method url-fetch)
1155 (uri (string-append "mirror://gnome/sources/" name "/"
1156 (version-major+minor version) "/"
1157 name "-" version ".tar.xz"))
1158 (sha256
1159 (base32
1160 "15713yl0f8f3p99jzqqfmbicrdswd3vwpx7r3bkf1bgh6d9lvs4b"))))
1161 (propagated-inputs
427476d5
SB
1162 `(("gtk+" ,gtk+-2)
1163 ("libxres" ,libxres)
1164 ("startup-notification" ,startup-notification)))))
b804c61e
JD
1165
1166(define-public goffice
1167 (package
1168 (name "goffice")
1169 (version "0.10.14")
1170 (source (origin
1171 (method url-fetch)
b38e45d8
EB
1172 (uri (string-append "mirror://gnome/sources/" name "/"
1173 (version-major+minor version) "/"
1174 name "-" version ".tar.xz"))
b804c61e
JD
1175 (sha256
1176 (base32 "0kj0iwng6w4axm7yv2zy7myn5dhw5ilrlq2pzrjlm9i852ikqy60"))))
1177 (build-system gnu-build-system)
1178 (inputs
1179 `(("gtk+" ,gtk+)
1180 ("libgsf" ,libgsf)
1181 ("librsvg" ,librsvg)
1182 ("libxslt" ,libxslt)
1183 ("libxml2" ,libxml2)))
1184 (native-inputs
1185 `(("intltool" ,intltool)
f280cdb1 1186 ("glib" ,glib "bin")
b804c61e
JD
1187 ("pkg-config" ,pkg-config)))
1188 (home-page "https://developer.gnome.org/goffice/")
1189 (synopsis "Document-centric objects and utilities")
1190 (description "A GLib/GTK+ set of document-centric objects and utilities.")
1191 (license
1192 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1193 ;; Note: NOT LGPL
1194 (list license:gpl2 license:gpl3))))
1195
1196(define-public gnumeric
1197 (package
1198 (name "gnumeric")
1199 (version "1.12.17")
1200 (source (origin
1201 (method url-fetch)
b38e45d8
EB
1202 (uri (string-append "mirror://gnome/sources/" name "/"
1203 (version-major+minor version) "/"
1204 name "-" version ".tar.xz"))
b804c61e
JD
1205 (sha256
1206 (base32
1207 "18bvc3phghr4p5440fp8hm6gvp53d3mqs9cyc637zpmk0b6bcp7c"))))
1208 (build-system gnu-build-system)
1209 (arguments
1210 `(;; The gnumeric developers don't worry much about failing tests.
1211 ;; See https://bugzilla.gnome.org/show_bug.cgi?id=732387
1212 #:tests? #f
1213 #:phases
1214 (alist-cons-before
1215 'configure 'pre-conf
1216 (lambda* (#:key outputs #:allow-other-keys)
1217 ;; Make install tries to write into the directory of goffice
1218 ;; I am informed that this only affects the possibility to embed a
1219 ;; spreadsheet inside an Abiword document. So presumably when we
1220 ;; package Abiword we'll have to refer it to this directory.
1221 (substitute* "configure"
1222 (("^GOFFICE_PLUGINS_DIR=.*")
1223 (string-append "GOFFICE_PLUGINS_DIR="
1224 (assoc-ref outputs "out") "/goffice/plugins"))))
1225 %standard-phases)))
1226 (inputs
1227 `(("glib" ,glib)
1228 ("gtk+" ,gtk+)
1229 ("goffice" ,goffice)
1230 ("libgsf" ,libgsf)
1231 ("libxml2" ,libxml2)
1232 ("zlib" ,zlib)))
1233 (native-inputs
1234 `(("intltool" ,intltool)
b9663471 1235 ("glib:bin" ,glib "bin")
b804c61e
JD
1236 ("pkg-config" ,pkg-config)))
1237 (home-page "http://www.gnumeric.org")
66672a45
LC
1238 (synopsis "Spreadsheet application")
1239 (description
1240 "GNUmeric is a GNU spreadsheet application, running under GNOME. It is
1241interoperable with other spreadsheet applications. It has a vast array of
1242features beyond typical spreadsheet functionality, such as support for linear
1243and non-linear solvers, statistical analysis, and telecommunication
1244engineering.")
1245 (license
b804c61e
JD
1246 ;; Dual licensed under GPLv2 or GPLv3 (both without "or later")
1247 (list license:gpl2 license:gpl3))))
6f885c05
FB
1248
1249(define-public gnome-themes-standard
1250 (package
1251 (name "gnome-themes-standard")
1252 ;; The version of this package should be the same as the version of
1253 ;; gnome-desktop.
1254 (version (package-version gnome-desktop))
1255 (source
1256 (origin
1257 (method url-fetch)
1258 (uri (string-append "mirror://gnome/sources/" name "/"
1259 (version-major+minor version) "/" name "-"
1260 version ".tar.xz"))
1261 (sha256
1262 (base32
1263 "0f2b3ypkfvrdsxcvp14ja9wqj382f1p46yrjvhhxkkjgagy6qb41"))))
1264 (build-system gnu-build-system)
1265 (inputs
1266 `(("gtk+" ,gtk+)
1267 ("gtk+-2" ,gtk+-2)
1268 ("librsvg" ,librsvg)
1269 ("libxml2" ,libxml2)
1270 ("glib" ,glib)))
1271 (native-inputs
1272 `(("intltool" ,intltool)
1273 ("glib:bin" ,glib "bin")
1274 ("pkg-config" ,pkg-config)))
1275 (arguments
1276 `(#:phases
1277 (alist-cons-before
1278 'build 'use-full-cache
1279 ;; Use librsvg's loaders.cache instead of the one provided by
1280 ;; gdk-pixbuf because the latter does not include support for SVG
1281 ;; files.
1282 (lambda* (#:key inputs #:allow-other-keys)
1283 (setenv "GDK_PIXBUF_MODULE_FILE"
1284 (car (find-files (assoc-ref inputs "librsvg")
1285 "loaders\\.cache"))))
1286 %standard-phases)))
1287 (home-page "https://launchpad.net/gnome-themes-standard")
1288 (synopsis "Default GNOME 3 themes")
1289 (description
1290 "The default GNOME 3 themes (Adwaita and some accessibility themes).")
1291 (license license:lgpl2.1+)))
5a659a48
SB
1292
1293(define-public vala
1294 (package
1295 (name "vala")
1296 (version "0.26.1")
1297 (source (origin
1298 (method url-fetch)
1299 (uri (string-append "mirror://gnome/sources/" name "/"
1300 (version-major+minor version) "/"
1301 name "-" version ".tar.xz"))
1302 (sha256
1303 (base32
1304 "0swyym2papln0f62ah05dpvq3vv6fssap26jq2zqp9dkkaqsn1w4"))))
1305 (build-system gnu-build-system)
1306 (arguments '(#:make-flags '("CC=gcc")))
1307 (native-inputs
1308 `(("pkg-config" ,pkg-config)
1309 ("flex" ,flex)
1310 ("bison" ,bison)
1311 ("xsltproc" ,libxslt)
1312 ("dbus" ,dbus) ; for dbus tests
1313 ("gobject-introspection" ,gobject-introspection))) ; for gir tests
1314 (propagated-inputs
1315 `(("glib" ,glib))) ; required by libvala-0.26.pc
1316 (home-page "http://live.gnome.org/Vala/")
1317 (synopsis "Compiler for the GObject type system")
1318 (description
1319 "Vala is a programming language that aims to bring modern programming
1320language features to GNOME developers without imposing any additional runtime
1321requirements and without using a different ABI compared to applications and
1322libraries written in C.")
1323 (license license:lgpl2.1+)))
ea57378f
SB
1324
1325(define-public vte
1326 (package
1327 (name "vte")
1328 (version "0.38.2")
1329 (source (origin
1330 (method url-fetch)
1331 (uri (string-append "mirror://gnome/sources/" name "/"
1332 (version-major+minor version) "/"
1333 name "-" version ".tar.xz"))
1334 (sha256
1335 (base32
1336 "1rbxrigff9yszbgdw0gw4c2saz4d1hbbpz21phzxx14w49wvmnmj"))))
1337 (build-system gnu-build-system)
1338 (native-inputs
1339 `(("pkg-config" ,pkg-config)
1340 ("intltool" ,intltool)
1341 ("vala" ,vala)
1342 ("gobject-introspection" ,gobject-introspection)
1343 ("glib" ,glib "bin") ; for glib-genmarshal, etc.
1344 ("xmllint" ,libxml2)))
1345 (propagated-inputs
1346 `(("gtk+" ,gtk+))) ; required by libvte-2.91.pc
7ed6ee1e
FB
1347 (arguments
1348 `(#:phases
1349 (alist-cons-before
1350 'build 'pre-build
1351 (lambda* _
1352 (setenv "CC" "gcc"))
1353 %standard-phases)))
ea57378f
SB
1354 (home-page "http://www.gnome.org/")
1355 (synopsis "Virtual Terminal Emulator")
1356 (description
1357 "VTE is a library (libvte) implementing a terminal emulator widget for
1358GTK+, and a minimal sample application (vte) using that. Vte is mainly used in
1359gnome-terminal, but can also be used to embed a console/terminal in games,
1360editors, IDEs, etc.")
1361 (license license:lgpl2.1+)))
1362
1363;; stable version for gtk2, required by xfce4-terminal.
1364(define-public vte/gtk+-2
1365 (package (inherit vte)
1366 (name "vte")
1367 (version "0.28.2")
1368 (source (origin
1369 (method url-fetch)
1370 (uri (string-append "mirror://gnome/sources/" name "/"
1371 (version-major+minor version) "/"
1372 name "-" version ".tar.xz"))
1373 (sha256
1374 (base32
1375 "1bmhahkf8wdsra9whd3k5l5z4rv7r58ksr8mshzajgq2ma0hpkw6"))))
1376 (arguments
1377 '(#:configure-flags '("--disable-python")))
1378 (native-inputs
1379 `(("pkg-config" ,pkg-config)
1380 ("intltool" ,intltool)
1381 ("glib" ,glib "bin"))) ; for glib-genmarshal, etc.
1382 (propagated-inputs
1383 `(("gtk+" ,gtk+-2) ; required by libvte.pc
1384 ("ncurses" ,ncurses))))) ; required by libvte.la
b47e1b20
FB
1385
1386(define-public dconf
1387 (package
1388 (name "dconf")
1389 (version "0.22.0")
1390 (source (origin
1391 (method url-fetch)
1392 (uri (string-append
1393 "mirror://gnome/sources/" name "/"
1394 (version-major+minor version) "/"
1395 name "-" version ".tar.xz"))
1396 (sha256
1397 (base32 "13jb49504bir814v8n8vjip5sazwfwsrnniw87cpg7phqfq7q9qa"))))
1398 (build-system glib-or-gtk-build-system)
1399 (inputs
1400 `(("gtk+" ,gtk+)
1401 ("glib" ,glib)
1402 ("dbus" ,dbus)
1403 ("libxml2" ,libxml2)))
1404 (native-inputs
1405 `(("libxslt" ,libxslt)
1406 ("docbook-xml" ,docbook-xml-4.2)
1407 ("docbook-xsl" ,docbook-xsl)
1408 ("intltool" ,intltool)
1409 ("pkg-config" ,pkg-config)))
1410 (arguments
1411 `(#:tests? #f ; To contact dbus it needs to load /var/lib/dbus/machine-id
1412 ; or /etc/machine-id.
1413 #:configure-flags
1414 ;; Set the correct RUNPATH in binaries.
1415 (list (string-append "LDFLAGS=-Wl,-rpath="
1416 (assoc-ref %outputs "out") "/lib")
1417 "--disable-gtk-doc-html") ; FIXME: requires gtk-doc
1418 #:phases
1419 (alist-cons-before
1420 'configure 'fix-docbook
1421 (lambda* (#:key inputs #:allow-other-keys)
1422 (substitute* "docs/Makefile.in"
1423 (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl")
1424 (string-append (assoc-ref inputs "docbook-xsl")
1425 "/xml/xsl/docbook-xsl-"
1426 ,(package-version docbook-xsl)
1427 "/manpages/docbook.xsl")))
1428 (setenv "XML_CATALOG_FILES"
1429 (string-append (assoc-ref inputs "docbook-xml")
1430 "/xml/dtd/docbook/catalog.xml")))
1431 %standard-phases)))
1432 (home-page "https://developer.gnome.org/dconf")
1433 (synopsis "Low-level GNOME configuration system")
1434 (description "Dconf is a low-level configuration system. Its main purpose
1435is to provide a backend to GSettings on platforms that don't already have
1436configuration storage systems.")
1437 (license license:lgpl2.1)))