nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ stdenv, lib, fetchFromGitHub, fetchpatch, meson, pkg-config, ninja, wayland
2, libdrm
3, minimal ? false, libva-minimal
4, libX11, libXext, libXfixes, libffi, libGL
5, mesa
6}:
7
8stdenv.mkDerivation rec {
9 name = "libva-${lib.optionalString minimal "minimal-"}${version}";
10 version = "2.8.0"; # Also update the hash for libva-utils!
11
12 # update libva-utils and vaapiIntel as well
13 src = fetchFromGitHub {
14 owner = "intel";
15 repo = "libva";
16 rev = version;
17 sha256 = "190cq173jzp5rkrczi8gzbwa0y3xk253v4wd205a5ilfngm7srns";
18 };
19
20 outputs = [ "dev" "out" ];
21
22 nativeBuildInputs = [ meson pkg-config ninja wayland ];
23
24 buildInputs = [ libdrm ]
25 ++ lib.optionals (!minimal) [ libva-minimal libX11 libXext libXfixes wayland libffi libGL ];
26 # TODO: share libs between minimal and !minimal - perhaps just symlink them
27
28 mesonFlags = [
29 # Add FHS paths for non-NixOS applications:
30 "-Ddriverdir=${mesa.drivers.driverLink}/lib/dri:/usr/lib/dri:/usr/lib32/dri"
31 ];
32
33 meta = with stdenv.lib; {
34 description = "An implementation for VA-API (Video Acceleration API)";
35 longDescription = ''
36 VA-API is an open-source library and API specification, which provides
37 access to graphics hardware acceleration capabilities for video
38 processing. It consists of a main library (this package) and
39 driver-specific acceleration backends for each supported hardware vendor.
40 '';
41 homepage = "https://01.org/linuxmedia/vaapi";
42 changelog = "https://raw.githubusercontent.com/intel/libva/${version}/NEWS";
43 license = licenses.mit;
44 maintainers = with maintainers; [ primeos ];
45 platforms = platforms.unix;
46 };
47}