This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

superconfig / 2configs / exim-smarthost.nix
1.9 kB 66 lines
1{ self, config, lib, pkgs, ... }: let 2 3 to = lib.concatStringsSep "," [ 4 "lass@green.r" 5 ]; 6 7 mails = import "${config.krebs.secret.directory}/mails.nix"; # todo make this pure somehow 8 9in { 10 imports = [ 11 self.inputs.stockholm.nixosModules.exim-smarthost 12 ]; 13 environment.systemPackages = [ pkgs.review-mail-queue ]; 14 15 krebs.exim-smarthost = { 16 enable = true; 17 dkim = [ 18 { domain = "lassul.us"; } 19 ]; 20 ssl_cert = "/var/lib/acme/mail.lassul.us/fullchain.pem"; 21 ssl_key = "/var/lib/acme/mail.lassul.us/key.pem"; 22 primary_hostname = "lassul.us"; 23 sender_domains = [ 24 "lassul.us" 25 ]; 26 relay_from_hosts = map (host: host.nets.retiolum.ip6.addr) [ 27 config.krebs.hosts.aergia 28 config.krebs.hosts.ignavia 29 config.krebs.hosts.blue 30 config.krebs.hosts.coaxmetal 31 config.krebs.hosts.green 32 config.krebs.hosts.mors 33 config.krebs.hosts.xerxes 34 ]; 35 internet-aliases = map (from: { inherit from to; }) mails ++ [ 36 ]; 37 system-aliases = [ 38 { from = "mailer-daemon"; to = "postmaster"; } 39 { from = "postmaster"; to = "root"; } 40 { from = "nobody"; to = "root"; } 41 { from = "hostmaster"; to = "root"; } 42 { from = "usenet"; to = "root"; } 43 { from = "news"; to = "root"; } 44 { from = "webmaster"; to = "root"; } 45 { from = "www"; to = "root"; } 46 { from = "ftp"; to = "root"; } 47 { from = "abuse"; to = "root"; } 48 { from = "noc"; to = "root"; } 49 { from = "security"; to = "root"; } 50 { from = "root"; to = "lass"; } 51 ]; 52 }; 53 krebs.iptables.tables.filter.INPUT.rules = [ 54 { predicate = "-p tcp --dport smtp"; target = "ACCEPT"; } 55 ]; 56 57 security.acme.certs."mail.lassul.us" = { 58 group = "lasscert"; 59 webroot = "/var/lib/acme/acme-challenge"; 60 }; 61 users.groups.lasscert.members = [ 62 "dovecot2" 63 "exim" 64 "nginx" 65 ]; 66}