Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at fix-function-merge 47 lines 1.6 kB view raw
1{ lib, stdenv, fetchFromGitHub, kernel, kmod, gnugrep }: 2 3stdenv.mkDerivation rec { 4 pname = "vmware-modules"; 5 version = "workstation-17.5.1-unstable-2024-01-12-${kernel.version}"; 6 7 src = fetchFromGitHub { 8 owner = "mkubecek"; 9 repo = "vmware-host-modules"; 10 # Developer no longer provides tags for kernel compatibility fixes 11 # Commit hash for branch workstation-17.5.1 as of 2024-03-07 12 rev = "2c6d66f3f1947384038b765c897b102ecdb18298"; 13 hash = "sha256-VKN6nxtgQqElVrSD5++UdngjZio4+vmetGCgTAfgtTs="; 14 }; 15 16 hardeningDisable = [ "pic" ]; 17 18 nativeBuildInputs = kernel.moduleBuildDependencies; 19 20 enableParallelBuilding = true; 21 22 postPatch = '' 23 substituteInPlace Makefile \ 24 --replace '/lib/modules/$(VM_UNAME)/misc' "$out/lib/modules/${kernel.modDirVersion}/misc" \ 25 --replace /sbin/modinfo "${kmod}/bin/modinfo" \ 26 --replace 'test -z "$(DESTDIR)"' "0" 27 28 for module in "vmmon-only" "vmnet-only"; do 29 substituteInPlace "./$module/Makefile" \ 30 --replace '/lib/modules/' "${kernel.dev}/lib/modules/" \ 31 --replace /bin/grep "${gnugrep}/bin/grep" 32 done 33 ''; 34 35 preInstall = '' 36 mkdir -p "$out/lib/modules/${kernel.modDirVersion}/misc" 37 ''; 38 39 meta = with lib; { 40 description = "Kernel modules needed for VMware hypervisor"; 41 homepage = "https://github.com/mkubecek/vmware-host-modules"; 42 license = licenses.gpl2Only; 43 platforms = [ "x86_64-linux" ]; 44 broken = (kernel.kernelOlder "5.5" && kernel.isHardened); 45 maintainers = with maintainers; [ deinferno vifino ]; 46 }; 47}