Hi everyone.
I want to replace the default webui of Transmission with something like Flood. I couldn’t find a NixOS option for this so I’ve turned to the manual method of setting the enviroment variable TRANSMISSION_WEB_HOME. NixOS seems to export this variable as expected however when accessing the webui Transmission claims it does not have permission to read the files. I have run chown -R media:media
and chmod -r 777
on the webui folder and ls -l /var/lib/transmission/web
confirms the files should be accessible:
Permissions Size User Date Modified Name
drwxrwxrwx - media 18 apr 20:04 build
drwxrwxrwx - media 18 apr 20:04 fonts
drwxrwxrwx - media 18 apr 20:04 images
drwxrwxrwx - media 18 apr 20:04 style
.rwxrwxrwx 1,3k media 18 apr 20:04 index.html
.rwxrwxrwx 2,2k media 18 apr 20:04 sw.js
.rwxrwxrwx 14k media 18 apr 20:04 workbox-d249b2c8.js
.rwxrwxrwx 25 media 18 apr 20:04 config.json
.rwxrwxrwx 3,8k media 18 apr 20:04 sw.js.map
.rwxrwxrwx 137k media 18 apr 20:04 workbox-d249b2c8.js.map
.rwxrwxrwx 477 media 18 apr 20:04 manifest.webmanifest
.rwxrwxrwx 238 media 18 apr 20:04 browserconfig.xml
● transmission.service - Transmission BitTorrent Service
Loaded: loaded (/etc/systemd/system/transmission.service; enabled; preset: enabled)
Active: active (running) since Sun 2023-06-04 16:59:12 CEST; 6min ago
Process: 41076 ExecStartPre=/nix/store/98smy0izzn1sgxagy8j6yqfa8jwyi5hi-transmission-prestart (code=exited, status=0/SUCCESS)
Main PID: 41080 (transmission-da)
IP: 21.7K in, 12.9K out
IO: 0B read, 4.0K written
Tasks: 3 (limit: 9414)
Memory: 18.6M
CPU: 320ms
CGroup: /system.slice/transmission.service
└─41080 /nix/store/1lsdzdw5crv70928dpzsm7swp8ixyi2b-transmission-3.00/bin/transmission-daemon -f -g /var/lib/transmission/.config/transmission-daemon
jun 04 16:59:13 helios transmission-daemon[41080]: [2023-06-04 16:59:13.722] Port Forwarding (NAT-PMP) sendpublicaddressrequest succeeded (2) (/build/source/libtransmission/natpmp.c:73)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding State changed from "Not forwarded" to "Starting" (/build/source/libtransmission/port-forwarding.c:106)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding (NAT-PMP) readnatpmpresponseorretry succeeded (0) (/build/source/libtransmission/natpmp.c:73)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding (NAT-PMP) Found public address "176.10.146.132" (/build/source/libtransmission/natpmp.c:138)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding (NAT-PMP) sendnewportmappingrequest succeeded (12) (/build/source/libtransmission/natpmp.c:73)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Couldn't read "/var/lib/transmission/web/index.html": Permission denied (/build/source/libtransmission/utils.c:286)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding (NAT-PMP) readnatpmpresponseorretry succeeded (0) (/build/source/libtransmission/natpmp.c:73)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding (NAT-PMP) Port 51413 forwarded successfully (/build/source/libtransmission/natpmp.c:222)
jun 04 16:59:21 helios transmission-daemon[41080]: [2023-06-04 16:59:21.720] Port Forwarding State changed from "Starting" to "Forwarded" (/build/source/libtransmission/port-forwarding.c:106)
jun 04 17:05:57 helios transmission-daemon[41080]: [2023-06-04 17:05:57.718] Couldn't read "/var/lib/transmission/web/index.html": Permission denied (/build/source/libtransmission/utils.c:286)
Any ideas what’s causing this and how I can resolve it?
NixOS Transmission config:
{pkgs, ...}: {
boot.kernel.sysctl."net.core.wmem_max" = 1048576;
systemd.services.transmission = {
enable = true;
serviceConfig = {
BindPaths = ["/DATA"];
};
environment = {TRANSMISSION_WEB_HOME = "/var/lib/transmission/web";};
};
services.transmission = {
enable = true;
user = "media";
group = "media";
performanceNetParameters = true;
openPeerPorts = true;
openRPCPort = true;
home = "/var/lib/transmission";
settings = {
alt-speed-up = 10;
rpc-port = 7000;
alt-speed-down = 150;
blocklist-enabled = true;
blocklist-url = "https://github.com/sahsu/transmission-blocklist/releases/latest/download/blocklist.gz";
rpc-bind-address = "0.0.0.0";
rpc-whitelist-enabled = false;
peer-port = 51413;
incomplete-dir-enabled = true;
incomplete-dir = "/DATA/D4/TM/incomplete";
download-dir = "/DATA/D4/TM/complete";
download-queue-enabled = true;
download-queue-size = 10;
idle-seeding-limit = 20;
idle-seeding-enabled = true;
ratio-limit-enabled = true;
ratio-limit = 5;
umask = 2;
};
};
}