{ config, lib, pkgs, nixpkgs-unstable, ... }: { services = { transmission = { enable = true; package = nixpkgs-unstable.legacyPackages.x86_64-linux.transmission_4; home = "/var/lib/transmission"; group = "medias"; settings = { rpc-bind-address = "127.0.0.1"; rpc-port = 9091; rpc-host-whitelist = "*"; rpc-whitelist-enabled = false; peer-port = 51413; incomplete-dir = "/mnt/medias/incomplete"; download-dir = "/mnt/medias/torrent"; }; }; radarr = { enable = true; package = nixpkgs-unstable.legacyPackages.x86_64-linux.radarr; }; sonarr = { enable = true; package = nixpkgs-unstable.legacyPackages.x86_64-linux.sonarr; }; prowlarr.enable = true; jellyfin = { enable = true; package = nixpkgs-unstable.legacyPackages.x86_64-linux.jellyfin; }; navidrome = { enable = true; settings = { MusicFolder = "/mnt/medias/musique"; ImageCacheSize = 0; }; }; }; systemd.services.transmission.serviceConfig = { BindPaths = [ "/mnt/medias" ]; LimitNOFILE = 1048576; }; networking = { firewall.allowedTCPPorts = [ config.services.transmission.settings.peer-port ]; firewall.allowedUDPPorts = [ config.services.transmission.settings.peer-port ]; }; virtualisation = { podman.autoPrune.enable = true; oci-containers = { backend = "podman"; containers = { slimserver = { image = "docker.io/lmscommunity/logitechmediaserver:stable"; volumes = [ "/mnt/medias/musique:/music:ro" "/var/lib/slimserver:/config:rw" "/etc/localtime:/etc/localtime:ro" ]; ports = [ "10.30.0.1:9000:9000/tcp" "10.30.0.1:9090:9090/tcp" "10.30.0.1:3483:3483/tcp" "10.30.0.1:3483:3483/udp" ]; extraOptions = ["--pull=always"]; }; }; }; }; }