mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-01-06 02:17:34 -08:00
dev-embedded/rpi-eeprom: new package
rpi-eeprom updates the Raspberry Pi 4 bootloader and the VL805 USB controller Closes: https://bugs.gentoo.org/753431 Package-Manager: Portage-3.0.10, Repoman-3.0.2 Signed-off-by: Peter Alfredsen <crabbedhaloablution@icloud.com> Closes: https://github.com/gentoo/gentoo/pull/18386 Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
parent
ec9cf27384
commit
46fe1837f9
2
dev-embedded/rpi-eeprom/Manifest
Normal file
2
dev-embedded/rpi-eeprom/Manifest
Normal file
@ -0,0 +1,2 @@
|
||||
DIST rpi-eeprom_10.2-1.debian.tar.xz 7360 BLAKE2B e7959c4de4f3675632f0897b6f8abc811c80daa102ad3fcca672a0e0f9ce4b4da80fd616de7aa8896f0f5fe889a10a52d32eba34627858a173186292175f3bf9 SHA512 cf401c5f761fc8c5b463630d192c8af9da2ae2e55e178857d9c09198437f162f96af23836d20adda6054243c6b613b7cc5c90a70975b96bad574dc3b328caa22
|
||||
DIST rpi-eeprom_10.2.orig.tar.gz 7415652 BLAKE2B b1f56263c0037b2ba3bac2aecd9b5736736cf599bc68a743c065c853a20f56f18984816fdfb402bb499c3aa911dbe72376cec4647d87406cce2f4328b04cc2b1 SHA512 ea76a157ed57984fb0667e9171e3fbf7dba180e014faa9352b0c1904531dca9528b0e3204645a4af2b550670a52354b6b1be6af27e190d4523d8044f3349aa73
|
||||
18
dev-embedded/rpi-eeprom/files/init.d_rpi-eeprom-update-1
Normal file
18
dev-embedded/rpi-eeprom/files/init.d_rpi-eeprom-update-1
Normal file
@ -0,0 +1,18 @@
|
||||
#!/sbin/openrc-run
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
# Set configuration in /etc/conf.d/rpi-eeprom-update
|
||||
|
||||
description="Raspberry Pi 4 bootloader and VL805 USB controller updater"
|
||||
command="/usr/sbin/rpi-eeprom-update"
|
||||
command_args="-a"
|
||||
|
||||
depend() {
|
||||
need localmount
|
||||
}
|
||||
|
||||
stop() {
|
||||
# Nothing to stop
|
||||
return 0;
|
||||
}
|
||||
19
dev-embedded/rpi-eeprom/metadata.xml
Normal file
19
dev-embedded/rpi-eeprom/metadata.xml
Normal file
@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>sam@gentoo.org</email>
|
||||
<name>Sam James</name>
|
||||
</maintainer>
|
||||
<maintainer type="person">
|
||||
<email>crabbedhaloablution@icloud.com</email>
|
||||
<name>Peter Alfredsen</name>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
<name>Proxy Maintainers</name>
|
||||
</maintainer>
|
||||
<upstream>
|
||||
<remote-id type="github"> raspberrypi/rpi-eeprom</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
||||
95
dev-embedded/rpi-eeprom/rpi-eeprom-10.2_p1.ebuild
Normal file
95
dev-embedded/rpi-eeprom/rpi-eeprom-10.2_p1.ebuild
Normal file
@ -0,0 +1,95 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{6,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"
|
||||
SLOT="0"
|
||||
LICENSE="BSD rpi-eeprom"
|
||||
KEYWORDS="~arm ~arm64"
|
||||
IUSE=""
|
||||
|
||||
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
|
||||
|
||||
DEPEND="sys-apps/help2man
|
||||
${PYTHON_DEPS}"
|
||||
RDEPEND="sys-apps/flashrom
|
||||
${PYTHON_DEPS}
|
||||
|| (
|
||||
>=media-libs/raspberrypi-userland-0_pre20201022
|
||||
>=media-libs/raspberrypi-userland-bin-1.20201022
|
||||
)"
|
||||
|
||||
S="${WORKDIR}"
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
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.'
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user