summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmin Bandali <mab@gnu.org>2020-01-23 17:48:42 -0500
committerAmin Bandali <mab@gnu.org>2020-01-23 17:48:42 -0500
commita225edd9cbe2a14e8461bc64bb78ab3bf8fbefb1 (patch)
tree4c988622818a9f022c90657dceea7c2d9f62ba46
parent0b6b7db2bcad323ddfc5132b45ba771f65279948 (diff)
downloadconfigs-a225edd9cbe2a14e8461bc64bb78ab3bf8fbefb1.tar.gz
configs-a225edd9cbe2a14e8461bc64bb78ab3bf8fbefb1.tar.xz
configs-a225edd9cbe2a14e8461bc64bb78ab3bf8fbefb1.zip
guix: add local dovecot mail server to chaman
note: the dovecot/auth process runs as a non-root `dovecot' user, which needs to be able to read the passwd file. therefore, the file itself needs to have the read bit set accordingly, and its parent directories need the executable bit.
Diffstat (limited to '')
-rw-r--r--.config/guix/system/chaman.scm20
1 files changed, 19 insertions, 1 deletions
diff --git a/.config/guix/system/chaman.scm b/.config/guix/system/chaman.scm
index 6a359fb..e17d465 100644
--- a/.config/guix/system/chaman.scm
+++ b/.config/guix/system/chaman.scm
@@ -1,5 +1,5 @@
(use-modules (gnu))
-(use-service-modules desktop networking ssh xorg)
+(use-service-modules desktop mail networking ssh xorg)
(operating-system
(host-name "chaman")
@@ -53,4 +53,22 @@
(set-xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout)))
+ (dovecot-service
+ #:config
+ (dovecot-configuration
+ ;; (log-path "/dev/stderr")
+ (protocols (list (protocol-configuration
+ (name "imap"))))
+ (ssl? "no")
+ (listen '("127.0.0.1"))
+ (disable-plaintext-auth? #f)
+ (auth-mechanisms '("plain"))
+ (postmaster-address "mab@gnu.local")
+ (mail-location "maildir:/home/mab/mail/%d/%n/mail")
+ (userdbs (list (userdb-configuration
+ (driver "static")
+ (args (list "uid=mab" "gid=users" "home=/home/mab/mail/%d/%n")))))
+ (passdbs (list (passdb-configuration
+ (driver "passwd-file")
+ (args (list "/data/dovecot-passwd")))))))
%desktop-services)))