diff options
Diffstat (limited to 'krebs/4lib/types.nix')
-rw-r--r-- | krebs/4lib/types.nix | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/krebs/4lib/types.nix b/krebs/4lib/types.nix index c596d0f9d..6c396a132 100644 --- a/krebs/4lib/types.nix +++ b/krebs/4lib/types.nix @@ -119,16 +119,18 @@ types // rec { default = {}; }; tinc = mkOption { - type = let net-config = config; in nullOr (submodule ({ config, ... }: { + type = let net = config; in nullOr (submodule ({ config, ... }: { options = { config = mkOption { type = str; - default = '' - ${optionalString (net-config.via != null) - (concatMapStringsSep "\n" (a: "Address = ${a}") net-config.via.addrs)} - ${concatMapStringsSep "\n" (a: "Subnet = ${a}") net-config.addrs} - ${config.pubkey} - ''; + default = concatStringsSep "\n" ( + (optionals (net.via != null) + (map (a: "Address = ${a}") net.via.addrs)) + ++ + (map (a: "Subnet = ${a}") net.addrs) + ++ + [config.pubkey] + ); }; pubkey = mkOption { type = str; |