Self-host your own digital island
1{ pkgs, config, lib, ... }: 2 3let cfg = config.eilean.services.dns; 4in lib.mkIf (cfg.enable && cfg.server == "eon") { 5 services.eon = { 6 enable = true; 7 application = "capd"; 8 capnpAddress = lib.mkDefault config.networking.domain; 9 zoneFiles = let 10 mapZonefile = zonename: zone: 11 "${ 12 import ./zonefile.nix { inherit pkgs config lib zonename zone; } 13 }/${zonename}"; 14 in lib.attrsets.mapAttrsToList mapZonefile cfg.zones; 15 }; 16}