summaryrefslogtreecommitdiff
path: root/sys/ns
diff options
context:
space:
mode:
Diffstat (limited to 'sys/ns')
-rw-r--r--sys/ns/ns.nix7
-rw-r--r--sys/ns/rr.nix20
2 files changed, 15 insertions, 12 deletions
diff --git a/sys/ns/ns.nix b/sys/ns/ns.nix
index ccd55f6..f23fccf 100644
--- a/sys/ns/ns.nix
+++ b/sys/ns/ns.nix
@@ -14,6 +14,7 @@ in
primary = mkOption {
type = str;
+ default = "ns1";
};
};
@@ -21,7 +22,7 @@ in
# https://docs.gandi.net/en/domain_names/advanced_users/secondary_nameserver.html
nsdConfig =
let
- gandiSecondary = [
+ providerSecondary = [
"37.205.15.45 ${tsigName}" # ns3.vpsfree.cz
"37.205.11.85 ${tsigName}" # ns4.vpsfree.cz
"2a03:3b40:fe:2be::1 ${tsigName}" # ns3.vpsfree.cz
@@ -29,8 +30,8 @@ in
];
in
{
- notify = gandiSecondary;
- provideXFR = gandiSecondary;
+ notify = providerSecondary;
+ provideXFR = providerSecondary;
};
ns = [
diff --git a/sys/ns/rr.nix b/sys/ns/rr.nix
index 8f9318d..a007c4a 100644
--- a/sys/ns/rr.nix
+++ b/sys/ns/rr.nix
@@ -41,7 +41,7 @@ in
type = with lib.types; attrsOf (submodule ({ config, name, ... }:
let
- nameOption = mkOption {
+ nameOption = extra: mkOption (extra // {
type = domainRefType;
apply = value:
@@ -50,13 +50,13 @@ in
else if ! hasSuffix "." value
then "${value}.${name}."
else value;
- };
+ });
rrType = options: mkOption {
default = [ ];
type = listOf (submodule {
options = options // {
- name = nameOption;
+ name = nameOption { };
ttl = mkOption {
type = int;
@@ -103,7 +103,7 @@ in
type = listOf
(submodule {
options = {
- name = nameOption;
+ name = nameOption { };
ttl = mkOption {
type = int;
@@ -132,10 +132,12 @@ in
default = config.defaultTTL;
};
- primary = nameOption;
+ primary = nameOption { default = "ns1"; };
hostmaster = mkOption {
type = emailType;
+ default = "hostmaster";
+
apply = address:
let
split = splitString "@" address;
@@ -187,11 +189,11 @@ in
};
cname = rrType {
- target = nameOption;
+ target = nameOption { };
};
mx = rrType {
- host = nameOption;
+ host = nameOption { };
priority = mkOption {
type = int;
@@ -199,11 +201,11 @@ in
};
ns = rrType {
- host = nameOption;
+ host = nameOption { };
};
srv = rrType {
- host = nameOption;
+ host = nameOption { };
port = mkOption {
type = port;