summaryrefslogtreecommitdiff
path: root/flora/services/mail.nix
blob: 2e1179a7046791f1cc72a76f47f1b5f0989c68bc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{ config, lib, pkgs, inputs, ... }:

{
  imports = [ inputs.simple-nixos-mailserver.nixosModule ];

  sops.secrets."mail/hashedPassword" = {};

  mailserver = {
    enable = true;
    fqdn = "mail.stuebinm.eu";
    domains = [ "stuebinm.eu" ];

    # A list of all login accounts. To create the password hashes, use
    # nix run nixpkgs.apacheHttpd -c htpasswd -nbB "" "super secret password" | cut -d: -f2
    loginAccounts = {
        "hello@stuebinm.eu" = {
            hashedPasswordFile = "/run/secrets/mail/hashedPassword";
            aliases = ["postmaster@stuebinm.eu" "abuse@stuebinm.eu"];
        };
    };

    # Use Let's Encrypt certificates. Note that this needs to set up a stripped
    # down nginx and opens port 80.
    certificateScheme = "acme-nginx";
  };
}