Dovecot: Difference between revisions

Tie-ling (talk | contribs)
m add link to acme
Tie-ling (talk | contribs)
add standard mailboxes
 
(4 intermediate revisions by 2 users not shown)
Line 79: Line 79:
         args = ${config.age.secrets.dovecot.path}
         args = ${config.age.secrets.dovecot.path}
       }
       }
    ''
   };
   };
</syntaxhighlight>
</syntaxhighlight>
Line 101: Line 102:
     # /var/spool/mail/vmail/<DOMAIN>/<USER>/Maildir/
     # /var/spool/mail/vmail/<DOMAIN>/<USER>/Maildir/
     mailLocation = "maildir:~/Maildir";
     mailLocation = "maildir:~/Maildir";
    mailboxes = {
      # use rfc standard https://apple.stackexchange.com/a/201346
      All = { auto = "create"; autoexpunge = null; specialUse = "All"; };
      Archive = { auto = "create"; autoexpunge = null; specialUse = "Archive"; };
      Drafts = { auto = "create"; autoexpunge = null; specialUse = "Drafts"; };
      Flagged = { auto = "create"; autoexpunge = null; specialUse = "Flagged"; };
      Junk = { auto = "create"; autoexpunge = "60d"; specialUse = "Junk"; };
      Sent = { auto = "create"; autoexpunge = null; specialUse = "Sent"; };
      Trash = { auto = "create"; autoexpunge = "60d"; specialUse = "Trash"; };
    };


     extraConfig = ''
     extraConfig = ''
Line 171: Line 183:
     sslCACert = "${sslCertDir}/chain.pem";
     sslCACert = "${sslCertDir}/chain.pem";
   };
   };
</syntaxhighlight>
You also need to set proper file permissions on the cert directory and key files.
See [[ACME#Integration_with_service_modules]].
= Using sieve plugins =
The following is required to use Sieve plugins (<code>imap_sieve</code>, ManageSieve, etc):
<syntaxhighlight lang="nix">
environment.systemPackages = with pkgs; [
  dovecot_pigeonhole
];
</syntaxhighlight>
</syntaxhighlight>