diff --git a/machines/neptune/configuration.nix b/machines/neptune/configuration.nix index 411cb4f..375fc39 100644 --- a/machines/neptune/configuration.nix +++ b/machines/neptune/configuration.nix @@ -7,7 +7,7 @@ clan.core.sops.defaultGroups = [ "admins" ]; clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]"; - clan.core.meta.name = "neptune"; - clan.core.meta.description = "Radxa SBC board for testing."; + clan.meta.name = "neptune"; + clan.meta.description = "Radxa SBC board for testing."; } diff --git a/modules/clan/phonebox/default.nix b/modules/clan/phonebox/default.nix index 078a512..d1c47ac 100644 --- a/modules/clan/phonebox/default.nix +++ b/modules/clan/phonebox/default.nix @@ -73,6 +73,18 @@ exten => _${prefixNumber}XXX,1,Dial(PJSIP/''${EXTEN:1}@${hostname},30) ''; + getYggdrasilIP = + machineName: + if config.clan.core.vars.generators.yggdrasil.files.yggdrasil-ip ? value then + clanLib.getPublicValue { + flake = config.clan.core.settings.directory; + machine = machineName; + generator = "yggdrasil"; + file = "yggdrasil-ip"; + default = null; + } + else + throw "clanService/yggdrasil is required"; in { clan.core.vars.generators.phonebox = { @@ -200,14 +212,8 @@ ++ [ { hostname = name; - address = clanLib.vars.getPublicValue { - flake = config.clan.core.settings.directory; - machine = name; - generator = "yggdrasil"; - file = "yggdrasil-ip"; - default = null; - }; - prefixNumber = clanLib.vars.getPublicValue { + address = getYggdrasilIP name; + prefixNumber = clanLib.getPublicValue { flake = config.clan.core.settings.directory; machine = name; generator = "phonebox"; @@ -215,7 +221,7 @@ default = null; }; - localNumber = clanLib.vars.getPublicValue { + localNumber = clanLib.getPublicValue { flake = config.clan.core.settings.directory; machine = name; generator = "phonebox";