#!/usr/bin/env bash set -Eeuo pipefail # Stable entrypoint. Pin the tested engine version here. VERSION="v0.1.0" BASE_URL="${DASHEN_170HX_BASE_URL:-https://dashen.wang/gpu/170hx}" TMPDIR_170HX="$(mktemp -d -t dashen-170hx.XXXXXX)" cleanup_tmp() { rm -f "$TMPDIR_170HX/test.sh" "$TMPDIR_170HX/SHA256SUMS" rmdir "$TMPDIR_170HX" 2>/dev/null || true } trap cleanup_tmp EXIT fetch() { local url="$1" out="$2" if command -v curl >/dev/null 2>&1; then curl -fL --retry 2 --connect-timeout 10 --max-time 120 "$url" -o "$out" elif command -v wget >/dev/null 2>&1; then wget -q --timeout=120 -O "$out" "$url" else echo "缺少 curl 或 wget,无法下载测试程序。" >&2 exit 2 fi } ENGINE="$TMPDIR_170HX/test.sh" SUMS="$TMPDIR_170HX/SHA256SUMS" fetch "$BASE_URL/releases/$VERSION/test.sh" "$ENGINE" fetch "$BASE_URL/releases/$VERSION/SHA256SUMS" "$SUMS" if ! command -v sha256sum >/dev/null 2>&1; then echo "缺少 sha256sum,拒绝执行未校验脚本。" >&2 exit 2 fi ( cd "$TMPDIR_170HX" sha256sum -c SHA256SUMS ) chmod +x "$ENGINE" exec bash "$ENGINE" "$@"