summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-02-25 18:58:08 +0000
committerLudovic Courtès <ludo@gnu.org>2023-03-03 17:55:34 +0100
commitc6cbce9ad8ee5fa7b51d8abea83ddc3dd07fa3c6 (patch)
treea86abf8194a63c5aa44dc2b5d96f153cda4aa4f2
parentbe1435d6687d6597e09676c2d6edd286cc4d5ad8 (diff)
services: mail: Deprecate 'dovecot-service' procedure.
* doc/guix.texi (Mail Services): Replace 'dovecot-service' with 'dovecot-service-type'. * gnu/services/mail.scm (dovecot-service-type): Set default value. (dovecot-service): Deprecate procedure. * gnu/tests/mail.scm (%dovecot-os): Use dovecot-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--doc/guix.texi13
-rw-r--r--gnu/services/mail.scm9
-rw-r--r--gnu/tests/mail.scm20
3 files changed, 23 insertions, 19 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index dabd71f18c..af15894d49 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -24709,9 +24709,10 @@ in the subsections below.
@subsubheading Dovecot Service
-@deffn {Scheme Procedure} dovecot-service [#:config (dovecot-configuration)]
-Return a service that runs the Dovecot IMAP/POP3/LMTP mail server.
-@end deffn
+@defvar dovecot-service-type
+Type for the service that runs the Dovecot IMAP/POP3/LMTP mail server,
+whose value is a @code{<dovecot-configuration>} object.
+@end defvar
By default, Dovecot does not need much configuration; the default
configuration object created by @code{(dovecot-configuration)} will
@@ -24726,9 +24727,9 @@ For example, to specify that mail is located at @code{maildir~/.mail},
one would instantiate the Dovecot service like this:
@lisp
-(dovecot-service #:config
- (dovecot-configuration
- (mail-location "maildir:~/.mail")))
+(service dovecot-service-type
+ (dovecot-configuration
+ (mail-location "maildir:~/.mail")))
@end lisp
The available configuration parameters follow. Each parameter
diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm
index 6f588679b1..bf4948dcfb 100644
--- a/gnu/services/mail.scm
+++ b/gnu/services/mail.scm
@@ -35,6 +35,7 @@
#:use-module (gnu packages admin)
#:use-module (gnu packages dav)
#:use-module (gnu packages tls)
+ #:use-module (guix deprecation)
#:use-module (guix modules)
#:use-module (guix records)
#:use-module (guix packages)
@@ -42,7 +43,7 @@
#:use-module (ice-9 match)
#:use-module (ice-9 format)
#:use-module (srfi srfi-1)
- #:export (dovecot-service
+ #:export (dovecot-service ; deprecated
dovecot-service-type
dovecot-configuration
opaque-dovecot-configuration
@@ -1601,9 +1602,11 @@ greyed out, instead of only later giving \"not selectable\" popup error.
(service-extension activation-service-type
%dovecot-activation)))
(description "Run Dovecot, a mail server that can run POP3,
-IMAP, and LMTP.")))
+IMAP, and LMTP.")
+ (default-value (dovecot-configuration))))
-(define* (dovecot-service #:key (config (dovecot-configuration)))
+(define-deprecated (dovecot-service #:key (config (dovecot-configuration)))
+ dovecot-service-type
"Return a service that runs @command{dovecot}, a mail server that can run
POP3, IMAP, and LMTP. @var{config} should be a configuration object created
by @code{dovecot-configuration}. @var{config} may also be created by
diff --git a/gnu/tests/mail.scm b/gnu/tests/mail.scm
index f13751b72f..dc1f18b3f1 100644
--- a/gnu/tests/mail.scm
+++ b/gnu/tests/mail.scm
@@ -293,16 +293,16 @@ acl_check_data:
(define %dovecot-os
(simple-operating-system
(service dhcp-client-service-type)
- (dovecot-service #:config
- (dovecot-configuration
- (disable-plaintext-auth? #f)
- (ssl? "no")
- (auth-mechanisms '("anonymous"))
- (auth-anonymous-username "alice")
- (mail-location
- (string-append "maildir:~/Maildir"
- ":INBOX=~/Maildir/INBOX"
- ":LAYOUT=fs"))))))
+ (service dovecot-service-type
+ (dovecot-configuration
+ (disable-plaintext-auth? #f)
+ (ssl? "no")
+ (auth-mechanisms '("anonymous"))
+ (auth-anonymous-username "alice")
+ (mail-location
+ (string-append "maildir:~/Maildir"
+ ":INBOX=~/Maildir/INBOX"
+ ":LAYOUT=fs"))))))
(define (run-dovecot-test)
"Return a test of an OS running Dovecot service."