[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/08: gnu: Add AccountsService service to desktop services.
From: |
Andy Wingo |
Subject: |
02/08: gnu: Add AccountsService service to desktop services. |
Date: |
Fri, 25 Aug 2017 10:02:48 -0400 (EDT) |
wingo pushed a commit to branch master
in repository guix.
commit 063c6082619d13ed10a448ad3d84025921c0fdea
Author: Andy Wingo <address@hidden>
Date: Tue Aug 22 14:20:48 2017 +0200
gnu: Add AccountsService service to desktop services.
* doc/guix.texi (Desktop Services): Add accountsservice-service.
* gnu/services/desktop.scm (%accountsservice-activation):
(accountsservice-service-type): New public variables.
(%desktop-services): Add accountsservice-service.
---
doc/guix.texi | 29 +++++++++++++++++++++--------
gnu/services/desktop.scm | 31 +++++++++++++++++++++++++++++++
2 files changed, 52 insertions(+), 8 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index 954ff90..e8b4d5e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -11572,14 +11572,14 @@ This is a list of services that builds upon
@var{%base-services} and
adds or adjusts services for a typical ``desktop'' setup.
In particular, it adds a graphical login manager (@pxref{X Window,
address@hidden), screen lockers,
-a network management tool (@pxref{Networking
-Services, @code{wicd-service}}), energy and color management services,
-the @code{elogind} login and seat manager, the Polkit privilege service,
-the GeoClue location service, an NTP client (@pxref{Networking
-Services}), the Avahi daemon, and has the name service switch service
-configured to be able to use @code{nss-mdns} (@pxref{Name Service
-Switch, mDNS}).
address@hidden), screen lockers, a network management tool
+(@pxref{Networking Services, @code{wicd-service}}), energy and color
+management services, the @code{elogind} login and seat manager, the
+Polkit privilege service, the GeoClue location service, the
+AccountsService daemon that allows authorized users change system
+passwords, an NTP client (@pxref{Networking Services}), the Avahi
+daemon, and has the name service switch service configured to be able to
+use @code{nss-mdns} (@pxref{Name Service Switch, mDNS}).
@end defvr
The @var{%desktop-services} variable can be used as the @code{services}
@@ -11722,6 +11722,19 @@ their default values are:
@end table
@end deffn
address@hidden {Scheme Procedure} accountsservice-service @
+ [#:accountsservice @var{accountsservice}]
+Return a service that runs AccountsService, a system service that can
+list available accounts, change their passwords, and so on.
+AccountsService integrates with PolicyKit to enable unprivileged users
+to acquire the capability to modify their system configuration.
address@hidden://www.freedesktop.org/wiki/Software/AccountsService/, the
+accountsservice web site} for more information.
+
+The @var{accountsservice} keyword argument is the @code{accountsservice}
+package to expose as a service.
address@hidden deffn
+
@deffn {Scheme Procedure} polkit-service @
[#:polkit @var{polkit}]
Return a service that runs the
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 50a561b..0509bd8 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -73,6 +73,9 @@
elogind-service
elogind-service-type
+ accountsservice-service-type
+ accountsservice-service
+
gnome-desktop-configuration
gnome-desktop-configuration?
gnome-desktop-service
@@ -705,6 +708,33 @@ when they log out."
;;;
+;;; AccountsService service.
+;;;
+
+(define %accountsservice-activation
+ #~(begin
+ (use-modules (guix build utils))
+ (mkdir-p "/var/lib/AccountsService")))
+
+(define accountsservice-service-type
+ (service-type (name 'accountsservice)
+ (extensions
+ (list (service-extension activation-service-type
+ (const %accountsservice-activation))
+ (service-extension dbus-root-service-type list)
+ (service-extension polkit-service-type list)))))
+
+(define* (accountsservice-service #:key (accountsservice accountsservice))
+ "Return a service that runs AccountsService, a system service that
+can list available accounts, change their passwords, and so on.
+AccountsService integrates with PolicyKit to enable unprivileged users to
+acquire the capability to modify their system configuration.
address@hidden://www.freedesktop.org/wiki/Software/AccountsService/, the
+accountsservice web site} for more information."
+ (service accountsservice-service-type accountsservice))
+
+
+;;;
;;; GNOME desktop service.
;;;
@@ -783,6 +813,7 @@ with the administrator's password."
(wicd-service)
(udisks-service)
(upower-service)
+ (accountsservice-service)
(colord-service)
(geoclue-service)
(polkit-service)
- branch master updated (cb8b14f -> 6e99c01), Andy Wingo, 2017/08/25
- 02/08: gnu: Add AccountsService service to desktop services.,
Andy Wingo <=
- 05/08: gnu: gdm: Use proper elogind check, and wrap environment., Andy Wingo, 2017/08/25
- 07/08: gnu: services: Log debug messages to /var/log/debug., Andy Wingo, 2017/08/25
- 01/08: gnu: accountsservice: Properly reference shadow., Andy Wingo, 2017/08/25
- 03/08: gnu: services: Refactor to separate X and startx wrappers., Andy Wingo, 2017/08/25
- 04/08: gnu: gdm: Look for sessions in /run/current-system., Andy Wingo, 2017/08/25
- 08/08: gnu: Add draft of gdm service., Andy Wingo, 2017/08/25
- 06/08: gnu: gdm: Fix environment of worker processes and sessions., Andy Wingo, 2017/08/25