1 ;;; GNU Guix --- Functional package management for GNU
2 ;;; Copyright © 2016 Fabian Harfert <fhmgufs@web.de>
3 ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
4 ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
5 ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
7 ;;; This file is part of GNU Guix.
9 ;;; GNU Guix is free software; you can redistribute it and/or modify it
10 ;;; under the terms of the GNU General Public License as published by
11 ;;; the Free Software Foundation; either version 3 of the License, or (at
12 ;;; your option) any later version.
14 ;;; GNU Guix is distributed in the hope that it will be useful, but
15 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
16 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 ;;; GNU General Public License for more details.
19 ;;; You should have received a copy of the GNU General Public License
20 ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
22 (define-module (gnu packages mate)
23 #:use-module ((guix licenses) #:prefix license:)
24 #:use-module (guix packages)
25 #:use-module (guix download)
26 #:use-module (guix utils)
27 #:use-module (guix build-system gnu)
28 #:use-module (guix build-system glib-or-gtk)
29 #:use-module (guix build-system trivial)
30 #:use-module (gnu packages)
31 #:use-module (gnu packages attr)
32 #:use-module (gnu packages autotools)
33 #:use-module (gnu packages backup)
34 #:use-module (gnu packages base)
35 #:use-module (gnu packages compression)
36 #:use-module (gnu packages djvu)
37 #:use-module (gnu packages docbook)
38 #:use-module (gnu packages documentation)
39 #:use-module (gnu packages enchant)
40 #:use-module (gnu packages file)
41 #:use-module (gnu packages fonts)
42 #:use-module (gnu packages fontutils)
43 #:use-module (gnu packages freedesktop)
44 #:use-module (gnu packages gettext)
45 #:use-module (gnu packages ghostscript)
46 #:use-module (gnu packages glib)
47 #:use-module (gnu packages gnome)
48 #:use-module (gnu packages gnupg)
49 #:use-module (gnu packages gnuzilla)
50 #:use-module (gnu packages gtk)
51 #:use-module (gnu packages image)
52 #:use-module (gnu packages imagemagick)
53 #:use-module (gnu packages iso-codes)
54 #:use-module (gnu packages javascript)
55 #:use-module (gnu packages libcanberra)
56 #:use-module (gnu packages linux)
57 #:use-module (gnu packages messaging)
58 #:use-module (gnu packages nettle)
59 #:use-module (gnu packages pkg-config)
60 #:use-module (gnu packages pdf)
61 #:use-module (gnu packages photo)
62 #:use-module (gnu packages polkit)
63 #:use-module (gnu packages pulseaudio)
64 #:use-module (gnu packages python)
65 #:use-module (gnu packages tex)
66 #:use-module (gnu packages webkit)
67 #:use-module (gnu packages xdisorg)
68 #:use-module (gnu packages xml)
69 #:use-module (gnu packages xdisorg)
70 #:use-module (gnu packages xorg))
72 (define-public mate-common
79 (uri (string-append "https://pub.mate-desktop.org/releases/"
80 (version-major+minor version) "/"
81 name "-" version ".tar.xz"))
84 "1005laf3z1h8qczm7pmwr40r842665cv6ykhjg7r93vldra48z6p"))))
85 (build-system gnu-build-system)
86 (home-page "https://mate-desktop.org/")
87 (synopsis "Common files for development of MATE packages")
89 "Mate Common includes common files and macros used by
91 (license license:gpl3+)))
93 (define-public mate-icon-theme
95 (name "mate-icon-theme")
99 (uri (string-append "https://pub.mate-desktop.org/releases/"
100 (version-major+minor version) "/"
101 name "-" version ".tar.xz"))
104 "0si3li3kza7s45zhasjvqn5f85zpkn0x8i4kq1dlnqvjjqzkg4ch"))))
105 (build-system gnu-build-system)
107 `(("pkg-config" ,pkg-config)
108 ("intltool" ,intltool)
109 ("icon-naming-utils" ,icon-naming-utils)))
110 (home-page "https://mate-desktop.org/")
111 (synopsis "The MATE desktop environment icon theme")
113 "This package contains the default icon theme used by the MATE desktop.")
114 (license license:lgpl3+)))
116 (define-public mate-icon-theme-faenza
118 (name "mate-icon-theme-faenza")
122 (uri (string-append "https://pub.mate-desktop.org/releases/"
123 (version-major+minor version) "/"
124 name "-" version ".tar.xz"))
127 "0vc3wg9l5yrxm0xmligz4lw2g3nqj1dz8fwv90xvym8pbjds2849"))))
128 (build-system gnu-build-system)
131 (modify-phases %standard-phases
132 (add-after 'unpack 'autoconf
134 (setenv "SHELL" (which "sh"))
135 (setenv "CONFIG_SHELL" (which "sh"))
136 (invoke "sh" "autogen.sh"))))))
138 `(("autoconf" ,autoconf-wrapper)
139 ("automake" ,automake)
140 ("intltool" ,intltool)
141 ("icon-naming-utils" ,icon-naming-utils)
143 ("mate-common" ,mate-common)
144 ("pkg-config" ,pkg-config)
146 (home-page "https://mate-desktop.org/")
147 (synopsis "MATE desktop environment icon theme faenza")
149 "Icon theme using Faenza and Faience icon themes and some
150 customized icons for MATE. Furthermore it includes some icons
151 from Mint-X-F and Faenza-Fresh icon packs.")
152 (license license:gpl2+)))
154 (define-public mate-themes
160 (uri (string-append "https://pub.mate-desktop.org/releases/themes/"
161 (version-major+minor version) "/mate-themes-"
165 "1k8qp2arjv4vj8kyjhjgyj5h46jy0darlfh48l5h25623z1firdj"))))
166 (build-system gnu-build-system)
168 `(("pkg-config" ,pkg-config)
169 ("intltool" ,intltool)
170 ("gdk-pixbuf" ,gdk-pixbuf) ; gdk-pixbuf+svg isn't needed
172 (home-page "https://mate-desktop.org/")
174 "Official themes for the MATE desktop")
176 "This package includes the standard themes for the MATE desktop, for
177 example Menta, TraditionalOk, GreenLaguna or BlackMate. This package has
178 themes for both gtk+-2 and gtk+-3.")
179 (license (list license:lgpl2.1+ license:cc-by-sa3.0 license:gpl3+
182 (define-public mate-desktop
184 (name "mate-desktop")
188 (uri (string-append "https://pub.mate-desktop.org/releases/"
189 (version-major+minor version) "/"
190 name "-" version ".tar.xz"))
193 "12iv2y4dan962fs7vkkxbjkp77pbvjnwfa43ggr0zkdsc3ydjbbg"))))
194 (build-system gnu-build-system)
196 `(("pkg-config" ,pkg-config)
197 ("intltool" ,intltool)
198 ("glib:bin" ,glib "bin")
199 ("gobject-introspection" ,gobject-introspection)
200 ("yelp-tools" ,yelp-tools)
201 ("gtk-doc" ,gtk-doc)))
204 ("libxrandr" ,libxrandr)
205 ("startup-notification" ,startup-notification)))
207 `(("dconf" ,dconf))) ; mate-desktop-2.0.pc
208 (home-page "https://mate-desktop.org/")
209 (synopsis "Library with common API for various MATE modules")
211 "This package contains a public API shared by several applications on the
212 desktop and the mate-about program.")
213 (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.1+))))
215 (define-public libmateweather
217 (name "libmateweather")
221 (uri (string-append "https://pub.mate-desktop.org/releases/"
222 (version-major+minor version) "/"
223 name "-" version ".tar.xz"))
226 "0z6vfh42fv9rqjrraqfpf6h9nd9h662bxy3l3r48j19xvxrwmx3a"))))
227 (build-system gnu-build-system)
230 (list (string-append "--with-zoneinfo-dir="
231 (assoc-ref %build-inputs "tzdata")
234 (modify-phases %standard-phases
235 (add-before 'check 'fix-tzdata-location
236 (lambda* (#:key inputs #:allow-other-keys)
237 (substitute* "data/check-timezones.sh"
238 (("/usr/share/zoneinfo/zone.tab")
239 (string-append (assoc-ref inputs "tzdata")
240 "/share/zoneinfo/zone.tab")))
243 `(("pkg-config" ,pkg-config)
244 ("intltool" ,intltool)
246 ("glib:bin" ,glib "bin")))
251 ;; both of these are requires.private in mateweather.pc
252 `(("libsoup" ,libsoup)
253 ("libxml2" ,libxml2)))
254 (home-page "https://mate-desktop.org/")
255 (synopsis "MATE library for weather information from the Internet")
257 "This library provides access to weather information from the internet for
258 the MATE desktop environment.")
259 (license license:lgpl2.1+)))
261 (define-public mate-terminal
263 (name "mate-terminal")
268 (uri (string-append "https://pub.mate-desktop.org/releases/"
269 (version-major+minor version) "/"
270 name "-" version ".tar.xz"))
273 "1zihm609d2d9cw53ry385whshjl1dnkifpk41g1ddm9f58hv4da1"))))
274 (build-system glib-or-gtk-build-system)
276 `(("pkg-config" ,pkg-config)
277 ("intltool" ,intltool)
279 ("gobject-introspection" ,gobject-introspection)
281 ("yelp-tools" ,yelp-tools)))
288 ("mate-desktop" ,mate-desktop)
291 (home-page "https://mate-desktop.org/")
292 (synopsis "MATE Terminal Emulator")
294 "MATE Terminal is a terminal emulation application that you can
295 use to access a shell. With it, you can run any application that
296 is designed to run on VT102, VT220, and xterm terminals.
297 MATE Terminal also has the ability to use multiple terminals
298 in a single window (tabs) and supports management of different
299 configurations (profiles).")
300 (license license:gpl3)))
302 (define-public mate-session-manager
304 (name "mate-session-manager")
309 (uri (string-append "https://pub.mate-desktop.org/releases/"
310 (version-major+minor version) "/"
311 name "-" version ".tar.xz"))
314 "0i0xq6041x2qmb26x9bawx0qpfkgjn6x9w3phnm9s7rc4s0z20ll"))))
315 (build-system glib-or-gtk-build-system)
317 `(#:configure-flags (list "--enable-elogind"
318 "--disable-schemas-compile")
320 (modify-phases %standard-phases
321 (add-before 'configure 'pre-configure
322 (lambda* (#:key outputs #:allow-other-keys)
323 ;; Use elogind instead of systemd.
324 (substitute* "configure"
325 (("libsystemd-login")
327 (("systemd") "elogind"))
328 (substitute* "mate-session/gsm-systemd.c"
329 (("#include <systemd/sd-login.h>")
330 "#include <elogind/sd-login.h>"))
331 ;; Remove uses of the systemd journal.
332 (substitute* "mate-session/main.c"
333 (("#ifdef HAVE_SYSTEMD") "#if 0"))
334 (substitute* "mate-session/gsm-manager.c"
335 (("#ifdef HAVE_SYSTEMD") "#if 0"))
336 (substitute* "mate-session/gsm-autostart-app.c"
337 (("#ifdef HAVE_SYSTEMD") "#if 0"))
340 `(("pkg-config" ,pkg-config)
341 ("intltool" ,intltool)
343 ("gobject-introspection" ,gobject-introspection)))
346 ("dbus-glib" ,dbus-glib)
349 ("mate-desktop" ,mate-desktop)))
350 (home-page "https://mate-desktop.org/")
351 (synopsis "Session manager for MATE")
353 "Mate-session contains the MATE session manager, as well as a
354 configuration program to choose applications starting on login.")
355 (license license:gpl2)))
357 (define-public mate-settings-daemon
359 (name "mate-settings-daemon")
364 (uri (string-append "https://pub.mate-desktop.org/releases/"
365 (version-major+minor version) "/"
366 name "-" version ".tar.xz"))
369 "07b2jkxqv07njdrgkdck93d872p6lch1lrvi7ydnpicspg3rfid6"))))
370 (build-system glib-or-gtk-build-system)
372 `(("pkg-config" ,pkg-config)
373 ("intltool" ,intltool)
374 ("gobject-introspection" ,gobject-introspection)))
378 ("dbus-glib" ,dbus-glib)
380 ("fontconfig" ,fontconfig)
382 ("libcanberra" ,libcanberra)
383 ("libmatekbd" ,libmatekbd)
384 ("libmatemixer" ,libmatemixer)
385 ("libnotify" ,libnotify)
389 ("libxklavier" ,libxklavier)
390 ("mate-desktop" ,mate-desktop)
393 ("startup-notification" ,startup-notification)))
394 (home-page "https://mate-desktop.org/")
395 (synopsis "Settings Daemon for MATE")
397 "Mate-settings-daemon is a fork of gnome-settings-daemon.")
398 (license (list license:lgpl2.1 license:gpl2))))
400 (define-public libmatemixer
402 (name "libmatemixer")
407 (uri (string-append "https://pub.mate-desktop.org/releases/"
408 (version-major+minor version) "/"
409 name "-" version ".tar.xz"))
412 "09vyxnlnalws318gsafdfi5c6jwpp92pbafn1ddlqqds23ihk4mr"))))
413 (build-system glib-or-gtk-build-system)
415 `(("pkg-config" ,pkg-config)
416 ("intltool" ,intltool)
417 ("gobject-introspection" ,gobject-introspection)))
420 ("pulseaudio" ,pulseaudio)
421 ("alsa-lib" ,alsa-lib)))
422 (home-page "https://mate-desktop.org/")
423 (synopsis "Mixer library for the MATE desktop")
425 "Libmatemixer is a mixer library for MATE desktop. It provides an abstract
426 API allowing access to mixer functionality available in the PulseAudio and ALSA
428 (license license:lgpl2.1)))
430 (define-public libmatekbd
437 (uri (string-append "https://pub.mate-desktop.org/releases/"
438 (version-major+minor version) "/"
439 name "-" version ".tar.xz"))
442 "030bl18qbjm7l92bp1bhs7v82bp8j3mv7c1j1a4gd89iz4611pq3"))))
443 (build-system glib-or-gtk-build-system)
445 `(("pkg-config" ,pkg-config)
446 ("intltool" ,intltool)
447 ("gobject-introspection" ,gobject-introspection)))
450 ("gdk-pixbuf" ,gdk-pixbuf+svg)
454 ("libxklavier" ,libxklavier)))
455 (home-page "https://mate-desktop.org/")
456 (synopsis "MATE keyboard configuration library")
458 "Libmatekbd is a keyboard configuration library for the
459 MATE desktop environment.")
460 (license license:lgpl2.1)))
462 (define-public mate-menus
468 (uri (string-append "https://pub.mate-desktop.org/releases/"
469 (version-major+minor version) "/"
470 name "-" version ".tar.xz"))
473 "05kyr37xqv6hm1rlvnqd5ng0x1n883brqynkirkk5drl56axnz7h"))))
474 (build-system gnu-build-system)
477 (modify-phases %standard-phases
479 'unpack 'fix-introspection-install-dir
480 (lambda* (#:key outputs #:allow-other-keys)
481 (let ((out (assoc-ref outputs "out")))
482 (substitute* '("configure")
483 (("`\\$PKG_CONFIG --variable=girdir gobject-introspection-1.0`")
484 (string-append "\"" out "/share/gir-1.0/\""))
485 (("\\$\\(\\$PKG_CONFIG --variable=typelibdir gobject-introspection-1.0\\)")
486 (string-append out "/lib/girepository-1.0/")))
489 `(("pkg-config" ,pkg-config)
490 ("intltool" ,intltool)
491 ("gobject-introspection" ,gobject-introspection)))
494 ("python" ,python-2)))
495 (home-page "https://mate-desktop.org/")
496 (synopsis "Freedesktop menu specification implementation for MATE")
498 "The package contains an implementation of the freedesktop menu
499 specification, the MATE menu layout configuration files, .directory files and
500 assorted menu related utility programs.")
501 (license (list license:gpl2+ license:lgpl2.0+))))
503 (define-public mate-applets
505 (name "mate-applets")
510 (uri (string-append "https://pub.mate-desktop.org/releases/"
511 (version-major+minor version) "/"
512 name "-" version ".tar.xz"))
515 "1nplr8i1mxbxd7pqhcy8j69v25nsp5dk9fq7ffrmjmp39lrf3fh5"))))
516 (build-system glib-or-gtk-build-system)
518 `(("pkg-config" ,pkg-config)
519 ("intltool" ,intltool)
521 ("yelp-tools" ,yelp-tools)
522 ("scrollkeeper" ,scrollkeeper)
523 ("gettext" ,gettext-minimal)
524 ("docbook-xml" ,docbook-xml)
525 ("gobject-introspection" ,gobject-introspection)))
529 ("dbus-glib" ,dbus-glib)
531 ("gucharmap" ,gucharmap)
533 ("gtksourceview" ,gtksourceview)
535 ("libmateweather" ,libmateweather)
536 ("libnotify" ,libnotify)
540 ("mate-panel" ,mate-panel)
542 ("polkit" ,polkit) ; either polkit or setuid
545 ("wireless-tools" ,wireless-tools)))
547 `(("python-pygobject" ,python-pygobject)))
548 (home-page "https://mate-desktop.org/")
549 (synopsis "Various applets for the MATE Panel")
551 "Mate-applets includes various small applications for Mate-panel:
554 @item accessx-status: indicates keyboard accessibility settings,
555 including the current state of the keyboard, if those features are in use.
556 @item Battstat: monitors the power subsystem on a laptop.
557 @item Character palette: provides a convenient way to access
558 non-standard characters, such as accented characters,
559 mathematical symbols, special symbols, and punctuation marks.
560 @item MATE CPUFreq Applet: CPU frequency scaling monitor
561 @item Drivemount: lets you mount and unmount drives and file systems.
562 @item Geyes: pair of eyes which follow the mouse pointer around the screen.
563 @item Keyboard layout switcher: lets you assign different keyboard
564 layouts for different locales.
565 @item Modem Monitor: monitors the modem.
566 @item Invest: downloads current stock quotes from the Internet and
567 displays the quotes in a scrolling display in the applet. The
568 applet downloads the stock information from Yahoo! Finance.
569 @item System monitor: CPU, memory, network, swap file and resource.
570 @item Trash: lets you drag items to the trash folder.
571 @item Weather report: downloads weather information from the
572 U.S National Weather Service (NWS) servers, including the
573 Interactive Weather Information Network (IWIN).
575 (license (list license:gpl2+ license:lgpl2.0+ license:gpl3+))))
577 (define-public mate-media
584 (uri (string-append "https://pub.mate-desktop.org/releases/"
585 (version-major+minor version) "/"
586 name "-" version ".tar.xz"))
589 "1l0j71d07898wb6ily09sj1xczwrmcw13wyhxwns7sxw592nwi04"))))
590 (build-system glib-or-gtk-build-system)
592 `(("pkg-config" ,pkg-config)
593 ("intltool" ,intltool)
594 ("gettext" ,gettext-minimal)
595 ("gobject-introspection" ,gobject-introspection)))
599 ("libcanberra" ,libcanberra)
600 ("libmatemixer" ,libmatemixer)
602 ("mate-applets" ,mate-applets)
603 ("mate-desktop" ,mate-desktop)
604 ("mate-panel" ,mate-panel)
606 ("startup-notification" ,startup-notification)))
607 (home-page "https://mate-desktop.org/")
608 (synopsis "Multimedia related programs for the MATE desktop")
610 "Mate-media includes the MATE media tools for MATE, including
611 mate-volume-control, a MATE volume control application and applet.")
612 (license (list license:gpl2+ license:lgpl2.0+ license:fdl1.1+))))
614 (define-public mate-panel
621 (uri (string-append "https://pub.mate-desktop.org/releases/"
622 (version-major+minor version) "/"
623 name "-" version ".tar.xz"))
626 "1n565ff1n7jrfx223i3cl3m69wjda506nvbn8gra7m1jwdfzpbw1"))))
627 (build-system glib-or-gtk-build-system)
630 (list (string-append "--with-zoneinfo-dir="
631 (assoc-ref %build-inputs "tzdata")
633 "--with-in-process-applets=all")
635 (modify-phases %standard-phases
636 (add-before 'configure 'fix-timezone-path
637 (lambda* (#:key inputs #:allow-other-keys)
638 (let* ((tzdata (assoc-ref inputs "tzdata")))
639 (substitute* "applets/clock/system-timezone.h"
640 (("/usr/share/lib/zoneinfo/tab")
641 (string-append tzdata "/share/zoneinfo/zone.tab"))
642 (("/usr/share/zoneinfo")
643 (string-append tzdata "/share/zoneinfo"))))
645 (add-after 'unpack 'fix-introspection-install-dir
646 (lambda* (#:key outputs #:allow-other-keys)
647 (let ((out (assoc-ref outputs "out")))
648 (substitute* '("configure")
649 (("`\\$PKG_CONFIG --variable=girdir gobject-introspection-1.0`")
650 (string-append "\"" out "/share/gir-1.0/\""))
651 (("\\$\\(\\$PKG_CONFIG --variable=typelibdir gobject-introspection-1.0\\)")
652 (string-append out "/lib/girepository-1.0/")))
655 `(("pkg-config" ,pkg-config)
656 ("intltool" ,intltool)
659 ("gobject-introspection" ,gobject-introspection)))
663 ("dbus-glib" ,dbus-glib)
665 ("libcanberra" ,libcanberra)
667 ("libmateweather" ,libmateweather)
673 ("libxrandr" ,libxrandr)
675 ("mate-desktop" ,mate-desktop)
676 ("mate-menus" ,mate-menus)
679 (home-page "https://mate-desktop.org/")
680 (synopsis "Panel for MATE")
682 "Mate-panel contains the MATE panel, the libmate-panel-applet library and
683 several applets. The applets supplied here include the Workspace Switcher,
684 the Window List, the Window Selector, the Notification Area, the Clock and the
685 infamous 'Wanda the Fish'.")
686 (license (list license:gpl2+ license:lgpl2.0+))))
695 (uri (string-append "https://pub.mate-desktop.org/releases/"
696 (version-major+minor version) "/"
697 name "-" version ".tar.xz"))
700 "1wl332v80c0nzz7nw36d1pfmbiibvl3l0i4d25ihg6mg9wbc0145"))))
701 (build-system glib-or-gtk-build-system)
703 `(#:configure-flags (list (string-append "--with-openjpeg="
704 (assoc-ref %build-inputs "openjpeg"))
705 "--enable-introspection"
707 "--disable-schemas-compile"
708 ;; FIXME: Enable build of Caja extensions.
712 (modify-phases %standard-phases
713 (add-after 'unpack 'fix-mathjax-path
715 (let* ((mathjax (assoc-ref %build-inputs "js-mathjax"))
716 (mathjax-path (string-append mathjax
717 "/share/javascript/mathjax")))
718 (substitute* "backend/epub/epub-document.c"
719 (("/usr/share/javascript/mathjax")
722 (add-after 'unpack 'fix-introspection-install-dir
723 (lambda* (#:key outputs #:allow-other-keys)
724 (let ((out (assoc-ref outputs "out")))
725 (substitute* '("configure")
726 (("\\$\\(\\$PKG_CONFIG --variable=girdir gobject-introspection-1.0\\)")
727 (string-append "\"" out "/share/gir-1.0/\""))
728 (("\\$\\(\\$PKG_CONFIG --variable=typelibdir gobject-introspection-1.0\\)")
729 (string-append out "/lib/girepository-1.0/")))
731 (add-before 'install 'skip-gtk-update-icon-cache
732 ;; Don't create 'icon-theme.cache'.
734 (substitute* "data/Makefile"
735 (("gtk-update-icon-cache") "true"))
738 `(("pkg-config" ,pkg-config)
739 ("intltool" ,intltool)
741 ("yelp-tools" ,yelp-tools)
742 ("glib:bin" ,glib "bin")
743 ("gobject-introspection" ,gobject-introspection)
753 ("dbus-glib" ,dbus-glib)
754 ("djvulibre" ,djvulibre)
755 ("fontconfig" ,fontconfig)
756 ("freetype" ,freetype)
757 ("ghostscript" ,ghostscript)
760 ("js-mathjax" ,js-mathjax)
761 ("libcanberra" ,libcanberra)
762 ("libsecret" ,libsecret)
763 ("libspectre" ,libspectre)
771 ("dogtail" ,python2-dogtail)
772 ("shared-mime-info" ,shared-mime-info)
773 ("gdk-pixbuf" ,gdk-pixbuf)
774 ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
775 ("libgnome-keyring" ,libgnome-keyring)
776 ("libarchive" ,libarchive)
779 ("openjpeg" ,openjpeg-1)
781 ;;("texlive" ,texlive)
783 ;; Build libkpathsea as a shared library for DVI support.
784 ;; ("libkpathsea" ,texlive-bin)
786 ("webkitgtk" ,webkitgtk)))
787 (home-page "https://mate-desktop.org")
788 (synopsis "Document viewer for Mate")
790 "Document viewer for Mate")
791 (license license:gpl2)))
800 (uri (string-append "https://pub.mate-desktop.org/releases/"
801 (version-major+minor version) "/"
802 name "-" version ".tar.xz"))
805 "0mljqcx7k8p27854zm7qzzn8ca6hs7hva9p43hp4p507z52caqmm"))))
806 (build-system glib-or-gtk-build-system)
808 `(#:configure-flags '("--disable-update-mimedb")
809 #:tests? #f ; tests fail even with display set
811 (modify-phases %standard-phases
812 (add-before 'check 'pre-check
814 ;; Tests require a running X server.
816 (setenv "DISPLAY" ":1")
817 ;; For the missing /etc/machine-id.
818 (setenv "DBUS_FATAL_WARNINGS" "0")
821 `(("pkg-config" ,pkg-config)
822 ("intltool" ,intltool)
823 ("glib:bin" ,glib "bin")
824 ("xorg-server" ,xorg-server)
825 ("gobject-introspection" ,gobject-introspection)))
831 ("libnotify" ,libnotify)
834 ("mate-desktop" ,mate-desktop)
835 ("startup-notification" ,startup-notification)))
837 (list (search-path-specification
838 (variable "CAJA_EXTENSIONDIR")
839 (files (list "lib/caja/extensions-2.0/**")))))
840 (home-page "https://mate-desktop.org/")
841 (synopsis "File manager for the MATE desktop")
843 "Caja is the official file manager for the MATE desktop.
844 It allows for browsing directories, as well as previewing files and launching
845 applications associated with them. Caja is also responsible for handling the
846 icons on the MATE desktop. It works on local and remote file systems.")
847 ;; There is a note about a TRADEMARKS_NOTICE file in COPYING which
848 ;; does not exist. It is safe to assume that this is of no concern
850 (license license:gpl2+)))
852 (define-public caja-extensions
854 (name "caja-extensions")
859 (uri (string-append "https://pub.mate-desktop.org/releases/"
860 (version-major+minor version) "/"
861 name "-" version ".tar.xz"))
864 "0hgala7zkfsa60jflq3s4n9yd11dhfdcla40l83cmgc3r1az7cmw"))))
865 (build-system glib-or-gtk-build-system)
867 `(#:configure-flags (list "--enable-sendto"
868 ;; TODO: package "gupnp" to enable 'upnp', package
869 ;; "gksu" to enable 'gksu'.
870 (string-append "--with-sendto-plugins=removable-devices,"
871 "caja-burn,emailclient,pidgin,gajim")
872 "--enable-image-converter"
873 "--enable-open-terminal" "--enable-share"
874 "--enable-wallpaper" "--enable-xattr-tags"
875 (string-append "--with-cajadir="
876 (assoc-ref %outputs "out")
877 "/lib/caja/extensions-2.0/"))))
879 `(("intltool" ,intltool)
880 ("gettext" ,gettext-minimal)
881 ("glib:bin" ,glib "bin")
882 ("gobject-introspection" ,gobject-introspection)
884 ("pkg-config" ,pkg-config)))
890 ("dbus-glib" ,dbus-glib)
891 ("gajim" ,gajim) ;runtime only?
893 ("imagemagick" ,imagemagick)
894 ("graphicsmagick" ,graphicsmagick)
895 ("mate-desktop" ,mate-desktop)
896 ("pidgin" ,pidgin) ;runtime only?
897 ("startup-notification" ,startup-notification)))
898 (home-page "https://mate-desktop.org/")
899 (synopsis "Extensions for the File manager Caja")
901 "Caja is the official file manager for the MATE desktop.
902 It allows for browsing directories, as well as previewing files and launching
903 applications associated with them. Caja is also responsible for handling the
904 icons on the MATE desktop. It works on local and remote file systems.")
905 (license license:gpl2+)))
907 (define-public mate-control-center
909 (name "mate-control-center")
914 (uri (string-append "https://pub.mate-desktop.org/releases/"
915 (version-major+minor version) "/"
916 name "-" version ".tar.xz"))
919 "0flnn0h8f5aqyccwrlv7qxchvr3kqmlfdga6wq28d55zkpv5m7dl"))))
920 (build-system glib-or-gtk-build-system)
922 `(("pkg-config" ,pkg-config)
923 ("intltool" ,intltool)
924 ("yelp-tools" ,yelp-tools)
925 ("desktop-file-utils" ,desktop-file-utils)
926 ("xorgproto" ,xorgproto)
928 ("gobject-introspection" ,gobject-introspection)))
935 ("dbus-glib" ,dbus-glib)
936 ("fontconfig" ,fontconfig)
937 ("freetype" ,freetype)
940 ("libcanberra" ,libcanberra)
941 ("libmatekbd" ,libmatekbd)
943 ("libxcursor" ,libxcursor)
946 ("libxklavier" ,libxklavier)
948 ("libxrandr" ,libxrandr)
949 ("libxrender" ,libxrender)
950 ("libxscrnsaver" ,libxscrnsaver)
952 ("mate-desktop" ,mate-desktop)
953 ("mate-menus" ,mate-menus)
954 ("mate-settings-daemon" ,mate-settings-daemon)
956 ("startup-notification" ,startup-notification)))
958 `(("gdk-pixbuf" ,gdk-pixbuf+svg) ; mate-slab.pc
959 ("librsvg" ,librsvg))) ; mate-slab.pc
960 (home-page "https://mate-desktop.org/")
961 (synopsis "MATE Desktop configuration tool")
963 "MATE control center is MATE's main interface for configuration
964 of various aspects of your desktop.")
965 (license license:gpl2+)))
974 (uri (string-append "https://pub.mate-desktop.org/releases/"
975 (version-major+minor version) "/"
976 name "-" version ".tar.xz"))
979 "0lwbp9wyd66hl5d7g272l8g3k1pb9s4s2p9fb04750a58w87d8k5"))))
980 (build-system glib-or-gtk-build-system)
982 `(("pkg-config" ,pkg-config)
983 ("intltool" ,intltool)
986 ("gobject-introspection" ,gobject-introspection)
992 ("libcanberra" ,libcanberra)
997 ("libxcomposite" ,libxcomposite)
998 ("libxcursor" ,libxcursor)
999 ("libxdamage" ,libxdamage)
1000 ("libxext" ,libxext)
1001 ("libxfixes" ,libxfixes)
1002 ("libxinerama" ,libxinerama)
1003 ("libxrandr" ,libxrandr)
1004 ("libxrender" ,libxrender)
1005 ("mate-desktop" ,mate-desktop)
1007 ("startup-notification" ,startup-notification)))
1008 (home-page "https://mate-desktop.org/")
1009 (synopsis "Window manager for the MATE desktop")
1011 "Marco is a minimal X window manager that uses GTK+ for drawing
1012 window frames. It is aimed at non-technical users and is designed to integrate
1013 well with the MATE desktop. It lacks some features that may be expected by
1014 some users; these users may want to investigate other available window managers
1015 for use with MATE or as a standalone window manager.")
1016 (license license:gpl2+)))
1018 (define-public mate-user-guide
1020 (name "mate-user-guide")
1025 (uri (string-append "https://pub.mate-desktop.org/releases/"
1026 (version-major+minor version) "/"
1027 name "-" version ".tar.xz"))
1030 "0f3b46r9a3cywm7rpj08xlkfnlfr9db58xfcpix8i33qp50fxqmb"))))
1031 (build-system gnu-build-system)
1034 (modify-phases %standard-phases
1035 (add-after 'unpack 'adjust-desktop-file
1036 (lambda* (#:key inputs #:allow-other-keys)
1037 (let* ((yelp (assoc-ref inputs "yelp")))
1038 (substitute* "mate-user-guide.desktop.in.in"
1040 (string-append yelp "/bin/yelp"))))
1043 `(("pkg-config" ,pkg-config)
1044 ("intltool" ,intltool)
1045 ("gettext" ,gettext-minimal)
1046 ("yelp-tools" ,yelp-tools)
1047 ("yelp-xsl" ,yelp-xsl)))
1050 (home-page "https://mate-desktop.org/")
1051 (synopsis "User Documentation for Mate software")
1053 "MATE User Guide is a collection of documentation which details
1054 general use of the MATE Desktop environment. Topics covered include
1055 sessions, panels, menus, file management, and preferences.")
1056 (license (list license:fdl1.1+ license:gpl2+))))
1058 (define-public mate-calc
1065 (uri (string-append "https://pub.mate-desktop.org/releases/"
1066 (version-major+minor version) "/"
1067 name "-" version ".tar.xz"))
1070 "0qfs6kx2nymbn6j3mnzgvk8p54ghc78jslsf4wjqsdq021qyl0ly"))))
1071 (build-system glib-or-gtk-build-system)
1073 `(("gettext" ,gettext-minimal)
1074 ("intltool" ,intltool)
1075 ("pkg-config" ,pkg-config)
1076 ("yelp-tools" ,yelp-tools)))
1081 ("libxml2" ,libxml2)
1082 ("libcanberra" ,libcanberra)
1084 (home-page "https://mate-desktop.org/")
1085 (synopsis "Calculator for MATE")
1087 "Mate Calc is the GTK+ calculator application for the MATE Desktop.")
1088 (license license:gpl2+)))
1090 (define-public mate-backgrounds
1092 (name "mate-backgrounds")
1097 (uri (string-append "https://pub.mate-desktop.org/releases/"
1098 (version-major+minor version) "/"
1099 name "-" version ".tar.xz"))
1102 "06q8ksjisijps2wn959arywsimhzd3j35mqkr048c26ck24d60zi"))))
1103 (build-system glib-or-gtk-build-system)
1105 `(("intltool" ,intltool)))
1106 (home-page "https://mate-desktop.org/")
1107 (synopsis "Calculator for MATE")
1109 "This package contains a collection of graphics files which
1110 can be used as backgrounds in the MATE Desktop environment.")
1111 (license license:gpl2+)))
1113 (define-public mate-netbook
1115 (name "mate-netbook")
1120 (uri (string-append "https://pub.mate-desktop.org/releases/"
1121 (version-major+minor version) "/"
1122 name "-" version ".tar.xz"))
1125 "0zj4x9qis8dw0irxzb4va1189k8bqbvymxq3h7phnjwvr1m983gf"))))
1126 (build-system glib-or-gtk-build-system)
1128 `(("gettext" ,gettext-minimal)
1129 ("intltool" ,intltool)
1130 ("pkg-config" ,pkg-config)))
1135 ("libfakekey" ,libfakekey)
1136 ("libwnck" ,libwnck)
1137 ("libxtst" ,libxtst)
1139 ("mate-panel" ,mate-panel)
1140 ("xorgproto" ,xorgproto)))
1141 (home-page "https://mate-desktop.org/")
1142 (synopsis "Tool for MATE on Netbooks")
1144 "Mate Netbook is a simple window management tool which:
1147 @item Allows you to set basic rules for a window type, such as maximise|undecorate
1148 @item Allows exceptions to the rules, based on string matching for window name
1150 @item Allows 'reversing' of rules when the user manually changes something:
1151 Re-decorates windows on un-maximise.
1153 (license license:gpl3+)))
1155 (define-public mate-screensaver
1157 (name "mate-screensaver")
1162 (uri (string-append "https://pub.mate-desktop.org/releases/"
1163 (version-major+minor version) "/"
1164 name "-" version ".tar.xz"))
1167 "0dfi10faf1fnvrm7c7wnfqg35ygq09ws1vjyv8394jlf0nn39g9j"))))
1168 (build-system glib-or-gtk-build-system)
1171 ;; FIXME: There is a permissions problem with screen locking
1172 ;; which effectively locks you out completely. Enable locking
1173 ;; once this has been fixed.
1174 (list "--enable-locking" "--with-kbd-layout-indicator"
1175 "--with-xf86gamma-ext" "--enable-pam"
1176 "--disable-schemas-compile" "--without-console-kit")
1178 (modify-phases %standard-phases
1179 (add-after 'unpack 'autoconf
1180 (lambda* (#:key outputs #:allow-other-keys)
1181 (let* ((out (assoc-ref outputs "out"))
1182 (dbus-dir (string-append out "/share/dbus-1/services")))
1183 (setenv "SHELL" (which "sh"))
1184 (setenv "CONFIG_SHELL" (which "sh"))
1185 (substitute* "configure"
1186 (("dbus-1") ""))))))))
1188 `(("automake" ,automake)
1189 ("autoconf" ,autoconf-wrapper)
1190 ("gettext" ,gettext-minimal)
1191 ("intltool" ,intltool)
1192 ("mate-common" ,mate-common)
1193 ("pkg-config" ,pkg-config)
1195 ("xorgproto" ,xorgproto)))
1200 ("dbus-glib" ,dbus-glib)
1203 ("gdk-pixbuf" ,gdk-pixbuf+svg)
1204 ("libcanberra" ,libcanberra)
1205 ("libglade" ,libglade)
1206 ("libmatekbd" ,libmatekbd)
1207 ("libnotify" ,libnotify)
1209 ("libxext" ,libxext)
1210 ("libxklavier" ,libxklavier)
1211 ("libxrandr" ,libxrandr)
1212 ("libxrender" ,libxrender)
1213 ("libxscrnsaver" ,libxscrnsaver)
1214 ("libxxf86vm" ,libxxf86vm)
1215 ("linux-pam" ,linux-pam)
1216 ("mate-desktop" ,mate-desktop)
1217 ("mate-menus" ,mate-menus)
1219 ("startup-notification" ,startup-notification)))
1220 (home-page "https://mate-desktop.org/")
1221 (synopsis "Screensaver for MATE")
1223 "MATE backgrounds package contains a collection of graphics files which
1224 can be used as backgrounds in the MATE Desktop environment.")
1225 (license license:gpl2+)))
1227 (define-public mate-utils
1234 (uri (string-append "https://pub.mate-desktop.org/releases/"
1235 (version-major+minor version) "/"
1236 name "-" version ".tar.xz"))
1239 "0wr395dqfigj19ps0d76ycgwfljl9xxgs1a1g5wx6kcz5mvhzn5v"))))
1240 (build-system glib-or-gtk-build-system)
1242 `(("gettext" ,gettext-minimal)
1243 ("gtk-doc" ,gtk-doc)
1244 ("intltool" ,intltool)
1247 ("pkg-config" ,pkg-config)
1248 ("scrollkeeper" ,scrollkeeper)
1249 ("xorgproto" ,xorgproto)
1250 ("yelp-tools" ,yelp-tools)))
1256 ("gdk-pixbuf" ,gdk-pixbuf+svg)
1257 ("libcanberra" ,libcanberra)
1258 ("libgtop" ,libgtop)
1260 ("libxext" ,libxext)
1261 ("mate-panel" ,mate-panel)
1264 (home-page "https://mate-desktop.org/")
1265 (synopsis "Utilities for the MATE Desktop")
1267 "Mate Utilities for the MATE Desktop containing:
1270 @item mate-system-log
1271 @item mate-search-tool
1272 @item mate-dictionary
1273 @item mate-screenshot
1274 @item mate-disk-usage-analyzer
1276 (license (list license:gpl2
1287 (uri (string-append "https://pub.mate-desktop.org/releases/"
1288 (version-major+minor version) "/"
1289 name "-" version ".tar.xz"))
1292 "00ns7g7qykakc89lijrw2vwy9x9ijqiyvmnd4sw0j6py90zs8m87"))))
1293 (build-system glib-or-gtk-build-system)
1295 `(("gettext" ,gettext-minimal)
1296 ("gtk-doc" ,gtk-doc)
1297 ("gobject-introspection" ,gobject-introspection)
1298 ("intltool" ,intltool)
1299 ("pkg-config" ,pkg-config)
1300 ("yelp-tools" ,yelp-tools)))
1306 ("dbus-glib" ,dbus-glib)
1310 ("gdk-pixbuf" ,gdk-pixbuf+svg)
1311 ("libcanberra" ,libcanberra)
1313 ("libxext" ,libxext)
1314 ("libpeas" ,libpeas)
1315 ("libxml2" ,libxml2)
1316 ("libexif" ,libexif)
1317 ("libjpeg" ,libjpeg)
1318 ("librsvg" ,librsvg)
1320 ("mate-desktop" ,mate-desktop)
1322 ("shared-mime-info" ,shared-mime-info)
1323 ("startup-notification" ,startup-notification)
1325 (home-page "https://mate-desktop.org/")
1326 (synopsis "Eye of MATE")
1328 "Eye of MATE is the Image viewer for the MATE Desktop.")
1329 (license (list license:gpl2))))
1331 (define-public engrampa
1338 (uri (string-append "https://pub.mate-desktop.org/releases/"
1339 (version-major+minor version) "/"
1340 name "-" version ".tar.xz"))
1343 "0d98zhqqc7qdnxcf0195kd04xmhijc0w2qrn6q61zd0daiswnv98"))))
1344 (build-system glib-or-gtk-build-system)
1346 `(#:configure-flags (list "--disable-schemas-compile"
1347 "--disable-run-in-place"
1349 "--enable-packagekit"
1350 (string-append "--with-cajadir="
1351 (assoc-ref %outputs "out")
1352 "/lib/caja/extensions-2.0/"))
1354 (modify-phases %standard-phases
1355 (add-before 'install 'skip-gtk-update-icon-cache
1356 ;; Don't create 'icon-theme.cache'.
1358 (substitute* "data/Makefile"
1359 (("gtk-update-icon-cache") "true"))
1362 `(("gettext" ,gettext-minimal)
1363 ("gtk-doc" ,gtk-doc)
1364 ("intltool" ,intltool)
1365 ("pkg-config" ,pkg-config)
1366 ("yelp-tools" ,yelp-tools)))
1372 ("gdk-pixbuf" ,gdk-pixbuf+svg)
1373 ("json-glib" ,json-glib)
1374 ("libcanberra" ,libcanberra)
1377 ("packagekit" ,packagekit)
1379 (home-page "https://mate-desktop.org/")
1380 (synopsis "Archive Manager for MATE")
1382 "Engrampa is the archive manager for the MATE Desktop.")
1383 (license license:gpl2)))
1385 (define-public pluma
1392 (uri (string-append "https://pub.mate-desktop.org/releases/"
1393 (version-major+minor version) "/"
1394 name "-" version ".tar.xz"))
1397 "1z0938yiygxipj2a77n9dv8v4253snrc5gbbnarcnim9xba2j3zz"))))
1398 (build-system glib-or-gtk-build-system)
1400 `(; Tests can not succeed.
1401 ;; https://github.com/mate-desktop/mate-text-editor/issues/33
1404 `(("gettext" ,gettext-minimal)
1405 ("gtk-doc" ,gtk-doc)
1406 ("gobject-introspection" ,gobject-introspection)
1407 ("intltool" ,intltool)
1408 ("libtool" ,libtool)
1409 ("pkg-config" ,pkg-config)
1410 ("yelp-tools" ,yelp-tools)))
1414 ("enchant" ,enchant)
1417 ("gtksourceview" ,gtksourceview)
1418 ("gdk-pixbuf" ,gdk-pixbuf)
1419 ("iso-codes" ,iso-codes)
1420 ("libcanberra" ,libcanberra)
1423 ("libpeas" ,libpeas)
1424 ("libxml2" ,libxml2)
1426 ("packagekit" ,packagekit)
1428 ("python-2" ,python-2)
1429 ("scrollkeeper" ,scrollkeeper)))
1430 (home-page "https://mate-desktop.org/")
1431 (synopsis "Text Editor for MATE")
1433 "Pluma is the text editor for the MATE Desktop.")
1434 (license license:gpl2)))
1436 (define-public mate-system-monitor
1438 (name "mate-system-monitor")
1443 (uri (string-append "https://pub.mate-desktop.org/releases/"
1444 (version-major+minor version) "/"
1445 name "-" version ".tar.xz"))
1448 "1wcvrl4lfnjkhywb311p29prf1qiab6iynb6q1fgfsl6za8hsz48"))))
1449 (build-system glib-or-gtk-build-system)
1451 `(("autoconf" ,autoconf)
1452 ("gettext" ,gettext-minimal)
1453 ("intltool" ,intltool)
1454 ("pkg-config" ,pkg-config)
1455 ("yelp-tools" ,yelp-tools)))
1462 ("gdk-pixbuf" ,gdk-pixbuf)
1463 ("libsigc++" ,libsigc++)
1464 ("libcanberra" ,libcanberra)
1465 ("libxml2" ,libxml2)
1466 ("libwnck" ,libwnck)
1467 ("libgtop" ,libgtop)
1468 ("librsvg" ,librsvg)
1469 ("polkit" ,polkit)))
1470 (home-page "https://mate-desktop.org/")
1471 (synopsis "System Monitor for MATE")
1473 "Mate System Monitor provides a tool for for the
1474 MATE Desktop to monitor your system resources and usage.")
1475 (license license:gpl2)))
1477 (define-public mate-polkit
1479 (name "mate-polkit")
1484 (uri (string-append "https://pub.mate-desktop.org/releases/"
1485 (version-major+minor version) "/"
1486 name "-" version ".tar.xz"))
1489 "15vf2hnyjg8zsw3iiwjwi497yygkmvpnn6w1hik7dfw4a621w0gc"))))
1490 (build-system glib-or-gtk-build-system)
1492 `(("gettext" ,gettext-minimal)
1493 ("gtk-doc" ,gtk-doc)
1494 ("intltool" ,intltool)
1495 ("libtool" ,libtool)
1496 ("pkg-config" ,pkg-config)))
1498 `(("accountsservice" ,accountsservice)
1500 ("gobject-introspection" ,gobject-introspection)
1502 ("gdk-pixbuf" ,gdk-pixbuf)
1503 ("polkit" ,polkit)))
1504 (home-page "https://mate-desktop.org/")
1505 (synopsis "DBus specific service for MATE")
1507 "MATE Polkit is a MATE specific DBUS service that is
1508 used to bring up authentication dialogs.")
1509 (license license:lgpl2.1)))
1514 (version (package-version mate-desktop))
1516 (build-system trivial-build-system)
1518 `(#:modules ((guix build union))
1521 (use-modules (ice-9 match)
1523 (match %build-inputs
1524 (((names . directories) ...)
1525 (union-build (assoc-ref %outputs "out")
1529 ;; TODO: Add more packages
1530 `(("at-spi2-core" ,at-spi2-core)
1535 ("desktop-file-utils" ,desktop-file-utils)
1536 ("engrampa" ,engrampa)
1538 ("font-cantarell" ,font-cantarell)
1539 ("glib-networking" ,glib-networking)
1540 ("gnome-keyring" ,gnome-keyring)
1542 ("hicolor-icon-theme" ,hicolor-icon-theme)
1543 ("libmatekbd" ,libmatekbd)
1544 ("libmateweather" ,libmateweather)
1545 ("libmatemixer" ,libmatemixer)
1547 ("mate-session-manager" ,mate-session-manager)
1548 ("mate-settings-daemon" ,mate-settings-daemon)
1549 ("mate-desktop" ,mate-desktop)
1550 ("mate-terminal" ,mate-terminal)
1551 ("mate-themes" ,mate-themes)
1552 ("mate-icon-theme" ,mate-icon-theme)
1553 ("mate-menu" ,mate-menus)
1554 ("mate-panel" ,mate-panel)
1555 ("mate-control-center" ,mate-control-center)
1556 ("mate-media" ,mate-media)
1557 ("mate-applets" ,mate-applets)
1558 ("mate-user-guide" ,mate-user-guide)
1559 ("mate-calc" ,mate-calc)
1560 ("mate-backgrounds" ,mate-backgrounds)
1561 ("mate-netbook" ,mate-netbook)
1562 ("mate-utils" ,mate-utils)
1563 ("mate-polkit" ,mate-polkit)
1564 ("mate-system-monitor" ,mate-system-monitor)
1565 ("mate-utils" ,mate-utils)
1567 ("pinentry-gnome3" ,pinentry-gnome3)
1568 ("pulseaudio" ,pulseaudio)
1569 ("shared-mime-info" ,shared-mime-info)
1571 ("zenity" ,zenity)))
1572 (synopsis "The MATE desktop environment")
1573 (home-page "https://mate-desktop.org/")
1575 "The MATE Desktop Environment is the continuation of GNOME 2. It provides
1576 an intuitive and attractive desktop environment using traditional metaphors for
1577 GNU/Linux systems. MATE is under active development to add support for new
1578 technologies while preserving a traditional desktop experience.")
1579 (license license:gpl2+)))