Self-host your own digital island

make eilean domain name configurable

+4
modules/default.nix
···
serverIpv4 = mkOption { type = str; };
serverIpv6 = mkOption { type = str; };
publicInterface = mkOption { type = str; };
+
domainName = mkOption {
+
type = types.str;
+
default = "vps";
+
};
};
config = {
+2 -2
modules/dns.nix
···
}
{
-
name = "vps";
+
name = cfg.domainName;
type = "A";
data = cfg.serverIpv4;
}
{
-
name = "vps";
+
name = cfg.domainName;
type = "AAAA";
data = cfg.serverIpv6;
}
+1 -1
modules/gitea.nix
···
eilean.services.dns.zones.${config.networking.domain}.records = [{
name = "git";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
# proxy port 22 on ethernet interface to internal gitea ssh server
+1 -1
modules/headscale.nix
···
eilean.services.dns.zones.${cfg.headscale.zone}.records = [{
name = "${cfg.headscale.domain}.";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
};
}
+1 -1
modules/mastodon.nix
···
eilean.services.dns.zones.${config.networking.domain}.records = [{
name = "mastodon";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
};
}
+1 -1
modules/matrix/synapse.nix
···
eilean.services.dns.zones.${config.networking.domain}.records = [{
name = "matrix";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
};
}
+1 -1
modules/radicale.nix
···
eilean.services.dns.zones.${domain}.records = [{
name = "cal";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
};
}
+1 -1
modules/turn.nix
···
eilean.services.dns.zones.${config.networking.domain}.records = [{
name = "turn";
type = "CNAME";
-
data = "vps";
+
data = cfg.domainName;
}];
};
}