aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-02-25 18:58:13 +0000
committerLudovic Courtès <ludo@gnu.org>2023-03-03 17:55:35 +0100
commit2799ad44234be675f018115f99be98d2c9fd565d (patch)
treebcd10c408fe860437b4a133cec8e42b4d9572dbd
parent7c23dab85ca9d507ceeb078150c56d9fd0e4fd4d (diff)
downloadguix-2799ad44234be675f018115f99be98d2c9fd565d.tar
guix-2799ad44234be675f018115f99be98d2c9fd565d.tar.gz
services: dbus: Deprecate 'dbus-service' procedure.
* doc/guix.texi (Desktop Services): Replace with 'dbus-root-service-type'. Document dbus-configuration. * gnu/services/dbus.scm (dbus-service): Define with 'define-deprecated'. * gnu/services/desktop.scm (desktop-services-for-system): Replace with dbus-root-service-type. * gnu/system/install.scm (%installation-services): Ditto. * gnu/tests/base.scm (%avahi-os): Ditto. * gnu/tests/docker.scm (%docker-os): Ditto. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. * gnu/tests/virtualization.scm (%libvirt-os): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--doc/guix.texi49
-rw-r--r--gnu/services/dbus.scm5
-rw-r--r--gnu/services/desktop.scm2
-rw-r--r--gnu/system/install.scm2
-rw-r--r--gnu/tests/base.scm2
-rw-r--r--gnu/tests/docker.scm2
-rw-r--r--gnu/tests/lightdm.scm2
-rw-r--r--gnu/tests/virtualization.scm2
8 files changed, 40 insertions, 26 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 704c125b10..74658dbc86 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -23301,24 +23301,37 @@ The actual service definitions included in @code{%desktop-services} and
provided by @code{(gnu services dbus)} and @code{(gnu services desktop)}
are described below.
-@deffn {Scheme Procedure} dbus-service [#:dbus @var{dbus}] [#:services '()] @
- [#:verbose?]
-Return a service that runs the ``system bus'', using @var{dbus}, with
-support for @var{services}. When @var{verbose?} is true, it causes the
-@samp{DBUS_VERBOSE} environment variable to be set to @samp{1}; a
-verbose-enabled D-Bus package such as @code{dbus-verbose} should be
-provided as @var{dbus} in this scenario. The verbose output is logged
-to @file{/var/log/dbus-daemon.log}.
-
-@uref{https://dbus.freedesktop.org/, D-Bus} is an inter-process communication
-facility. Its system bus is used to allow system services to communicate
-and to be notified of system-wide events.
-
-@var{services} must be a list of packages that provide an
-@file{etc/dbus-1/system.d} directory containing additional D-Bus configuration
-and policy files. For example, to allow avahi-daemon to use the system bus,
-@var{services} must be equal to @code{(list avahi)}.
-@end deffn
+@defvar dbus-root-service-type
+Type for a service that runs the D-Bus ``system bus''.
+@footnote{@uref{https://dbus.freedesktop.org/, D-Bus} is an inter-process
+communication facility. Its system bus is used to allow system services
+to communicate and to be notified of system-wide events.}
+
+The value for this service type is a @code{<dbus-configuration>} record.
+@end defvar
+
+@deftp {Data Type} dbus-configuration
+Data type representing the configuration for @code{dbus-root-service-type}.
+
+@table @asis
+@item @code{dbus} (default: @code{dbus}) (type: file-like)
+Package object for dbus.
+
+@item @code{services} (default: @code{()}) (type: list)
+List of packages that provide an @file{etc/dbus-1/system.d} directory
+containing additional D-Bus configuration and policy files.
+For example, to allow avahi-daemon to use the system bus, @var{services}
+must be equal to @code{(list avahi)}.
+
+@item @code{verbose?} (default: @code{#f}) (type: boolean)
+When @code{#t}, D-Bus is launched with environment variable
+@samp{DBUS_VERBOSE} set to @samp{1}. A verbose-enabled D-Bus package
+such as @code{dbus-verbose} should be provided to @var{dbus} in this
+scenario. The verbose output is logged to
+@file{/var/log/dbus-daemon.log}.
+
+@end table
+@end deftp
@subsubheading Elogind
diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm
index ea2593501f..e9c9346f56 100644
--- a/gnu/services/dbus.scm
+++ b/gnu/services/dbus.scm
@@ -38,7 +38,7 @@
#:export (dbus-configuration
dbus-configuration?
dbus-root-service-type
- dbus-service
+ dbus-service ; deprecated
wrapped-dbus-service
polkit-configuration
@@ -245,7 +245,8 @@ includes the @code{etc/dbus-1/system.d} directories of each package listed in
bus. It allows programs and daemons to communicate and is also responsible
for spawning (@dfn{activating}) D-Bus services on demand.")))
-(define* (dbus-service #:key (dbus dbus) (services '()) verbose?)
+(define-deprecated (dbus-service #:key (dbus dbus) (services '()) verbose?)
+ dbus-root-service-type
"Return a service that runs the \"system bus\", using @var{dbus}, with
support for @var{services}. When @var{verbose?} is true, it causes the
@samp{DBUS_VERBOSE} environment variable to be set to @samp{1}; a
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index 3ec746cdbd..8026778ea5 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -1880,7 +1880,7 @@ applications needing access to be root.")
(service geoclue-service-type)
(service polkit-service-type)
(service elogind-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(service ntp-service-type)
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index dd965f312b..7a68c19606 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -442,7 +442,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
(list %loopback-static-networking))
(service wpa-supplicant-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(service connman-service-type
(connman-configuration
(disable-vpn? #t)))
diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm
index 3e72e193d7..97edbbc6ad 100644
--- a/gnu/tests/base.scm
+++ b/gnu/tests/base.scm
@@ -962,7 +962,7 @@ non-ASCII names from /tmp.")
(name-service-switch %mdns-host-lookup-nss)
(services (cons* (service avahi-service-type
(avahi-configuration (debug? #t)))
- (dbus-service)
+ (service dbus-root-service-type)
(service dhcp-client-service-type) ;needed for multicast
;; Enable heavyweight debugging output.
diff --git a/gnu/tests/docker.scm b/gnu/tests/docker.scm
index e464ec587e..0276e398a7 100644
--- a/gnu/tests/docker.scm
+++ b/gnu/tests/docker.scm
@@ -48,7 +48,7 @@
(define %docker-os
(simple-operating-system
(service dhcp-client-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(service polkit-service-type)
(service elogind-service-type)
(service docker-service-type)))
diff --git a/gnu/tests/lightdm.scm b/gnu/tests/lightdm.scm
index aa97a96939..dda472bd74 100644
--- a/gnu/tests/lightdm.scm
+++ b/gnu/tests/lightdm.scm
@@ -49,7 +49,7 @@
(service accountsservice-service-type)
(service polkit-service-type)
(service elogind-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
x11-socket-directory-service))
(define %lightdm-os
diff --git a/gnu/tests/virtualization.scm b/gnu/tests/virtualization.scm
index 6749ade4bd..effdeb4cfa 100644
--- a/gnu/tests/virtualization.scm
+++ b/gnu/tests/virtualization.scm
@@ -49,7 +49,7 @@
(define %libvirt-os
(simple-operating-system
(service dhcp-client-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(service polkit-service-type)
(service libvirt-service-type)))