nixpkgs/pkgs/os-specific/linux/microcode/amd.nix

31 lines
841 B
Nix

{ stdenv, firmwareLinuxNonfree, libarchive }:
stdenv.mkDerivation rec {
name = "amd-ucode-${firmwareLinuxNonfree.version}";
src = firmwareLinuxNonfree;
sourceRoot = ".";
buildInputs = [ libarchive ];
buildPhase = ''
mkdir -p kernel/x86/microcode
find ${firmwareLinuxNonfree}/lib/firmware/amd-ucode -name \*.bin \
-exec sh -c 'cat {} >> kernel/x86/microcode/AuthenticAMD.bin' \;
'';
installPhase = ''
mkdir -p $out
echo kernel/x86/microcode/AuthenticAMD.bin | bsdcpio -o -H newc -R 0:0 > $out/amd-ucode.img
'';
meta = with stdenv.lib; {
description = "AMD Processor microcode patch";
homepage = http://www.amd64.org/support/microcode.html;
license = licenses.unfreeRedistributableFirmware;
maintainers = with maintainers; [ wkennington ];
platforms = platforms.linux;
};
}