From ae026883ed5e03b3642540bf261506ab9f249997 Mon Sep 17 00:00:00 2001 From: oqyude Date: Sun, 9 Aug 2026 01:26:50 +0300 Subject: [PATCH] 3x-ui on server --- modules/server/acme.nix | 2 +- modules/server/default.nix | 3 ++- modules/server/navidrome.nix | 27 +++++++++++++++------------ modules/server/nginx.nix | 22 ++++++++++++++++++++++ 4 files changed, 40 insertions(+), 14 deletions(-) diff --git a/modules/server/acme.nix b/modules/server/acme.nix index 2b9a982..b77b871 100644 --- a/modules/server/acme.nix +++ b/modules/server/acme.nix @@ -17,7 +17,7 @@ # server = "https://localhost:9000/acme/acme/directory"; # listenHTTP = ":80"; # dnsProvider = null; - # }; + # }; # # "turn.home.arpa" = { # # listenHTTP = "127.0.0.1:80"; # # group = "turnserver"; diff --git a/modules/server/default.nix b/modules/server/default.nix index b1c9450..6d3f083 100644 --- a/modules/server/default.nix +++ b/modules/server/default.nix @@ -4,6 +4,7 @@ }: { imports = [ + ../containers/3x-ui.nix ../software/beets ./acme.nix ./bentopdf.nix @@ -23,9 +24,9 @@ ./postgresql.nix ./power.nix ./samba.nix - # ./step-ca.nix ./syncthing.nix ./systemd.nix + # ./step-ca.nix # ../containers/remnawave.nix # ./coturn.nix # ./mealie.nix diff --git a/modules/server/navidrome.nix b/modules/server/navidrome.nix index a7a31a4..aa1110a 100644 --- a/modules/server/navidrome.nix +++ b/modules/server/navidrome.nix @@ -6,6 +6,9 @@ xlib, ... }: +let + navidromeDir = "/var/lib/services/navidrome-point"; +in { services = { navidrome = { @@ -15,19 +18,19 @@ settings = { Address = "0.0.0.0"; Port = 4533; - MusicFolder = "${xlib.dirs.server-home}/Music"; + MusicFolder = "${navidromeDir}"; }; }; }; - # systemd.mounts = [ - # { - # enable = true; - # options = "bind,x-systemd.automount,nofail"; - # requires = [ "local-fs.target" ]; - # type = "none"; - # wantedBy = [ "multi-user.target" ]; - # what = "${xlib.dirs.server-home}/Music"; - # where = "/home/${xlib.device.username}/.config/beets"; - # } - # ]; + systemd.mounts = [ + { + enable = true; + options = "bind,x-systemd.automount,nofail"; + requires = [ "local-fs.target" ]; + type = "none"; + wantedBy = [ "multi-user.target" ]; + what = "${xlib.dirs.server-home}/Music"; + where = "${navidromeDir}"; + } + ]; } diff --git a/modules/server/nginx.nix b/modules/server/nginx.nix index 0e94667..c58814d 100644 --- a/modules/server/nginx.nix +++ b/modules/server/nginx.nix @@ -64,6 +64,28 @@ in client_max_body_size 5G; ''; }; + "z.zeroq.su" = { + forceSSL = true; + enableACME = true; + locations = { + "/" = { + proxyPass = "http://${server}:2049"; + proxyWebsockets = true; + }; + "/subs/" = { + proxyPass = "http://${server}:2096"; + proxyWebsockets = true; + }; + "/subsjs/" = { + proxyPass = "http://${server}:2096"; + proxyWebsockets = true; + }; + "/clash/" = { + proxyPass = "http://${server}:2096"; + proxyWebsockets = true; + }; + }; + }; # "pdf.home.arpa" = { # forceSSL = true; # enableACME = true;