{ config, ... }: let hmModules = config.flake.modules.homeManager; in { flake.modules.nixos.qbittorrent-client = { home-manager.sharedModules = [ hmModules.qbittorrent-client ]; networking.firewall = { allowedTCPPorts = [ 43864 ]; allowedUDPPorts = [ 43864 ]; }; }; flake.modules.homeManager.qbittorrent-client = { lib, pkgs, ... }: { home.packages = [ pkgs.qbittorrent ]; programs.niri.settings.spawn-at-startup = lib.mkAfter [ { command = [ "qbittorrent" ]; } ]; }; }