X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=modules%2Fprivate%2Fdns.nix;h=8fc40454b78b3bd4df6196c4071ded05d923485e;hb=776aa3603903616702b8bc1d9e955d3a6da9ee1e;hp=120c46c3d020faa052045ef26755564a98524b90;hpb=05becbbb4be5cd18cb12d60a2d2bc0fbcda74fe4;p=perso%2FImmae%2FConfig%2FNix.git diff --git a/modules/private/dns.nix b/modules/private/dns.nix index 120c46c..8fc4045 100644 --- a/modules/private/dns.nix +++ b/modules/private/dns.nix @@ -48,7 +48,7 @@ ${cfg.extraConfig} ${ lib.concatMapStrings - ({ name, file, master ? true, extra ? "", slaves ? [], masters ? [] }: + ({ name, file, master ? true, extraConfig ? "", slaves ? [], masters ? [] }: '' zone "${name}" { type ${if master then "master" else "slave"}; @@ -66,10 +66,10 @@ }; '' else ""} allow-query { any; }; - ${extra} + ${extraConfig} }; '') - cfg.zones } + (builtins.attrValues cfg.zones) } ''; mxes = lib.attrsets.filterAttrs (n: v: v.mx.enable) @@ -84,6 +84,26 @@ (_: v: "${n} IN MX ${v.mx.priority} ${v.mx.subdomain}.${conf.name}.") mxes); in lib.mkIf config.myServices.dns.enable { + myServices.chatonsProperties.hostings.dns-secondaire = { + file.datetime = "2022-08-22T02:00:00"; + hosting = { + name = "DNS secondaire"; + description = "DNS secondaire"; + website = "ns1.immae.eu"; + status.level = "OK"; + status.description = "OK"; + registration.load = "OPEN"; + install.type = "PACKAGE"; + }; + software = { + name = "bind9"; + website = pkgs.bind.meta.homepage; + license.url = pkgs.bind.meta.license.url; + license.name = pkgs.bind.meta.license.fullName; + version = pkgs.bind.version; + source.url = "https://www.isc.org/download/"; + }; + }; networking.firewall.allowedUDPPorts = [ 53 ]; networking.firewall.allowedTCPPorts = [ 53 ]; users.users.named.extraGroups = [ "keys" ]; @@ -124,11 +144,13 @@ masters = if lib.attrsets.hasAttr "masters" conf then lib.lists.flatten (map (n: lib.attrsets.attrValues ns.${n}) conf.masters) else []; + slaves = []; }) slaveZones) ++ (map (conf: { name = conf.name; master = true; - extra = if lib.attrsets.hasAttr "extra" conf then conf.extra else ""; + extraConfig = if lib.attrsets.hasAttr "extra" conf then conf.extra else ""; + masters = []; slaves = if lib.attrsets.hasAttr "slaves" conf then lib.lists.flatten (map (n: lib.attrsets.attrValues ns.${n}) conf.slaves) else [];