Files
nix-config/modules/nixos/services/ersatztv/default.nix
2025-12-15 20:07:48 -06:00

42 lines
915 B
Nix

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