add extensions support for vscode-web
parent
7e897a51e6
commit
fa133e8887
@ -1,21 +1,52 @@
|
|||||||
#!/usr/bin/env sh
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
BOLD='\033[0;1m'
|
BOLD='\033[0;1m'
|
||||||
|
EXTENSIONS=("${EXTENSIONS}")
|
||||||
|
|
||||||
# Create install directory if it doesn't exist
|
# Create install prefix
|
||||||
mkdir -p ${INSTALL_DIR}
|
mkdir -p ${INSTALL_PREFIX}
|
||||||
|
|
||||||
printf "$${BOLD}Installing vscode-cli!\n"
|
printf "$${BOLD}Installing Microsoft Visual Studio Code Server!\n"
|
||||||
|
|
||||||
# Download and extract code-cli tarball
|
# Download and extract vscode-server
|
||||||
output=$(curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz && tar -xf vscode_cli.tar.gz -C ${INSTALL_DIR} && rm vscode_cli.tar.gz)
|
ARCH=$(uname -m)
|
||||||
|
case "$ARCH" in
|
||||||
|
x86_64) ARCH="x64" ;;
|
||||||
|
aarch64) ARCH="arm64" ;;
|
||||||
|
*)
|
||||||
|
echo "Unsupported architecture"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
HASH=$(curl https://update.code.visualstudio.com/api/commits/stable/server-linux-$ARCH-web | cut -d '"' -f 2)
|
||||||
|
outut=$(curl -sL https://vscode.download.prss.microsoft.com/dbazure/download/stable/$HASH/vscode-server-linux-$ARCH-web.tar.gz | tar -xz -C ${INSTALL_PREFIX} --strip-components 1 && rm -rf vscode-server-linux-$ARCH-web.tar.gz)
|
||||||
|
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo "Failed to install vscode-cli: $output"
|
echo "Failed to install vscode-server: $output"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
printf "🥳 vscode-cli has been installed.\n\n"
|
printf "🥳 vscode-server has been installed in ${INSTALL_PREFIX}"
|
||||||
|
|
||||||
|
VSCODE_SERVER="${INSTALL_PREFIX}/bin/code-server"
|
||||||
|
|
||||||
|
# Install each extension...
|
||||||
|
IFS=',' read -r -a EXTENSIONLIST <<< "$${EXTENSIONS}"
|
||||||
|
for extension in "$${EXTENSIONLIST[@]}"; do
|
||||||
|
if [ -z "$extension" ]; then
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
printf "🧩 Installing extension $${CODE}$extension$${RESET}...\n"
|
||||||
|
output=$($VSCODE_SERVER --install-extension "$extension" --force)
|
||||||
|
if [ $? -ne 0 ]; then
|
||||||
|
echo "Failed to install extension: $extension: $output"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "👷 Running ${INSTALL_DIR}/bin/code-server
|
||||||
|
|
||||||
echo "👷 Running ${INSTALL_DIR}/bin/code serve-web --port ${PORT} --without-connection-token --accept-server-license-terms in the background..."
|
|
||||||
echo "Check logs at ${LOG_PATH}!"
|
echo "Check logs at ${LOG_PATH}!"
|
||||||
${INSTALL_DIR}/code serve-web --port ${PORT} --without-connection-token --accept-server-license-terms > ${LOG_PATH} 2>&1 &
|
${INSTALL_DIR}/code serve-local --port ${PORT} --accept-server-license-terms serve-local --without-connection-token --telemetry-level ${TELEMETRY_LEVEL} > ${LOG_PATH} 2>&1 &
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue