{ stdenv, lib, fetchFromGitHub, meson, pkg-config, ninja, wayland-scanner , libdrm , minimal ? false, libva-minimal , libX11, libXext, libXfixes, wayland, libffi, libGL , mesa , intel-media-driver }: stdenv.mkDerivation rec { pname = "libva" + lib.optionalString minimal "-minimal"; version = "2.16.0"; src = fetchFromGitHub { owner = "intel"; repo = "libva"; rev = version; sha256 = "sha256-HTwJQpDND4PjiNpUjHtTgkQdkahm2BUe71UDRQpvo6M="; }; outputs = [ "dev" "out" ]; nativeBuildInputs = [ meson pkg-config ninja wayland-scanner ]; buildInputs = [ libdrm ] ++ lib.optionals (!minimal) [ libva-minimal libX11 libXext libXfixes wayland libffi libGL ]; # TODO: share libs between minimal and !minimal - perhaps just symlink them mesonFlags = [ # Add FHS and Debian paths for non-NixOS applications "-Ddriverdir=${mesa.drivers.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri:/usr/lib/x86_64-linux-gnu/dri:/usr/lib/i386-linux-gnu/dri" ]; passthru.tests = { inherit intel-media-driver; }; meta = with lib; { description = "An implementation for VA-API (Video Acceleration API)"; longDescription = '' VA-API is an open-source library and API specification, which provides access to graphics hardware acceleration capabilities for video processing. It consists of a main library (this package) and driver-specific acceleration backends for each supported hardware vendor. ''; homepage = "https://01.org/linuxmedia/vaapi"; changelog = "https://raw.githubusercontent.com/intel/libva/${version}/NEWS"; license = licenses.mit; maintainers = with maintainers; [ SuperSandro2000 ]; platforms = platforms.unix; }; }