Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 58 lines 1.7 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchFromGitLab, 5 kernel, 6 kernelModuleMakeFlags, 7 fetchpatch, 8}: 9 10stdenv.mkDerivation rec { 11 pname = "ddcci-driver"; 12 version = "0.4.5-unstable-2024-09-26"; 13 name = "${pname}-${kernel.version}-${version}"; 14 15 src = fetchFromGitLab { 16 owner = "${pname}-linux"; 17 repo = "${pname}-linux"; 18 rev = "0233e1ee5eddb4b8a706464f3097bad5620b65f4"; 19 hash = "sha256-Osvojt8UE+cenOuMoSY+T+sODTAAKkvY/XmBa5bQX88="; 20 }; 21 22 patches = [ 23 # See https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/17 24 (fetchpatch { 25 url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/e0605c9cdff7bf3fe9587434614473ba8b7e5f63.patch"; 26 hash = "sha256-sTq03HtWQBd7Wy4o1XbdmMjXQE2dG+1jajx4HtwBHjM="; 27 }) 28 ]; 29 30 hardeningDisable = [ "pic" ]; 31 32 nativeBuildInputs = kernel.moduleBuildDependencies; 33 34 prePatch = '' 35 substituteInPlace ./ddcci/Makefile \ 36 --replace '"$(src)"' '$(PWD)' \ 37 --replace depmod \# 38 substituteInPlace ./ddcci-backlight/Makefile \ 39 --replace '"$(src)"' '$(PWD)' \ 40 --replace depmod \# 41 ''; 42 43 makeFlags = kernelModuleMakeFlags ++ [ 44 "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build" 45 "KVER=${kernel.modDirVersion}" 46 "KERNEL_MODLIB=$(out)/lib/modules/${kernel.modDirVersion}" 47 "INCLUDEDIR=$(out)/include" 48 ]; 49 50 meta = with lib; { 51 description = "Kernel module driver for DDC/CI monitors"; 52 homepage = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux"; 53 license = licenses.gpl2Plus; 54 maintainers = with maintainers; [ kiike ]; 55 platforms = platforms.linux; 56 broken = kernel.kernelOlder "5.1"; 57 }; 58}