nix-dotfiles/nixosModules/services/headscale/service.nix

27 lines
658 B
Nix
Raw Normal View History

2025-07-09 19:32:34 -07:00
{ config, lib, ... }:
{
options.headscale = {
enable = lib.mkEnableOption "Enable headscale";
server = {
port = lib.mkOption { default = 7204; };
domain = lib.mkOption { type = lib.types.str; };
};
};
config = lib.mkIf config.headscale.enable {
networking.firewall.allowedUDPPorts = [ 3478 ];
services.headscale = {
enable = true;
port = config.headscale.server.port;
settings = {
server_url = "https://${config.headscale.server.domain}";
dns = {
2025-09-16 18:45:24 -07:00
base_domain = "dns.${config.headscale.server.domain}";
2025-07-09 19:32:34 -07:00
override_local_dns = false;
};
};
};
};
}