nixos/server/jellyfin/default.nix
2025-12-04 13:28:25 +01:00

51 lines
1.2 KiB
Nix

{
lib,
config,
pkgs,
...
}:
{
options.server.jellyfin.enable = lib.mkEnableOption "Enable Jellyfin+Jellyseerr";
config = lib.mkIf config.server.jellyfin.enable {
networking.firewall.allowedTCPPorts = [
5055
8096
];
networking.firewall.allowedUDPPorts = [ 8096 ];
# Jellyfin
environment.systemPackages = with pkgs; [
jellyfin
jellyfin-web
jellyfin-ffmpeg
];
services.jellyfin.enable = true;
hardware.graphics = {
enable = true;
extraPackages = with pkgs; [
intel-media-driver
intel-vaapi-driver # previously vaapiIntel
vaapiVdpau
intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in)
vpl-gpu-rt # QSV on 11th gen or newer
intel-media-sdk # QSV up to 11th gen
];
};
# services.jellyseerr = {
# enable = true;
# port = 5055;
# openFirewall = true;
# };
virtualisation.oci-containers.containers."jellyseerr-music" = {
image = "fallenbagel/jellyseerr:preview-music-support";
extraOptions = [ "--network=host" ];
volumes = [ "/var/lib/jellyseerr/config:/app/config" ];
};
};
}