From 2cd38396d5dfd3e0e5473f4cfe8bf35869a7ce42 Mon Sep 17 00:00:00 2001 From: blake Date: Wed, 8 Oct 2025 12:02:25 -0500 Subject: [PATCH] 84 current 2025-10-08 11:13:37 25.05.20251001.5b5be50 6.12.49 * --- flake.nix | 2 +- .../homelab/services/qbittorrent/default.nix | 73 +++++++------------ 2 files changed, 29 insertions(+), 46 deletions(-) diff --git a/flake.nix b/flake.nix index 7cf3f45..43d6854 100644 --- a/flake.nix +++ b/flake.nix @@ -1,6 +1,6 @@ # flake for blakes nixos config # define new devices in outputs -# generation: 83 current 2025-10-08 11:10:08 25.05.20251001.5b5be50 6.12.49 * +# generation: 84 current 2025-10-08 11:13:37 25.05.20251001.5b5be50 6.12.49 * { description = "blakes nix config"; inputs = { diff --git a/modules/homelab/services/qbittorrent/default.nix b/modules/homelab/services/qbittorrent/default.nix index 3040285..226f51d 100644 --- a/modules/homelab/services/qbittorrent/default.nix +++ b/modules/homelab/services/qbittorrent/default.nix @@ -1,69 +1,69 @@ { pkgs, config, lib, ... }: let - cfg = config.modules.services.; - ids = ; - default_port = ; - data_dir = "/var/lib/"; + cfg = config.modules.services.qbittorrent; + ids = 2003; + default_port = 8080; + data_dir = "/var/lib/qBittorrent"; in { - options.modules.services. = { - enable = lib.mkEnableOption "enables "; + options.modules.services.qbittorrent = { + enable = lib.mkEnableOption "enables qbittorrent"; # set port options port = lib.mkOption { type = lib.types.int; - default = ; - description = "set port for (default: ${toString default_port}"; + default = 7103; + description = "set port for qbittorrent (default: ${toString default_port}"; }; backup = lib.mkOption { type = lib.types.bool; default = true; - description = "enable backups for "; + description = "enable backups for qbittorrent"; }; }; config = lib.mkIf cfg.enable { - # declare group - users.groups. = { gid = ids; }; + # declare qbittorrent group + users.groups.qbittorrent = { gid = ids; }; - # declare user - users.users. = { - description = " server user"; + # declare qbittorrent user + users.users.qbittorrent = { + description = "qbittorrent server user"; uid = ids; isSystemUser = true; - home = "/var/lib/"; + home = data_dir; createHome = true; - group = ""; + group = "qbittorrent"; extraGroups = [ "media" ]; }; - # enable the service - services. = { + # enable the qbittorrent service + services.qbittorrent = { enable = true; openFirewall = true; - user = ""; - group = ""; - dataDir = data_dir; - settings = { - server.port = cfg.port; - }; + user = "qbittorrent"; + group = "qbittorrent"; + profileDir = data_dir; + webuiPort = cfg.port; +# torrentingPort = cfg.port; + }; # override umask to make permissions work out - systemd.services..serviceConfig = { + systemd.services.qbittorrent.serviceConfig = { UMask = lib.mkForce "0007"; -# User = ""; -# Group = ""; +# User = "qbittorrent"; +# Group = "qbittorrent"; }; # # open firewall # networking.firewall.allowedTCPPorts = [ cfg.port ]; # internal reverse proxy entry - services.nginx.virtualHosts.".snowbelle.lan" = { + services.nginx.virtualHosts.".snowbelle.lan" = { enableACME = false; forceSSL = true; sslCertificate = config.sops.secrets."ssl_blakedheld_crt".path; @@ -72,23 +72,6 @@ in proxyPass = "http://127.0.0.1:${toString cfg.port}"; }; }; -# # external reverse proxy entry -# services.nginx.virtualHosts.".blakedheld.xyz" = { -# enableACME = false; -# forceSSL = true; -# sslCertificate = config.sops.secrets."ssl_blakedheld_crt".path; -# sslCertificateKey = config.sops.secrets."ssl_blakedheld_key".path; -# locations."/" = { -# proxyPass = "http://127.0.0.1:${toString cfg.port}"; -# }; -# }; - - sops.secrets = { - "_" = { - owner = ""; - group = ""; - }; - }; # add to backups modules.system.backups.paths = lib.mkIf cfg.backup [ data_dir ];