aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-02-25 18:58:10 +0000
committerLudovic Courtès <ludo@gnu.org>2023-03-03 17:55:34 +0100
commite24555234a2914ccd2f6291f9ca95f60f137d74f (patch)
tree43885716b1d29bbce6c95d1265713642ef6a5099
parenteddd9b1240897caabf64c90549ffa940eef45ce7 (diff)
downloadguix-e24555234a2914ccd2f6291f9ca95f60f137d74f.tar
guix-e24555234a2914ccd2f6291f9ca95f60f137d74f.tar.gz
services: lirc: Deprecate 'lirc-service' procedure.
* doc/guix.texi (Miscellaneous Services): Replace 'lirc-service' with 'lirc-service-type'. Document <lirc-configuration>. * gnu/services/lirc.scm (<lirc-configuration>): Set default values based on the arguments from the now deprecated 'lirc-service' procedure. (lirc-service-type): Set default value. (lirc-service): Deprecate procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--doc/guix.texi40
-rw-r--r--gnu/services/lirc.scm18
2 files changed, 39 insertions, 19 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index 937b85e16c..54b75dd1f8 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -37726,24 +37726,38 @@ under @file{pcsc/drivers} in the store directory of the package.
@end table
@end deftp
-@cindex lirc
-@subsubheading Lirc Service
+@cindex LIRC
+@subsubheading LIRC Service
The @code{(gnu services lirc)} module provides the following service.
-@deffn {Scheme Procedure} lirc-service [#:lirc lirc] @
- [#:device #f] [#:driver #f] [#:config-file #f] @
- [#:extra-options '()]
-Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that
-decodes infrared signals from remote controls.
+@defvar lirc-service-type
+Type for a service that runs @url{http://www.lirc.org, LIRC}, a daemon
+that decodes infrared signals from remote controls.
-Optionally, @var{device}, @var{driver} and @var{config-file}
-(configuration file name) may be specified. See @command{lircd} manual
-for details.
+The value for this service is a @code{<lirc-configuration>} object.
+@end defvar
-Finally, @var{extra-options} is a list of additional command-line options
-passed to @command{lircd}.
-@end deffn
+@deftp {Data Type} lirc-configuration
+Data type representing the configuration of @command{lircd}.
+
+@table @asis
+@item @code{lirc} (default: @code{lirc}) (type: file-like)
+Package object for @command{lirc}.
+
+@item @code{device} (default: @code{#f}) (type: string)
+@itemx @code{driver} (default: @code{#f}) (type: string)
+@itemx @code{config-file} (default: @code{#f}) (type: string-or-file-like)
+TODO. See @command{lircd} manual for details.
+
+@item @code{extra-options} (default: @code{'()}) (type: list-of-string)
+Additional command-line options to pass to @command{lircd}.
+
+@end table
+@end deftp
+
+@c TODO: Document <lirc-configuration>, preferably by refactoring this to use
+@c define-configuration and generating documentation from it.
@cindex spice
@subsubheading Spice Service
diff --git a/gnu/services/lirc.scm b/gnu/services/lirc.scm
index 492d77defa..92784b65ca 100644
--- a/gnu/services/lirc.scm
+++ b/gnu/services/lirc.scm
@@ -21,12 +21,13 @@
#:use-module (gnu services)
#:use-module (gnu services shepherd)
#:use-module (gnu packages lirc)
+ #:use-module (guix deprecation)
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module (ice-9 match)
#:export (lirc-configuration
lirc-configuation?
- lirc-service
+ lirc-service ; deprecated
lirc-service-type))
;;; Commentary:
@@ -40,9 +41,12 @@
lirc-configuation?
(lirc lirc-configuration-lirc ;file-like
(default lirc))
- (device lirc-configuration-device) ;string
- (driver lirc-configuration-driver) ;string
- (config-file lirc-configuration-file) ;string | file-like object
+ (device lirc-configuration-device ;string
+ (default #f))
+ (driver lirc-configuration-driver ;string
+ (default #f))
+ (config-file lirc-configuration-file ;string | file-like object
+ (default #f))
(extra-options lirc-configuration-options ;list of strings
(default '())))
@@ -81,11 +85,13 @@
(service-extension activation-service-type
(const %lirc-activation))))
(description "Run LIRC, a daemon that decodes infrared signals
-from remote controls.")))
+from remote controls.")
+ (default-value (lirc-configuration))))
-(define* (lirc-service #:key (lirc lirc)
+(define-deprecated (lirc-service #:key (lirc lirc)
device driver config-file
(extra-options '()))
+ lirc-service-type
"Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that
decodes infrared signals from remote controls.