# Maintainer: graysky pkgbase=rpi-eeprom pkgname=(rpi4-eeprom rpi5-eeprom) _commit=8ff07213bc031ad397d78b00fc8bbf9f0fa75591 pkgver=20241108 pkgrel=1 arch=(any) url='https://github.com/raspberrypi/rpi-eeprom' license=(custom) source=("$pkgbase-$pkgver-${_commit:0:10}.tar.gz::https://github.com/raspberrypi/rpi-eeprom/archive/$_commit.tar.gz") md5sums=('dbaea3a604eea740b29e813f5d3dc2e0') package_rpi4-eeprom() { pkgdesc="Bootloader and VLI USB controller EEPROM update for bcm2711/RPi4 SoC" depends=(binutils coreutils nano pciutils python raspberrypi-utils) conflicts=(rpi5-eeprom rpi-eeprom) replaces=(rpi-eeprom) backup=("etc/default/$pkgbase-update" "etc/default/$pkgbase-eeprom-update") install="rpi-eeprom.install" cd "$pkgbase-$_commit" install -pd "$pkgdir/usr/bin" install -pm755 rpi-eeprom-config "$pkgdir/usr/bin/rpi-eeprom-config" install -pm755 rpi-eeprom-digest "$pkgdir/usr/bin/rpi-eeprom-digest" install -pm755 rpi-eeprom-update "$pkgdir/usr/bin/rpi-eeprom-update" # Arch ARM does not ship raspi-config sed -i '/to change the release/d' "$pkgdir/usr/bin/rpi-eeprom-update" install -pDm644 rpi-eeprom-update-default "$pkgdir/etc/default/rpi-eeprom-update" install -pDm644 LICENSE "$pkgdir/usr/share/doc/$pkgname" install -pd "$pkgdir/usr/lib/firmware/raspberrypi/bootloader/backup" for target in latest default; do cp -a "firmware-2711/$target" "$pkgdir/usr/lib/firmware/raspberrypi/bootloader" # remove old images rm -f "$pkgdir/usr/lib/firmware/raspberrypi/bootloader/$target/"pieeprom-202[0,1,2]*.bin done cd $pkgdir/usr/lib/firmware/raspberrypi/bootloader ln -sf latest beta ln -sf latest stable ln -sf default critical # firmware files should not be executable find "$pkgdir/usr/lib/firmware/raspberrypi/bootloader" -name '*.bin' -exec chmod 644 '{}' + } package_rpi5-eeprom() { pkgdesc="Bootloader EEPROM update for bcm2712/RPi5 SoC" depends=(binutils coreutils nano pciutils python raspberrypi-utils) optdepends=( 'flashrom: alternative method for updating firmware' ) conflicts=(rpi4-eeprom) backup=("etc/default/$pkgbase-update" "etc/default/$pkgbase-eeprom-update") install="rpi-eeprom.install" cd "$pkgbase-$_commit" install -pd "$pkgdir/usr/bin" install -pm755 rpi-eeprom-config "$pkgdir/usr/bin/rpi-eeprom-config" install -pm755 rpi-eeprom-digest "$pkgdir/usr/bin/rpi-eeprom-digest" install -pm755 rpi-eeprom-update "$pkgdir/usr/bin/rpi-eeprom-update" # Arch ARM does not ship raspi-config sed -i '/to change the release/d' "$pkgdir/usr/bin/rpi-eeprom-update" install -pDm644 rpi-eeprom-update-default "$pkgdir/etc/default/rpi-eeprom-update" install -pDm644 LICENSE "$pkgdir/usr/share/doc/$pkgname" install -pd "$pkgdir/usr/lib/firmware/raspberrypi/bootloader/backup" for target in latest default; do cp -a "firmware-2712/$target" "$pkgdir/usr/lib/firmware/raspberrypi/bootloader" done cd $pkgdir/usr/lib/firmware/raspberrypi/bootloader ln -sf latest beta ln -sf latest stable ln -sf default critical # firmware files should not be executable find "$pkgdir/usr/lib/firmware/raspberrypi/bootloader" -name '*.bin' -exec chmod 644 '{}' + }