Subject: [bug#61789] [PATCH 25/27] services: spice: Deprecate 'spice-vdagent-service' procedure.

From: Bruno Victal <[email-masked]>
Date: Sat, 25 Feb 2023 18:58:11 +0000

* doc/guix.texi (Miscellaneous Services): Replace 'spice-vdagent-service' with
'spice-vdagent-service-type'. Document <spice-vdagent-configuration>.
* gnu/services/spice.scm (spice-vdagent-service): Deprecate procedure.
---
 doc/guix.texi          | 25 ++++++++++++++++++-------
 gnu/services/spice.scm |  7 ++++---
 2 files changed, 22 insertions(+), 10 deletions(-)

diff --git a/doc/guix.texi b/doc/guix.texi
index 466c6c98c9..7aa9f3a5e8 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -37751,16 +37751,27 @@ Miscellaneous Services
 @c TODO: Document <lirc-configuration>, preferably by refactoring this to use
 @c       define-configuration and generating documentation from it.
 
-@cindex spice
-@subsubheading Spice Service
+@cindex SPICE
+@subsubheading SPICE Service
 
 The @code{(gnu services spice)} module provides the following service.
 
-@deffn {Scheme Procedure} spice-vdagent-service [#:spice-vdagent]
-Returns a service that runs @url{https://www.spice-space.org,VDAGENT}, a daemon
-that enables sharing the clipboard with a vm and setting the guest display
-resolution when the graphical console window resizes.
-@end deffn
+@defvar spice-vdagent-service-type
+Type of the service that runs @url{https://www.spice-space.org, VDAGENT},
+a daemon that enables sharing the clipboard with a vm and setting the
+guest display resolution when the graphical console window resizes.
+@end defvar
+
+@deftp {Data Type} spice-vdagent-configuration
+Data type representing the configuration of
+@code{spice-vdagent-service-type}.
+
+@table @asis
+@item @code{spice-vdagent} (default: @code{spice-vdagent}) (type: file-like)
+Package object for VDAGENT.
+
+@end table
+@end deftp
 
 @cindex inputattach
 @subsubheading inputattach Service
diff --git a/gnu/services/spice.scm b/gnu/services/spice.scm
index e5ec46b9b5..b8d2f8486e 100644
--- a/gnu/services/spice.scm
+++ b/gnu/services/spice.scm
@@ -21,12 +21,13 @@ (define-module (gnu services spice)
   #:use-module (gnu packages spice)
   #:use-module (gnu services)
   #:use-module (gnu services shepherd)
+  #:use-module (guix deprecation)
   #:use-module (guix gexp)
   #:use-module (guix records)
   #:export (spice-vdagent-configuration
             spice-vdagent-configuration?
             spice-vdagent-service-type
-            spice-vdagent-service))
+            spice-vdagent-service))  ; deprecated
 
 (define-record-type* <spice-vdagent-configuration>
   spice-vdagent-configuration make-spice-vdagent-configuration
@@ -74,8 +75,8 @@ (define spice-vdagent-service-type
 from the @code{spice-vdagent} package to enable window resizing and clipboard
 sharing for @acronym{VM, virtual machine} guests.")))
 
-(define* (spice-vdagent-service
-          #:optional (config (spice-vdagent-configuration)))
+(define-deprecated (spice-vdagent-service
+                    #:optional (config (spice-vdagent-configuration)))
   "Start the @command{vdagentd} and @command{vdagent} daemons
 from @var{spice-vdagent} to enable guest window resizing and
 clipboard sharing."
-- 
2.39.1