{ lib, stdenv, fetchFromGitHub, kernel, bc }: stdenv.mkDerivation rec { pname = "rtl8821cu"; version = "${kernel.version}-unstable-2023-04-28"; src = fetchFromGitHub { owner = "morrownr"; repo = "8821cu-20210916"; rev = "e49409f22ceea0d5b5ef431e6170580028b84c9d"; hash = "sha256-mElZRr4RkRFiraBM8BxT8yesYgvDaj6xP+9T3P+0Ns4="; }; hardeningDisable = [ "pic" ]; nativeBuildInputs = [ bc ] ++ kernel.moduleBuildDependencies; makeFlags = kernel.makeFlags; prePatch = '' substituteInPlace ./Makefile \ --replace /lib/modules/ "${kernel.dev}/lib/modules/" \ --replace /sbin/depmod \# \ --replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/" ''; preInstall = '' mkdir -p "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/" ''; enableParallelBuilding = true; meta = with lib; { description = "Realtek rtl8821cu driver"; homepage = "https://github.com/morrownr/8821cu"; license = licenses.gpl2Only; platforms = platforms.linux; maintainers = [ maintainers.contrun ]; }; }