#!/bin/sh
# The update entry point uses the same audited installer in upgrade mode.
set -eu
umask 077
installer_sha=2c14a6094708cd93a933140aa1f9cc3e59f5d732238a540dac77efdbf01516b5
work=$(mktemp -d /var/tmp/wdcp-update.XXXXXXXX)
trap 'rm -rf "$work"' EXIT
trap 'exit 130' INT
trap 'exit 143' TERM
url=https://wdcp.net/install/bootstrap-20261018.sh
if command -v curl >/dev/null; then
    code=$(curl --fail --silent --show-error --proto '=https' --tlsv1.2 --retry 3 --connect-timeout 15 --max-time 120 --output "$work/install.sh" --write-out '%{http_code}' "$url")
    test "$code" = 200 || { echo '更新入口拒绝重定向。' >&2; exit 1; }
elif command -v wget >/dev/null; then
    wget --quiet --https-only --max-redirect=0 --timeout=30 --tries=3 -O "$work/install.sh" "$url"
else echo '请先安装 curl 或 wget 及 ca-certificates。' >&2; exit 1; fi
printf '%s  %s\n' "$installer_sha" "$work/install.sh" | sha256sum -c - >/dev/null
sh "$work/install.sh" --upgrade "$@"
