nix-stuff/roles/server/headscale.nix

30 lines
782 B
Nix

{lib, ...}: {
services.headscale = {
enable = true;
settings = {
server_url = "https://headscale.toast003.xyz";
prefixes.v4 = "100.100.0.0/16";
dns = {
base_domain = "tailscale";
nameservers.global = ["9.9.9.9"];
override_local_dns = true;
};
};
};
services.caddy = {
virtualHosts.headscale = {
hostName = "headscale.toast003.xyz";
extraConfig = ''
reverse_proxy localhost:8080
'';
};
};
programs.rust-motd.settings.service_status.Headscale = "headscale";
systemd = {
services.tailscaled.after = ["headscale.service"];
services.headscale = {
serviceConfig.RestartSec = lib.mkForce "120s";
unitConfig.StartLimitBurst = lib.mkForce "infinity";
};
};
}