at 24.11-pre 35 lines 1.2 kB view raw
1{ lib, stdenv, fetchFromGitHub, libarchive, iucode-tool }: 2 3stdenv.mkDerivation rec { 4 pname = "microcode-intel"; 5 version = "20240514"; 6 7 src = fetchFromGitHub { 8 owner = "intel"; 9 repo = "Intel-Linux-Processor-Microcode-Data-Files"; 10 rev = "microcode-${version}"; 11 hash = "sha256-6XHlAtQzHtlRs3Zy4+CC/XGJS/PkDPtTg/Y2bX7PJek="; 12 }; 13 14 nativeBuildInputs = [ iucode-tool libarchive ]; 15 16 installPhase = '' 17 runHook preInstall 18 19 mkdir -p $out kernel/x86/microcode 20 iucode_tool -w kernel/x86/microcode/GenuineIntel.bin intel-ucode/ 21 touch -d @$SOURCE_DATE_EPOCH kernel/x86/microcode/GenuineIntel.bin 22 echo kernel/x86/microcode/GenuineIntel.bin | bsdtar --uid 0 --gid 0 -cnf - -T - | bsdtar --null -cf - --format=newc @- > $out/intel-ucode.img 23 24 runHook postInstall 25 ''; 26 27 meta = with lib; { 28 homepage = "https://www.intel.com/"; 29 changelog = "https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases/tag/${src.rev}"; 30 description = "Microcode for Intel processors"; 31 license = licenses.unfreeRedistributableFirmware; 32 platforms = platforms.linux; 33 maintainers = with maintainers; [ ]; 34 }; 35}