Initial RK1 media-center image project
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
#!/usr/bin/env bash
|
||||
# Assemble the complete RK1 media-center image from locked binary inputs.
|
||||
|
||||
set -Eeuo pipefail
|
||||
umask 022
|
||||
|
||||
SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)
|
||||
SSH_PUBLIC_KEY=""
|
||||
IMAGE_SIZE_MIB=4096
|
||||
IMAGE_REVISION="r4"
|
||||
FORCE_REPACK=0
|
||||
|
||||
usage() {
|
||||
cat <<'EOF'
|
||||
Usage: ./build.sh --ssh-public-key PATH [--image-size-mib N] [--revision NAME] [--force-repack]
|
||||
|
||||
Builds a flashable Turing RK1 image without root, loop devices, or mounts.
|
||||
The key file may contain one or more plain OpenSSH public keys.
|
||||
EOF
|
||||
}
|
||||
|
||||
while (($#)); do
|
||||
case "$1" in
|
||||
--ssh-public-key) SSH_PUBLIC_KEY=${2:?}; shift 2 ;;
|
||||
--image-size-mib) IMAGE_SIZE_MIB=${2:?}; shift 2 ;;
|
||||
--revision) IMAGE_REVISION=${2:?}; shift 2 ;;
|
||||
--force-repack) FORCE_REPACK=1; shift ;;
|
||||
-h|--help) usage; exit 0 ;;
|
||||
*) echo "Unknown argument: $1" >&2; usage >&2; exit 2 ;;
|
||||
esac
|
||||
done
|
||||
[[ -n "$SSH_PUBLIC_KEY" ]] || { usage >&2; exit 2; }
|
||||
|
||||
"$SCRIPT_DIR/scripts/fetch-inputs.sh"
|
||||
|
||||
upstream_deb="$SCRIPT_DIR/downloads/kodi-rockchip-gbm_20260721-1741_trixie_arm64.deb"
|
||||
media_deb="$SCRIPT_DIR/media/out/rk1-media-stack_20260721.1741+rk1.1_arm64.deb"
|
||||
if ((FORCE_REPACK)) || [[ ! -s "$media_deb" ]]; then
|
||||
"$SCRIPT_DIR/media/scripts/repack-upstream-deb.sh" \
|
||||
--deb "$upstream_deb" --output-dir "$SCRIPT_DIR/media/out"
|
||||
fi
|
||||
[[ -s "$media_deb.sha256" ]] || { echo "Missing media checksum" >&2; exit 1; }
|
||||
(
|
||||
cd "$(dirname -- "$media_deb")"
|
||||
sha256sum --check --status "$(basename -- "$media_deb.sha256")"
|
||||
) || { echo "Repacked media checksum failed" >&2; exit 1; }
|
||||
|
||||
"$SCRIPT_DIR/image/build-image.sh" \
|
||||
--ssh-public-key "$SSH_PUBLIC_KEY" \
|
||||
--kodi-deb "$media_deb" \
|
||||
--image-size-mib "$IMAGE_SIZE_MIB" \
|
||||
--revision "$IMAGE_REVISION"
|
||||
Reference in New Issue
Block a user