Compare commits

..

2 Commits

Author SHA1 Message Date
kurogeek 421a49b463 mob next [ci-skip] [ci skip] [skip ci]
lastFile:modules/clan/phonebox/default.nix
2026-06-19 16:32:43 +07:00
kurogeek 77b487a709 clancore bumped, zerotier migration 2026-06-16 15:01:21 +07:00
99 changed files with 103 additions and 76 deletions
Generated
+21 -20
View File
@@ -72,11 +72,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772411144, "lastModified": 1781517972,
"narHash": "sha256-WhXudztwPNnKXaqGX4DOqNfHzHdBSiGCvKGHM20pscw=", "narHash": "sha256-G8bIXFqifs/y62GNPwg20Ksf71raYwzmyN99gf1tXak=",
"ref": "refs/heads/main", "ref": "refs/heads/main",
"rev": "92cc85bc24eb31ce5725e1e72753129810ce3fe9", "rev": "7fc62d0c25c7a97d7027a9c248e21c97c9b3acc1",
"revCount": 13201, "revCount": 14604,
"type": "git", "type": "git",
"url": "https://git.clan.lol/clan/clan-core" "url": "https://git.clan.lol/clan/clan-core"
}, },
@@ -101,11 +101,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772273147, "lastModified": 1778718524,
"narHash": "sha256-Wzhoc6ifjTDZi8aVRH3fuLJPdd4ouNTTwwVhgoMcMek=", "narHash": "sha256-pXLoI6Ax0EnUK6r34UM1vibVC7CfTu6j72R2692ZzPs=",
"rev": "d5de7a8d9e5726e678c94e62fe8ac3a809fee5da", "rev": "12c552ad547d87254f33f33bddd1a2cdbeac754d",
"type": "tarball", "type": "tarball",
"url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/d5de7a8d9e5726e678c94e62fe8ac3a809fee5da.tar.gz" "url": "https://git.clan.lol/api/v1/repos/clan/data-mesher/archive/12c552ad547d87254f33f33bddd1a2cdbeac754d.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
@@ -140,11 +140,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1771881364, "lastModified": 1781152676,
"narHash": "sha256-A5uE/hMium5of/QGC6JwF5TGoDAfpNtW00T0s9u/PN8=", "narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
"owner": "nix-community", "owner": "nix-community",
"repo": "disko", "repo": "disko",
"rev": "a4cb7bf73f264d40560ba527f9280469f1f081c6", "rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -484,11 +484,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772379624, "lastModified": 1781242433,
"narHash": "sha256-NG9LLTWlz4YiaTAiRGChbrzbVxBfX+Auq4Ab/SWmk4A=", "narHash": "sha256-bchLZZ3sRn740zyvD2icZSnNoTaanN0nw7l6fjVXO+E=",
"owner": "nix-darwin", "owner": "nix-darwin",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "52d061516108769656a8bd9c6e811c677ec5b462", "rev": "aabb2037edfc0f210723b72cd5f528aab5dd3f0b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -673,11 +673,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1772340640, "lastModified": 1780547341,
"narHash": "sha256-1nq7+Kt5IUBD8Hu3nptVPbMf+22rNJoHT0t9L1X+GKA=", "narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "dec4d8eac700dcd2fe3c020857d3ee220ec147f1", "rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -764,15 +764,16 @@
}, },
"systems": { "systems": {
"locked": { "locked": {
"lastModified": 1681028828, "lastModified": 1774449309,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", "narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
"owner": "nix-systems", "owner": "nix-systems",
"repo": "default", "repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", "rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-systems", "owner": "nix-systems",
"ref": "future-26.11",
"repo": "default", "repo": "default",
"type": "github" "type": "github"
} }
+21 -2
View File
@@ -102,7 +102,13 @@
name = "zerotier"; name = "zerotier";
input = "clan-core"; input = "clan-core";
}; };
roles.controller.machines."vega" = { }; roles.controller.machines."vega" = {
settings.allowedIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
};
roles.peer.tags.glom = { }; roles.peer.tags.glom = { };
}; };
@@ -111,7 +117,13 @@
name = "zerotier"; name = "zerotier";
input = "clan-core"; input = "clan-core";
}; };
roles.controller.machines."rigel" = { }; roles.controller.machines."rigel" = {
settings.allowedIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
};
roles.peer.tags.b4l = { }; roles.peer.tags.b4l = { };
}; };
@@ -166,6 +178,7 @@
input = "clan-core"; input = "clan-core";
}; };
roles.default.tags."phonebox" = { }; roles.default.tags."phonebox" = { };
roles.default.settings.extraYggdrasilIPs = [ "200:c806:c13b:b855:723f:473:55:7904" ];
roles.default.settings.extraPeers = [ roles.default.settings.extraPeers = [
"tls://ygg.jjolly.dev:3443" "tls://ygg.jjolly.dev:3443"
"tls://[2602:fc24:18:7a42::1]:993" "tls://[2602:fc24:18:7a42::1]:993"
@@ -183,6 +196,12 @@
roles.default.machines."adhil".settings = { roles.default.machines."adhil".settings = {
ata-ethernet-iface = "end0"; ata-ethernet-iface = "end0";
}; };
roles.default.machines."rigel".settings = {
extraClientNumbers = [
"01"
"02"
];
};
}; };
pulse-stream = { pulse-stream = {
-1
View File
@@ -10,7 +10,6 @@
}; };
system.stateVersion = "25.11"; system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ]; clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
networking.interfaces.enx00e04c106368.useDHCP = true; # recovery networking.interfaces.enx00e04c106368.useDHCP = true; # recovery
-1
View File
@@ -9,7 +9,6 @@
clan.core.settings.machine.description = "A Hetzner VPS machine own by Alex."; clan.core.settings.machine.description = "A Hetzner VPS machine own by Alex.";
clan.core.sops.defaultGroups = [ "admins" ]; clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.vars.generators.acme = { clan.core.vars.generators.acme = {
share = true; share = true;
-11
View File
@@ -1,18 +1,7 @@
{ config, ... }: { config, ... }:
{ {
imports = [
(import ../../lib/auto-accept-zerotier-members.nix {
memberIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
})
];
system.stateVersion = "25.11"; system.stateVersion = "25.11";
clan.core.sops.defaultGroups = [ "admins" ]; clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.settings.machine.description = "Zima board computer for testing in B4L"; clan.core.settings.machine.description = "Zima board computer for testing in B4L";
} }
-8
View File
@@ -10,17 +10,9 @@
(inputs.import-tree ./services) (inputs.import-tree ./services)
(import ../../lib/auto-accept-zerotier-members.nix {
memberIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
})
]; ];
clan.core.sops.defaultGroups = [ "admins" ]; clan.core.sops.defaultGroups = [ "admins" ];
clan.core.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.settings.machine.description = "Glom NAS"; clan.core.settings.machine.description = "Glom NAS";
+28
View File
@@ -24,6 +24,11 @@
description = ""; description = "";
default = ""; default = "";
}; };
options.extraClientNumbers = lib.mkOption {
type = with lib.types; listOf str;
description = "List of client suffix number.";
default = [ ];
};
}; };
perInstance = perInstance =
{ {
@@ -126,6 +131,22 @@
remove_existing=yes remove_existing=yes
''; '';
genLocalSIPEndpointV6 =
{ localNumber }:
''
[${localNumber}](internal_endpoint)
transport=transport-udp6
aors=${localNumber}
auth=${localNumber}
[${localNumber}](userpass_auth)
username=${localNumber}
password=${localNumber}
[${localNumber}](dynamiic_aor)
max_contacts=1
'';
genLocalExtenConf = genLocalExtenConf =
{ localNumber }: { localNumber }:
'' ''
@@ -356,6 +377,9 @@
+ (genLocalExtenConf { + (genLocalExtenConf {
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value; localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
}) })
+ lib.concatStringsSep "\n" (
builtins.map (number: genLocalExtenConf { localNumber = number; }) settings.extraClientNumbers
)
+ serverConf; + serverConf;
"rtp.conf" = '' "rtp.conf" = ''
@@ -387,6 +411,7 @@
[base_endpoint](!) [base_endpoint](!)
type=endpoint type=endpoint
transport=transport-udp
disallow=all disallow=all
allow=ulaw,alaw,g722,gsm allow=ulaw,alaw,g722,gsm
direct_media=no direct_media=no
@@ -409,6 +434,9 @@
+ (genLocalSIPEndpoint { + (genLocalSIPEndpoint {
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value; localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
}) })
+ lib.concatStringsSep "\n" (
builtins.map (number: genLocalSIPEndpointV6 { localNumber = number; }) settings.extraClientNumbers
)
+ serverConf; + serverConf;
}; };
}; };
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/alasia
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/bosona
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/canopus
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/deneb
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/neptune
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/petra
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/ramus
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/rana
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/rigel
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/sirius
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -1 +0,0 @@
../../../../../../sops/groups/admins
@@ -1 +0,0 @@
../../../../../../sops/machines/vega
@@ -1 +0,0 @@
../../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/alasia
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/bosona
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/canopus
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/deneb
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/neptune
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/petra
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/ramus
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/rana
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/rigel
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/sirius
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek
@@ -0,0 +1 @@
../../../../../sops/groups/admins
@@ -0,0 +1 @@
../../../../../sops/machines/vega
@@ -0,0 +1 @@
../../../../../sops/users/kurogeek