Create a mail directory

This commit is contained in:
2023-09-30 18:54:17 -07:00
parent 99e9b6c519
commit 9d3c86a118
2 changed files with 13 additions and 6 deletions
+8 -5
View File
@@ -17,6 +17,11 @@ in {
description = "Directory at which to store server state.";
};
mail-directory = mkOption {
type = str;
description = "Directory at which to store user email.";
};
ports = {
lmtp = mkOption {
type = port;
@@ -192,7 +197,7 @@ in {
systemd = {
tmpfiles.rules = [
"d ${cfg.state-directory} 0751 ${cfg.mail-user} ${cfg.mail-group} - -"
"d ${cfg.state-directory}/mail 0750 ${cfg.mail-user} ${cfg.mail-group} - -"
"d ${cfg.mail-directory} 0750 ${cfg.mail-user} ${cfg.mail-group} - -"
"d ${cfg.state-directory}/sieves 0750 ${config.services.dovecot2.user} ${config.services.dovecot2.group} - -"
];
@@ -263,7 +268,7 @@ in {
mailUser = cfg.mail-user;
mailGroup = cfg.mail-group;
mailLocation = "maildir:${cfg.state-directory}/mail/%u/";
mailLocation = "maildir:${cfg.mail-directory}/%u/";
createMailUser = false;
sslServerCert = cfg.ssl.certificate;
@@ -357,9 +362,7 @@ in {
# All users map to one actual system user
userdb {
driver = static
args = uid=${
toString mailUserUid
} home=${cfg.state-directory}/mail/%u
args = uid=${toString mailUserUid} home=${cfg.mail-directory}/%u
}
service imap {