gnu: Add caja.
[jackhill/guix/guix.git] / gnu / packages / mate.scm
CommitLineData
bb2fe79e
FH
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
68d2eea0 3;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
833b7e0a 4;;; Copyright © 2017 ng0 <ng0@infotropique.org>
bb2fe79e
FH
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 mate)
22 #:use-module ((guix licenses) #:prefix license:)
23 #:use-module (guix packages)
24 #:use-module (guix download)
25 #:use-module (guix utils)
26 #:use-module (guix build-system gnu)
42a6eaac 27 #:use-module (guix build-system glib-or-gtk)
bb2fe79e
FH
28 #:use-module (gnu packages)
29 #:use-module (gnu packages pkg-config)
42a6eaac 30 #:use-module (gnu packages freedesktop)
bb2fe79e
FH
31 #:use-module (gnu packages glib)
32 #:use-module (gnu packages gtk)
4b48a9fe
FH
33 #:use-module (gnu packages gnome)
34 #:use-module (gnu packages xorg)
f2c7369a
FH
35 #:use-module (gnu packages xdisorg)
36 #:use-module (gnu packages base)
7af1ca29 37 #:use-module (gnu packages xml)
42a6eaac 38 #:use-module (gnu packages photo)
7af1ca29 39 #:use-module (gnu packages python))
bb2fe79e
FH
40
41(define-public mate-icon-theme
42 (package
43 (name "mate-icon-theme")
d84f7182 44 (version "1.18.2")
bb2fe79e
FH
45 (source (origin
46 (method url-fetch)
833b7e0a 47 (uri (string-append "https://pub.mate-desktop.org/releases/"
bb2fe79e
FH
48 (version-major+minor version) "/"
49 name "-" version ".tar.xz"))
50 (sha256
51 (base32
d84f7182 52 "0si3li3kza7s45zhasjvqn5f85zpkn0x8i4kq1dlnqvjjqzkg4ch"))))
bb2fe79e
FH
53 (build-system gnu-build-system)
54 (native-inputs
55 `(("pkg-config" ,pkg-config)
56 ("intltool" ,intltool)
bb2fe79e 57 ("icon-naming-utils" ,icon-naming-utils)))
833b7e0a 58 (home-page "https://mate-desktop.org/")
bb2fe79e
FH
59 (synopsis "The MATE desktop environment icon theme")
60 (description
61 "This package contains the default icon theme used by the MATE desktop.")
62 (license license:lgpl3+)))
cbfe494d
FH
63
64(define-public mate-themes
65 (package
66 (name "mate-themes")
60692df2 67 (version "3.22.13")
cbfe494d
FH
68 (source (origin
69 (method url-fetch)
833b7e0a 70 (uri (string-append "https://pub.mate-desktop.org/releases/themes/"
4e85f8d9
KK
71 (version-major+minor version) "/mate-themes-"
72 version ".tar.xz"))
cbfe494d
FH
73 (sha256
74 (base32
60692df2 75 "1p7w63an8qs15hkj79nppy7471glv0rm1b0himn3c4w69q8qdc9i"))))
cbfe494d
FH
76 (build-system gnu-build-system)
77 (native-inputs
78 `(("pkg-config" ,pkg-config)
68d2eea0 79 ("intltool" ,intltool)
80 ("gdk-pixbuf" ,gdk-pixbuf) ; gdk-pixbuf+svg isn't needed
81 ("gtk" ,gtk+-2)))
833b7e0a 82 (home-page "https://mate-desktop.org/")
cbfe494d
FH
83 (synopsis
84 "Official themes for the MATE desktop")
85 (description
86 "This package includes the standard themes for the MATE desktop, for
e3ec6c80
EF
87example Menta, TraditionalOk, GreenLaguna or BlackMate. This package has
88themes for both gtk+-2 and gtk+-3.")
cbfe494d
FH
89 (license (list license:lgpl2.1+ license:cc-by-sa3.0 license:gpl3+
90 license:gpl2+))))
4b48a9fe
FH
91
92(define-public mate-desktop
93 (package
94 (name "mate-desktop")
3bbdf641 95 (version "1.18.0")
4b48a9fe
FH
96 (source (origin
97 (method url-fetch)
833b7e0a 98 (uri (string-append "https://pub.mate-desktop.org/releases/"
4b48a9fe
FH
99 (version-major+minor version) "/"
100 name "-" version ".tar.xz"))
101 (sha256
102 (base32
3bbdf641 103 "12iv2y4dan962fs7vkkxbjkp77pbvjnwfa43ggr0zkdsc3ydjbbg"))))
4b48a9fe
FH
104 (build-system gnu-build-system)
105 (native-inputs
106 `(("pkg-config" ,pkg-config)
107 ("intltool" ,intltool)
108 ("glib:bin" ,glib "bin")
109 ("gobject-introspection" ,gobject-introspection)
6a548c56 110 ("yelp-tools" ,yelp-tools)
111 ("gtk-doc" ,gtk-doc)))
4b48a9fe 112 (inputs
9927943c
EF
113 `(("gtk+" ,gtk+)
114 ("libxrandr" ,libxrandr)
4b48a9fe 115 ("startup-notification" ,startup-notification)))
9927943c
EF
116 (propagated-inputs
117 `(("dconf" ,dconf))) ; mate-desktop-2.0.pc
833b7e0a 118 (home-page "https://mate-desktop.org/")
4b48a9fe
FH
119 (synopsis "Library with common API for various MATE modules")
120 (description
121 "This package contains a public API shared by several applications on the
122desktop and the mate-about program.")
123 (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.1+))))
f2c7369a
FH
124
125(define-public libmateweather
126 (package
127 (name "libmateweather")
d954e569 128 (version "1.18.1")
f2c7369a
FH
129 (source (origin
130 (method url-fetch)
833b7e0a 131 (uri (string-append "https://pub.mate-desktop.org/releases/"
f2c7369a
FH
132 (version-major+minor version) "/"
133 name "-" version ".tar.xz"))
134 (sha256
135 (base32
d954e569 136 "0z6vfh42fv9rqjrraqfpf6h9nd9h662bxy3l3r48j19xvxrwmx3a"))))
f2c7369a
FH
137 (build-system gnu-build-system)
138 (arguments
5804c7b6 139 '(#:configure-flags
d954e569
KK
140 (list (string-append "--with-zoneinfo-dir="
141 (assoc-ref %build-inputs "tzdata")
142 "/share/zoneinfo"))
f2c7369a
FH
143 #:phases
144 (modify-phases %standard-phases
5804c7b6 145 (add-before 'check 'fix-tzdata-location
f2c7369a
FH
146 (lambda* (#:key inputs #:allow-other-keys)
147 (substitute* "data/check-timezones.sh"
148 (("/usr/share/zoneinfo/zone.tab")
149 (string-append (assoc-ref inputs "tzdata")
150 "/share/zoneinfo/zone.tab")))
151 #t)))))
152 (native-inputs
153 `(("pkg-config" ,pkg-config)
154 ("intltool" ,intltool)
5804c7b6 155 ("dconf" ,dconf)
f2c7369a
FH
156 ("glib:bin" ,glib "bin")))
157 (inputs
5804c7b6 158 `(("gtk+" ,gtk+)
f2c7369a
FH
159 ("tzdata" ,tzdata)))
160 (propagated-inputs
06599980
EF
161 ;; both of these are requires.private in mateweather.pc
162 `(("libsoup" ,libsoup)
163 ("libxml2" ,libxml2)))
833b7e0a 164 (home-page "https://mate-desktop.org/")
f2c7369a
FH
165 (synopsis "MATE library for weather information from the Internet")
166 (description
06599980 167 "This library provides access to weather information from the internet for
f2c7369a
FH
168the MATE desktop environment.")
169 (license license:lgpl2.1+)))
7af1ca29
FH
170
171(define-public mate-menus
172 (package
173 (name "mate-menus")
78a52051 174 (version "1.18.0")
7af1ca29
FH
175 (source (origin
176 (method url-fetch)
833b7e0a 177 (uri (string-append "https://pub.mate-desktop.org/releases/"
7af1ca29
FH
178 (version-major+minor version) "/"
179 name "-" version ".tar.xz"))
180 (sha256
181 (base32
78a52051 182 "05kyr37xqv6hm1rlvnqd5ng0x1n883brqynkirkk5drl56axnz7h"))))
7af1ca29
FH
183 (build-system gnu-build-system)
184 (arguments
185 `(#:phases
186 (modify-phases %standard-phases
187 (add-after
188 'unpack 'fix-introspection-install-dir
189 (lambda* (#:key outputs #:allow-other-keys)
190 (let ((out (assoc-ref outputs "out")))
191 (substitute* '("configure")
192 (("`\\$PKG_CONFIG --variable=girdir gobject-introspection-1.0`")
193 (string-append "\"" out "/share/gir-1.0/\""))
194 (("\\$\\(\\$PKG_CONFIG --variable=typelibdir gobject-introspection-1.0\\)")
27caff1b
EF
195 (string-append out "/lib/girepository-1.0/")))
196 #t))))))
7af1ca29
FH
197 (native-inputs
198 `(("pkg-config" ,pkg-config)
199 ("intltool" ,intltool)
200 ("gobject-introspection" ,gobject-introspection)))
201 (inputs
27caff1b
EF
202 `(("glib" ,glib)
203 ("python" ,python-2)))
833b7e0a 204 (home-page "https://mate-desktop.org/")
7af1ca29
FH
205 (synopsis "Freedesktop menu specification implementation for MATE")
206 (description
207 "The package contains an implementation of the freedesktop menu
208specification, the MATE menu layout configuration files, .directory files and
209assorted menu related utility programs.")
210 (license (list license:gpl2+ license:lgpl2.0+))))
42a6eaac 211
212(define-public caja
213 (package
214 (name "caja")
215 (version "1.18.3")
216 (source
217 (origin
218 (method url-fetch)
219 (uri (string-append "https://pub.mate-desktop.org/releases/"
220 (version-major+minor version) "/"
221 name "-" version ".tar.xz"))
222 (sha256
223 (base32
224 "0mljqcx7k8p27854zm7qzzn8ca6hs7hva9p43hp4p507z52caqmm"))))
225 (build-system glib-or-gtk-build-system)
226 (arguments
227 `(#:configure-flags '("--disable-update-mimedb")
228 #:tests? #f ; tests fail even with display set
229 #:phases
230 (modify-phases %standard-phases
231 (add-before 'check 'pre-check
232 (lambda _
233 ;; Tests require a running X server.
234 (system "Xvfb :1 &")
235 (setenv "DISPLAY" ":1")
236 ;; For the missing /etc/machine-id.
237 (setenv "DBUS_FATAL_WARNINGS" "0")
238 #t)))))
239 (native-inputs
240 `(("pkg-config" ,pkg-config)
241 ("intltool" ,intltool)
242 ("glib:bin" ,glib "bin")
243 ("xorg-server" ,xorg-server)
244 ("gobject-introspection" ,gobject-introspection)))
245 (inputs
246 `(("exempi" ,exempi)
247 ("gtk+" ,gtk+)
248 ("gvfs" ,gvfs)
249 ("libexif" ,libexif)
250 ("libnotify" ,libnotify)
251 ("libsm" ,libsm)
252 ("libxml2" ,libxml2)
253 ("mate-desktop" ,mate-desktop)
254 ("startup-notification" ,startup-notification)))
255 (home-page "https://mate-desktop.org/")
256 (synopsis "File manager for the MATE desktop")
257 (description
258 "Caja is the official file manager for the MATE desktop.
259It allows for browsing directories, as well as previewing files and launching
260applications associated with them. Caja is also responsible for handling the
261icons on the MATE desktop. It works on local and remote filesystems.")
262 ;; There is a note about a TRADEMARKS_NOTICE file in COPYING which
263 ;; does not exist. It is safe to assume that this is of no concern
264 ;; for us.
265 (license license:gpl2+)))