[PATCH] services: dbus-service: Deprecate 'dbus-service' procedure.

  • Done
  • quality assurance status badge
Details
One participant
  • Bruno Victal
Owner
unassigned
Submitted by
Bruno Victal
Severity
normal
B
B
Bruno Victal wrote on 22 Feb 2023 00:31
(address . guix-patches@gnu.org)(name . Bruno Victal)(address . mirai@makinata.eu)
5dab916f4cb3bc513d397e151107bea826294ead.1677022272.git.mirai@makinata.eu
* 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.
---
doc/guix.texi | 49 +++++++++++++++++++++++-------------
gnu/services/dbus.scm | 6 +++--
gnu/services/desktop.scm | 2 +-
gnu/system/install.scm | 2 +-
gnu/tests/base.scm | 2 +-
gnu/tests/docker.scm | 2 +-
gnu/tests/lightdm.scm | 2 +-
gnu/tests/virtualization.scm | 2 +-
8 files changed, 41 insertions(+), 26 deletions(-)

Toggle diff (173 lines)
diff --git a/doc/guix.texi b/doc/guix.texi
index 05615b9549..b85bef40c1 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -23141,24 +23141,37 @@ Desktop Services
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
@deffn {Scheme Procedure} elogind-service [#:config @var{config}]
Return a service that runs the @code{elogind} login and
diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm
index 5efd6bdadf..c08a91221f 100644
--- a/gnu/services/dbus.scm
+++ b/gnu/services/dbus.scm
@@ -28,6 +28,7 @@ (define-module (gnu services dbus)
#:use-module ((gnu packages glib) #:select (dbus))
#:use-module (gnu packages polkit)
#:use-module (gnu packages admin)
+ #:use-module (guix deprecation)
#:use-module (guix gexp)
#:use-module ((guix packages) #:select (package-name))
#:use-module (guix records)
@@ -37,7 +38,7 @@ (define-module (gnu services dbus)
#:export (dbus-configuration
dbus-configuration?
dbus-root-service-type
- dbus-service
+ dbus-service ; deprecated
wrapped-dbus-service
polkit-configuration
@@ -244,7 +245,8 @@ (define dbus-root-service-type
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 fe1f0fd20a..0d3de32be6 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -1804,7 +1804,7 @@ (define* (desktop-services-for-system #:optional
(geoclue-service)
(service polkit-service-type)
(elogind-service)
- (dbus-service)
+ (service dbus-root-service-type)
(service ntp-service-type)
diff --git a/gnu/system/install.scm b/gnu/system/install.scm
index b3cf7a1bd8..77ef577fd2 100644
--- a/gnu/system/install.scm
+++ b/gnu/system/install.scm
@@ -437,7 +437,7 @@ (define* (%installation-services #:key (system (or (and=>
(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 @@ (define %avahi-os
(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 4267ff89a8..37946b2fbc 100644
--- a/gnu/tests/docker.scm
+++ b/gnu/tests/docker.scm
@@ -48,7 +48,7 @@ (define-module (gnu tests docker)
(define %docker-os
(simple-operating-system
(service dhcp-client-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(polkit-service)
(service elogind-service-type)
(service docker-service-type)))
diff --git a/gnu/tests/lightdm.scm b/gnu/tests/lightdm.scm
index 57d029a75a..74c7b118a5 100644
--- a/gnu/tests/lightdm.scm
+++ b/gnu/tests/lightdm.scm
@@ -49,7 +49,7 @@ (define minimal-desktop-services
(accountsservice-service)
(service polkit-service-type)
(elogind-service)
- (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 60789fbb5b..9fe23aeeac 100644
--- a/gnu/tests/virtualization.scm
+++ b/gnu/tests/virtualization.scm
@@ -49,7 +49,7 @@ (define-module (gnu tests virtualization)
(define %libvirt-os
(simple-operating-system
(service dhcp-client-service-type)
- (dbus-service)
+ (service dbus-root-service-type)
(polkit-service)
(service libvirt-service-type)))

base-commit: fbbbc2088ce933d83f5b0be75308fdcb6b40fa57
--
2.39.1
B
B
Bruno Victal wrote on 25 Feb 2023 20:02
control-msg
(name . control)(address . control@debbugs.gnu.org)
72595c7e-584b-44b8-8d14-a69d60dfb17f@makinata.eu
close 61692
# Superseded by #61789 patch-series

quit
?