gnu: glib: Add "bin" output.
[jackhill/guix/guix.git] / gnu / packages / gnome.scm
1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
3 ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
4 ;;;
5 ;;; This file is part of GNU Guix.
6 ;;;
7 ;;; GNU Guix is free software; you can redistribute it and/or modify it
8 ;;; under the terms of the GNU General Public License as published by
9 ;;; the Free Software Foundation; either version 3 of the License, or (at
10 ;;; your option) any later version.
11 ;;;
12 ;;; GNU Guix is distributed in the hope that it will be useful, but
13 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ;;; GNU General Public License for more details.
16 ;;;
17 ;;; You should have received a copy of the GNU General Public License
18 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
19
20 (define-module (gnu packages gnome)
21 #:use-module ((guix licenses)
22 #:renamer (symbol-prefix-proc 'license:))
23 #:use-module (guix packages)
24 #:use-module (guix download)
25 #:use-module (guix build-system gnu)
26 #:use-module (gnu packages)
27 #:use-module (gnu packages bison)
28 #:use-module (gnu packages flex)
29 #:use-module (gnu packages glib)
30 #:use-module (gnu packages gnupg)
31 #:use-module (gnu packages gstreamer)
32 #:use-module (gnu packages gtk)
33 #:use-module (gnu packages pdf)
34 #:use-module (gnu packages popt)
35 #:use-module (gnu packages ghostscript)
36 #:use-module (gnu packages iso-codes)
37 #:use-module (gnu packages libcanberra)
38 #:use-module (gnu packages image)
39 #:use-module (gnu packages perl)
40 #:use-module (gnu packages pkg-config)
41 #:use-module (gnu packages python)
42 #:use-module (gnu packages xml)
43 #:use-module (gnu packages gl)
44 #:use-module (gnu packages compression)
45 #:use-module (gnu packages xorg))
46
47 (define-public brasero
48 (package
49 (name "brasero")
50 (version "3.8.0")
51 (source (origin
52 (method url-fetch)
53 (uri (string-append "mirror://gnome/sources/brasero/3.8/brasero-"
54 version ".tar.xz"))
55 (sha256
56 (base32
57 "1r5wjsrm47amdaf862ymkdlwlb636c45wg14x20hdr99c653d2nr"))))
58 (build-system gnu-build-system)
59 (propagated-inputs
60 `(("hicolor-icon-theme" ,hicolor-icon-theme)))
61 (native-inputs
62 `(("intltool" ,intltool)
63 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
64 ("pkg-config" ,pkg-config)))
65 (inputs
66 `(("glib" ,glib)
67 ("gnome-doc-utils" ,gnome-doc-utils)
68 ("gstreamer" ,gstreamer)
69 ("gst-plugins-base" ,gst-plugins-base)
70 ("gtk+" ,gtk+)
71 ("itstool" ,itstool)
72 ("libcanberra" ,libcanberra)
73 ("libice" ,libice)
74 ("libnotify" ,libnotify)
75 ("libsm" ,libsm)
76 ("libxml2" ,libxml2)))
77 (home-page "https://projects.gnome.org/brasero/")
78 (synopsis "CD/DVD burning tool for Gnome")
79 (description "Brasero is an application to burn CD/DVD for the Gnome
80 Desktop. It is designed to be as simple as possible and has some unique
81 features to enable users to create their discs easily and quickly.")
82 (license license:gpl2+)))
83
84 (define-public gnome-desktop
85 (package
86 (name "gnome-desktop")
87 (version "3.10.0")
88 (source
89 (origin
90 (method url-fetch)
91 (uri (string-append "mirror://gnome/sources/" name "/3.10/"
92 name "-" version ".tar.xz"))
93 (sha256
94 (base32
95 "0p5p6wvmy5zvcdnmp5h2biz7rjrcw99chq5kkwcnb68flcmkb1ry"))))
96 (build-system gnu-build-system)
97 (native-inputs
98 `(("intltool" ,intltool)
99 ("pkg-config" ,pkg-config)))
100 (inputs
101 `(("gdk-pixbuf" ,gdk-pixbuf)
102 ("glib" ,glib)
103 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
104 ("gtk+" ,gtk+)
105 ("iso-codes" ,iso-codes)
106 ("itstool" ,itstool)
107 ("libx11" ,libx11)
108 ("libxext" ,libxext)
109 ("libxkbfile" ,libxkbfile)
110 ("libxrandr" ,libxrandr)
111 ("xkeyboard-config" ,xkeyboard-config)))
112 (home-page "https://www.gnome.org/")
113 (synopsis
114 "libgnome-desktop, gnome-about, and desktop-wide documents")
115 (description
116 "The libgnome-desktop library provides API shared by several applications
117 on the desktop, but that cannot live in the platform for various reasons. There
118 is no API or ABI guarantee, although we are doing our best to provide
119 stability. Documentation for the API is available with gtk-doc.
120
121 The gnome-about program helps find which version of GNOME is installed.")
122 ; Some bits under the LGPL.
123 (license license:gpl2+)))
124
125 (define-public gnome-doc-utils
126 (package
127 (name "gnome-doc-utils")
128 (version "0.20.10")
129 (source
130 (origin
131 (method url-fetch)
132 (uri (string-append "mirror://gnome/sources/" name "/0.20/"
133 name "-" version ".tar.xz"))
134 (sha256
135 (base32
136 "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb"))))
137 (build-system gnu-build-system)
138 (native-inputs
139 `(("intltool" ,intltool)
140 ("libxml2" ,libxml2)
141 ("libxslt" ,libxslt)
142 ("pkg-config" ,pkg-config)
143 ("python-2" ,python-2)))
144 (arguments
145 `(#:tests? #f)) ; tries to load http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd
146 (home-page "https://wiki.gnome.org/GnomeDocUtils")
147 (synopsis
148 "Documentation utilities for the Gnome project")
149 (description
150 "Gnome-doc-utils is a collection of documentation utilities for the
151 Gnome project. It includes xml2po tool which makes it easier to translate
152 and keep up to date translations of documentation.")
153 (license license:gpl2+))) ; xslt under lgpl
154
155 (define-public libgnome-keyring
156 (package
157 (name "libgnome-keyring")
158 (version "3.6.0")
159 (source (origin
160 (method url-fetch)
161 (uri (string-append
162 "mirror://gnome/sources/libgnome-keyring/3.6/libgnome-keyring-"
163 version
164 ".tar.xz"))
165 (sha256
166 (base32
167 "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd"))))
168 (build-system gnu-build-system)
169 (inputs
170 `(("libgcrypt" ,libgcrypt)
171 ("dbus" ,dbus)))
172 (native-inputs
173 `(("pkg-config" ,pkg-config)
174 ("glib" ,glib "bin")
175 ("intltool" ,intltool)))
176 (propagated-inputs
177 ;; Referred to in .h files and .pc.
178 `(("glib" ,glib)))
179 (home-page "http://www.gnome.org")
180 (synopsis "Accessing passwords from the GNOME keyring")
181 (description
182 "Client library to access passwords from the GNOME keyring.")
183
184 ;; Though a couple of files are LGPLv2.1+.
185 (license license:lgpl2.0+)))
186
187 (define-public evince
188 (package
189 (name "evince")
190 (version "3.6.1")
191 (source (origin
192 (method url-fetch)
193 (uri (string-append "mirror://gnome/sources/evince/3.6/evince-"
194 version ".tar.xz"))
195 (sha256
196 (base32
197 "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv"))))
198 (build-system gnu-build-system)
199 (arguments
200 `(#:configure-flags '("--disable-nautilus")
201
202 ;; FIXME: Tests fail with:
203 ;; ImportError: No module named gi.repository
204 ;; Where should that module come from?
205 #:tests? #f
206
207 #:phases (alist-cons-after
208 'install 'set-mime-search-path
209 (lambda* (#:key inputs outputs #:allow-other-keys)
210 ;; Wrap 'evince' so that it knows where MIME info is.
211 (let ((out (assoc-ref outputs "out"))
212 (mime (assoc-ref inputs "shared-mime-info")))
213 (wrap-program (string-append out "/bin/evince")
214 `("XDG_DATA_DIRS" ":" prefix
215 ,(list (string-append mime "/share")
216 (string-append out "/share"))))))
217 %standard-phases)))
218 (inputs
219 `(("libspectre" ,libspectre)
220 ;; ("djvulibre" ,djvulibre)
221 ("ghostscript" ,ghostscript)
222 ("poppler" ,poppler)
223 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
224 ("libgnome-keyring" ,libgnome-keyring)
225 ("gnome-icon-theme" ,gnome-icon-theme)
226 ("itstool" ,itstool)
227 ("gdk-pixbuf" ,gdk-pixbuf)
228 ("atk" ,atk)
229 ("pango" ,pango)
230 ("gtk+" ,gtk+)
231 ("glib" ,glib)
232 ("libxml2" ,libxml2)
233 ("libsm" ,libsm)
234 ("libice" ,libice)
235 ("shared-mime-info" ,shared-mime-info)
236
237 ;; For tests.
238 ("dogtail" ,python2-dogtail)))
239 (native-inputs
240 `(("intltool" ,intltool)
241 ("glib" ,glib "bin")
242 ("pkg-config" ,pkg-config)))
243 (home-page
244 "http://www.gnome.org/projects/evince/")
245 (synopsis "GNOME's document viewer")
246 (description
247 "Evince is a document viewer for multiple document formats. It
248 currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal
249 of Evince is to replace the multiple document viewers that exist
250 on the GNOME Desktop with a single simple application.")
251 (license license:gpl2+)))
252
253 (define-public gsettings-desktop-schemas
254 (package
255 (name "gsettings-desktop-schemas")
256 (version "3.10.0")
257 (source
258 (origin
259 (method url-fetch)
260 (uri (string-append "mirror://gnome/sources/" name "/"
261 (string-copy version 0 (string-rindex version #\.)) "/"
262 name "-" version ".tar.xz"))
263 (sha256
264 (base32
265 "1km8qxwrzvravmg8j680qv64bwnwbdgrmy8bqmhs0dgxn2b1as6a"))))
266 (build-system gnu-build-system)
267 (inputs
268 `(("glib" ,glib)))
269 (native-inputs
270 `(("intltool" ,intltool)
271 ("glib" ,glib "bin") ; glib-compile-schemas, etc.
272 ("pkg-config" ,pkg-config)))
273 (home-page "https://launchpad.net/gsettings-desktop-schemas")
274 (synopsis
275 "GNOME settings for various desktop components")
276 (description
277 "Gsettings-desktop-schemas contains a collection of GSettings schemas
278 for settings shared by various components of the GNOME desktop.")
279 (license license:lgpl2.1+)))
280
281 (define-public icon-naming-utils
282 (package
283 (name "icon-naming-utils")
284 (version "0.8.90")
285 (source
286 (origin
287 (method url-fetch)
288 (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-"
289 version ".tar.bz2"))
290 (sha256
291 (base32
292 "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi"))))
293 (build-system gnu-build-system)
294 (inputs
295 `(("perl" ,perl)
296 ("perl-xml-simple" ,perl-xml-simple)))
297 (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification")
298 (synopsis
299 "Utility to implement the Freedesktop Icon Naming Specification")
300 (description
301 "To help with the transition to the Freedesktop Icon Naming
302 Specification, the icon naming utility maps the icon names used by the
303 GNOME and KDE desktops to the icon names proposed in the specification.")
304 (license license:lgpl2.1+)))
305
306 (define-public gnome-icon-theme
307 (package
308 (name "gnome-icon-theme")
309 (version "3.10.0")
310 (source
311 (origin
312 (method url-fetch)
313 (uri (string-append "mirror://gnome/sources/" name "/"
314 (string-copy version 0 (string-rindex version #\.)) "/"
315 name "-" version ".tar.xz"))
316 (sha256
317 (base32
318 "1xinbgkkvlhazj887ajcl13i7kdc1wcca02jwxzvjrvchjsp4m66"))))
319 (build-system gnu-build-system)
320 (inputs
321 `(("gtk+" ,gtk+)
322 ("icon-naming-utils" ,icon-naming-utils)))
323 (native-inputs
324 `(("intltool" ,intltool)
325 ("pkg-config" ,pkg-config)))
326 (home-page "http://art.gnome.org/")
327 (synopsis
328 "GNOME icon theme")
329 (description
330 "Icons for the GNOME desktop.")
331 (license license:lgpl3))) ; or Creative Commons BY-SA 3.0
332
333 (define-public shared-mime-info
334 (package
335 (name "shared-mime-info")
336 (version "1.2")
337 (source (origin
338 (method url-fetch)
339 (uri (string-append "http://freedesktop.org/~hadess/shared-mime-info-"
340 version ".tar.xz"))
341 (sha256
342 (base32
343 "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5"))))
344 (build-system gnu-build-system)
345 (arguments
346 ;; The build system appears not to be parallel-safe.
347 '(#:parallel-build? #f))
348 (inputs
349 `(("glib" ,glib)
350 ("libxml2" ,libxml2)))
351 (native-inputs
352 `(("intltool" ,intltool)
353 ("pkg-config" ,pkg-config)))
354 (home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
355 (synopsis "Database of common MIME types")
356 (description
357 "The shared-mime-info package contains the core database of common types
358 and the update-mime-database command used to extend it. It requires glib2 to
359 be installed for building the update command. Additionally, it uses intltool
360 for translations, though this is only a dependency for the maintainers. This
361 database is translated at Transifex.")
362 (license license:gpl2+)))
363
364 (define-public hicolor-icon-theme
365 (package
366 (name "hicolor-icon-theme")
367 (version "0.12")
368 (source
369 (origin
370 (method url-fetch)
371 (uri (string-append "http://icon-theme.freedesktop.org/releases/hicolor-icon-theme-"
372 version ".tar.gz"))
373 (sha256
374 (base32
375 "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y"))))
376 (build-system gnu-build-system)
377 (arguments
378 `(#:tests? #f)) ; no check target
379 (home-page "http://icon-theme.freedesktop.org/releases/")
380 (synopsis
381 "Freedesktop icon theme")
382 (description
383 "Freedesktop icon theme.")
384 (license license:gpl2)))
385
386 (define-public libnotify
387 (package
388 (name "libnotify")
389 (version "0.7.6")
390 (source
391 (origin
392 (method url-fetch)
393 (uri (string-append "mirror://gnome/sources/" name "/"
394 (string-copy version 0 (string-rindex version #\.)) "/"
395 name "-" version ".tar.xz"))
396 (sha256
397 (base32
398 "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf"))))
399 (build-system gnu-build-system)
400 (inputs
401 `(("gdk-pixbuf" ,gdk-pixbuf)
402 ("glib" ,glib)
403 ("gtk+" ,gtk+)
404 ("libpng" ,libpng)))
405 (native-inputs
406 `(("pkg-config" ,pkg-config)
407 ("glib" ,glib "bin")))
408 (home-page "https://developer-next.gnome.org/libnotify/")
409 (synopsis
410 "GNOME desktop notification library")
411 (description
412 "Libnotify is a library that sends desktop notifications to a
413 notification daemon, as defined in the Desktop Notifications spec. These
414 notifications can be used to inform the user about an event or display
415 some form of information without getting in the user's way.")
416 (license license:lgpl2.1+)))
417
418 (define-public libpeas
419 (package
420 (name "libpeas")
421 (version "1.9.0")
422 (source
423 (origin
424 (method url-fetch)
425 (uri (string-append "mirror://gnome/sources/" name "/"
426 (substring version 0 (string-rindex version #\.)) "/"
427 name "-" version ".tar.xz"))
428 (sha256
429 (base32
430 "13fzyzv6c0cfdj83z1s16lv8k997wpnzyzr0wfwcfkcmvz64g1q0"))))
431 (build-system gnu-build-system)
432 (inputs
433 `(("atk" ,atk)
434 ("gdk-pixbuf" ,gdk-pixbuf)
435 ("glib" ,glib)
436 ("gtk+" ,gtk+)
437 ("pango" ,pango)))
438 (native-inputs
439 `(("pkg-config" ,pkg-config)
440 ("gobject-introspection" ,gobject-introspection)
441 ("intltool" ,intltool)))
442 (home-page "https://wiki.gnome.org/Libpeas")
443 (synopsis "GObject plugin system")
444 (description
445 "libpeas is a gobject-based plugins engine, and is targetted at giving
446 every application the chance to assume its own extensibility. It also has a
447 set of features including, but not limited to: multiple extension points; on
448 demand (lazy) programming language support for C, Python and JS; simplicity of
449 the API")
450
451 (license license:lgpl2.0+)))
452
453 (define-public gtkglext
454 (package
455 (name "gtkglext")
456 (version "1.2.0")
457 (source (origin
458 (method url-fetch)
459 (uri (string-append "mirror://sourceforge/project/gtkglext/gtkglext/"
460 version "/gtkglext-" version ".tar.gz"))
461 (sha256
462 (base32 "1ya4d2j2aacr9ii5zj4ac95fjpdvlm2rg79mgnk7yvl1dcy3y1z5"))
463 (patches (list
464 (search-patch "gtkglext-disable-disable-deprecated.patch")))))
465 (build-system gnu-build-system)
466 (inputs `(("gtk+" ,gtk+-2)
467 ("mesa" ,mesa)
468 ("libx11" ,libx11)
469 ("libxt" ,libxt)))
470 (native-inputs `(("pkg-config" ,pkg-config)
471 ("glib" ,glib "bin")))
472 (propagated-inputs `(("pangox-compat" ,pangox-compat)))
473 (home-page "https://projects.gnome.org/gtkglext")
474 (synopsis "OpenGL extension to GTK+.")
475 (description "GtkGLExt is an OpenGL extension to GTK+. It provides
476 additional GDK objects which support OpenGL rendering in GTK+ and GtkWidget
477 API add-ons to make GTK+ widgets OpenGL-capable.")
478 (license license:lgpl2.1+)))
479
480 (define-public glade3
481 (package
482 (name "glade")
483 (version "3.8.4")
484 (source
485 (origin
486 (method url-fetch)
487 (uri (string-append "mirror://gnome/sources/" name "/"
488 (substring version 0 (string-rindex version #\.)) "/"
489 name "3-" version ".tar.xz"))
490 (sha256
491 (base32 "021xgq2l18w3rvwms9aq2idm0fk66vwb4f777gs0qh3ap5shgbn7"))))
492 (build-system gnu-build-system)
493 (inputs
494 `(("gtk+" ,gtk+-2)
495 ("libxml2" ,libxml2)))
496 (native-inputs
497 `(("intltool" ,intltool)
498 ("python" ,python)
499 ("pkg-config" ,pkg-config)))
500 (home-page "https://glade.gnome.org")
501 (synopsis "GTK+ rapid application development tool")
502 (description "Glade is a rapid application development (RAD) tool to
503 enable quick & easy development of user interfaces for the GTK+ toolkit and
504 the GNOME desktop environment.")
505 (license license:lgpl2.0+)))
506
507 (define-public libcroco
508 (package
509 (name "libcroco")
510 (version "0.6.8")
511 (source (origin
512 (method url-fetch)
513 (uri (string-append
514 "mirror://gnome/sources/libcroco/0.6/libcroco-"
515 version
516 ".tar.xz"))
517 (sha256
518 (base32
519 "0w453f3nnkbkrly7spx5lx5pf6mwynzmd5qhszprq8amij2invpa"))))
520 (build-system gnu-build-system)
521 (native-inputs
522 `(("pkg-config" ,pkg-config)))
523 (inputs
524 `(("glib" ,glib)
525 ("libxml2" ,libxml2)
526 ("zlib" ,zlib)))
527 (home-page "https://github.com/GNOME/libcroco")
528 (synopsis "CSS2 parsing and manipulation library")
529 (description
530 "Libcroco is a standalone CSS2 parsing and manipulation library.
531 The parser provides a low level event driven SAC-like API and a CSS object
532 model like API. Libcroco provides a CSS2 selection engine and an experimental
533 XML/CSS rendering engine.")
534
535 ;; LGPLv2.1-only.
536 (license license:lgpl2.1)))
537
538 (define-public libgsf
539 (package
540 (name "libgsf")
541 (version "1.14.30")
542 (source (origin
543 (method url-fetch)
544 (uri (string-append "mirror://gnome/sources/libgsf/1.14/libgsf-"
545 version ".tar.xz"))
546 (sha256
547 (base32
548 "0w2v1a9sxsymd1mcy4mwsz4r6za9iwq69rj86nb939p41d4c6j6b"))))
549 (build-system gnu-build-system)
550 (native-inputs
551 `(("intltool" ,intltool)
552 ("pkg-config" ,pkg-config)))
553 (inputs
554 `(("python" ,python)
555 ("zlib" ,zlib)
556 ("bzip2" ,bzip2)))
557 (propagated-inputs
558 `(("gdk-pixbuf" ,gdk-pixbuf)
559 ("glib" ,glib)
560 ("libxml2" ,libxml2)))
561 (home-page "http://www.gnome.org/projects/libgsf")
562 (synopsis "GNOME's Structured File Library")
563 (description
564 "Libgsf aims to provide an efficient extensible I/O abstraction for
565 dealing with different structured file formats.")
566
567 ;; LGPLv2.1-only.
568 (license license:lgpl2.1)))
569
570 (define-public librsvg
571 (package
572 (name "librsvg")
573 (version "2.40.2")
574 (source (origin
575 (method url-fetch)
576 (uri (string-append
577 "mirror://gnome/sources/librsvg/2.40/librsvg-"
578 version ".tar.xz"))
579 (sha256
580 (base32
581 "071959yjb2i1bja7ciy4bmpnd6fn2is9jjqsvvvnsqwl69j9n128"))))
582 (build-system gnu-build-system)
583 (arguments
584 `(#:phases
585 (alist-cons-before
586 'configure 'augment-gir-search-path
587 (lambda* (#:key inputs #:allow-other-keys)
588 (substitute* "gdk-pixbuf-loader/Makefile.in"
589 ;; By default the gdk-pixbuf loader is installed under
590 ;; gdk-pixbuf's prefix. Work around that.
591 (("gdk_pixbuf_moduledir = .*$")
592 (string-append "gdk_pixbuf_moduledir = "
593 "$(prefix)/lib/gdk-pixbuf-2.0/2.0.10/"
594 "loaders\n"))
595 ;; Likewise, create a separate 'loaders.cache' file.
596 (("gdk_pixbuf_cache_file = .*$")
597 "gdk_pixbuf_cache_file = $(gdk_pixbuf_moduledir).cache\n")))
598 %standard-phases)))
599 (native-inputs
600 `(("pkg-config" ,pkg-config)
601 ("gobject-introspection" ,gobject-introspection))) ; g-ir-compiler, etc.
602 (inputs
603 `(("pango" ,pango)
604 ("libcroco" ,libcroco)
605 ("bzip2" ,bzip2)
606 ("libgsf" ,libgsf)
607 ("libxml2" ,libxml2)))
608 (propagated-inputs
609 ;; librsvg-2.0.pc refers to all of that.
610 `(("cairo" ,cairo)
611 ("gdk-pixbuf" ,gdk-pixbuf)
612 ("glib" ,glib)))
613 (home-page "https://wiki.gnome.org/LibRsvg")
614 (synopsis "Render SVG files using Cairo")
615 (description
616 "librsvg is a C library to render SVG files using the Cairo 2D graphics
617 library.")
618 (license license:lgpl2.0+)))
619
620 (define-public libidl
621 (package
622 (name "libidl")
623 (version "0.8.14")
624 (source (origin
625 (method url-fetch)
626 (uri (let ((upstream-name "libIDL"))
627 (string-append
628 "mirror://gnome/sources/" upstream-name "/" (string-take version 3) "/" upstream-name "-"
629 version
630 ".tar.bz2")))
631 (sha256
632 (base32
633 "08129my8s9fbrk0vqvnmx6ph4nid744g5vbwphzkaik51664vln5"))))
634 (build-system gnu-build-system)
635 (inputs `(("glib" ,glib)))
636 (native-inputs
637 `(("pkg-config" ,pkg-config)
638 ("flex", flex)
639 ("bison" ,bison)))
640 (home-page "http://freecode.com/projects/libidl")
641 (synopsis "Create trees of CORBA Interface Definition Language files")
642 (description "libidl is a library for creating trees of CORBA Interface
643 Definition Language (idl) files, which is a specification for defining
644 portable interfaces. libidl was initially written for orbit (the orb from the
645 GNOME project, and the primary means of libidl distribution). However, the
646 functionality was designed to be as reusable and portable as possible.")
647 (license license:lgpl2.0+)))
648
649
650 (define-public orbit2
651 (package
652 (name "orbit2")
653 (version "2.14.19")
654 (source (origin
655 (method url-fetch)
656 (uri (let ((upstream-name "ORBit2"))
657 (string-append
658 "mirror://gnome/sources/" upstream-name "/" (string-take version 4) "/" upstream-name "-"
659 version
660 ".tar.bz2")))
661 (sha256
662 (base32 "0l3mhpyym9m5iz09fz0rgiqxl2ym6kpkwpsp1xrr4aa80nlh1jam"))))
663 (build-system gnu-build-system)
664 (arguments
665 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
666 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
667 ;; ... which they then completly ignore !!
668 #:phases
669 (alist-cons-before
670 'configure 'ignore-deprecations
671 (lambda _
672 (substitute* "linc2/src/Makefile.in"
673 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
674 %standard-phases)))
675 (inputs `(("glib" ,glib)
676 ("libidl" ,libidl)))
677 (native-inputs
678 `(("pkg-config" ,pkg-config)))
679 (home-page "https://projects.gnome.org/orbit2/")
680 (synopsis "CORBA 2.4-compliant Object Request Broker")
681 (description "orbit2 is a CORBA 2.4-compliant Object Request Broker (orb)
682 featuring mature C, C++ and Python bindings.")
683 ;; Licence notice is unclear. The Web page simply say "GPL" without giving a version.
684 ;; SOME of the code files have licence notices for GPLv2+
685 ;; The tarball contains files of the text of GPLv2 and LGPLv2
686 (license license:gpl2+)))
687
688
689 (define-public libbonobo
690 (package
691 (name "libbonobo")
692 (version "2.32.1")
693 (source (origin
694 (method url-fetch)
695 (uri (string-append
696 "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-"
697 version
698 ".tar.bz2"))
699 (sha256
700 (base32 "0swp4kk6x7hy1rvd1f9jba31lvfc6qvafkvbpg9h0r34fzrd8q4i"))))
701 (build-system gnu-build-system)
702 (arguments
703 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
704 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
705 ;; ... which they then completly ignore !!
706 #:phases
707 (alist-cons-before
708 'configure 'ignore-deprecations
709 (lambda _
710 (substitute* "activation-server/Makefile.in"
711 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
712 %standard-phases)))
713 (inputs `(("popt" ,popt)
714 ("libxml2" ,libxml2)))
715 ;; The following are Required by the .pc file
716 (propagated-inputs
717 `(("glib" ,glib)
718 ("orbit2" ,orbit2)))
719 (native-inputs
720 `(("intltool" ,intltool)
721 ("pkg-config" ,pkg-config)
722 ("flex" ,flex)
723 ("bison" ,bison)))
724 (home-page "https://developer.gnome.org/libbonobo/")
725 (synopsis "Framework for creating reusable components for use in GNOME applications")
726 (description "Bonobo is a framework for creating reusable components for
727 use in GNOME applications, built on top of CORBA.")
728 ;; Licence not explicitly stated. Source files contain no licence notices.
729 ;; Tarball contains text of both GPLv2 and LGPLv2
730 ;; GPLv2 covers both conditions
731 (license license:gpl2+)))
732
733
734 (define-public gconf
735 (package
736 (name "gconf")
737 (version "3.2.6")
738 (source (origin
739 (method url-fetch)
740 (uri
741 (let ((upstream-name "GConf"))
742 (string-append
743 "mirror://gnome/sources/" upstream-name "/" (string-take version 3) "/" upstream-name "-"
744 version
745 ".tar.xz")))
746 (sha256
747 (base32 "0k3q9nh53yhc9qxf1zaicz4sk8p3kzq4ndjdsgpaa2db0ccbj4hr"))))
748 (build-system gnu-build-system)
749 (inputs `(("glib" ,glib)
750 ("dbus" ,dbus)
751 ("dbus-glib" ,dbus-glib)
752 ("libxml2" ,libxml2)))
753 (propagated-inputs `(("orbit2" ,orbit2))) ; referred to in the .pc file
754 (native-inputs
755 `(("intltool" ,intltool)
756 ("pkg-config" ,pkg-config)))
757 (home-page "https://projects.gnome.org/gconf/")
758 (synopsis "store application preferences")
759 (description "gconf is a system for storing application preferences. It
760 is intended for user preferences; not arbitrary data storage.")
761 (license license:lgpl2.0+)))
762
763
764 (define-public gnome-mime-data
765 (package
766 (name "gnome-mime-data")
767 (version "2.18.0")
768 (source (origin
769 (method url-fetch)
770 (uri (string-append
771 "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-"
772 version
773 ".tar.bz2"))
774 (sha256
775 (base32
776 "1mvg8glb2a40yilmyabmb7fkbzlqd3i3d31kbkabqnq86xdnn69p"))))
777 (build-system gnu-build-system)
778 (native-inputs
779 `(("perl" ,perl)
780 ("intltool" ,intltool)))
781 (home-page "http://www.gnome.org")
782 (synopsis "base MIME and Application database for GNOME")
783 (description "GNOME Mime Data is a module which contains the base MIME
784 and Application database for GNOME. The data stored by this module is
785 designed to be accessed through the MIME functions in GnomeVFS.")
786 (license license:gpl2+)))
787
788
789 (define-public gnome-vfs
790 (package
791 (name "gnome-vfs")
792 (version "2.24.4")
793 (source (origin
794 (method url-fetch)
795 (uri (string-append
796 "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-"
797 version
798 ".tar.bz2"))
799 (sha256
800 (base32 "1ajg8jb8k3snxc7rrgczlh8daxkjidmcv3zr9w809sq4p2sn9pk2"))))
801 (build-system gnu-build-system)
802 (arguments
803 ;; The programmer kindly gives us a hook to turn off deprecation warnings ...
804 `(#:configure-flags '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS")
805 ;; ... which they then completly ignore !!
806 #:phases
807 (alist-cons-before
808 'configure 'ignore-deprecations
809 (lambda _
810 (begin
811 (substitute* "libgnomevfs/Makefile.in"
812 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))
813 (substitute* "daemon/Makefile.in"
814 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS"))))
815 %standard-phases)))
816 (inputs `(("glib" ,glib)
817 ("libxml2" ,libxml2)
818 ("dbus-glib" ,dbus-glib)
819 ("dbus" ,dbus)
820 ("gconf" ,gconf)
821 ("gnome-mime-data" ,gnome-mime-data)
822 ("zlib" ,zlib)))
823 (native-inputs
824 `(("intltool" ,intltool)
825 ("pkg-config" ,pkg-config)))
826 (home-page "https://developer.gnome.org/gnome-vfs/")
827 (synopsis "access files and folders in GNOME applications")
828 (description "GnomeVFS is the core library used to access files and
829 folders in GNOME applications. It provides a file system abstraction which
830 allows applications to access local and remote files with a single consistent API.")
831 (license license:lgpl2.0+)))
832
833
834
835 (define-public libgnome
836 (package
837 (name "libgnome")
838 (version "2.32.1")
839 (source (origin
840 (method url-fetch)
841 (uri (string-append
842 "mirror://gnome/sources/" name "/"
843 (string-take version 4) "/" name "-"
844 version
845 ".tar.bz2"))
846 (sha256
847 (base32
848 "197pnq8y0knqjhm2fg4j6hbqqm3qfzfnd0irhwxpk1b4hqb3kimj"))))
849 (build-system gnu-build-system)
850 (arguments
851 `(#:phases
852 (alist-cons-before
853 'configure 'enable-deprecated
854 (lambda _
855 (substitute* "libgnome/Makefile.in"
856 (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")))
857 %standard-phases)))
858 (inputs `(("popt" ,popt)
859 ("libxml2" ,libxml2)))
860 (native-inputs
861 `(("intltool" ,intltool)
862 ("pkg-config" ,pkg-config)))
863 ;; The following are listed as Required in the .pc file
864 ;; (except for libcanberra -- which seems to be oversight on the part
865 ;; of the upstream developers -- anything that links against libgnome,
866 ;; must also link against libcanberra
867 (propagated-inputs
868 `(("libcanberra" ,libcanberra)
869 ("libbonobo" ,libbonobo)
870 ("gconf" ,gconf)
871 ("gnome-vfs" ,gnome-vfs)
872 ("glib" ,glib)))
873 (home-page "https://developer.gnome.org/libgnome/")
874 (synopsis "Useful routines for building applications")
875 (description "The libgnome library provides a number of useful routines
876 for building modern applications, including session management, activation of
877 files and URIs, and displaying help.")
878 (license license:lgpl2.0+)))
879
880
881 (define-public libart-lgpl
882 (package
883 (name "libart-lgpl")
884 (version "2.3.9")
885 (source (origin
886 (method url-fetch)
887 (uri (let ((upstream-name "libart_lgpl"))
888 (string-append
889 "mirror://gnome/sources/" upstream-name "/"
890 (string-take version 3) "/" upstream-name "-" version
891 ".tar.bz2")))
892 (sha256
893 (base32
894 "072r4svs4hjf2f4gxzx02n3f970kdv9fpx54r2m8bd42fjyyawrw"))))
895 (build-system gnu-build-system)
896 (native-inputs
897 `(("pkg-config" ,pkg-config)))
898 (home-page "https://people.gnome.org/~mathieu/libart")
899 (synopsis "2D drawing library")
900 (description "Libart is a 2D drawing library intended as a
901 high-quality vector-based 2D library with antialiasing and alpha composition.")
902 (license license:lgpl2.0+)))
903
904
905
906 (define-public libgnomecanvas
907 (package
908 (name "libgnomecanvas")
909 (version "2.30.3")
910 (source (origin
911 (method url-fetch)
912 (uri (string-append
913 "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-"
914 version
915 ".tar.gz"))
916 (sha256
917 (base32
918 "1nhnq4lfkk8ljkdafscwaggx0h95mq0rxnd7zgqyq0xb6kkqbjm8"))))
919 (build-system gnu-build-system)
920 ;; Mentioned as Required in the .pc file
921 (propagated-inputs `(("libart-lgpl" ,libart-lgpl)
922 ("gtk+" ,gtk+-2)))
923 (native-inputs
924 `(("intltool" ,intltool)
925 ("pkg-config" ,pkg-config)))
926 (home-page "https://developer.gnome.org/libgnomecanvas/")
927 (synopsis "Flexible widget for creating interactive structured graphics")
928 (description "The GnomeCanvas widget provides a flexible widget for
929 creating interactive structured graphics.")
930 (license license:lgpl2.0+)))
931
932 (define-public libgnomeui
933 (package
934 (name "libgnomeui")
935 (version "2.24.5")
936 (source (origin
937 (method url-fetch)
938 (uri (string-append
939 "mirror://gnome/sources/" name "/" (string-take version 4) "/" name "-"
940 version
941 ".tar.bz2"))
942 (sha256
943 (base32
944 "03rwbli76crkjl6gp422wrc9lqpl174k56cp9i96b7l8jlj2yddf"))))
945 (build-system gnu-build-system)
946 ;; Mentioned as Required in the .pc file
947 (propagated-inputs `(("libgnome" ,libgnome)
948 ("libgnome-keyring" ,libgnome-keyring)))
949 (inputs `(("libgnomecanvas" ,libgnomecanvas)
950 ("libbonoboui" ,libbonoboui)
951 ("libjpeg" ,libjpeg)
952 ("popt" ,popt)
953 ("libbonobo" ,libbonobo)
954 ("libxml2" ,libxml2)
955 ("libglade" ,libglade)))
956 (native-inputs
957 `(("intltool" ,intltool)
958 ("pkg-config" ,pkg-config)))
959 (home-page "https://developer.gnome.org/libgnomeui/")
960 (synopsis "Additional widgets for applications")
961 (description "The libgnomeui library provides additional widgets for
962 applications. Many of the widgets from libgnomeui have already been ported to GTK+.")
963 (license license:lgpl2.0+)))
964
965 (define-public libglade
966 (package
967 (name "libglade")
968 (version "2.6.4")
969 (source (origin
970 (method url-fetch)
971 (uri (string-append
972 "mirror://gnome/sources/" name "/" (string-take version 3) "/" name "-"
973 version
974 ".tar.bz2"))
975 (sha256
976 (base32
977 "1v2x2s04jry4gpabws92i0wq2ghd47yr5n9nhgnkd7c38xv1wdk4"))))
978 (build-system gnu-build-system)
979 (inputs
980 `(("gtk+-2" ,gtk+-2)
981 ("libxml2" ,libxml2)
982 ("python" ,python))) ;; needed for the optional libglade-convert program
983 (native-inputs
984 `(("pkg-config" ,pkg-config)))
985 (home-page "https://developer.gnome.org/libglade")
986 (synopsis "load glade interfaces and access the glade built widgets")
987 (description "libglade is a library that provides interfaces for loading
988 graphical interfaces described in glade files and for accessing the
989 widgets built in the loading process.")
990 (license license:gpl2+))) ; This is correct. GPL not LGPL
991
992 (define-public libgnomeprint
993 (package
994 (name "libgnomeprint")
995 (version "2.8.2")
996 (source (origin
997 (method url-fetch)
998 (uri (string-append
999 "mirror://gnome/sources/" name "/" (string-take version 3) "/" name "-"
1000 version
1001 ".tar.bz2"))
1002 (sha256
1003 (base32
1004 "129ka3nn8gx9dlfry17ib79azxk45wzfv5rgqzw6dwx2b5ns8phm"))))
1005 (build-system gnu-build-system)
1006 (inputs
1007 `(("popt" ,popt)
1008 ("libart-lgpl" ,libart-lgpl)
1009 ("gtk+" ,gtk+-2)
1010 ("libxml2" ,libxml2)))
1011 (native-inputs
1012 `(("intltool" ,intltool)
1013 ("pkg-config" ,pkg-config)))
1014 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1015 (synopsis "printing framework for GNOME")
1016 (description "Gnome-print is a high-quality printing framework for GNOME.")
1017 (license license:lgpl2.0+)))
1018
1019
1020 (define-public libgnomeprintui
1021 (package
1022 (name "libgnomeprintui")
1023 (version "2.8.2")
1024 (source (origin
1025 (method url-fetch)
1026 (uri (string-append
1027 "mirror://gnome/sources/" name "/" (string-take version 3) "/" name "-"
1028 version
1029 ".tar.bz2"))
1030 (sha256
1031 (base32
1032 "1ivipk7r61rg90p9kp889j28xlyyj6466ypvwa4jvnrcllnaajsw"))))
1033 (build-system gnu-build-system)
1034 ;; Mentioned as Required in the .pc file
1035 (propagated-inputs `(("libgnomeprint" ,libgnomeprint)))
1036 (inputs `(("gtk+" ,gtk+-2)
1037 ("glib" ,glib)
1038 ("gnome-icon-theme" ,gnome-icon-theme)
1039 ("libgnomecanvas" ,libgnomecanvas)
1040 ("libxml2" ,libxml2)))
1041 (native-inputs
1042 `(("intltool" ,intltool)
1043 ("pkg-config" ,pkg-config)))
1044 (home-page "https://projects.gnome.org/gnome-print/home/faq.html")
1045 (synopsis "Printing framework for GNOME")
1046 (description "Gnome-print is a high-quality printing framework for GNOME.")
1047 (license license:lgpl2.0+)))
1048
1049
1050 (define-public libbonoboui
1051 (package
1052 (name "libbonoboui")
1053 (version "2.24.5")
1054 (source (origin
1055 (method url-fetch)
1056 (uri (string-append
1057 "mirror://gnome/sources/" name "/" (string-take version 3) "/" name "-"
1058 version
1059 ".tar.bz2"))
1060 (sha256
1061 (base32
1062 "1kbgqh7bw0fdx4f1a1aqwpff7gp5mwhbaz60c6c98bc4djng5dgs"))))
1063 (build-system gnu-build-system)
1064 (arguments
1065 `(#:phases
1066 (alist-cons-before
1067 'check 'start-xserver
1068 (lambda* (#:key inputs #:allow-other-keys)
1069 (let ((xorg-server (assoc-ref inputs "xorg-server"))
1070 (disp ":1"))
1071
1072 (setenv "HOME" (getcwd))
1073 (setenv "DISPLAY" disp)
1074 ;; There must be a running X server and make check doesn't start one.
1075 ;; Therefore we must do it.
1076 (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))
1077 %standard-phases)))
1078 ;; Mentioned as Required by the .pc file
1079 (propagated-inputs `(("libxml2" ,libxml2)))
1080 (inputs
1081 `(("popt" ,popt)
1082 ("pangox-compat" ,pangox-compat)
1083 ("libgnome" ,libgnome)
1084 ("libgnomecanvas" ,libgnomecanvas)
1085 ("libglade" ,libglade)))
1086 (native-inputs
1087 `(("intltool" ,intltool)
1088 ("xorg-server" ,xorg-server) ; For running the tests
1089 ("pkg-config" ,pkg-config)))
1090 (home-page "https://developer.gnome.org/libbonoboui/")
1091 (synopsis "Some user interface controls using Bonobo")
1092 (description "The Bonobo UI library provides a number of user interface
1093 controls using the Bonobo component framework.")
1094 (license license:lgpl2.0+)))
1095