From 4fcd61b8e2da360415d67509cbbfd2a7547ed2e6 Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Sun, 8 Sep 2019 17:24:35 +0100 Subject: [PATCH] rpi-eeprom: use wrapper to ensure /flash is writeable --- packages/tools/rpi-eeprom/config/rpi-eeprom-update | 1 - packages/tools/rpi-eeprom/package.mk | 4 +++- packages/tools/rpi-eeprom/source/rpi-eeprom-update | 10 ++++++++++ 3 files changed, 13 insertions(+), 2 deletions(-) create mode 100755 packages/tools/rpi-eeprom/source/rpi-eeprom-update diff --git a/packages/tools/rpi-eeprom/config/rpi-eeprom-update b/packages/tools/rpi-eeprom/config/rpi-eeprom-update index b23db4abb0..0e85be4214 100644 --- a/packages/tools/rpi-eeprom/config/rpi-eeprom-update +++ b/packages/tools/rpi-eeprom/config/rpi-eeprom-update @@ -2,4 +2,3 @@ FIRMWARE_ROOT="/usr/lib/kernel-overlays/base/lib/firmware/raspberrypi/bootloader" FIRMWARE_BACKUP_DIR="/storage/.config/rpifw-backup" BOOTFS=/flash -USE_FLASHROM=${USE_FLASHROM:-1} diff --git a/packages/tools/rpi-eeprom/package.mk b/packages/tools/rpi-eeprom/package.mk index 1d951e325e..a07fe8190e 100644 --- a/packages/tools/rpi-eeprom/package.mk +++ b/packages/tools/rpi-eeprom/package.mk @@ -29,7 +29,9 @@ makeinstall_target() { done mkdir -p ${INSTALL}/usr/bin - cp -PRv ${PKG_BUILD}/rpi-eeprom-{config,update} ${INSTALL}/usr/bin + cp -PRv ${PKG_DIR}/source/rpi-eeprom-update ${INSTALL}/usr/bin + cp -PRv ${PKG_BUILD}/rpi-eeprom-update ${INSTALL}/usr/bin/.rpi-eeprom-update.real + cp -PRv ${PKG_BUILD}/rpi-eeprom-config ${INSTALL}/usr/bin mkdir -p ${INSTALL}/etc/default cp -PRv ${PKG_DIR}/config/* ${INSTALL}/etc/default diff --git a/packages/tools/rpi-eeprom/source/rpi-eeprom-update b/packages/tools/rpi-eeprom/source/rpi-eeprom-update new file mode 100755 index 0000000000..6070549b20 --- /dev/null +++ b/packages/tools/rpi-eeprom/source/rpi-eeprom-update @@ -0,0 +1,10 @@ +#!/bin/sh + +# If read-only then mount writeable, and restore read-only on exit +# This means we don't restore read-only if /flash is already writeable +if [ -n "$(grep " /flash " /proc/mounts | grep "[[:space:]]ro[[:space:],]")" ]; then + trap "mount -o remount,ro /flash" EXIT + mount -o remount,rw /flash +fi + +sh /usr/bin/.rpi-eeprom-update.real $@