42 lines
1.2 KiB
Nix
42 lines
1.2 KiB
Nix
{ config, ... }:
|
|
{
|
|
# this should really be imported through a flake but I couldn't get that
|
|
# working :(
|
|
imports = [
|
|
(builtins.fetchTarball {
|
|
url = "https://gitlab.com/simple-nixos-mailserver/nixos-mailserver/-/archive/nixos-25.11/nixos-mailserver-nixos-25.11.tar.gz";
|
|
sha256 = "16kanlk74xnj7xgmjsj7pahy31hlxqcbv76xnsg8qbh54b0hwxgq";
|
|
})
|
|
];
|
|
|
|
mailserver = {
|
|
enable = true;
|
|
stateVersion = 3;
|
|
fqdn = "mail.zacharyscheiman.com";
|
|
domains = [ "zacharyscheiman.com" "squi.bid" ];
|
|
messageSizeLimit = 2500000000; # 2.5GB
|
|
|
|
loginAccounts = {
|
|
"me@zacharyscheiman.com" = {
|
|
hashedPasswordFile = config.sops.secrets."mail/me".path;
|
|
aliases = [
|
|
"zach@zacharyscheiman.com"
|
|
"zack@zacharyscheiman.com"
|
|
"zachary@zacharyscheiman.com"
|
|
|
|
# required aliases
|
|
"postmaster@zacharyscheiman.com"
|
|
"abuse@zacharyscheiman.com"
|
|
"security@zacharyscheiman.com"
|
|
];
|
|
};
|
|
};
|
|
|
|
# Use Let's Encrypt certificates. Note that this needs to set up a stripped
|
|
# down nginx and opens port 80.
|
|
certificateScheme = "acme-nginx";
|
|
};
|
|
|
|
security.acme.acceptTerms = true;
|
|
security.acme.defaults.email = "security@zacharyscheiman.com";
|
|
}
|