X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fmail%2Frelay.nix;h=d29ae759ead43f49ef91c6d64a82960dde8d854f;hb=9f16e659f129dd8acab7d086ef9822673a01ba06;hp=9111350cbdc17addc380ff85ab2b95a003e1dc8a;hpb=619e4f46adc15e409122c4e0fa0e0a0b811bb32f;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/mail/relay.nix b/modules/private/mail/relay.nix index 9111350..d29ae75 100644 --- a/modules/private/mail/relay.nix +++ b/modules/private/mail/relay.nix @@ -89,9 +89,6 @@ networking.firewall.allowedTCPPorts = [ 25 ]; - nixpkgs.overlays = [ (self: super: { - postfix = super.postfix.override { withMySQL = true; }; - }) ]; users.users."${config.services.postfix.user}".extraGroups = [ "keys" ]; services.filesWatcher.postfix = { restart = true; @@ -126,8 +123,12 @@ ) config.myEnv.mail.postfix.backup_domains ); virtual_map = { - virtual = pkgs.writeText "postfix-virtual" ( + virtual = let + cfg = config.myEnv.monitoring.email_check.eldiron; + address = "${cfg.mail_address}@${cfg.mail_domain}"; + in pkgs.writeText "postfix-virtual" ( builtins.concatStringsSep "\n" ( + ["${address} 1"] ++ lib.attrsets.mapAttrsToList ( n: v: lib.optionalString v.external '' script_${n}@mail.immae.eu 1 @@ -157,7 +158,7 @@ relay_domains = let backups = lib.flatten (lib.attrsets.mapAttrsToList (n: v: v.domains or []) config.myEnv.mail.postfix.backup_domains); virtual_domains = config.myEnv.mail.postfix.additional_mailbox_domains - ++ lib.remove "localhost.immae.eu" (lib.remove null (lib.flatten (map + ++ lib.remove null (lib.flatten (map (zone: map (e: if e.receive then "${e.domain}${lib.optionalString (e.domain != "") "."}${zone.name}" @@ -166,7 +167,7 @@ (zone.withEmail or []) ) config.myEnv.dns.masterZones - ))); + )); in backups ++ virtual_domains; relay_recipient_maps = let @@ -213,13 +214,6 @@ enable = true; enableSmtp = true; enableSubmission = false; - # FIXME: Mail adressed to localhost.immae.eu will still have mx-1 as - # prioritized MX, which provokes "mail for localhost.immae.eu loops - # back to myself" errors. This transport entry forces to push - # e-mails to its right destination. - transport = '' - localhost.immae.eu smtp:[immae.eu]:25 - ''; destination = ["localhost"]; # This needs to reverse DNS hostname = config.hostEnv.fqdn;