abandoned systemd-dhcp module.
Made convience function for calculating pool size and offset from range instead.
This commit is contained in:
parent
6ddbf26049
commit
98a92683bd
|
@ -1,5 +1,7 @@
|
||||||
{lib}: {
|
{lib}:let
|
||||||
imports=[./net.nix];
|
net = import ./net.nix {inherit lib;};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
dirToStrings = dir: (map (v: builtins.readFile "${dir}/${v}")
|
dirToStrings = dir: (map (v: builtins.readFile "${dir}/${v}")
|
||||||
(builtins.filter (v:
|
(builtins.filter (v:
|
||||||
|
@ -11,4 +13,10 @@
|
||||||
)
|
)
|
||||||
else []
|
else []
|
||||||
)));
|
)));
|
||||||
|
|
||||||
|
|
||||||
|
calcSystemdDhcpPoolOffset = {base, start, end}: {
|
||||||
|
offset = net.lib.net.ip.diff start base;
|
||||||
|
size = net.lib.net.ip.diff end start;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
imports=[./systemd-dhcpServ.nix];
|
|
||||||
}
|
|
|
@ -1,108 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
pkgs,
|
|
||||||
lib,
|
|
||||||
inputs,
|
|
||||||
...
|
|
||||||
}: {
|
|
||||||
options = {
|
|
||||||
host.systemdDhcpSrv = {
|
|
||||||
enable = lib.mkEnableOption "systemd DHCP server";
|
|
||||||
|
|
||||||
interface = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "interface to run dhcp server on";
|
|
||||||
};
|
|
||||||
|
|
||||||
uplinkInterface = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "if dns, router, or ntp are set but no adresses are set, pass on the settings of this interface.";
|
|
||||||
default = ":auto";
|
|
||||||
};
|
|
||||||
|
|
||||||
pool = lib.mkOption {
|
|
||||||
description = "the pool of ips the dhcp server will hand out.";
|
|
||||||
type = lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
start = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "starting IP of the range the dhcp server will assign";
|
|
||||||
};
|
|
||||||
end = lib.mkOption {
|
|
||||||
type = lib.types.str;
|
|
||||||
description = "ending IP of the range the dhcp server will assign";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
time = lib.mkOption {
|
|
||||||
type = lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
default = lib.mkOption {
|
|
||||||
description = "the default dhcp lease time, in seconds, defaults to 1h";
|
|
||||||
type = lib.types.nullOr lib.types.int;
|
|
||||||
default = null;
|
|
||||||
};
|
|
||||||
max = lib.mkOption {
|
|
||||||
description = "the max dhcp lease time, in seconds. defaults to 12h";
|
|
||||||
type = lib.types.nullOr lib.types.int;
|
|
||||||
default = null;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
dns = lib.mkoption {
|
|
||||||
type = lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
enable = lib.mkOption {
|
|
||||||
type = lib.types.bool;
|
|
||||||
default = true;
|
|
||||||
description = "whether to include dns server info in the dhcp lease";
|
|
||||||
};
|
|
||||||
servers = lib.mkOption {
|
|
||||||
type = lib.types.listOf lib.types.str;
|
|
||||||
description = "IPs of dns servers to hand out";
|
|
||||||
default = [];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
router = lib.mkoption {
|
|
||||||
type = lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
enable = lib.mkOption {
|
|
||||||
type = lib.types.bool;
|
|
||||||
default = true;
|
|
||||||
description = "whether to include router (gateway) info in the dhcp lease";
|
|
||||||
};
|
|
||||||
servers = lib.mkOption {
|
|
||||||
type = lib.types.listOf lib.types.str;
|
|
||||||
description = "IPs of dns servers to hand out";
|
|
||||||
default = [];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
ntp = lib.mkoption {
|
|
||||||
type = lib.types.submodule {
|
|
||||||
options = {
|
|
||||||
enable = lib.mkOption {
|
|
||||||
type = lib.types.bool;
|
|
||||||
default = true;
|
|
||||||
description = "whether to include ntp server info in the dhcp lease";
|
|
||||||
};
|
|
||||||
servers = lib.mkOption {
|
|
||||||
type = lib.types.listOf lib.types.str;
|
|
||||||
description = "IPs of ntp servers to hand out";
|
|
||||||
default = [];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
Loading…
Reference in a new issue