diff options
Diffstat (limited to 'pkgs/os-specific/linux/evdi/default.nix')
-rw-r--r-- | pkgs/os-specific/linux/evdi/default.nix | 39 |
1 files changed, 20 insertions, 19 deletions
diff --git a/pkgs/os-specific/linux/evdi/default.nix b/pkgs/os-specific/linux/evdi/default.nix index 5eb31e9422d..bd34ac0db4d 100644 --- a/pkgs/os-specific/linux/evdi/default.nix +++ b/pkgs/os-specific/linux/evdi/default.nix @@ -1,34 +1,32 @@ -{ lib, stdenv, fetchFromGitHub, fetchpatch, kernel, libdrm }: +{ lib, stdenv, fetchFromGitHub, kernel, libdrm, python3 }: +let + python3WithLibs = python3.withPackages (ps: with ps; [ + pybind11 + ]); +in stdenv.mkDerivation rec { pname = "evdi"; - version = "unstable-2021-06-11"; + version = "1.14.1"; src = fetchFromGitHub { owner = "DisplayLink"; repo = pname; - rev = "65e12fca334f2f42396f4e8d16592d53cab34dd6"; - sha256 = "sha256-81IfdYKadKT7vRdkmxzfGo4KHa4UJ8uJ0K6djQCr22U="; + rev = "v${version}"; + hash = "sha256-em3Y56saB7K3Wr31Y0boc38xGb57gdveN0Cstgy8y20="; }; - # Linux 5.13 support - # The patches break compilation for older kernels - patches = lib.optional (kernel.kernelAtLeast "5.13") [ - (fetchpatch { - url = "https://github.com/DisplayLink/evdi/commit/c5f5441d0a115d2cfc8125b8bafaa05b2edc7938.patch"; - sha256 = "sha256-tWYgBrRh3mXPebhUygOvJ07V87g9JU66hREriACfEVI="; - }) - (fetchpatch { - url = "https://github.com/DisplayLink/evdi/commit/5f04d2e2df4cfd21dc15d31f1152c6a66fa48a78.patch"; - sha256 = "sha256-690/eUiEVWvnT/YAVgKcLo86dgolF9giWRuPxXpL+eQ="; - }) + env.NIX_CFLAGS_COMPILE = toString [ + "-Wno-error" + "-Wno-error=discarded-qualifiers" # for Linux 4.19 compatibility + "-Wno-error=sign-compare" ]; nativeBuildInputs = kernel.moduleBuildDependencies; - buildInputs = [ kernel libdrm ]; + buildInputs = [ kernel libdrm python3WithLibs ]; - makeFlags = [ + makeFlags = kernel.makeFlags ++ [ "KVER=${kernel.modDirVersion}" "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" ]; @@ -40,12 +38,15 @@ stdenv.mkDerivation rec { install -Dm755 library/libevdi.so $out/lib/libevdi.so ''; + enableParallelBuilding = true; + meta = with lib; { + changelog = "https://github.com/DisplayLink/evdi/releases/tag/v${version}"; description = "Extensible Virtual Display Interface"; - maintainers = with maintainers; [ eyjhb ]; + maintainers = with maintainers; [ ]; platforms = platforms.linux; license = with licenses; [ lgpl21Only gpl2Only ]; homepage = "https://www.displaylink.com/"; - broken = kernel.kernelOlder "4.19" || stdenv.isAarch64; + broken = kernel.kernelOlder "4.19" || kernel.kernelAtLeast "6.6"; }; } |