diff options
Diffstat (limited to 'modules/private/mail/postfix.nix')
-rw-r--r-- | modules/private/mail/postfix.nix | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/modules/private/mail/postfix.nix b/modules/private/mail/postfix.nix index 51f4de7..2af1849 100644 --- a/modules/private/mail/postfix.nix +++ b/modules/private/mail/postfix.nix | |||
@@ -267,9 +267,12 @@ | |||
267 | ); | 267 | ); |
268 | }; | 268 | }; |
269 | sasl_access = { | 269 | sasl_access = { |
270 | host_sender_login = pkgs.writeText "host-sender-login" | 270 | host_sender_login = with lib.attrsets; let |
271 | (builtins.concatStringsSep "\n" (lib.flatten (lib.attrsets.mapAttrsToList | 271 | addresses = zipAttrs (lib.flatten (mapAttrsToList |
272 | (n: v: (map (e: "${e} ${n}@immae.eu") v.emails)) config.myEnv.servers))); | 272 | (n: v: (map (e: { "${e}" = "${n}@immae.eu"; }) v.emails)) config.myEnv.servers)); |
273 | joined = builtins.concatStringsSep ","; | ||
274 | in pkgs.writeText "host-sender-login" | ||
275 | (builtins.concatStringsSep "\n" (mapAttrsToList (n: v: "${n} ${joined v}") addresses)); | ||
273 | host_dummy_mailboxes = pkgs.writeText "host-virtual-mailbox" | 276 | host_dummy_mailboxes = pkgs.writeText "host-virtual-mailbox" |
274 | (builtins.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: v: "${n}@immae.eu dummy") nodes)); | 277 | (builtins.concatStringsSep "\n" (lib.attrsets.mapAttrsToList (n: v: "${n}@immae.eu dummy") nodes)); |
275 | }; | 278 | }; |