diff --git a/hosts/desktop.nix b/hosts/desktop.nix index 6f5152c..de98c63 100644 --- a/hosts/desktop.nix +++ b/hosts/desktop.nix @@ -34,6 +34,7 @@ in networking = { networkmanager.enable = true; + resolvconf.enable = false; # prevent default nameservers nameservers = [ "1.1.1.1" "1.0.0.1" ]; }; @@ -56,10 +57,13 @@ in # To prevent `Unit dconf.service not found.` after theming GTK in HM programs.dconf.enable = true; - networking.hosts = { - "192.168.0.26" = [ "elnuhub.local" ]; - "24.199.72.8" = [ "elnudrop.local" ]; - }; + networking.extraHosts = '' + 192.168.0.26 elnuhub + 192.168.0.26 elnuhub.local + 24.199.72.8 elnudrop + 24.199.72.8 elnudrop.local + ${tailscale.hosts} + ''; #sound.enable = true; #hardware.pulseaudio.enable = true; diff --git a/hosts/elnudrop/hosts/jichan.org/default.nix b/hosts/elnudrop/hosts/jichan.org/default.nix index 372a65a..9c16b7a 100644 --- a/hosts/elnudrop/hosts/jichan.org/default.nix +++ b/hosts/elnudrop/hosts/jichan.org/default.nix @@ -1,3 +1,4 @@ +with import ../../../../modules/tailscale/default.nix; let host = "jichan.org"; in { services.nginx.virtualHosts."www.${host}" = { forceSSL = true; @@ -11,7 +12,7 @@ let host = "jichan.org"; in { error_page 502 /502.html; ''; locations = { - "/".proxyPass = "http://elnuhub:3334"; + "/".proxyPass = "http://${elnuhub}:3334"; "/502.html".root = "${./502}"; "/logo.svg".root = "${./502}"; "/missing.min.css".root = "${../shared/502}"; @@ -19,7 +20,7 @@ let host = "jichan.org"; in { # Formerly tatoeba.elnu.com # https://git.elnu.com/ElnuDev/tatoeba-api "/api/tatoeba/" = { - proxyPass = "http://elnuhub:3001"; + proxyPass = "http://${elnuhub}:3001"; extraConfig = '' rewrite ^/api/tatoeba/(.*) /$1 break; ''; @@ -28,7 +29,7 @@ let host = "jichan.org"; in { # Formerly images.elnu.com # https://git.elnu.com/ElnuDev/image-api "/api/images/" = { - proxyPass = "http://elnuhub:3002"; + proxyPass = "http://${elnuhub}:3002"; extraConfig = '' rewrite ^/api/images/(.*) /$1 break; ''; diff --git a/hosts/elnudrop/hosts/tegakituesday.com/default.nix b/hosts/elnudrop/hosts/tegakituesday.com/default.nix index 64d256c..91e5c7a 100644 --- a/hosts/elnudrop/hosts/tegakituesday.com/default.nix +++ b/hosts/elnudrop/hosts/tegakituesday.com/default.nix @@ -12,7 +12,7 @@ let host = "tegakituesday.com"; in { error_page 502 /502.html; ''; locations = { - "/".proxyPass = "http://elnuhub:3335"; + "/".proxyPass = "http://${elnuhub}:3335"; "/502.html".root = "${./502}"; "/mascot.png".root = "${./502}"; "/missing.min.css".root = "${../shared/502}"; diff --git a/hosts/elnudrop/modules/headscale.nix b/hosts/elnudrop/modules/headscale.nix index 6463a0f..909f233 100644 --- a/hosts/elnudrop/modules/headscale.nix +++ b/hosts/elnudrop/modules/headscale.nix @@ -10,10 +10,7 @@ in { port = 8080; settings = { server_url = "https://${domain}"; - dns_config = { - base_domain = baseDomain; - domains = [ baseDomain ]; - }; + dns_config.base_domain = baseDomain; }; }; environment.systemPackages = [ config.services.headscale.package ]; diff --git a/modules/tailscale/default.nix b/modules/tailscale/default.nix new file mode 100644 index 0000000..a7ffce8 --- /dev/null +++ b/modules/tailscale/default.nix @@ -0,0 +1,10 @@ +rec { + elnu = "100.64.0.1"; + elnudrop = "100.64.0.2"; + elnuhub = "100.64.0.3"; + hosts = '' + ${elnu} elnu.elnu.com + ${elnudrop} elnudrop.elnu.com + ${elnuhub} elnuhub.elnu.com + ''; +} \ No newline at end of file