# Maintainer: Thomas Bächler pkgbase=linux-firmware pkgname=(linux-firmware amd-ucode) _commit=211de1679a68b8ab0f841a8058df35e13e3963f0 # master pkgver=20181216.211de16 pkgrel=1 pkgdesc="Firmware files for Linux" makedepends=('git') arch=('any') url="http://git.kernel.org/?p=linux/kernel/git/firmware/linux-firmware.git;a=summary" license=('GPL2' 'GPL3' 'custom') options=(!strip) source=("git+https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git#commit=${_commit}") md5sums=('SKIP') prepare() { cd "${srcdir}/${pkgname}" git revert -n a7ea5a87ee1d372289b72d646046fae1f5f0fb9e git revert -n ec4b0cd394472ee1491df6ef5f215d1f0953f836 git revert -n 1abe3c3caf69add758c336e96eb189af485989b9 git revert -n 6e38fef08d1bd1318414a8d8367f7afecfdf4b2e git revert -n df8986481ffdc2f7122d9442ac21180c5624743b # git revert -n a91e850a71634270deef8dffe09ec7798f2ad824 # git revert -n 6cca1381f328e7df55ae8bb8ac515b945d35f9f5 # git revert -n e8404a6055ae2b632f5036cf60bce8a4fa88e69b } pkgver() { cd "${srcdir}/${pkgname}" # Commit date + short rev echo $(TZ=UTC git show -s --pretty=%cd --date=format-local:%Y%m%d HEAD).$(git rev-parse --short HEAD) } build() { mkdir -p kernel/x86/microcode cat ${pkgbase}/amd-ucode/microcode_amd*.bin > kernel/x86/microcode/AuthenticAMD.bin # Make the .bin reproducible [ ! -z $SOURCE_DATE_EPOCH ] && touch -d @$SOURCE_DATE_EPOCH kernel/x86/microcode/AuthenticAMD.bin echo kernel/x86/microcode/AuthenticAMD.bin | bsdcpio -o -H newc -R 0:0 > amd-ucode.img } package_linux-firmware() { groups=('base') conflicts=('linux-firmware-git' 'kernel26-firmware' 'ar9170-fw' 'iwlwifi-1000-ucode' 'iwlwifi-3945-ucode' 'iwlwifi-4965-ucode' 'iwlwifi-5000-ucode' 'iwlwifi-5150-ucode' 'iwlwifi-6000-ucode' 'rt2870usb-fw' 'rt2x00-rt61-fw' 'rt2x00-rt71w-fw') replaces=('kernel26-firmware' 'ar9170-fw' 'iwlwifi-1000-ucode' 'iwlwifi-3945-ucode' 'iwlwifi-4965-ucode' 'iwlwifi-5000-ucode' 'iwlwifi-5150-ucode' 'iwlwifi-6000-ucode' 'rt2870usb-fw' 'rt2x00-rt61-fw' 'rt2x00-rt71w-fw') cd "${srcdir}/${pkgname}" make DESTDIR="${pkgdir}" FIRMWAREDIR=/usr/lib/firmware install rm "${pkgdir}/usr/lib/firmware/"{Makefile,README,configure,GPL-3} install -d "${pkgdir}/usr/share/licenses/${pkgname}" install -Dm644 LICEN* WHENCE "${pkgdir}/usr/share/licenses/linux-firmware/" # Trigger a microcode reload for configurations not using early updates install -d "${pkgdir}/usr/lib/tmpfiles.d" echo 'w /sys/devices/system/cpu/microcode/reload - - - - 1' \ >"${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" } package_amd-ucode() { pkgdesc='Microcode update files for AMD CPUs' install -D -m0644 amd-ucode.img "${pkgdir}"/boot/amd-ucode.img install -D -m0644 "${srcdir}/${pkgbase}/LICENSE.amd-ucode" "${pkgdir}/usr/share/licenses/amd-ucode/LICENSE" } # vim:set ts=2 sw=2 et: