mirror of
https://github.com/raspberrypi/rpi-eeprom.git
synced 2026-01-21 06:13:33 +08:00
Merge pull request #238 from timg236/tim/pkg_info
Only check package checksums on systems with package checksums
This commit is contained in:
@@ -104,7 +104,7 @@ die() {
|
||||
|
||||
prepareImage()
|
||||
{
|
||||
[ -f "${BOOTLOADER_UPDATE_IMAGE}" ] || die "EEPROM image \'${BOOTLOADER_UPDATE_IMAGE}\' not found"
|
||||
[ -f "${BOOTLOADER_UPDATE_IMAGE}" ] || die "EEPROM image '${BOOTLOADER_UPDATE_IMAGE}' not found"
|
||||
TMP_EEPROM_IMAGE="$(mktemp)"
|
||||
TMP_EEPROM_CONFIG="$(mktemp)"
|
||||
NEW_EEPROM_CONFIG="$(mktemp)"
|
||||
@@ -180,7 +180,7 @@ applyRecoveryUpdate()
|
||||
|| die "Failed to create ${BOOTFS}/vl805.sig"
|
||||
|
||||
cp -f "${VL805_UPDATE_IMAGE}" "${BOOTFS}/vl805.bin" \
|
||||
|| die "Failed to copy ${VL805_UPDATE_IMAGE} to ${BOOTFS/vl805.bin}"
|
||||
|| die "Failed to copy ${VL805_UPDATE_IMAGE} to ${BOOTFS}/vl805.bin"
|
||||
|
||||
# For NFS mounts ensure that the files are readable to the TFTP user
|
||||
chmod -f go+r "${BOOTFS}/vl805.bin" "${BOOTFS}/vl805.sig" \
|
||||
@@ -196,16 +196,15 @@ applyUpdate() {
|
||||
|
||||
if [ "${IGNORE_DPKG_CHECKSUMS}" = 0 ]; then
|
||||
(
|
||||
package_info_dir="/var/lib/dpkg/info/"
|
||||
package_checksums_file="${package_info_dir}/rpi-eeprom.md5sums"
|
||||
package_checksums_file="${PACKAGE_INFO_DIR}/rpi-eeprom.md5sums"
|
||||
|
||||
if ! grep -qE '\.bin$' "${package_info_dir}/rpi-eeprom.md5sums"; then
|
||||
if ! grep -qE '\.bin$' "${PACKAGE_INFO_DIR}/rpi-eeprom.md5sums"; then
|
||||
# Try the old rpi-eeprom-images package
|
||||
package_checksums_file="${package_info_dir}/rpi-eeprom-images.md5sums"
|
||||
package_checksums_file="${PACKAGE_INFO_DIR}/rpi-eeprom-images.md5sums"
|
||||
fi
|
||||
|
||||
CHECKSUMS=$(mktemp)
|
||||
cat "${package_checksums_file}" | grep -E '\.bin$' > "${CHECKSUMS}"
|
||||
grep -E '\.bin$' "${package_checksums_file}" > "${CHECKSUMS}"
|
||||
cd /
|
||||
if ! md5sum -c "${CHECKSUMS}" > /dev/null 2>&1; then
|
||||
md5sum -c "${CHECKSUMS}"
|
||||
@@ -304,7 +303,7 @@ checkDependencies() {
|
||||
BOARD_TYPE=$(((0x$BOARD_INFO >> 4) & 0xff))
|
||||
BOARD_REVISION=$((0x$BOARD_INFO & 0xf))
|
||||
|
||||
if [ ${BOARD_TYPE} -eq 20 ] && [ ${CM4_ENABLE_RPI_EEPROM_UPDATE} != '1' ]; then
|
||||
if [ ${BOARD_TYPE} -eq 20 ] && [ "${CM4_ENABLE_RPI_EEPROM_UPDATE}" != '1' ]; then
|
||||
# For CM4, USB device boot is the recommended method for EEPROM updates.
|
||||
echo "rpi-eeprom-update is not enabled by default on CM4"
|
||||
exit ${EXIT_SUCCESS}
|
||||
@@ -706,7 +705,12 @@ AUTO_UPDATE_BOOTLOADER=0
|
||||
AUTO_UPDATE_VL805=0
|
||||
MACHINE_OUTPUT=""
|
||||
JSON_OUTPUT="no"
|
||||
IGNORE_DPKG_CHECKSUMS=$LOCAL_MODE
|
||||
IGNORE_DPKG_CHECKSUMS=${LOCAL_MODE}
|
||||
PACKAGE_INFO_DIR="/var/lib/dpkg/info/"
|
||||
if [ ! -d "${PACKAGE_INFO_DIR}" ]; then
|
||||
IGNORE_DPKG_CHECKSUMS=1
|
||||
fi
|
||||
|
||||
|
||||
while getopts A:abdhilf:m:ju:r option; do
|
||||
case "${option}" in
|
||||
@@ -722,9 +726,9 @@ while getopts A:abdhilf:m:ju:r option; do
|
||||
a) AUTO_UPDATE_BOOTLOADER=1
|
||||
AUTO_UPDATE_VL805=1
|
||||
;;
|
||||
b)
|
||||
findBootFS
|
||||
echo ${BOOTFS}
|
||||
b)
|
||||
findBootFS
|
||||
echo "${BOOTFS}"
|
||||
exit 0
|
||||
;;
|
||||
d) OVERWRITE_CONFIG=1
|
||||
|
||||
Reference in New Issue
Block a user