1{
2 lib,
3 stdenv,
4 kernel,
5 kernelModuleMakeFlags,
6 fetchFromGitHub,
7}:
8
9stdenv.mkDerivation {
10 pname = "mbp2018-bridge-drv";
11 version = "2020-01-31";
12
13 src = fetchFromGitHub {
14 owner = "MCMrARM";
15 repo = "mbp2018-bridge-drv";
16 rev = "b43fcc069da73e051072fde24af4014c9c487286";
17 sha256 = "sha256-o6yGiR+Y5SnX1johdi7fQWP5ts7HdDMqeju75UOhgik=";
18 };
19
20 nativeBuildInputs = kernel.moduleBuildDependencies;
21 makeFlags = kernelModuleMakeFlags;
22
23 buildPhase = ''
24 make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
25 -j$NIX_BUILD_CORES M=$(pwd) modules $makeFlags
26 '';
27
28 installPhase = ''
29 make -C ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
30 INSTALL_MOD_PATH=$out M=$(pwd) modules_install $makeFlags
31 '';
32
33 meta = with lib; {
34 description = "Driver for MacBook models 2018 and newer, which makes the keyboard, mouse and audio output work";
35 longDescription = ''
36 A driver for MacBook models 2018 and newer, implementing the VHCI (required for mouse/keyboard/etc.) and audio functionality.
37 '';
38 homepage = "https://github.com/MCMrARM/mbp2018-bridge-drv";
39 license = lib.licenses.gpl2Only;
40 platforms = platforms.linux;
41 maintainers = [ lib.maintainers.hlolli ];
42 broken = kernel.kernelOlder "5.4";
43 };
44}