30 lines
932 B
Bash
30 lines
932 B
Bash
# --- 4. VS CODE TUNNEL SETUP (Hardened v2) ---
|
|
ARCH=$(uname -m)
|
|
case $ARCH in
|
|
x86_64) PLAT="cli-linux-x64" ;;
|
|
aarch64) PLAT="cli-linux-arm64" ;;
|
|
*) echo "❌ Unsupported arch: $ARCH"; exit 1 ;;
|
|
esac
|
|
|
|
echo "💻 Installing VS Code CLI ($ARCH)..."
|
|
URL="https://update.code.visualstudio.com/latest/$PLAT/stable"
|
|
|
|
curl -Lk "$URL" --output vscode_cli.tar.gz
|
|
|
|
# Check for a healthy file size (> 5MB)
|
|
FILESIZE=$(stat -c%s "vscode_cli.tar.gz")
|
|
if [ "$FILESIZE" -lt 5000000 ]; then
|
|
echo "❌ Error: VS Code download failed (Size: $FILESIZE bytes)."
|
|
exit 1
|
|
fi
|
|
|
|
tar -xf vscode_cli.tar.gz
|
|
sudo mv code /usr/local/bin/
|
|
rm vscode_cli.tar.gz
|
|
|
|
# Required for background persistence
|
|
sudo loginctl enable-linger $USER
|
|
|
|
echo "🔧 Registering Tunnel Service..."
|
|
# Simplified command: Provider is handled during the 'code tunnel user login' step
|
|
code tunnel service install --accept-server-license-terms --name "$(hostname)" |