Commit | Line | Data |
---|---|---|
995b7261 AE |
1 | ;;; GNU Guix --- Functional package management for GNU |
2 | ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> | |
3 | ;;; | |
4 | ;;; This file is part of GNU Guix. | |
5 | ;;; | |
6 | ;;; GNU Guix is free software; you can redistribute it and/or modify it | |
7 | ;;; under the terms of the GNU General Public License as published by | |
8 | ;;; the Free Software Foundation; either version 3 of the License, or (at | |
9 | ;;; your option) any later version. | |
10 | ;;; | |
11 | ;;; GNU Guix is distributed in the hope that it will be useful, but | |
12 | ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 | ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 | ;;; GNU General Public License for more details. | |
15 | ;;; | |
16 | ;;; You should have received a copy of the GNU General Public License | |
17 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | |
18 | ||
19 | (define-module (gnu packages gnome) | |
c1354b90 | 20 | #:use-module ((guix licenses) #:select (gpl2 gpl2+ lgpl2.0+ lgpl2.1+ lgpl3)) |
995b7261 AE |
21 | #:use-module (guix packages) |
22 | #:use-module (guix download) | |
23 | #:use-module (guix build-system gnu) | |
24 | #:use-module (gnu packages glib) | |
c1354b90 | 25 | #:use-module (gnu packages gnupg) |
85f5dc19 | 26 | #:use-module (gnu packages gstreamer) |
d9c1a22b | 27 | #:use-module (gnu packages gtk) |
c1354b90 LC |
28 | #:use-module (gnu packages pdf) |
29 | #:use-module (gnu packages ghostscript) | |
85f5dc19 | 30 | #:use-module (gnu packages libcanberra) |
d9c1a22b | 31 | #:use-module (gnu packages libpng) |
27477d2d | 32 | #:use-module (gnu packages perl) |
995b7261 AE |
33 | #:use-module (gnu packages pkg-config) |
34 | #:use-module (gnu packages python) | |
85f5dc19 AE |
35 | #:use-module (gnu packages xml) |
36 | #:use-module (gnu packages xorg)) | |
37 | ||
38 | (define-public brasero | |
39 | (package | |
40 | (name "brasero") | |
41 | (version "3.8.0") | |
42 | (source (origin | |
43 | (method url-fetch) | |
44 | (uri (string-append "mirror://gnome/sources/brasero/3.8/brasero-" | |
45 | version ".tar.xz")) | |
46 | (sha256 | |
47 | (base32 | |
48 | "1r5wjsrm47amdaf862ymkdlwlb636c45wg14x20hdr99c653d2nr")))) | |
49 | (build-system gnu-build-system) | |
50 | (propagated-inputs | |
51 | `(("hicolor-icon-theme" ,hicolor-icon-theme))) | |
52 | (inputs | |
53 | `(("glib" ,glib) | |
54 | ("gnome-doc-utils" ,gnome-doc-utils) | |
55 | ("gstreamer" ,gstreamer) | |
56 | ("gst-plugins-base" ,gst-plugins-base) | |
57 | ("gtk+" ,gtk+) | |
85f5dc19 AE |
58 | ("itstool" ,itstool) |
59 | ("libcanberra" ,libcanberra) | |
60 | ("libice" ,libice) | |
61 | ("libnotify" ,libnotify) | |
62 | ("libsm" ,libsm) | |
c4c4cc05 JD |
63 | ("libxml2" ,libxml2))) |
64 | (native-inputs | |
65 | `(("intltool" ,intltool) | |
85f5dc19 AE |
66 | ("pkg-config" ,pkg-config))) |
67 | (home-page "https://projects.gnome.org/brasero/") | |
68 | (synopsis "CD/DVD burning tool for Gnome") | |
69 | (description "Brasero is an application to burn CD/DVD for the Gnome | |
70 | Desktop. It is designed to be as simple as possible and has some unique | |
71 | features to enable users to create their discs easily and quickly.") | |
72 | (license gpl2+))) | |
995b7261 AE |
73 | |
74 | (define-public gnome-doc-utils | |
75 | (package | |
76 | (name "gnome-doc-utils") | |
77 | (version "0.20.10") | |
78 | (source | |
79 | (origin | |
80 | (method url-fetch) | |
81 | (uri (string-append "mirror://gnome/sources/" name "/0.20/" | |
82 | name "-" version ".tar.xz")) | |
83 | (sha256 | |
84 | (base32 | |
85 | "19n4x25ndzngaciiyd8dd6s2mf9gv6nv3wv27ggns2smm7zkj1nb")))) | |
86 | (build-system gnu-build-system) | |
c4c4cc05 | 87 | (native-inputs |
995b7261 AE |
88 | `(("intltool" ,intltool) |
89 | ("libxml2" ,libxml2) | |
90 | ("libxslt" ,libxslt) | |
91 | ("pkg-config" ,pkg-config) | |
92 | ("python-2" ,python-2))) | |
93 | (arguments | |
94 | `(#:tests? #f)) ; tries to load http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd | |
95 | (home-page "https://wiki.gnome.org/GnomeDocUtils") | |
96 | (synopsis | |
97 | "Documentation utilities for the Gnome project") | |
98 | (description | |
99 | "Gnome-doc-utils is a collection of documentation utilities for the | |
100 | Gnome project. It includes xml2po tool which makes it easier to translate | |
101 | and keep up to date translations of documentation.") | |
102 | (license gpl2+))) ; xslt under lgpl | |
d9c1a22b | 103 | |
c1354b90 LC |
104 | (define-public libgnome-keyring |
105 | (package | |
106 | (name "libgnome-keyring") | |
107 | (version "3.6.0") | |
108 | (source (origin | |
109 | (method url-fetch) | |
110 | (uri (string-append | |
111 | "mirror://gnome/sources/libgnome-keyring/3.6/libgnome-keyring-" | |
112 | version | |
113 | ".tar.xz")) | |
114 | (sha256 | |
115 | (base32 | |
116 | "0c4qrjpmv1hqga3xv6wsq2z10x2n78qgw7q3k3s01y1pggxkgjkd")))) | |
117 | (build-system gnu-build-system) | |
c1354b90 | 118 | (inputs |
c4c4cc05 | 119 | `(("libgcrypt" ,libgcrypt) |
c1354b90 | 120 | ("dbus" ,dbus))) |
c4c4cc05 JD |
121 | (native-inputs |
122 | `(("pkg-config" ,pkg-config) | |
123 | ("intltool" ,intltool))) | |
c1354b90 LC |
124 | (propagated-inputs |
125 | ;; Referred to in .h files and .pc. | |
126 | `(("glib" ,glib))) | |
127 | (home-page "http://www.gnome.org") | |
128 | (synopsis "Accessing passwords from the GNOME keyring") | |
129 | (description | |
130 | "Client library to access passwords from the GNOME keyring.") | |
131 | ||
132 | ;; Though a couple of files are LGPLv2.1+. | |
133 | (license lgpl2.0+))) | |
134 | ||
135 | (define-public evince | |
136 | (package | |
137 | (name "evince") | |
138 | (version "3.6.1") | |
139 | (source (origin | |
140 | (method url-fetch) | |
96e42467 LC |
141 | (uri (string-append "mirror://gnome/sources/evince/3.6/evince-" |
142 | version ".tar.xz")) | |
c1354b90 LC |
143 | (sha256 |
144 | (base32 | |
145 | "1da1pij030dh8mb0pr0jnyszgsbjnh8lc17rj5ii52j3kmbv51qv")))) | |
146 | (build-system gnu-build-system) | |
147 | (arguments | |
148 | `(#:configure-flags '("--disable-nautilus") | |
149 | ||
150 | ;; FIXME: Tests fail with: | |
151 | ;; ImportError: No module named gi.repository | |
152 | ;; Where should that module come from? | |
96e42467 LC |
153 | #:tests? #f |
154 | ||
155 | #:phases (alist-cons-after | |
156 | 'install 'set-mime-search-path | |
157 | (lambda* (#:key inputs outputs #:allow-other-keys) | |
158 | ;; Wrap 'evince' so that it knows where MIME info is. | |
159 | (let ((out (assoc-ref outputs "out")) | |
160 | (mime (assoc-ref inputs "shared-mime-info"))) | |
161 | (wrap-program (string-append out "/bin/evince") | |
162 | `("XDG_DATA_DIRS" ":" prefix | |
163 | ,(list (string-append mime "/share") | |
164 | (string-append out "/share")))))) | |
165 | %standard-phases))) | |
c1354b90 LC |
166 | (inputs |
167 | `(("libspectre" ,libspectre) | |
168 | ;; ("djvulibre" ,djvulibre) | |
169 | ("ghostscript" ,ghostscript) | |
170 | ("poppler" ,poppler) | |
171 | ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) | |
172 | ("libgnome-keyring" ,libgnome-keyring) | |
173 | ("gnome-icon-theme" ,gnome-icon-theme) | |
174 | ("itstool" ,itstool) | |
175 | ("gdk-pixbuf" ,gdk-pixbuf) | |
176 | ("atk" ,atk) | |
177 | ("pango" ,pango) | |
178 | ("gtk+" ,gtk+) | |
179 | ("glib" ,glib) | |
180 | ("libxml2" ,libxml2) | |
c1354b90 LC |
181 | ("libsm" ,libsm) |
182 | ("libice" ,libice) | |
96e42467 | 183 | ("shared-mime-info" ,shared-mime-info) |
c1354b90 LC |
184 | |
185 | ;; For tests. | |
186 | ("dogtail" ,python2-dogtail))) | |
96e42467 | 187 | (native-inputs |
c4c4cc05 JD |
188 | `(("intltool" ,intltool) |
189 | ("pkg-config" ,pkg-config))) | |
c1354b90 LC |
190 | (home-page |
191 | "http://www.gnome.org/projects/evince/") | |
192 | (synopsis "GNOME's document viewer") | |
193 | (description | |
194 | "Evince is a document viewer for multiple document formats. It | |
195 | currently supports PDF, PostScript, DjVu, TIFF and DVI. The goal | |
196 | of Evince is to replace the multiple document viewers that exist | |
96e42467 | 197 | on the GNOME Desktop with a single simple application.") |
c1354b90 LC |
198 | (license gpl2+))) |
199 | ||
22e32e69 AE |
200 | (define-public gsettings-desktop-schemas |
201 | (package | |
202 | (name "gsettings-desktop-schemas") | |
203 | (version "3.10.0") | |
204 | (source | |
205 | (origin | |
206 | (method url-fetch) | |
207 | (uri (string-append "mirror://gnome/sources/" name "/" | |
208 | (string-copy version 0 (string-rindex version #\.)) "/" | |
209 | name "-" version ".tar.xz")) | |
210 | (sha256 | |
211 | (base32 | |
212 | "1km8qxwrzvravmg8j680qv64bwnwbdgrmy8bqmhs0dgxn2b1as6a")))) | |
213 | (build-system gnu-build-system) | |
214 | (inputs | |
c4c4cc05 JD |
215 | `(("glib" ,glib))) |
216 | (native-inputs | |
217 | `(("intltool" ,intltool) | |
22e32e69 AE |
218 | ("pkg-config" ,pkg-config))) |
219 | (home-page "https://launchpad.net/gsettings-desktop-schemas") | |
220 | (synopsis | |
221 | "GNOME settings for various desktop components") | |
222 | (description | |
223 | "Gsettings-desktop-schemas contains a collection of GSettings schemas | |
224 | for settings shared by various components of the GNOME desktop.") | |
225 | (license lgpl2.1+))) | |
226 | ||
27477d2d AE |
227 | (define-public icon-naming-utils |
228 | (package | |
229 | (name "icon-naming-utils") | |
230 | (version "0.8.90") | |
231 | (source | |
232 | (origin | |
233 | (method url-fetch) | |
234 | (uri (string-append "http://tango.freedesktop.org/releases/icon-naming-utils-" | |
235 | version ".tar.bz2")) | |
236 | (sha256 | |
237 | (base32 | |
238 | "1mc3v28fdfqanx3lqx233vcr4glb4c2376k0kx2v91a4vxwqcdxi")))) | |
239 | (build-system gnu-build-system) | |
240 | (inputs | |
241 | `(("perl" ,perl) | |
242 | ("perl-xml-simple" ,perl-xml-simple))) | |
243 | (home-page "http://tango.freedesktop.org/Standard_Icon_Naming_Specification") | |
244 | (synopsis | |
245 | "Utility to implement the Freedesktop Icon Naming Specification") | |
246 | (description | |
247 | "To help with the transition to the Freedesktop Icon Naming | |
248 | Specification, the icon naming utility maps the icon names used by the | |
249 | GNOME and KDE desktops to the icon names proposed in the specification.") | |
250 | (license lgpl2.1+))) | |
251 | ||
7d3f3651 AE |
252 | (define-public gnome-icon-theme |
253 | (package | |
254 | (name "gnome-icon-theme") | |
255 | (version "3.10.0") | |
256 | (source | |
257 | (origin | |
258 | (method url-fetch) | |
259 | (uri (string-append "mirror://gnome/sources/" name "/" | |
260 | (string-copy version 0 (string-rindex version #\.)) "/" | |
261 | name "-" version ".tar.xz")) | |
262 | (sha256 | |
263 | (base32 | |
264 | "1xinbgkkvlhazj887ajcl13i7kdc1wcca02jwxzvjrvchjsp4m66")))) | |
265 | (build-system gnu-build-system) | |
266 | (inputs | |
267 | `(("gtk+" ,gtk+) | |
c4c4cc05 JD |
268 | ("icon-naming-utils" ,icon-naming-utils))) |
269 | (native-inputs | |
270 | `(("intltool" ,intltool) | |
271 | ("pkg-config" ,pkg-config))) | |
7d3f3651 AE |
272 | (home-page "http://art.gnome.org/") |
273 | (synopsis | |
274 | "GNOME icon theme") | |
275 | (description | |
276 | "Icons for the GNOME desktop.") | |
277 | (license lgpl3))) ; or Creative Commons BY-SA 3.0 | |
278 | ||
9167f8e6 LC |
279 | (define-public shared-mime-info |
280 | (package | |
281 | (name "shared-mime-info") | |
282 | (version "1.2") | |
283 | (source (origin | |
284 | (method url-fetch) | |
285 | (uri (string-append "http://freedesktop.org/~hadess/shared-mime-info-" | |
286 | version ".tar.xz")) | |
287 | (sha256 | |
288 | (base32 | |
289 | "0y5vi0vr6rbhvfzcfg57cfskn362bpvcpca9cy598nmr87i6lld5")))) | |
290 | (build-system gnu-build-system) | |
291 | (arguments | |
292 | ;; The build system appears not to be parallel-safe. | |
293 | '(#:parallel-build? #f)) | |
294 | (inputs | |
295 | `(("glib" ,glib) | |
c4c4cc05 | 296 | ("libxml2" ,libxml2))) |
9167f8e6 | 297 | (native-inputs |
c4c4cc05 JD |
298 | `(("intltool" ,intltool) |
299 | ("pkg-config" ,pkg-config))) | |
9167f8e6 LC |
300 | (home-page "http://freedesktop.org/wiki/Software/shared-mime-info") |
301 | (synopsis "Database of common MIME types") | |
302 | (description | |
303 | "The shared-mime-info package contains the core database of common types | |
304 | and the update-mime-database command used to extend it. It requires glib2 to | |
305 | be installed for building the update command. Additionally, it uses intltool | |
306 | for translations, though this is only a dependency for the maintainers. This | |
307 | database is translated at Transifex.") | |
308 | (license gpl2+))) | |
309 | ||
bef4dd92 AE |
310 | (define-public hicolor-icon-theme |
311 | (package | |
312 | (name "hicolor-icon-theme") | |
313 | (version "0.12") | |
314 | (source | |
315 | (origin | |
316 | (method url-fetch) | |
317 | (uri (string-append "http://icon-theme.freedesktop.org/releases/hicolor-icon-theme-" | |
318 | version ".tar.gz")) | |
319 | (sha256 | |
320 | (base32 | |
321 | "0wzc7g4ldb2l8zc0x2785ck808c03i857jji942ikakyc68adp4y")))) | |
322 | (build-system gnu-build-system) | |
323 | (arguments | |
324 | `(#:tests? #f)) ; no check target | |
325 | (home-page "http://icon-theme.freedesktop.org/releases/") | |
326 | (synopsis | |
327 | "Freedesktop icon theme") | |
328 | (description | |
329 | "Freedesktop icon theme.") | |
330 | (license gpl2))) | |
331 | ||
d9c1a22b AE |
332 | (define-public libnotify |
333 | (package | |
334 | (name "libnotify") | |
335 | (version "0.7.6") | |
336 | (source | |
337 | (origin | |
338 | (method url-fetch) | |
339 | (uri (string-append "mirror://gnome/sources/" name "/" | |
340 | (string-copy version 0 (string-rindex version #\.)) "/" | |
341 | name "-" version ".tar.xz")) | |
342 | (sha256 | |
343 | (base32 | |
344 | "0dyq8zgjnnzcah31axnx6afb21kl7bks1gvrg4hjh3nk02j1rxhf")))) | |
345 | (build-system gnu-build-system) | |
346 | (inputs | |
347 | `(("gdk-pixbuf" ,gdk-pixbuf) | |
348 | ("glib" ,glib) | |
349 | ("gtk+" ,gtk+) | |
c4c4cc05 JD |
350 | ("libpng" ,libpng))) |
351 | (native-inputs | |
352 | `(("pkg-config" ,pkg-config))) | |
d9c1a22b AE |
353 | (home-page "https://developer-next.gnome.org/libnotify/") |
354 | (synopsis | |
355 | "GNOME desktop notification library") | |
356 | (description | |
357 | "Libnotify is a library that sends desktop notifications to a | |
358 | notification daemon, as defined in the Desktop Notifications spec. These | |
359 | notifications can be used to inform the user about an event or display | |
360 | some form of information without getting in the user's way.") | |
361 | (license lgpl2.1+))) |