1 { lib, stdenv, fetchFromGitLab, kernel, fetchpatch }:
3 stdenv.mkDerivation rec {
4 pname = "ddcci-driver";
5 version = "0.4.5-unstable-2024-09-26";
6 name = "${pname}-${kernel.version}-${version}";
8 src = fetchFromGitLab {
9 owner = "${pname}-linux";
10 repo = "${pname}-linux";
11 rev = "0233e1ee5eddb4b8a706464f3097bad5620b65f4";
12 hash = "sha256-Osvojt8UE+cenOuMoSY+T+sODTAAKkvY/XmBa5bQX88=";
16 # See https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/17
18 url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/e0605c9cdff7bf3fe9587434614473ba8b7e5f63.patch";
19 hash = "sha256-sTq03HtWQBd7Wy4o1XbdmMjXQE2dG+1jajx4HtwBHjM=";
23 hardeningDisable = [ "pic" ];
25 nativeBuildInputs = kernel.moduleBuildDependencies;
28 substituteInPlace ./ddcci/Makefile \
29 --replace '"$(src)"' '$(PWD)' \
31 substituteInPlace ./ddcci-backlight/Makefile \
32 --replace '"$(src)"' '$(PWD)' \
36 makeFlags = kernel.makeFlags ++ [
37 "KDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
38 "KVER=${kernel.modDirVersion}"
39 "KERNEL_MODLIB=$(out)/lib/modules/${kernel.modDirVersion}"
40 "INCLUDEDIR=$(out)/include"
44 description = "Kernel module driver for DDC/CI monitors";
45 homepage = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux";
46 license = licenses.gpl2Plus;
47 maintainers = with maintainers; [ kiike ];
48 platforms = platforms.linux;
49 broken = kernel.kernelOlder "5.1";