1234567891011121314151617181920212223242526272829303132333435 |
- #!/bin/bash
- set -e
- export VSCODE_QUALITY="stable"
- while getopts ":ilp" opt; do
- case "$opt" in
- i)
- export VSCODE_QUALITY="insider"
- ;;
- esac
- done
- URL=`curl -s "https://update.code.visualstudio.com/api/update/win32-x64-archive/${VSCODE_QUALITY}/VERSION" | jq -c '.url' | sed -E 's/.*"([^"]+)".*/\1/'`
- # echo "url: ${URL}"
- FILE=`echo "${URL}" | sed -E 's|.*/([^/]+\.zip)$|\1|'`
- # echo "file: ${FILE}"
- DIRECTORY=`echo "${URL}" | sed -E 's|.*/([^/]+)\.zip$|\1|'`
- # echo "directory: ${DIRECTORY}"
- if [[ ! -f "${FILE}" ]]; then
- wget "${URL}"
- fi
- if [[ ! -d "${DIRECTORY}" ]]; then
- unzip "${FILE}" -d "${DIRECTORY}"
- fi
- APIS=`cat ${DIRECTORY}/resources/app/product.json | jq -r '.extensionEnabledApiProposals'`
- APIS=`echo "${APIS}" | jq '. += {"jeanp413.open-remote-ssh": ["resolvers", "tunnels", "terminalDataWriteEvent", "contribRemoteHelp", "contribViewsRemote"]}'`
- cat <<< $(jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json) > product.json
|