1{ stdenv
2, lib
3, fetchFromGitHub
4, autoreconfHook
5, libX11
6, pkg-config
7, libXext
8, libdrm
9, libXfixes
10, wayland
11, wayland-scanner
12, libffi
13, libGL
14, mesa
15, minimal ? false
16, libva1-minimal
17}:
18
19stdenv.mkDerivation rec {
20 pname = "libva" + lib.optionalString minimal "-minimal";
21 # nixpkgs-update: no auto update
22 version = "1.8.3";
23
24 src = fetchFromGitHub {
25 owner = "intel";
26 repo = "libva";
27 rev = version;
28 sha256 = "sha256-ur59cqdZqXIY2dDUSie9XsxyRomVBxIW2IVKAgWYC38=";
29 };
30
31 outputs = [ "dev" "out" ];
32
33 nativeBuildInputs = [ autoreconfHook pkg-config wayland-scanner ];
34
35 buildInputs = [ libdrm ]
36 ++ lib.optionals (!minimal) [ libva1-minimal libX11 libXext libXfixes wayland libffi libGL ];
37 # TODO: share libs between minimal and !minimal - perhaps just symlink them
38
39 # Add FHS paths for non-NixOS applications.
40 configureFlags = [ "--with-drivers-path=${mesa.drivers.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri" ]
41 ++ lib.optionals (!minimal) [ "--enable-glx" ];
42
43 installFlags = [ "dummy_drv_video_ladir=$(out)/lib/dri" ];
44
45 meta = with lib; {
46 homepage = "https://www.freedesktop.org/wiki/Software/vaapi/";
47 license = licenses.mit;
48 description = "VAAPI library: Video Acceleration API";
49 platforms = platforms.unix;
50 maintainers = with maintainers; [ SuperSandro2000 ];
51 };
52}