mirror of
https://codeberg.org/jopejoe1/nix-conf.git
synced 2025-01-01 14:36:34 +01:00
Some dns changes
This commit is contained in:
parent
20855e7add
commit
ce3c582063
5 changed files with 64 additions and 3 deletions
|
@ -73,6 +73,12 @@
|
|||
inputs.darwin.follows = "nix-darwin";
|
||||
};
|
||||
|
||||
dns = {
|
||||
url = github:kirelagin/dns.nix;
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
};
|
||||
|
||||
# Dependcies
|
||||
flake-compat = {
|
||||
url = github:edolstra/flake-compat;
|
||||
|
|
|
@ -2,7 +2,12 @@
|
|||
|
||||
with lib;
|
||||
#with lib.internal;
|
||||
let cfg = config.custom.system.dns;
|
||||
let
|
||||
cfg = config.custom.system.dns;
|
||||
zones = {
|
||||
"geek" = import ./geek.nix pkgs;
|
||||
"glue" = import ./glue.nix pkgs;
|
||||
};
|
||||
in
|
||||
{
|
||||
options.custom.system.dns = with types; {
|
||||
|
@ -17,12 +22,12 @@ in
|
|||
"geek" = {
|
||||
master = false;
|
||||
masters = [ "202.83.95.229" ];
|
||||
file = "/etc/bind/zones/slaves/geek.zone";
|
||||
file = "${pkgs.openic-dns-root-data}/geek.zone";
|
||||
};
|
||||
"glue" = {
|
||||
master = false;
|
||||
masters = [ "195.201.99.61" "168.119.153.26" ];
|
||||
file = "/etc/bind/zones/slaves/glue.zone";
|
||||
file = "${pkgs.openic-dns-root-data}/glue.zone";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
15
packages/opennic-dns-root-data/default.nix
Normal file
15
packages/opennic-dns-root-data/default.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ stdenv, lib, dns }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
pname = "openic-dns-root-data";
|
||||
|
||||
buildCommand = ''
|
||||
mkdir $out
|
||||
echo "${dns.lib.toString "example.com" (import ./geek.nix { inherit dns; })}" > $out/geek.zone
|
||||
echo "${dns.lib.toString "example.com" (import ./geek.nix { inherit dns; })}" > $out/glue.zone
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "DNS root data including root zone for openic";
|
||||
};
|
||||
}
|
15
packages/opennic-dns-root-data/geek.nix
Normal file
15
packages/opennic-dns-root-data/geek.nix
Normal file
|
@ -0,0 +1,15 @@
|
|||
{ dns }:
|
||||
|
||||
with dns.lib.combinators;
|
||||
|
||||
{
|
||||
SOA = {
|
||||
nameServer = "ns2";
|
||||
adminEmail = "shdwdrgn@sourpuss.net";
|
||||
serial = 2019030800;
|
||||
};
|
||||
|
||||
NS = [
|
||||
"ns2.opennic.glue."
|
||||
];
|
||||
}
|
20
packages/opennic-dns-root-data/glue.nix
Normal file
20
packages/opennic-dns-root-data/glue.nix
Normal file
|
@ -0,0 +1,20 @@
|
|||
{ dns }:
|
||||
|
||||
with dns.lib.combinators;
|
||||
|
||||
{
|
||||
SOA = {
|
||||
nameServer = "ns0";
|
||||
adminEmail = "shdwdrgn@sourpuss.net";
|
||||
serial = 2019030800;
|
||||
};
|
||||
|
||||
NS = [
|
||||
"ns0.opennic.glue."
|
||||
];
|
||||
|
||||
subdomains = {
|
||||
"ns0.opennic".A = [ "195.201.99.61" "168.119.153.26" ];
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in a new issue