#!/bin/sh
# Download a preview archive and verify its checksum before installing.
set -eu
case "$(uname -s)-$(uname -m)" in
  Darwin-arm64) platform=macos-arm64 ;;
  Darwin-x86_64) platform=macos-x86_64 ;;
  Linux-aarch64|Linux-arm64) platform=linux-arm64 ;;
  *) printf '%s\n' 'Supported: macOS ARM64/x86_64 and Linux ARM64.' >&2; exit 1 ;;
esac
base=https://superweb.to/downloads
archive=superweb-$platform.tar.gz
work=$(mktemp -d)
trap 'rm -rf "$work"' EXIT HUP INT TERM
cd "$work"
curl --proto '=https' --tlsv1.2 -fSL "$base/$archive" -o "$archive"
curl --proto '=https' --tlsv1.2 -fsSL "$base/SHA256SUMS" -o SHA256SUMS
expected=$(awk -v file="$archive" '$2 == file {print $1}' SHA256SUMS)
[ ${#expected} -eq 64 ] || { echo 'Missing archive checksum' >&2; exit 1; }
if command -v sha256sum >/dev/null 2>&1; then actual=$(sha256sum "$archive" | awk '{print $1}'); else actual=$(shasum -a 256 "$archive" | awk '{print $1}'); fi
[ "$actual" = "$expected" ] || { echo 'Checksum mismatch; refusing to install' >&2; exit 1; }
tar -xzf "$archive"
sh "superweb-$platform/install.sh" "${1:-$HOME/.local}"
