From c42d7c4594de675adfc60aa090c359a4a172acbd Mon Sep 17 00:00:00 2001 From: Max Audron Date: Wed, 22 Oct 2025 17:59:59 +0200 Subject: deploy soulseek and fix tlmp VPN --- modules/tlmp/slsk.nix | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'modules/tlmp/slsk.nix') diff --git a/modules/tlmp/slsk.nix b/modules/tlmp/slsk.nix index e72d64b..4c170c4 100644 --- a/modules/tlmp/slsk.nix +++ b/modules/tlmp/slsk.nix @@ -10,6 +10,8 @@ with self.lib.nginx; { services.slskd = { enable = true; + package = pkgs.callPackage ./slsk_package.nix { }; + environmentFile = "/etc/secrets/slskd.env"; domain = null; @@ -21,6 +23,11 @@ with self.lib.nginx; incomplete = "/mnt/media/soulseek/incomplete"; }; + soulseek = { + listen_ip_address = "0.0.0.0"; + listen_port = 50300; + }; + shares = { directories = [ "[Music]/mnt/media/Music" ]; cache = { @@ -96,12 +103,19 @@ with self.lib.nginx; users.users.slskd.extraGroups = [ "media" ]; systemd.services.slskd = { - bindsTo = [ "wireguard-proton.service" ]; - after = [ "wireguard-proton.service" ]; + bindsTo = [ "wireguard-torrent.service" ]; + after = [ "wireguard-torrent.service" ]; unitConfig.JoinsNamespaceOf = "netns@torrent.service"; + postStart = '' + echo "fixing web socket permissions" + while [ ! -S "${config.services.slskd.settings.web.socket}" ]; do echo "waiting"; sleep 1; done + echo "found socket" + chmod a+rw ${config.services.slskd.settings.web.socket}; + echo "fixed web socket permissions" + ''; serviceConfig = { PrivateNetwork = true; - UMask = "ug=rw,o=r"; + UMask = "a=rw"; ProtectSystem = lib.mkForce "full"; }; -- cgit v1.2.3