#!/bin/sh
set -eu

BOOT="/boot"
RECOVERY="$BOOT/recovery"

mountpoint -q "$BOOT" || mount "$BOOT"

mkdir -p "$RECOVERY"

cd "$RECOVERY"

if [ ! -f rootfs.tar.xz.new ]; then
	exit 0
fi

if [ ! -f rootfs.tar.xz.sha256.new ]; then
	echo "[OTA] ERROR: staged recovery checksum missing"
	exit 1
fi

echo "[OTA] Verifying staged recovery rootfs..."
sha256sum -c rootfs.tar.xz.sha256.new

mv -f rootfs.tar.xz.new rootfs.tar.xz

if [ -f version.new ]; then
	mv -f version.new version
fi

echo "[OTA] Rewriting recovery checksum with final filename..."
sha256sum rootfs.tar.xz > rootfs.tar.xz.sha256

rm -f rootfs.tar.xz.sha256.new

sync
