at 23.11-beta 47 lines 1.3 kB view raw
1{ lib, stdenv, fetchFromGitHub, kernel }: 2 3stdenv.mkDerivation rec { 4 version = "2.8.9"; 5 name = "ena-${version}-${kernel.version}"; 6 7 src = fetchFromGitHub { 8 owner = "amzn"; 9 repo = "amzn-drivers"; 10 rev = "ena_linux_${version}"; 11 hash = "sha256-9Csrq9wM7Q99qPj7+NlnQgP6KcciNHMbAAb+Wg7eYAU="; 12 }; 13 14 hardeningDisable = [ "pic" ]; 15 16 nativeBuildInputs = kernel.moduleBuildDependencies; 17 makeFlags = kernel.makeFlags; 18 19 # linux 3.12 20 env.NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; 21 22 configurePhase = '' 23 runHook preConfigure 24 cd kernel/linux/ena 25 export ENA_PHC_INCLUDE=1 26 substituteInPlace Makefile --replace '/lib/modules/$(BUILD_KERNEL)' ${kernel.dev}/lib/modules/${kernel.modDirVersion} 27 runHook postConfigure 28 ''; 29 30 installPhase = '' 31 runHook preInstall 32 $STRIP -S ena.ko 33 dest=$out/lib/modules/${kernel.modDirVersion}/misc 34 mkdir -p $dest 35 cp ena.ko $dest/ 36 xz $dest/ena.ko 37 runHook postInstall 38 ''; 39 40 meta = with lib; { 41 description = "Amazon Elastic Network Adapter (ENA) driver for Linux"; 42 homepage = "https://github.com/amzn/amzn-drivers"; 43 license = licenses.gpl2Only; 44 maintainers = with maintainers; [ eelco sielicki ]; 45 platforms = platforms.linux; 46 }; 47}