1{
2 stdenv,
3 lib,
4 fetchFromGitHub,
5 linuxPackages,
6 git,
7 kernel ? linuxPackages.kernel,
8 kernelModuleMakeFlags,
9}:
10stdenv.mkDerivation {
11 pname = "msi-ec-kmods";
12 version = "0-unstable-2025-05-17";
13
14 src = fetchFromGitHub {
15 owner = "BeardOverflow";
16 repo = "msi-ec";
17 rev = "796be9047b13c311ac4cdec33913775f4057f600";
18 hash = "sha256-npJbnWFBVb8TK9ynVD/kXWq2iqO0ACKF4UYsu5mQuok=";
19 };
20
21 dontMakeSourcesWritable = false;
22
23 patches = [
24 ./patches/makefile.patch
25 ./patches/kernel-string-choices.patch
26 ];
27
28 hardeningDisable = [ "pic" ];
29
30 makeFlags = kernelModuleMakeFlags ++ [
31 "KERNELDIR=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
32 "INSTALL_MOD_PATH=$(out)"
33 ];
34
35 nativeBuildInputs = kernel.moduleBuildDependencies ++ [ git ];
36
37 installTargets = [ "modules_install" ];
38
39 enableParallelBuilding = true;
40
41 meta = {
42 description = "Kernel modules for MSI Embedded controller";
43 homepage = "https://github.com/BeardOverflow/msi-ec";
44 license = lib.licenses.gpl2Plus;
45 maintainers = [ lib.maintainers.m1dugh ];
46 platforms = lib.platforms.linux;
47 broken = kernel.kernelOlder "5.5";
48 };
49}