dots/modules/nixos/features/qbittorrent.nix
2025-07-24 20:56:22 +10:00

37 lines
811 B
Nix

{ config, lib, ... }:
let
feature = "qbittorrent";
port = "5005";
in
{
config = lib.mkIf config.${feature}.enable {
users.users.qbittorrent.extraGroups = [ "media" ];
services = {
# service
qbittorrent = {
enable = true;
webuiPort = lib.toInt port;
profileDir = "/srv";
group = "media";
extraArgs = [
"--confirm-legal-notice"
];
};
# reverse proxy
nginx = {
virtualHosts."${feature}.fi33.buzz" = {
forceSSL = true;
useACMEHost = "fi33.buzz";
locations."/" = {
proxyPass = "http://localhost:${port}";
# proxyWebsockets = true;
};
};
};
};
};
options.${feature}.enable = lib.mkEnableOption "enables ${feature}";
}