{ config, lib, pkgs, ... }: { # Enable Hardware Acceleration for transcoding # Note: vaapiIntel override with enableHybridCodec should be in flake.nix overlay if needed hardware.graphics = { enable = true; extraPackages = with pkgs; [ intel-media-driver vaapiIntel vaapiVdpau libvdpau-va-gl intel-compute-runtime # OpenCL filter support (hardware tonemapping and subtitle burn-in) ]; }; services.jellyfin = { enable = true; user = "jellyfin"; group = "video"; openFirewall = true; # only for defaults (8096) }; users.users.jellyfin = { extraGroups = [ "video" "audio" ]; }; services.nginx = { enable = true; virtualHosts = { "jellyfin.mossnet.lan" = { forceSSL = false; enableACME = false; locations."/".proxyPass = "http://localhost:8096/"; }; }; }; }