services: Add sugar-desktop-service-type.
* gnu/services/desktop.scm (sugar-desktop-service-type): New variable. (sugar-polkit-settings, sugar-desktop-configuration, make-sugar-desktop-configuration, sugar-desktop-configuration?, sugar-package): New procedures. (<sugar-desktop-configuration>): New record. * doc/guix.texi (Desktop Services): Document it.master
parent
93fb9cb02f
commit
6118c1e228
|
@ -30,7 +30,7 @@ Copyright @copyright{} 2015, 2016 Mathieu Lirzin@*
|
|||
Copyright @copyright{} 2014 Pierre-Antoine Rault@*
|
||||
Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@*
|
||||
Copyright @copyright{} 2015, 2016, 2017, 2019, 2020, 2021, 2023 Leo Famulari@*
|
||||
Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus@*
|
||||
Copyright @copyright{} 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Ricardo Wurmus@*
|
||||
Copyright @copyright{} 2016 Ben Woodcroft@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2021 Chris Marusich@*
|
||||
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner@*
|
||||
|
@ -23180,6 +23180,26 @@ The LXQT package to use.
|
|||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvar sugar-desktop-service-type
|
||||
This is the type of the service that runs the
|
||||
@uref{https://www.sugarlabs.org, Sugar desktop environment}. Its value
|
||||
is a @code{sugar-desktop-configuration} object (see below).
|
||||
|
||||
This service adds the @code{sugar} package to the system profile. It
|
||||
does not install any Sugar Activity. Add packages providing activities
|
||||
to the list of packages to be installed globally to make them available
|
||||
to users of the Sugar desktop environment.
|
||||
@end defvar
|
||||
|
||||
@deftp {Data Type} sugar-desktop-configuration
|
||||
Configuration record for the Sugar desktop environment.
|
||||
|
||||
@table @asis
|
||||
@item @code{sugar} (default: @code{sugar})
|
||||
The Sugar package to use.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvar enlightenment-desktop-service-type
|
||||
Return a service that adds the @code{enlightenment} package to the system
|
||||
profile, and extends dbus with actions from @code{efl}.
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
;;; Copyright © 2017, 2020, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2017 Nikita <nikita@n0.is>
|
||||
;;; Copyright © 2018, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018, 2023 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
|
||||
;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
|
||||
;;; Copyright © 2019 David Wilson <david@daviwil.com>
|
||||
|
@ -59,6 +59,7 @@
|
|||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages scanner)
|
||||
#:use-module (gnu packages suckless)
|
||||
#:use-module (gnu packages sugar)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages lxqt)
|
||||
|
@ -144,6 +145,10 @@
|
|||
lxqt-desktop-configuration?
|
||||
lxqt-desktop-service-type
|
||||
|
||||
sugar-desktop-configuration
|
||||
sugar-desktop-configuration?
|
||||
sugar-desktop-service-type
|
||||
|
||||
xfce-desktop-configuration
|
||||
xfce-desktop-configuration?
|
||||
xfce-desktop-service
|
||||
|
@ -1517,6 +1522,31 @@ rules."
|
|||
(default-value (lxqt-desktop-configuration))
|
||||
(description "Run LXQt desktop environment.")))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Sugar desktop service.
|
||||
;;;
|
||||
|
||||
(define-record-type* <sugar-desktop-configuration> sugar-desktop-configuration
|
||||
make-sugar-desktop-configuration
|
||||
sugar-desktop-configuration?
|
||||
(sugar sugar-package (default sugar)))
|
||||
|
||||
(define (sugar-polkit-settings config)
|
||||
"Return the list of packages that provide polkit actions and rules."
|
||||
(list (sugar-package config)))
|
||||
|
||||
(define sugar-desktop-service-type
|
||||
(service-type
|
||||
(name 'sugar-desktop)
|
||||
(extensions
|
||||
(list (service-extension polkit-service-type
|
||||
sugar-polkit-settings)
|
||||
(service-extension profile-service-type
|
||||
(compose list sugar-package))))
|
||||
(default-value (sugar-desktop-configuration))
|
||||
(description "Run the Sugar desktop environment.")))
|
||||
|
||||
|
||||
;;;
|
||||
;;; X11 socket directory service
|
||||
|
|
Reference in New Issue