summaryrefslogtreecommitdiff
path: root/dev-embedded
diff options
context:
space:
mode:
Diffstat (limited to 'dev-embedded')
-rw-r--r--dev-embedded/rpi-eeprom/Manifest2
-rw-r--r--dev-embedded/rpi-eeprom/metadata.xml10
-rw-r--r--dev-embedded/rpi-eeprom/rpi-eeprom-28.10_p1-r1.ebuild103
3 files changed, 108 insertions, 7 deletions
diff --git a/dev-embedded/rpi-eeprom/Manifest b/dev-embedded/rpi-eeprom/Manifest
index c38279ced104..18f0214fb5a3 100644
--- a/dev-embedded/rpi-eeprom/Manifest
+++ b/dev-embedded/rpi-eeprom/Manifest
@@ -1,2 +1,4 @@
DIST rpi-eeprom_26.0-1.debian.tar.xz 13208 BLAKE2B 976828f564794379fe907cbab22f77d214c0dbb4bfbd6257e3315b1444fa47035be9c2dfaee79dc7c8123b3b267409d99d8142b649a2163670baa9b8871790ea SHA512 1fdb538b17d75ce2d79b1a000954073233279dd19ee28ad42fcb8238009583f1a5a0a9cb511ab60c7ed978696f203e466fe1bb5f0ca7a736cf90781d66e9c6b3
DIST rpi-eeprom_26.0.orig.tar.gz 58406186 BLAKE2B ea16e4deb4b331c2f3401731df548f2b11ca9c113da5de3fe5aaeba098a8b0d1d39420261c5d32e04c10a5d38b955ef80133bff585e7d9305cd70261626101d8 SHA512 14dbca5a1e5f3d6d117a0a3978ff2aa14fbf29363b501351d618b6c36f7feb32c6fe1d99952b72286d0a5f8962432ba1056d4d5d758a5e978c4738deab47ddbe
+DIST rpi-eeprom_28.10-1.debian.tar.xz 16156 BLAKE2B bd7ca73976b4cc93b9ababcc2b23f29f72f5934d47cbe88a2e31be9fe876217d28483a94d1ab810f881cf5a0aa4d2163260c08b4f568b6049c45bdf54f00892f SHA512 9c56b72409c958dbed2db6642346855a4046a15d60541c5b81cea1c2db75be7cf930c8533a1dfed6e7f522abbb26146373d10ac748d8b9b13268894e0ff1ace9
+DIST rpi-eeprom_28.10.orig.tar.gz 98480332 BLAKE2B e8189914dd7b75bd366c1f86c4e25bddc78fc845322c3bb9af43abcd6fd72d4589f188e1d826565cd13e15db8fa13c38b408fed2764736e9dd8dc73e26ced870 SHA512 9d38e9b32e5f9e54f66f73f82014b7e6576bda0421bbd1ba9cbfb4c2625dd3b7d5a7aa4a5b70e7ee79cfa66075741f4e7ef12c19171691437d2baa729b3ae30d
diff --git a/dev-embedded/rpi-eeprom/metadata.xml b/dev-embedded/rpi-eeprom/metadata.xml
index f474b63eeac4..5522282ab0e5 100644
--- a/dev-embedded/rpi-eeprom/metadata.xml
+++ b/dev-embedded/rpi-eeprom/metadata.xml
@@ -1,13 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person" proxied="yes">
- <email>crabbedhaloablution@pm.me</email>
- <name>Peter Alfredsen</name>
- </maintainer>
- <maintainer type="project" proxied="proxy">
- <email>proxy-maint@gentoo.org</email>
- <name>Proxy Maintainers</name>
+ <maintainer type="person">
+ <email>ceamac@gentoo.org</email>
+ <name>Viorel Munteanu</name>
</maintainer>
<upstream>
<remote-id type="github">raspberrypi/rpi-eeprom</remote-id>
diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-28.10_p1-r1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-28.10_p1-r1.ebuild
new file mode 100644
index 000000000000..c2d399e62f0b
--- /dev/null
+++ b/dev-embedded/rpi-eeprom/rpi-eeprom-28.10_p1-r1.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..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
+ 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
+
+ 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.'
+}