diff options
-rw-r--r-- | lib/types.nix | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lib/types.nix b/lib/types.nix index c50969d..b6c266c 100644 --- a/lib/types.nix +++ b/lib/types.nix @@ -113,7 +113,7 @@ rec { default = null; }; addrs = mkOption { - type = listOf addr; + type = listOf (either addr str); default = optional (config.ip4 != null) config.ip4.addr ++ optional (config.ip6 != null) config.ip6.addr; @@ -187,6 +187,8 @@ rec { [config.extraConfig] ++ [config.pubkey] + ++ + optional (config.weight != null) "Weight = ${toString config.weight}" ); defaultText = '' Address = ‹addr› ‹port› # for each ‹net.via.addrs› @@ -217,6 +219,15 @@ rec { description = "tinc subnets"; default = []; }; + weight = mkOption { + type = nullOr int; + description = '' + global tinc weight (latency in ms) of this particular node. + can be set to some high value to make it unprobable to be used as router. + if set to null, tinc will autogenerate the value based on latency. + ''; + default = if net.via != null then null else 300; + }; }; })); default = null; |