~ruther/guix-local

49ba3adfdff205aeddbe90ee8757e75009d9eed0 — Dariqq 7 months ago 74b718d
services: opensmtd: Add back option to log to syslog.

The option for syslog logging was removed in 6036f1f3053bc9b4f0411b5e8aeaab5bd7f4ec7b.

* gnu/services/mail.scm (opensmtpd-shepherd-service): When log-file is #f
daemonize and set the pid-file.

Change-Id: I356f4ccacc473def35708c114947788d485d058b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2 files changed, 6 insertions(+), 2 deletions(-)

M doc/guix.texi
M gnu/services/mail.scm
M doc/guix.texi => doc/guix.texi +1 -0
@@ 29879,6 29879,7 @@ remote servers.  Run @command{man smtpd.conf} for more information.
@item @code{log-file} (default: @code{"/var/log/mail.log"})
The file location for the OpenSMTPD log file.  Logging occurs in the
foreground via the Shepherd, i.e. OpenSMTPD does not detach.
When set to @code{#f} OpenSMTPD will instead detach and log to the syslog.

@item @code{setgid-commands?} (default: @code{#t})
Make the following commands setgid to @code{smtpq} so they can be

M gnu/services/mail.scm => gnu/services/mail.scm +5 -2
@@ 1744,8 1744,11 @@ match from local for any action outbound
           (documentation "Run the OpenSMTPD daemon.")
           (start (let ((smtpd (file-append package "/sbin/smtpd")))
                    #~(make-forkexec-constructor
                       (list #$smtpd "-d" "-f" #$config-file)
                       #:log-file #$log-file)))
                       (list #$smtpd "-f" #$config-file
                             #$@(if log-file '("-d") '()))
                       #$@(if log-file
                              (list #:log-file log-file)
                              (list #:pid-file "/var/run/smtpd.pid")))))
           (stop #~(make-kill-destructor))))))

(define %opensmtpd-accounts