{ lib, config, namespace, ... }: with lib; let name = "tunarr"; cfg = config.${namespace}.services.${name}; tunarrConfig = lib.${namespace}.mkModule { inherit config name; serviceName = "podman-${name}"; description = "tunarr"; options = { }; moduleConfig = { virtualisation.oci-containers.containers.${name} = { autoStart = true; image = "ghcr.io/chrisbenincasa/tunarr"; extraOptions = [ "--device=/dev/dri" ]; volumes = [ "${cfg.configDir}/tunarr:/config/tunarr" "${cfg.configDir}/tunarr:/root/.local/share/tunarr" "${cfg.dataDir}/movies:/libraries/movies" "${cfg.dataDir}/tv:/libraries/tv" "${cfg.configDir}/transcode:/transcode" ]; ports = [ "${toString cfg.port}:8000" ]; environment = { PUID = cfg.puid; PGID = cfg.pgid; TZ = cfg.timeZone; }; }; }; }; in { imports = [ tunarrConfig ]; }