[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#28452] [PATCH 2/6] services: Add a description and location for eac
From: |
Ludovic Courtès |
Subject: |
[bug#28452] [PATCH 2/6] services: Add a description and location for each service type. |
Date: |
Wed, 13 Sep 2017 23:24:19 +0200 |
* gnu/services.scm (<service-type>)[description, location]: New field.
* doc/guix.texi (Service Types and Services): Document 'description'.
---
doc/guix.texi | 4 ++++
gnu/services.scm | 13 ++++++++++++-
2 files changed, 16 insertions(+), 1 deletion(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index 063369122..513493b86 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -18020,6 +18020,10 @@ Udev extensions are composed into a list of rules, but
the udev service
value is itself a @code{<udev-configuration>} record. So here, we
extend that record by appending the list of rules it contains to the
list of contributed rules.
+
address@hidden description
+This is a string giving an overview of the service type. The string can
+contain Texinfo markup (@pxref{Overview,,, texinfo, GNU Texinfo}).
@end table
There can be only one instance of an extensible service type such as
diff --git a/gnu/services.scm b/gnu/services.scm
index 8ef1ae7c7..83a163b76 100644
--- a/gnu/services.scm
+++ b/gnu/services.scm
@@ -49,6 +49,9 @@
service-type-compose
service-type-extend
service-type-default-value
+ service-type-description
+ service-type-location
+
service
service?
@@ -145,7 +148,15 @@
;; Optional default value for instances of this type.
(default-value service-type-default-value ;Any
- (default &no-default-value)))
+ (default &no-default-value))
+
+ ;; Meta-data.
+ (description service-type-description ;string
+ (default #f))
+ (location service-type-location ;<location>
+ (default (and=> (current-source-location)
+ source-properties->location))
+ (innate)))
(define (write-service-type type port)
(format port "#<service-type ~a ~a>"
--
2.14.1