services: Add 'udisks-service'.

* gnu/services/desktop.scm (<udisks-configuration>): New record type.
  (udisks-service-type): New variable.
  (udisks-service): New procedure.
  (%desktop-services): Use it.
* doc/guix.texi (Desktop Services): Document it.
This commit is contained in:
Ludovic Courtès 2015-11-01 17:55:26 +01:00
parent daa3b04cd8
commit 2b9e0a948b
2 changed files with 40 additions and 0 deletions

View file

@ -6744,6 +6744,13 @@ levels, with the given configuration settings. It implements the
GNOME. GNOME.
@end deffn @end deffn
@deffn {Scheme Procedure} udisks-service [#:udisks @var{udisks}]
Return a service for @uref{http://udisks.freedesktop.org/docs/latest/,
UDisks}, a @dfn{disk management} daemon that provides user interfaces with
notifications and ways to mount/unmount disks. Programs that talk to UDisks
include the @command{udisksctl} command, part of UDisks, and GNOME Disks.
@end deffn
@deffn {Scheme Procedure} colord-service [#:colord @var{colord}] @deffn {Scheme Procedure} colord-service [#:colord @var{colord}]
Return a service that runs @command{colord}, a system service with a D-Bus Return a service that runs @command{colord}, a system service with a D-Bus
interface to manage the color profiles of input and output devices such as interface to manage the color profiles of input and output devices such as

View file

@ -43,6 +43,7 @@ (define-module (gnu services desktop)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:export (upower-service #:export (upower-service
udisks-service
colord-service colord-service
geoclue-application geoclue-application
%standard-geoclue-applications %standard-geoclue-applications
@ -468,6 +469,37 @@ (define* (colord-service #:key (colord colord))
site} for more information." site} for more information."
(service colord-service-type colord)) (service colord-service-type colord))
;;;
;;; UDisks.
;;;
(define-record-type* <udisks-configuration>
udisks-configuration make-udisks-configuration
udisks-configuration?
(udisks udisks-configuration-udisks
(default udisks)))
(define udisks-service-type
(let ((udisks-package (lambda (config)
(list (udisks-configuration-udisks config)))))
(service-type (name 'udisks)
(extensions
(list (service-extension polkit-service-type
udisks-package)
(service-extension dbus-root-service-type
udisks-package)
(service-extension udev-service-type
udisks-package))))))
(define* (udisks-service #:key (udisks udisks))
"Return a service for @uref{http://udisks.freedesktop.org/docs/latest/,
UDisks}, a @dfn{disk management} daemon that provides user interfaces with
notifications and ways to mount/unmount disks. Programs that talk to UDisks
include the @command{udisksctl} command, part of UDisks, and GNOME Disks."
(service udisks-service-type
(udisks-configuration (udisks udisks))))
;;; ;;;
;;; Elogind login and seat management service. ;;; Elogind login and seat management service.
@ -662,6 +694,7 @@ (define %desktop-services
;; The D-Bus clique. ;; The D-Bus clique.
(avahi-service) (avahi-service)
(wicd-service) (wicd-service)
(udisks-service)
(upower-service) (upower-service)
(colord-service) (colord-service)
(geoclue-service) (geoclue-service)