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