Remove obsolete audio and buzzer control documentation files, including detailed guides and HTML interfaces, to streamline the repository and eliminate redundancy. This cleanup enhances maintainability and focuses on essential resources for the reTerminal DM4 audio and buzzer functionalities.
This commit is contained in:
47
emmc-provisioning/scripts/populate-tftpboot-from-git.sh
Executable file
47
emmc-provisioning/scripts/populate-tftpboot-from-git.sh
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env bash
|
||||
# Populate /srv/tftpboot with Raspberry Pi 4 / CM4 boot files from the official firmware repo.
|
||||
# Run inside the LXC (as root), or from your machine: ./populate-tftpboot-from-git.sh root@10.130.60.141
|
||||
# Requires: curl or wget, tar; the LXC must have internet (eth0).
|
||||
|
||||
set -e
|
||||
TARGET="${1:-}"
|
||||
FIRMWARE_URL="https://github.com/raspberrypi/firmware/archive/refs/heads/master.tar.gz"
|
||||
TFTP_ROOT="${TFTP_ROOT:-/srv/tftpboot}"
|
||||
|
||||
do_populate() {
|
||||
echo "Populating $TFTP_ROOT from Raspberry Pi firmware (GitHub) ..."
|
||||
mkdir -p "$TFTP_ROOT"
|
||||
if [[ -f "$TFTP_ROOT/start4cd.elf" ]]; then
|
||||
echo "start4cd.elf already present; skipping download (remove it to re-fetch)."
|
||||
return 0
|
||||
fi
|
||||
if ! command -v curl >/dev/null 2>&1 && ! command -v wget >/dev/null 2>&1; then
|
||||
echo "Installing curl ..."
|
||||
apt-get update -qq && DEBIAN_FRONTEND=noninteractive apt-get install -y -qq curl
|
||||
fi
|
||||
local tmpdir
|
||||
tmpdir=$(mktemp -d)
|
||||
trap "rm -rf $tmpdir" EXIT
|
||||
if command -v curl >/dev/null 2>&1; then
|
||||
curl -sL "$FIRMWARE_URL" -o "$tmpdir/firmware.tar.gz"
|
||||
else
|
||||
wget -q -O "$tmpdir/firmware.tar.gz" "$FIRMWARE_URL"
|
||||
fi
|
||||
tar xzf "$tmpdir/firmware.tar.gz" -C "$tmpdir"
|
||||
if [[ ! -d "$tmpdir/firmware-master/boot" ]]; then
|
||||
echo "Error: boot folder not found in archive"
|
||||
exit 1
|
||||
fi
|
||||
cp -a "$tmpdir/firmware-master/boot/." "$TFTP_ROOT/"
|
||||
echo "Copied boot files to $TFTP_ROOT ($(ls "$TFTP_ROOT" | wc -l) items)."
|
||||
ls -la "$TFTP_ROOT"/start4*.elf "$TFTP_ROOT"/fixup4*.dat "$TFTP_ROOT"/config.txt 2>/dev/null || true
|
||||
}
|
||||
|
||||
if [[ -n "$TARGET" ]]; then
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||
scp "$SCRIPT_DIR/populate-tftpboot-from-git.sh" "$TARGET:/tmp/populate-tftpboot.sh"
|
||||
ssh "$TARGET" "bash /tmp/populate-tftpboot.sh"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
do_populate
|
||||
Reference in New Issue
Block a user