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