aboutsummaryrefslogblamecommitdiff
path: root/modules/private/mail/default.nix
blob: ac8ad8c88137387f97ff46bb8925df06c165ec64 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11










                                                                                    








                                     
 
{ lib, pkgs, config, myconfig,  ... }:
{
  config.security.acme.certs."mail" = config.services.myCertificates.certConfig // {
    domain = "eldiron.immae.eu";
    extraDomains = let
      zonesWithMx = builtins.filter (zone:
        lib.attrsets.hasAttr "withEmail" zone && lib.lists.length zone.withEmail > 0
      ) myconfig.env.dns.masterZones;
      mxs = map (zone: "mx-1.${zone.name}") zonesWithMx;
    in builtins.listToAttrs (map (mx: lib.attrsets.nameValuePair mx null) mxs);
  };
  config.services.backup.profiles = {
    mail = {
      rootDir = "/var/lib";
      excludeFile = lib.mkAfter ''
        + /var/lib/vhost
        - /var/lib
        '';
    };
  };
}