-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathupdate.sh
More file actions
57 lines (48 loc) · 1.74 KB
/
Copy pathupdate.sh
File metadata and controls
57 lines (48 loc) · 1.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/env bash
# update.sh - Thin wrapper that downloads and runs update-core.sh
# Usage: curl -sL https://raw.githubusercontent.com/PsProsen-Dev/OpenClaw-On-Android/main/update.sh | bash
# or: ocaupdate (after initial install)
set -euo pipefail
RED='\033[0;31m'
YELLOW='\033[1;33m'
NC='\033[0m'
REPO_BASE_ORIGIN="https://raw.githubusercontent.com/PsProsen-Dev/OpenClaw-On-Android/main"
REPO_BASE="$REPO_BASE_ORIGIN"
LOGFILE="$HOME/.oca/update.log"
# Ensure curl is available
if ! command -v curl &>/dev/null; then
echo -e "${RED}[FAIL]${NC} curl not found. Install it with: pkg install curl"
exit 1
fi
# GitHub mirror fallback for restricted networks
resolve_repo_base() {
if curl -sI --connect-timeout 3 "$REPO_BASE_ORIGIN/oca.sh" >/dev/null 2>&1; then
REPO_BASE="$REPO_BASE_ORIGIN"; return 0
fi
local mirrors=(
"https://ghfast.top/$REPO_BASE_ORIGIN"
"https://ghproxy.net/$REPO_BASE_ORIGIN"
"https://mirror.ghproxy.com/$REPO_BASE_ORIGIN"
)
for m in "${mirrors[@]}"; do
if curl -sI --connect-timeout 3 "$m/oca.sh" >/dev/null 2>&1; then
echo -e "${YELLOW}[MIRROR]${NC} Using mirror for GitHub downloads"
REPO_BASE="$m"; return 0
fi
done
return 1
}
resolve_repo_base
# Prepare log directory
mkdir -p "$HOME/.oca"
# Download update-core.sh
TMPFILE=$(mktemp "${PREFIX:-/tmp}/tmp/update-core.XXXXXX.sh" 2>/dev/null) || TMPFILE=$(mktemp /tmp/update-core.XXXXXX.sh)
trap 'rm -f "$TMPFILE"' EXIT
if ! curl -sfL "$REPO_BASE/update-core.sh" -o "$TMPFILE"; then
echo -e "${RED}[FAIL]${NC} Failed to download update-core.sh"
exit 1
fi
# Execute and save output to log
bash "$TMPFILE" 2>&1 | tee "$LOGFILE"
echo ""
echo -e "${YELLOW}Log saved to $LOGFILE${NC}"