From 6672deb920bb7ca05fef12445d0ad3409d1ac18c Mon Sep 17 00:00:00 2001 From: Kroese Date: Fri, 17 Oct 2025 17:18:21 +0200 Subject: [PATCH] fix: Use temporary file when extracting ROM (#352) --- src/boot.sh | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/boot.sh b/src/boot.sh index ab43c75..2fc8400 100644 --- a/src/boot.sh +++ b/src/boot.sh @@ -45,15 +45,18 @@ DEST="$STORAGE/$DEST" if [ ! -s "$DEST.rom" ] || [ ! -f "$DEST.rom" ]; then [ ! -s "$OVMF/$ROM" ] || [ ! -f "$OVMF/$ROM" ] && error "UEFI boot file ($OVMF/$ROM) not found!" && exit 44 - cp "$OVMF/$ROM" "$DEST.rom" - if [[ "${LOGO:-}" != [Nn]* ]]; then - /run/utk.bin "$DEST.rom" replace_ffs LogoDXE "/var/www/img/macos.ffs" save "$DEST.rom" + if [[ "${LOGO:-}" == [Nn]* ]]; then + cp "$OVMF/$ROM" "$DEST.tmp" + else + /run/utk.bin "$OVMF/$ROM" replace_ffs LogoDXE "/var/www/img/${PROCESS,,}.ffs" save "$DEST.tmp" fi + mv "$DEST.tmp" "$DEST.rom" fi if [ ! -s "$DEST.vars" ] || [ ! -f "$DEST.vars" ]; then [ ! -s "$OVMF/$VARS" ] || [ ! -f "$OVMF/$VARS" ]&& error "UEFI vars file ($OVMF/$VARS) not found!" && exit 45 - cp "$OVMF/$VARS" "$DEST.vars" + cp "$OVMF/$VARS" "$DEST.tmp" + mv "$DEST.tmp" "$DEST.vars" fi BOOT_OPTS+=" -drive if=pflash,format=raw,readonly=on,file=$DEST.rom"