at 24.11-pre 31 lines 952 B view raw
1{ lib, stdenv, linux-firmware, libarchive }: 2 3stdenv.mkDerivation { 4 pname = "amd-ucode"; 5 version = linux-firmware.version; 6 7 src = linux-firmware; 8 9 sourceRoot = "."; 10 11 nativeBuildInputs = [ libarchive ]; 12 13 buildPhase = '' 14 mkdir -p kernel/x86/microcode 15 find ${linux-firmware}/lib/firmware/amd-ucode -name \*.bin -print0 | sort -z |\ 16 xargs -0 -I{} sh -c 'cat {} >> kernel/x86/microcode/AuthenticAMD.bin' 17 ''; 18 19 installPhase = '' 20 mkdir -p $out 21 touch -d @$SOURCE_DATE_EPOCH kernel/x86/microcode/AuthenticAMD.bin 22 echo kernel/x86/microcode/AuthenticAMD.bin | bsdtar --uid 0 --gid 0 -cnf - -T - | bsdtar --null -cf - --format=newc @- > $out/amd-ucode.img 23 ''; 24 25 meta = with lib; { 26 description = "AMD Processor microcode patch"; 27 homepage = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"; 28 license = licenses.unfreeRedistributableFirmware; 29 platforms = platforms.linux; 30 }; 31}