Compare commits

...

4 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
kurogeek 2b239eb162 hm/emmie: use hunspell dictionary with systemd user session variables, libreoffice -> libreoffice-qt 2026-06-16 11:20:05 +07:00
kurogeek 8e64e88d8f inputs: bump home-manager 2026-06-16 11:18:34 +07:00
100 changed files with 125 additions and 83 deletions
Generated
+24 -23
View File
@@ -72,11 +72,11 @@
]
},
"locked": {
"lastModified": 1772411144,
"narHash": "sha256-WhXudztwPNnKXaqGX4DOqNfHzHdBSiGCvKGHM20pscw=",
"lastModified": 1781517972,
"narHash": "sha256-G8bIXFqifs/y62GNPwg20Ksf71raYwzmyN99gf1tXak=",
"ref": "refs/heads/main",
"rev": "92cc85bc24eb31ce5725e1e72753129810ce3fe9",
"revCount": 13201,
"rev": "7fc62d0c25c7a97d7027a9c248e21c97c9b3acc1",
"revCount": 14604,
"type": "git",
"url": "https://git.clan.lol/clan/clan-core"
},
@@ -101,11 +101,11 @@
]
},
"locked": {
"lastModified": 1772273147,
"narHash": "sha256-Wzhoc6ifjTDZi8aVRH3fuLJPdd4ouNTTwwVhgoMcMek=",
"rev": "d5de7a8d9e5726e678c94e62fe8ac3a809fee5da",
"lastModified": 1778718524,
"narHash": "sha256-pXLoI6Ax0EnUK6r34UM1vibVC7CfTu6j72R2692ZzPs=",
"rev": "12c552ad547d87254f33f33bddd1a2cdbeac754d",
"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": {
"type": "tarball",
@@ -140,11 +140,11 @@
]
},
"locked": {
"lastModified": 1771881364,
"narHash": "sha256-A5uE/hMium5of/QGC6JwF5TGoDAfpNtW00T0s9u/PN8=",
"lastModified": 1781152676,
"narHash": "sha256-RxWs5ND31KzTG7wvMM+PMfUjyNpmIEr999lqNARaM5o=",
"owner": "nix-community",
"repo": "disko",
"rev": "a4cb7bf73f264d40560ba527f9280469f1f081c6",
"rev": "ff8702b4de27f72b4c78573dfb89ec74e36abdf1",
"type": "github"
},
"original": {
@@ -353,11 +353,11 @@
]
},
"locked": {
"lastModified": 1768068402,
"narHash": "sha256-bAXnnJZKJiF7Xr6eNW6+PhBf1lg2P1aFUO9+xgWkXfA=",
"lastModified": 1781557312,
"narHash": "sha256-QOIRYSUFSq7L5mY3dZymaVhcnne3tPgoR9riB0WocjA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "8bc5473b6bc2b6e1529a9c4040411e1199c43b4c",
"rev": "c03e4752899e55705dfa63979abd885c582a5c48",
"type": "github"
},
"original": {
@@ -484,11 +484,11 @@
]
},
"locked": {
"lastModified": 1772379624,
"narHash": "sha256-NG9LLTWlz4YiaTAiRGChbrzbVxBfX+Auq4Ab/SWmk4A=",
"lastModified": 1781242433,
"narHash": "sha256-bchLZZ3sRn740zyvD2icZSnNoTaanN0nw7l6fjVXO+E=",
"owner": "nix-darwin",
"repo": "nix-darwin",
"rev": "52d061516108769656a8bd9c6e811c677ec5b462",
"rev": "aabb2037edfc0f210723b72cd5f528aab5dd3f0b",
"type": "github"
},
"original": {
@@ -673,11 +673,11 @@
]
},
"locked": {
"lastModified": 1772340640,
"narHash": "sha256-1nq7+Kt5IUBD8Hu3nptVPbMf+22rNJoHT0t9L1X+GKA=",
"lastModified": 1780547341,
"narHash": "sha256-Gq8KNx5A7hBB3uGJaj6eQfLDIz5YdLu92gqBcvHvoUo=",
"owner": "Mic92",
"repo": "sops-nix",
"rev": "dec4d8eac700dcd2fe3c020857d3ee220ec147f1",
"rev": "9ed65852b6257fbeae4355bc24ecfea307ca759a",
"type": "github"
},
"original": {
@@ -764,15 +764,16 @@
},
"systems": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"lastModified": 1774449309,
"narHash": "sha256-brhZ8DmuGtzkCYHJg4HEd602amKm89Y9ytsFZ5uWD1w=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"rev": "c29398b59d2048c4ab79345812849c9bd15e9150",
"type": "github"
},
"original": {
"owner": "nix-systems",
"ref": "future-26.11",
"repo": "default",
"type": "github"
}
+21 -2
View File
@@ -102,7 +102,13 @@
name = "zerotier";
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 = { };
};
@@ -111,7 +117,13 @@
name = "zerotier";
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 = { };
};
@@ -166,6 +178,7 @@
input = "clan-core";
};
roles.default.tags."phonebox" = { };
roles.default.settings.extraYggdrasilIPs = [ "200:c806:c13b:b855:723f:473:55:7904" ];
roles.default.settings.extraPeers = [
"tls://ygg.jjolly.dev:3443"
"tls://[2602:fc24:18:7a42::1]:993"
@@ -183,6 +196,12 @@
roles.default.machines."adhil".settings = {
ata-ethernet-iface = "end0";
};
roles.default.machines."rigel".settings = {
extraClientNumbers = [
"01"
"02"
];
};
};
pulse-stream = {
-1
View File
@@ -10,7 +10,6 @@
};
system.stateVersion = "25.11";
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
-1
View File
@@ -9,7 +9,6 @@
clan.core.settings.machine.description = "A Hetzner VPS machine own by Alex.";
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 = {
share = true;
-11
View File
@@ -1,18 +1,7 @@
{ config, ... }:
{
imports = [
(import ../../lib/auto-accept-zerotier-members.nix {
memberIds = [
"dbe44c0287" # Alex-gateway
"b0e0b84fd3" # Alex
"2bd36db8cc" # kurogeek-thinkpad
];
})
];
system.stateVersion = "25.11";
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";
}
-8
View File
@@ -10,17 +10,9 @@
(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.networking.targetHost = "root@[${config.clan.core.vars.generators.zerotier.files.zerotier-ip.value}]";
clan.core.settings.machine.description = "Glom NAS";
+19 -4
View File
@@ -79,14 +79,32 @@
inputs,
...
}:
let
dictionaries =
with pkgs;
(hunspellWithDicts (
with hunspellDicts;
[
en-us-large
th-th
]
));
in
{
imports = [ inputs.plasma-manager.homeModules.plasma-manager ];
systemd.user.sessionVariables = {
DICPATH = "${dictionaries}/share/hunspell";
};
home = {
homeDirectory = lib.mkForce "/home/${username}";
stateVersion = osConfig.system.stateVersion;
packages = with pkgs; [
libreoffice-fresh
libreoffice-qt6
dictionaries
element-desktop
signal-desktop
brave
@@ -95,9 +113,6 @@
thunderbird
wasabiwallet
protonmail-desktop
hunspellDicts.en-us-large
hunspellDicts.th-th
];
};
programs.chromium.package = pkgs.brave;
+28
View File
@@ -24,6 +24,11 @@
description = "";
default = "";
};
options.extraClientNumbers = lib.mkOption {
type = with lib.types; listOf str;
description = "List of client suffix number.";
default = [ ];
};
};
perInstance =
{
@@ -126,6 +131,22 @@
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 =
{ localNumber }:
''
@@ -356,6 +377,9 @@
+ (genLocalExtenConf {
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
})
+ lib.concatStringsSep "\n" (
builtins.map (number: genLocalExtenConf { localNumber = number; }) settings.extraClientNumbers
)
+ serverConf;
"rtp.conf" = ''
@@ -387,6 +411,7 @@
[base_endpoint](!)
type=endpoint
transport=transport-udp
disallow=all
allow=ulaw,alaw,g722,gsm
direct_media=no
@@ -409,6 +434,9 @@
+ (genLocalSIPEndpoint {
localNumber = config.clan.core.vars.generators.phonebox.files.ata-local-number.value;
})
+ lib.concatStringsSep "\n" (
builtins.map (number: genLocalSIPEndpointV6 { localNumber = number; }) settings.extraClientNumbers
)
+ 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