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