From c46fc3a0a8b53e842c8bb2365bbb0dc1957db097 Mon Sep 17 00:00:00 2001 From: Viorel Munteanu Date: Fri, 19 Jun 2026 10:56:28 +0300 Subject: [PATCH] dev-embedded/rpi-eeprom: add 28.27_p1 Signed-off-by: Viorel Munteanu --- dev-embedded/rpi-eeprom/Manifest | 2 + .../rpi-eeprom/rpi-eeprom-28.27_p1.ebuild | 103 ++++++++++++++++++ 2 files changed, 105 insertions(+) create mode 100644 dev-embedded/rpi-eeprom/rpi-eeprom-28.27_p1.ebuild diff --git a/dev-embedded/rpi-eeprom/Manifest b/dev-embedded/rpi-eeprom/Manifest index ec911b7b1ee12..09b4f5bd8fdad 100644 --- a/dev-embedded/rpi-eeprom/Manifest +++ b/dev-embedded/rpi-eeprom/Manifest @@ -10,3 +10,5 @@ DIST rpi-eeprom_28.17-1.debian.tar.xz 16696 BLAKE2B 02328c7d16d3a834f28481223bbb DIST rpi-eeprom_28.17.orig.tar.gz 104825685 BLAKE2B e54da4609192ae4fe6077973e6630fa069df52e8d01d2d78ca6c5ceed12cd0e02bcdfcc991cf563a0b740cb9be4d3f689fdf10c376dcf785a9187196d6e282ff SHA512 30555ac0e2c040464b27be44bfa7450995f6bdc503100a24d235e5373a710d8206a068a720be7ecbf40d533eb076bd68e4d9b65591766938ea10578c6814da02 DIST rpi-eeprom_28.24-1.debian.tar.xz 17044 BLAKE2B e25e3e97ff5bc64097c17dfe2c4a4d72f05bf4df0abbc2460594dc060dad4ee0685593f33fb2c2cd6329d3318cfc4d6fa1029b376d1176bb4b550221853cf53d SHA512 4d699607b8679b802a770c872960af63d9e2a52876970b4c8027ce9b29a7989acc328e3a014a73f09e5bac8cbc4a2932a33a5bb52a806cdfb9be5f5d8c98d4e0 DIST rpi-eeprom_28.24.orig.tar.gz 108102997 BLAKE2B 94639b4a6c563606eb14221d152712f7668f511d024053e419c74227fe6e7046b5621ce27ff3e02211f1fb653977b4e311359f7f70b708df63367f25c0261423 SHA512 db9cb2866d67e64ddd9b1c7277ad5f29883f94849a76d7a44c8fe61f3f495a9ec49a50e90874f63d98901ef3935135bf9f619ca1f0eef7e7698e5b5d8691e057 +DIST rpi-eeprom_28.27-1.debian.tar.xz 17280 BLAKE2B a1fd05aff9d59edf061f03bea4a4724fb1a26cec8f3e1d6d5e26d4a07a11d5e99cccead0255ea6c47e5e9beede454a4eb6665c3207f35e5d342341bf0889f458 SHA512 2d69e31347330813065a10b4bcafe7c03e73d6940495aacca63f1ba6bdab8dbea79fe03e0fdab19898886cacade2a1778a13669b61c965e475e7219917f09fc8 +DIST rpi-eeprom_28.27.orig.tar.gz 104231336 BLAKE2B 1ac8d1631adc51f549230372869bc88a8bcb3ceccf360bda7f49125cf1f45f4bb13c7a4f077f79956b05d3658e2089a0bc19cdb9edb2822a90057aa9740b6bd0 SHA512 b53beb928c0e52bee8f2ba10adc27b75d9e7a83a70eb4eddc26fc24f32d174f919ff40074c8d150e241de105899cc528e734a8fa34ac4b62a43224f156a3b303 diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-28.27_p1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-28.27_p1.ebuild new file mode 100644 index 0000000000000..59736b8f26cb6 --- /dev/null +++ b/dev-embedded/rpi-eeprom/rpi-eeprom-28.27_p1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{12..14} ) + +inherit python-r1 systemd + +MY_P="${PN}-$(ver_cut 1-2)" +MY_BASE_URL="https://archive.raspberrypi.org/debian/pool/main/r/${PN}/${PN}_$(ver_cut 1-2)" +DESCRIPTION="Updater for Raspberry Pi 4/5 bootloader and the VL805 USB controller" +HOMEPAGE="https://github.com/raspberrypi/rpi-eeprom/" +SRC_URI="${MY_BASE_URL}-$(ver_cut 4).debian.tar.xz + ${MY_BASE_URL}.orig.tar.gz" +S="${WORKDIR}" + +LICENSE="BSD rpi-eeprom" +SLOT="0" +KEYWORDS="-* ~arm ~arm64" +IUSE="pi4 pi5" +REQUIRED_USE=" + ${PYTHON_REQUIRED_USE} + ^^ ( pi4 pi5 ) +" + +BDEPEND="sys-apps/help2man" +DEPEND="${PYTHON_DEPS}" +RDEPEND="${PYTHON_DEPS} + dev-embedded/raspberrypi-utils + sys-apps/flashrom + sys-apps/pciutils" + +src_prepare() { + default + sed -i \ + -e 's:/etc/default/rpi-eeprom-update:/etc/conf.d/rpi-eeprom-update:' \ + "${MY_P}/rpi-eeprom-update" || die "Failed sed on rpi-eeprom-update" + sed -i \ + -e 's:/usr/bin/rpi-eeprom-update:/usr/sbin/rpi-eeprom-update:' \ + "debian/rpi-eeprom.rpi-eeprom-update.service" || die "Failed sed on rpi-eeprom.rpi-eeprom-update.service" + sed -i \ + -e 's:/usr/lib/firmware:/lib/firmware:' \ + "${MY_P}/rpi-eeprom-update-default" || die "Failed sed on rpi-eeprom-update-default" +} + +src_configure() { + use pi4 && export BROADCOM=2711 + use pi5 && export BROADCOM=2712 +} + +src_install() { + pushd "${MY_P}" 1>/dev/null || die "Cannot change into directory ${MY_P}" + + python_scriptinto /usr/sbin + python_foreach_impl python_newscript rpi-eeprom-config rpi-eeprom-config + + dosbin rpi-eeprom-update rpi-eeprom-digest rpi-bootloader-version + keepdir /var/lib/raspberrypi/bootloader/backup + + for dir in default latest critical stable beta; do + insinto /lib/firmware/raspberrypi/bootloader + doins -r firmware-$BROADCOM/${dir} + done + + dodoc firmware-$BROADCOM/{release-notes.md,versions.txt} + + help2man -N \ + --version-string="${PV}" --help-option="-h" \ + --name="Bootloader EEPROM configuration tool for the Raspberry Pi 4B" \ + --output=rpi-eeprom-config.1 ./rpi-eeprom-config || die "Failed to create manpage for rpi-eeprom-config" + + help2man -N \ + --version-string="${PV}" --help-option="-h" \ + --name="Checks whether the Raspberry Pi bootloader EEPROM is \ + up-to-date and updates the EEPROM" \ + --output=rpi-eeprom-update.1 ./rpi-eeprom-update || die "Failed to create manpage for rpi-eeprom-update" + + doman rpi-eeprom-update.1 rpi-eeprom-config.1 + + newconfd rpi-eeprom-update-default rpi-eeprom-update + + popd 1>/dev/null || die + + pushd debian 1>/dev/null || die "Cannot change into directory debian" + + systemd_newunit rpi-eeprom.rpi-eeprom-update.service rpi-eeprom-update.service + newdoc changelog changelog.Debian + + popd 1>/dev/null || die + + newinitd "${FILESDIR}/init.d_rpi-eeprom-update-1" "rpi-eeprom-update" +} + +pkg_postinst() { + elog 'To have rpi-eeprom-update run at each startup, enable and start either' + elog '/etc/init.d/rpi-eeprom-update (for openrc users)' + elog 'or' + elog 'rpi-eeprom-update.service (for systemd users)' + elog '/etc/conf.d/rpi-eeprom-update contains the configuration.' + elog 'FIRMWARE_RELEASE_STATUS="critical|stable|beta" determines' + elog 'which release track you get. "critical" is recommended and the default.' +}