[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#44029] [PATCH 4/4] services: Add LXQt desktop service.
From: |
Reza Alizadeh Majd |
Subject: |
[bug#44029] [PATCH 4/4] services: Add LXQt desktop service. |
Date: |
Fri, 16 Oct 2020 14:49:24 +0330 |
* gnu/services/desktop.scm (<lxqt-desktop-configuration>,
lxqt-desktop-configuration?, lxqt-desktop-service-type,
lxqt-desktop-service): New variables.
---
gnu/services/desktop.scm | 43 ++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index bdbea5dddf..416f50e417 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -53,6 +53,7 @@
#:use-module (gnu packages suckless)
#:use-module (gnu packages linux)
#:use-module (gnu packages libusb)
+ #:use-module (gnu packages lxqt)
#:use-module (gnu packages mate)
#:use-module (gnu packages enlightenment)
#:use-module (guix deprecation)
@@ -131,6 +132,11 @@
xfce-desktop-service
xfce-desktop-service-type
+ lxqt-desktop-configuration
+ lxqt-desktop-configuration?
+ lxqt-desktop-service
+ lxqt-desktop-service-type
+
x11-socket-directory-service
enlightenment-desktop-configuration
@@ -1004,6 +1010,43 @@ system as root from within a user session, after the
user has authenticated
with the administrator's password."
(service xfce-desktop-service-type config))
+
+;;;
+;;; Lxqt desktop service.
+;;;
+
+(define-record-type* <lxqt-desktop-configuration> lxqt-desktop-configuration
+ make-lxqt-desktop-configuration
+ lxqt-desktop-configuration?
+ (lxqt lxqt-package
+ (default lxqt)))
+
+(define (lxqt-polkit-settings config)
+ "Return the list of LXQt dependencies that provide polkit actions and
+rules."
+ (let ((lxqt (lxqt-package config)))
+ (map (lambda (name)
+ ((package-direct-input-selector name) lxqt))
+ '("lxqt-admin"))))
+
+(define lxqt-desktop-service-type
+ (service-type
+ (name 'lxqt-desktop)
+ (extensions
+ (list (service-extension polkit-service-type
+ lxqt-polkit-settings)
+ (service-extension profile-service-type
+ (compose list lxqt-package))))
+ (default-value (lxqt-desktop-configuration))
+ (description "Run LXQt desktop environment.")))
+
+(define-deprecated (lxqt-desktop-service #:key (config
+ (lxqt-desktop-configuration)))
+ lxqt-desktop-service-type
+ "Return a service that adds the @code{lxqt} package to the system profile,
+and extends polkit with the actions from @code{lxqt-admin}."
+ (service lxqt-desktop-service-type config))
+
;;;
;;; X11 socket directory service
--
2.28.0