diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/mailserver.nix | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/modules/mailserver.nix b/modules/mailserver.nix new file mode 100644 index 0000000..90c17fa --- /dev/null +++ b/modules/mailserver.nix @@ -0,0 +1,36 @@ +{ config, pkgs, ... }: { + imports = [ + (builtins.fetchTarball { + url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/nixos-24.11/nixos-mailserver-nixos-24.11.tar.gz"; + sha256 = "05k4nj2cqz1c5zgqa0c6b8sp3807ps385qca74fgs6cdc415y3qw"; + }) + ]; + + mailserver = { + enable = true; + fqdn = "mail.krinitsin.com"; + domains = [ "krinitsin.com" ]; + certificateScheme = "acme-nginx"; + + # To create the password hashes, use nix-shell -p mkpasswd --run 'mkpasswd -sm bcrypt' + loginAccounts = { + "mail@krinitsin.com" = { + hashedPasswordFile = "/secret/mail@krinitsin.com"; + aliases = ["postmaster@krinitsin.com"]; + }; + "wladislaw@krinitsin.com" = { + hashedPasswordFile = "/secret/wladislaw@krinitsin.com"; + }; + }; + }; + + services.roundcube = { + enable = true; + hostName = "webmail.krinitsin.com"; + extraConfig = '' + $config['smtp_host'] = "tls://${config.mailserver.fqdn}"; + $config['smtp_user'] = "%u"; + $config['smtp_pass'] = "%p"; + ''; + }; +} |