{ ... }: let directories = [ "/opt/navidrome" ]; in { systemd.tmpfiles.rules = map (x: "d ${x} 0755 share share - -") directories; virtualisation.oci-containers.containers.navidrome = { image = "deluan/navidrome:latest"; autoStart = true; ports = [ "4533:4533" ]; volumes = [ "/opt/navidrome/data:/data" "/lagoon/media/music:/music:ro" ]; environment = { ND_SCANSCHEDULE = "1h"; ND_LOGLEVEL = "info"; ND_SESSIONTIMEOUT = "24h"; ND_ENABLEUSEREDITING = "false"; }; }; services.caddy.virtualHosts."radio.tdback.net".extraConfig = '' encode zstd gzip reverse_proxy http://localhost:4533 ''; }