{ pkgs, outputs, ... }: { imports = [ ./nginx ./roundcube ]; mailserver = rec { enable = true; openFirewall = false; domains = [ "${outputs.secrets.jimDomain}" ]; fqdn = "mx.${outputs.secrets.jimDomain}"; certificateScheme = "acme-nginx"; localDnsResolver = false; redis.port = 1515; # Dmarc info dmarcReporting = { enable = true; domain = "${outputs.secrets.jimDomain}"; localpart = "noreply"; organizationName = "Jimbo's Files"; }; # A list of accounts, passwords generated with nix-shell -p mkpasswd --run 'mkpasswd -sm bcrypt' loginAccounts = { "noreply@${outputs.secrets.jimDomain}" = { hashedPasswordFile = pkgs.writeText "noreply" outputs.secrets.noreplyMailHash; sendOnly = true; }; "jimbo@${outputs.secrets.jimDomain}" = { hashedPasswordFile = pkgs.writeText "jimbo" outputs.secrets.jimboMailHash; aliases = [ "james@${outputs.secrets.jimDomain}" "contact@${outputs.secrets.jimDomain}" ]; }; "lunamoonlight@${outputs.secrets.jimDomain}" = { hashedPasswordFile = pkgs.writeText "luna" outputs.secrets.lunaMailHash; }; "freecorn1854@${outputs.secrets.jimDomain}" = { hashedPasswordFile = pkgs.writeText "freecorn" outputs.secrets.freecornMailHash; }; "tinyattack09@${outputs.secrets.jimDomain}" = { hashedPasswordFile = pkgs.writeText "tiny" outputs.secrets.tinyMailHash; }; }; }; # Assign the correct port services.redis.servers.rspamd.port = 1515; }