Files
Chickadee/modules/mail.nix
T
2026-09-26 16:59:53 -04:00

63 lines
1.3 KiB
Nix

{ config, lib, pkgs, ... }:
{
services.maddy = {
enable = true;
ensureAccounts = [ "lilac@grasswren.net" ];
ensureCredentials."lilac@grasswren.net".passwordFile = config.sops.secrets.mxpass.path;
secrets = [ config.sops.secrets.cftoken.path ];
tls = {
loader = "acme";
extraConfig = ''
hostname $(hostname)
email lilac@grasswren.net
agreed
challenge dns-01
dns cloudflare {
api_token "{env:CFTOKEN}"
}
'';
};
primaryDomain = "grasswren.net";
hostname = "grasswren.net";
config = ''
auth.pass_table local_authdb {
table sql_table {
driver sqlite3
table_name passwords
dsn auth.db
}
}
storage.imapsql local_mailboxes {
driver sqlite3
dsn mailbox.db
}
smtp tcp://0.0.0.0:25 {
default_source {
destination grasswren.net {
modify {
replace_rcpt regexp ".*" "lilac@grasswren.net"
}
deliver_to &local_mailboxes
}
default_destination {
reject 550 5.1.1 "No Such User"
}
}
}
imap tls://0.0.0.0:993 {
auth &local_authdb
storage &local_mailboxes
}
'';
};
}