1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 kernel,
6}:
7
8let
9 KDIR = "${kernel.dev}/lib/modules/${kernel.modDirVersion}/build";
10in
11stdenv.mkDerivation {
12 pname = "amdgpu-i2c";
13 version = "0-unstable-2024-12-16";
14
15 src = fetchFromGitHub {
16 owner = "twifty";
17 repo = "amd-gpu-i2c";
18 rev = "06ca41fd12fb90f970d3ebd4785cc26cc0a3f3b0";
19 sha256 = "sha256-GVyrwnwNSBW4OCNDqQMU6e31C4bG14arC0MPkRWfiJQ=";
20 };
21
22 hardeningDisable = [ "pic" ];
23
24 nativeBuildInputs = kernel.moduleBuildDependencies;
25
26 buildPhase = "make -C ${KDIR} M=/build/source modules";
27 installPhase = ''
28 make -C ${KDIR} M=/build/source INSTALL_MOD_PATH="$out" modules_install
29 '';
30
31 meta = with lib; {
32 homepage = "https://github.com/twifty/amd-gpu-i2c";
33 downloadPage = "https://github.com/twifty/amd-gpu-i2c";
34 description = "Exposes i2c interface to set colors on AMD GPUs";
35 broken = kernel.kernelOlder "6.1.0" || kernel.isLibre;
36 license = licenses.gpl2Plus;
37 platforms = platforms.linux;
38 maintainers = with maintainers; [ thardin ];
39 };
40}