sidex/scripts/setup-extensions.sh
redaBenchraa d7ef963c20 fix(extensions): bump VS Code API version to 1.115.0
Version 1.110.0 is not available on the VS Code Marketplace, causing
extension downloads to fail during setup. Bumped to 1.115.0 which is a
valid published version.
2026-04-14 11:41:18 +02:00

47 lines
1.6 KiB
Bash
Executable file

#!/usr/bin/env bash
set -euo pipefail
VSCODE_VERSION="1.115.0"
REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
EXTENSIONS_DIR="$REPO_ROOT/extensions"
if [[ -d "$EXTENSIONS_DIR" && "$(ls -A "$EXTENSIONS_DIR" 2>/dev/null | wc -l)" -gt 10 ]]; then
echo "extensions/ already populated ($(ls "$EXTENSIONS_DIR" | wc -l | tr -d ' ') entries) — skipping."
exit 0
fi
mkdir -p "$EXTENSIONS_DIR"
VSCODE_CANDIDATES=(
"/Applications/Visual Studio Code.app/Contents/Resources/app/extensions"
"/Applications/Cursor.app/Contents/Resources/app/extensions"
"/usr/share/code/resources/app/extensions"
"/usr/lib/code/extensions"
"/opt/visual-studio-code/resources/app/extensions"
"$HOME/.vscode/extensions"
)
for candidate in "${VSCODE_CANDIDATES[@]}"; do
if [[ -d "$candidate" && "$(ls -A "$candidate" 2>/dev/null | wc -l)" -gt 10 ]]; then
echo "Found VSCode extensions at: $candidate"
echo "Copying built-in extensions..."
cp -r "$candidate"/. "$EXTENSIONS_DIR/"
echo "Copied $(ls "$EXTENSIONS_DIR" | wc -l | tr -d ' ') extensions."
exit 0
fi
done
echo "No local VSCode installation found. Downloading from GitHub..."
TMP_DIR="$(mktemp -d)"
trap 'rm -rf "$TMP_DIR"' EXIT
curl -L --progress-bar \
"https://github.com/microsoft/vscode/archive/refs/tags/${VSCODE_VERSION}.tar.gz" \
-o "$TMP_DIR/vscode.tar.gz"
echo "Extracting extensions..."
tar -xzf "$TMP_DIR/vscode.tar.gz" -C "$TMP_DIR" "vscode-${VSCODE_VERSION}/extensions"
cp -r "$TMP_DIR/vscode-${VSCODE_VERSION}/extensions/." "$EXTENSIONS_DIR/"
echo "Done — $(ls "$EXTENSIONS_DIR" | wc -l | tr -d ' ') extensions installed."