summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-embedded/rpi-eeprom/Manifest2
-rw-r--r--dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1.ebuild94
2 files changed, 96 insertions, 0 deletions
diff --git a/dev-embedded/rpi-eeprom/Manifest b/dev-embedded/rpi-eeprom/Manifest
index 3ffd014e662b..d68d9e87ab20 100644
--- a/dev-embedded/rpi-eeprom/Manifest
+++ b/dev-embedded/rpi-eeprom/Manifest
@@ -2,3 +2,5 @@ DIST rpi-eeprom_11.0-1.debian.tar.xz 10248 BLAKE2B a83230dc13ce296963ed206725d46
DIST rpi-eeprom_11.0.orig.tar.gz 8075596 BLAKE2B ccbd895de728566bfb0402c2378f6eb13f88948490e14f1e251f6440f3ef31879ea66c0fe94761e1abf40a23924742e8c2f33c49200e710542131091b223b292 SHA512 0ea2971b752a53a4529b2c3d3b814b9e743440397f8c4d21c9a06493561a37bc8cd8c0adaaab389f41b1697584d12641f49d7a93d6541f9dda3bba5d6dd1371c
DIST rpi-eeprom_12.5-1.debian.tar.xz 11808 BLAKE2B 82eccb61fbac25c9f20343ebccd4571fbc0c3df0c2388b92474f2a9ba042c6da8dc26ed21dffbf2a81be7c10561cffacf8ed80cb63435b28632cba9d505363bf SHA512 33581d017f5817202f7fe62e89f1a09c25ff63b30a11eb61fc08dcba4a512332d9dc32d6431240981e9690625e76d7cb9a3f601ef59cc1a3eba222c4d3c64e81
DIST rpi-eeprom_12.5.orig.tar.gz 13662998 BLAKE2B 6c3937f4c4a950c6cc78285134bb8ee0b5459e9c9ba39ac020c6cd5e0b0bb6d6647d788c81ff1d639a87dd825d8b5fcaa29318f63823e56f6884ec4ce9a52361 SHA512 82608eee6106380b09657d729013e953f50bba2a45084fb9d38238142505a4f51f1f7c586dbd10a29e79b02d0b82670498f3dae16e368506a8187f1076d790fc
+DIST rpi-eeprom_13.3-1.debian.tar.xz 12768 BLAKE2B 823b1f25cda98cb2888b6b423b6120f5c1474735c58933ac11fe9380fa31fcbef260afb2ebcced423301bee207c171c5ccea3ba9c8cc4dae579c2dba55a60cba SHA512 0b8e15b1c827506dcdf7a6f19acd1ceb32f0901b9c438994af7f1e38a0ced05b7f123225ae8ecca4147ce04e1d7500ddcdfaeddeb90f0342af2dee9e4ffbfe04
+DIST rpi-eeprom_13.3.orig.tar.gz 17497524 BLAKE2B f65fc9b6a98dd3a4d3f4095e03279d832a64d0f12f9edd7e7af2b8afe8b290f4db6ec39e755df9fb5b317930235bf1c7205be4b3f838f6cbbf92e1d80574b342 SHA512 d5885444fd90a5f24c94a3af4f093744f4a63947a119059c851cd6639e572138205a48f7cd126c3deafe104e76985197e1fa36c8aa72a16bb173f11750b85151
diff --git a/dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1.ebuild b/dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1.ebuild
new file mode 100644
index 000000000000..262715970d27
--- /dev/null
+++ b/dev-embedded/rpi-eeprom/rpi-eeprom-13.3_p1.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit python-r1 systemd
+
+DESCRIPTION="Updater for Raspberry Pi 4 bootloader and the VL805 USB controller"
+HOMEPAGE="https://github.com/raspberrypi/rpi-eeprom/"
+MY_P="${PN}-$(ver_cut 1-2)"
+MY_BASE_URL="https://archive.raspberrypi.org/debian/pool/main/r/${PN}/${PN}_$(ver_cut 1-2)"
+SRC_URI="${MY_BASE_URL}-$(ver_cut 4).debian.tar.xz
+ ${MY_BASE_URL}.orig.tar.gz"
+S="${WORKDIR}"
+
+SLOT="0"
+LICENSE="BSD rpi-eeprom"
+KEYWORDS="~arm ~arm64"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="sys-apps/help2man"
+DEPEND="${PYTHON_DEPS}"
+RDEPEND="${PYTHON_DEPS}
+ sys-apps/flashrom
+ sys-apps/pciutils
+ || (
+ >=media-libs/raspberrypi-userland-0_pre20201022
+ >=media-libs/raspberrypi-userland-bin-1.20201022
+ )"
+
+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"
+}
+
+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
+ keepdir /var/lib/raspberrypi/bootloader/backup
+
+ for dir in critical stable beta; do
+ insinto /lib/firmware/raspberrypi/bootloader
+ doins -r firmware/${dir}
+ done
+
+ dodoc firmware/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.'
+}