diff options
author | ng0 <ng0@infotropique.org> | 2017-12-30 22:52:54 +0100 |
---|---|---|
committer | Danny Milosavljevic <dannym@scratchpost.org> | 2017-12-30 22:55:26 +0100 |
commit | 431703ffd022e77c50e09ceedfa110a7eb7e4ee5 (patch) | |
tree | 70e5182b827b126ab89396bf32d95e71c63cb17e /gnu/services | |
parent | 6ce4fc69f5c7a7b60934908e27e9de5c35b66228 (diff) | |
download | guix-431703ffd022e77c50e09ceedfa110a7eb7e4ee5.tar.gz |
gnu: services: Add MATE desktop service.
* gnu/services/desktop.scm (<mate-desktop-configuration>, mate-desktop-service-type): New variable. (mate-desktop-service): New public variable. * doc/guix.texi (Desktop Services): Document the service. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
Diffstat (limited to 'gnu/services')
-rw-r--r-- | gnu/services/desktop.scm | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 78530b3454..64b999caba 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2017 ng0 <ng0@infotropique.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,6 +43,7 @@ #:use-module (gnu packages suckless) #:use-module (gnu packages linux) #:use-module (gnu packages libusb) + #:use-module (gnu packages mate) #:use-module (guix records) #:use-module (guix packages) #:use-module (guix store) @@ -82,6 +84,11 @@ gnome-desktop-service gnome-desktop-service-type + mate-desktop-configuration + mate-desktop-configuration? + mate-desktop-service + mate-desktop-service-type + xfce-desktop-configuration xfce-desktop-configuration? xfce-desktop-service @@ -817,6 +824,32 @@ rules." and extends polkit with the actions from @code{gnome-settings-daemon}." (service gnome-desktop-service-type config)) +;; MATE Desktop service. +;; TODO: Add mate-screensaver. + +(define-record-type* <mate-desktop-configuration> mate-desktop-configuration + make-mate-desktop-configuration + mate-desktop-configuration + (mate-package mate-package (default mate))) + +(define mate-desktop-service-type + (service-type + (name 'mate-desktop) + (extensions + (list (service-extension polkit-service-type + (compose list + (package-direct-input-selector + "mate-settings-daemon") + mate-package)) + (service-extension profile-service-type + (compose list + mate-package)))))) + +(define* (mate-desktop-service #:key (config (mate-desktop-configuration))) + "Return a service that adds the @code{mate} package to the system profile, +and extends polkit with the actions from @code{mate-settings-daemon}." + (service mate-desktop-service-type config)) + ;;; ;;; XFCE desktop service. |