diff --git a/system/servenix/default.nix b/system/servenix/default.nix index 9ae88b57..2ea20741 100644 --- a/system/servenix/default.nix +++ b/system/servenix/default.nix @@ -33,6 +33,7 @@ ../services/nginx-proxy-manager.nix ../services/paperless.nix ../services/portainer-agent.nix + ../services/tinymediamanager.nix ../services/whats-up-docker.nix ]; diff --git a/system/services/tinymediamanager.nix b/system/services/tinymediamanager.nix new file mode 100644 index 00000000..83f4de34 --- /dev/null +++ b/system/services/tinymediamanager.nix @@ -0,0 +1,54 @@ +{ + config, + lib, + pkgs, + ... +}: let + version = "5.2.3"; +in { + virtualisation.oci-containers.containers = { + tinymediamanager = { + image = "tinymediamanager/tinymediamanager:${version}"; + autoStart = true; + + login = { + # Uses DockerHub by default + # registry = ""; + + # DockerHub Credentials + username = "christoph.urlacher@protonmail.com"; + passwordFile = "${config.sops.secrets.docker-password.path}"; + }; + + dependsOn = []; + + ports = []; + + volumes = [ + "tinymediamanager_data:/data" + + "/media/Show:/media/tvshows" + "/media/Movie:/media/movies" + ]; + + environment = { + PUID = "1000"; + PGID = "1000"; + TZ = "Europe/Berlin"; + + USER_ID = "1000"; + GROUP_ID = "1000"; + ALLOW_DIRECT_VNC = true; + LC_ALL = "en_US.UTF-8"; # force UTF8 + LANG = "en_US.UTF-8"; # force UTF8 + PASSWORD = ""; + }; + + extraOptions = [ + # "--privileged" + # "--device=nvidia.com/gpu=all" + "--net=behind-nginx" + ]; + }; + }; +}