Compare commits
34 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d408fcc060 | ||
|
|
0f3bba8d9f | ||
|
|
213baf8651 | ||
|
|
5f035559e5 | ||
|
|
58823c7ad8 | ||
|
|
f4a46d1c7b | ||
|
|
bfcfedb1e8 | ||
|
|
74d06bf01d | ||
|
|
a541390984 | ||
|
|
da0eaa5d45 | ||
|
|
008aacc81e | ||
|
|
ed99748de8 | ||
|
|
b40a02dc7f | ||
|
|
bc41a76bd0 | ||
|
|
c84850f967 | ||
|
|
b407087e57 | ||
|
|
b5b89730a4 | ||
|
|
225fbb2dea | ||
|
|
344541b8fe | ||
|
|
d3373b16e8 | ||
|
|
c1bdb38d45 | ||
|
|
dc75d7df46 | ||
|
|
f805d740bb | ||
|
|
ae47b31091 | ||
|
|
1a85464271 | ||
|
|
6346d7f6bb | ||
|
|
cc9e2c6dec | ||
|
|
8a561e165d | ||
|
|
fec74ec8ce | ||
|
|
606d3f8ff2 | ||
|
|
2bf10dde0c | ||
|
|
a9b42f5af4 | ||
|
|
56bce30b73 | ||
|
|
ee1cf86ff7 |
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
||||
vscode
|
||||
13
.travis.yml
@@ -2,12 +2,20 @@ matrix:
|
||||
include:
|
||||
- os: linux
|
||||
sudo: required
|
||||
- os: linux
|
||||
sudo: required
|
||||
env: BUILDARCH=ia32
|
||||
# - os: linux
|
||||
# sudo: required
|
||||
# env: BUILDARCH=arm64
|
||||
- os: osx
|
||||
|
||||
language: node_js
|
||||
node_js: "8"
|
||||
|
||||
before_install:
|
||||
- curl -o- -L https://yarnpkg.com/install.sh | bash
|
||||
- export PATH="$HOME/.yarn/bin:$PATH"
|
||||
- ./install_deps.sh
|
||||
- . get_repo.sh
|
||||
- . check_tags.sh
|
||||
@@ -21,13 +29,18 @@ before_deploy:
|
||||
deploy:
|
||||
provider: releases
|
||||
skip_cleanup: true
|
||||
overwrite: true
|
||||
name: $LATEST_MS_TAG
|
||||
api_key: $GITHUB_TOKEN
|
||||
file_glob: true
|
||||
file:
|
||||
- ./*.zip
|
||||
- ./*.tar.gz
|
||||
- vscode/.build/linux/deb/i386/deb/*.deb
|
||||
- vscode/.build/linux/rpm/i386/*.rpm
|
||||
- vscode/.build/linux/deb/amd64/deb/*.deb
|
||||
- vscode/.build/linux/rpm/x86_64/*.rpm
|
||||
- vscode/.build/linux/deb/arm64/deb/*.deb
|
||||
on:
|
||||
all_branches: true
|
||||
condition: $SHOULD_BUILD = yes
|
||||
|
||||
46
CODE_OF_CONDUCT.md
Normal file
@@ -0,0 +1,46 @@
|
||||
# Contributor Covenant Code of Conduct
|
||||
|
||||
## Our Pledge
|
||||
|
||||
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
||||
|
||||
## Our Standards
|
||||
|
||||
Examples of behavior that contributes to creating a positive environment include:
|
||||
|
||||
* Using welcoming and inclusive language
|
||||
* Being respectful of differing viewpoints and experiences
|
||||
* Gracefully accepting constructive criticism
|
||||
* Focusing on what is best for the community
|
||||
* Showing empathy towards other community members
|
||||
|
||||
Examples of unacceptable behavior by participants include:
|
||||
|
||||
* The use of sexualized language or imagery and unwelcome sexual attention or advances
|
||||
* Trolling, insulting/derogatory comments, and personal or political attacks
|
||||
* Public or private harassment
|
||||
* Publishing others' private information, such as a physical or electronic address, without explicit permission
|
||||
* Other conduct which could reasonably be considered inappropriate in a professional setting
|
||||
|
||||
## Our Responsibilities
|
||||
|
||||
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
|
||||
|
||||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
|
||||
|
||||
## Scope
|
||||
|
||||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
|
||||
|
||||
## Enforcement
|
||||
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at vscodium@protonmail.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
|
||||
|
||||
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
|
||||
|
||||
## Attribution
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
||||
69
DOCS.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# More Info
|
||||
|
||||
## Table of Contents
|
||||
- [Getting all the Telemetry Out](#disable-telemetry)
|
||||
- [Extensions + Marketplace](#extensions-marketplace)
|
||||
- [Migrating from Visual Studio Code to VSCodium](#migrating)
|
||||
- [How do I press and hold a key and have it repeat in VSCodium?](#press-and-hold)
|
||||
- [How do I open VSCodium from the terminal?](#terminal-support)
|
||||
|
||||
## <a id="disable-telemetry"></a>Getting all the Telemetry Out
|
||||
Even though we do not pass the telemetry build flags (and go out of our way to cripple the baked-in telemetry), Microsoft will still track usage by default.
|
||||
|
||||
We do however set the default `telemetry.enableCrashReporter` and `telemetry.enableTelemetry` values to false. You can see those by viewing your VSCodium settings.json and searching for `telemetry`.
|
||||
|
||||
The instructions [here](https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting) and [here](https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-crash-reporting) help with explaining and toggling telemetry.
|
||||
|
||||
It is also highly recommended that you review all the settings that "use online services" by following [these instructions](https://code.visualstudio.com/docs/supporting/faq#_managing-online-services). The `@tag:usesOnlineServices` filter on the settings page will show that by default:
|
||||
- Extensions auto check for updates and auto install updates
|
||||
- Searches within the app are sent to an online service for "natural language processing"
|
||||
- Updates to the app are fetched in the background
|
||||
|
||||
These can all be disabled.
|
||||
|
||||
__Please note that some extensions send telemetry data to Microsoft as well. We have no control over this and can only recommend removing the extension.__
|
||||
|
||||
_(For example the C# extension `ms-vscode.csharp` sends tracking data to Microsoft.)_
|
||||
|
||||
## <a id="extensions-marketplace"></a>Extensions + Marketplace
|
||||
Until something more open comes around, we use the Microsoft Marketplace/Extensions in the `product.json` file. Those links are licensed under MIT as per [the comments on this issue.](https://github.com/Microsoft/vscode/issues/31168#issuecomment-317319063)
|
||||
|
||||
## <a id="migrating"></a>Migrating from Visual Studio Code to VSCodium
|
||||
VSCodium (and a freshly cloned copy of vscode built from source) stores its extension files in `~/.vscode-oss`. So if you currently have Visual Studio Code installed, your extensions won't automatically populate. You can reinstall your extensions from the Marketplace in VSCodium, or copy the `extensions` from `~/.vscode/extensions` to `~/.vscode-oss/extensions`.
|
||||
|
||||
Visual Studio Code stores its `keybindings.json` and `settings.json` file in the these locations:
|
||||
- __Windows__: `%APPDATA%\Code\User`
|
||||
- __macOS__: `$HOME/Library/Application Support/Code/User`
|
||||
- __Linux__: `$HOME/.config/Code/User`
|
||||
|
||||
You can copy these files to the VSCodium user settings folder:
|
||||
- __Windows__: `%APPDATA%\VSCodium\User`
|
||||
- __macOS__: `$HOME/Library/Application Support/VSCodium/User`
|
||||
- __Linux__: `$HOME/.config/VSCodium/User`
|
||||
|
||||
To copy your settings manually:
|
||||
- In Visual Studio Code, go to Settings (Command+, if on a Mac)
|
||||
- Click the three dots `...` and choose 'Open settings.json'
|
||||
- Copy the contents of settings.json into the same place in VSCodium
|
||||
|
||||
## <a id="press-and-hold"></a>How do I press and hold a key and have it repeat in VSCodium (Mac)?
|
||||
This is a common question for Visual Studio Code and the procedure is slightly different in VSCodium because the `defaults` path is different.
|
||||
|
||||
```bash
|
||||
$ defaults write com.visualstudio.code.oss ApplePressAndHoldEnabled -bool false
|
||||
```
|
||||
|
||||
## <a id="terminal-support"></a>How do I open VSCodium from the terminal?
|
||||
- Go to the command palette (View | Command Palette...)
|
||||
- Choose `Shell command: Install 'vscodium' command in PATH`.
|
||||
|
||||

|
||||
|
||||
This allows you to open files or directories in VSCodium directly from your terminal:
|
||||
|
||||
```bash
|
||||
~/in-my-project $ vscodium . # open this directory
|
||||
~/in-my-project $ vscodium file.txt # open this file
|
||||
```
|
||||
|
||||
Feel free to alias this command to something easier to type in your shell profile (e.g. `alias code=vscodium`).
|
||||
66
README.md
@@ -1,15 +1,65 @@
|
||||
## VSCodium
|
||||
# VSCodium
|
||||
|
||||
### Free/Libre Open Source Software Binaries of VSCode
|
||||
[](https://travis-ci.com/VSCodium/vscodium)
|
||||
[](https://github.com/vscodium/vscodium/releases)
|
||||
[](https://github.com/VSCodium/vscodium/blob/master/LICENSE)
|
||||
|
||||
## Table of Contents
|
||||
- [Download/Install](#download-install)
|
||||
- [Install with Brew](#install-with-brew)
|
||||
- [Install with Package Manager](#install-with-package-manager)
|
||||
- [Why Does This Exist](#why)
|
||||
- [More Info](#more-info)
|
||||
- [Supported OS](#supported-os)
|
||||
|
||||
## <a id="download-install"></a>Download/Install
|
||||
:tada: :tada: [Download latest release here](https://github.com/VSCodium/vscodium/releases) :tada: :tada:
|
||||
|
||||
#### <a id="install-with-brew"></a>Install with Brew (Mac)
|
||||
If you are on a Mac and have [Homebrew](https://brew.sh/) installed:
|
||||
```bash
|
||||
brew cask install vscodium
|
||||
```
|
||||
|
||||
_Note: if you see "App can’t be opened because it is from an unidentified developer" when opening VSCodium the first time, you can right-click the application and choose Open. This should only be required the first time opening on a Mac._
|
||||
|
||||
#### <a id="install-with-package-manager"></a>Install with Package Manager (Linux)
|
||||
You can always install using the downloads (deb, rpm, tar) on the [releases page](https://github.com/VSCodium/vscodium/releases), but you can also install using your favorite package manager and get automatic updates. [@paulcarroty](https://github.com/paulcarroty) has set up a repository with instructions [here](https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo). Any issues installing VSCodium using your package manager should be directed to that repository's issue tracker.
|
||||
|
||||
## <a id="why"></a>Why Does This Exist
|
||||
This repository contains a build file to generate FLOSS release binaries of Microsoft's VSCode.
|
||||
|
||||
[Download binaries here](https://github.com/VSCodium/vscodium/releases)
|
||||
Microsoft's downloads of Visual Studio Code are licensed under [this not-FLOSS license](https://code.visualstudio.com/license) and contain telemetry/tracking. According to [this comment](https://github.com/Microsoft/vscode/issues/60#issuecomment-161792005) from a Visual Studio Code maintainer:
|
||||
|
||||
Microsoft's downloads of VSCode are licensed under [this not-FLOSS license](https://code.visualstudio.com/license). That's why this repo exists. So you don't have to download+build from source.
|
||||
> When we [Microsoft] build Visual Studio Code, we do exactly this. We clone the vscode repository, we lay down a customized product.json that has Microsoft specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under our license.
|
||||
>
|
||||
> When you clone and build from the vscode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a "clean" build, without the Microsoft customizations, which is by default licensed under the MIT license
|
||||
|
||||
Until something more open comes around, we use the Microsoft Marketplace/Extensions in the `product.json` file. Those links are licensed under MIT as per [the comments on this issue.](https://github.com/Microsoft/vscode/issues/31168#issuecomment-317319063)
|
||||
This repo exists so that you don't have to download+build from source. The build scripts in this repo clone Microsoft's vscode repo, run the build commands, and upload the resulting binaries to [GitHub releases](https://github.com/VSCodium/vscodium/releases). __These binaries are licensed under the MIT license. Telemetry is enabled by a build flag which we do not pass.__
|
||||
|
||||
### Supported OS/arch
|
||||
Currently we are only building OSX (zip) and Linux x64 (deb, rpm, and tar). If you are familiar with building Windows binaries on Travis CI + Wine please put in a PR! :blue_heart:
|
||||
If you want to build from source yourself, head over to [Microsoft's vscode repo](https://github.com/Microsoft/vscode) and follow their [instructions](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#build-and-run). This repo exists to make it easier to get the latest version of MIT-licensed VSCode.
|
||||
|
||||
## License
|
||||
MIT
|
||||
Microsoft's build process does download additional files. This was brought up in [Microsoft/vscode#49159](https://github.com/Microsoft/vscode/issues/49159) and [Microsoft/vscode#45978](https://github.com/Microsoft/vscode/issues/45978). These are the packages downloaded during build:
|
||||
|
||||
- Extensions from the Microsoft Marketplace:
|
||||
- ms-vscode.node-debug2
|
||||
- ms-vscode.node-debug
|
||||
- From [Electron releases](https://github.com/electron/electron/releases) (using [gulp-atom-electron](https://github.com/joaomoreno/gulp-atom-electron))
|
||||
- electron
|
||||
- ffmpeg
|
||||
|
||||
## <a id="more-info"></a>More Info
|
||||
For more information on getting all the telemetry disabled and tips for migrating from Visual Studio Code to VSCodium, have a look at this [Docs](https://github.com/VSCodium/vscodium/blob/master/DOCS.md) page.
|
||||
|
||||
## <a id="supported-os"></a>Supported OS
|
||||
- [x] OSX x64 (zipped app file)
|
||||
- [x] Linux x64 (`.deb`, `.rpm`, and `.tar.gz` files)
|
||||
- [x] Linux x86 (`.deb`, `.rpm`, and `.tar.gz` files)
|
||||
- [ ] Windows
|
||||
- The plan is to build the Windows executable with [AppVeyor](https://appveyor.com). PRs are welcome :blue_heart:
|
||||
|
||||
The ARM architecture is not currently supported but is actively being worked on.
|
||||
|
||||
## <a id="license"></a>License
|
||||
MIT
|
||||
|
||||
51
build.sh
@@ -1,20 +1,45 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ "$SHOULD_BUILD" == "yes" ]]; then
|
||||
cp -rp src/* vscode/
|
||||
cd vscode
|
||||
yarn
|
||||
mv product.json product.json.bak
|
||||
cat product.json.bak | jq 'setpath(["extensionsGallery"]; {"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery", "cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", "itemUrl": "https://marketplace.visualstudio.com/items"})' > product.json
|
||||
cat product.json
|
||||
export NODE_ENV=production
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
npx gulp vscode-darwin-min
|
||||
else
|
||||
npx gulp vscode-linux-x64-min
|
||||
npx gulp vscode-linux-x64-build-deb
|
||||
npx gulp vscode-linux-x64-build-rpm
|
||||
if [[ "$BUILDARCH" == "ia32" ]]; then
|
||||
export npm_config_arch=ia32
|
||||
fi
|
||||
|
||||
cd ..
|
||||
fi
|
||||
../update_settings.sh
|
||||
|
||||
yarn
|
||||
mv product.json product.json.bak
|
||||
cat product.json.bak | jq 'setpath(["extensionsGallery"]; {"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery", "cacheUrl": "https://vscode.blob.core.windows.net/gallery/index", "itemUrl": "https://marketplace.visualstudio.com/items"}) | setpath(["nameShort"]; "VSCodium") | setpath(["nameLong"]; "VSCodium") | setpath(["applicationName"]; "vscodium") | setpath(["win32MutexName"]; "vscodium") | setpath(["win32DirName"]; "VSCodium") | setpath(["win32NameVersion"]; "VSCodium") | setpath(["win32RegValueName"]; "VSCodium") | setpath(["win32AppUserModelId"]; "Microsoft.VSCodium") | setpath(["win32ShellNameShort"]; "V&SCodium") | setpath(["urlProtocol"]; "vscodium")' > product.json
|
||||
cat product.json
|
||||
../undo_telemetry.sh
|
||||
|
||||
export NODE_ENV=production
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" != "osx" ]]; then
|
||||
# microsoft adds their apt repo to sources
|
||||
# unless the app name is code-oss
|
||||
# as we are renaming the application to vscodium
|
||||
# we need to edit a line in the post install template
|
||||
sed -i "s/code-oss/vscodium/" resources/linux/debian/postinst.template
|
||||
fi
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
npm run gulp vscode-darwin-min
|
||||
elif [[ "$BUILDARCH" == "ia32" ]]; then
|
||||
npm run gulp vscode-linux-ia32-min
|
||||
npm run gulp vscode-linux-ia32-build-deb
|
||||
npm run gulp vscode-linux-ia32-build-rpm
|
||||
unset npm_config_arch
|
||||
elif [[ "$BUILDARCH" == "arm64" ]]; then
|
||||
npm run gulp vscode-linux-arm64-min
|
||||
npm run gulp vscode-linux-arm64-build-deb
|
||||
# npm run gulp vscode-linux-arm64-build-rpm
|
||||
else
|
||||
npm run gulp vscode-linux-x64-min
|
||||
npm run gulp vscode-linux-x64-build-deb
|
||||
npm run gulp vscode-linux-x64-build-rpm
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
GITHUB_RESPONSE=$(curl -s -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/repos/vscodium/vscodium/releases/tags/$LATEST_MS_TAG)
|
||||
REPOSITORY=${TRAVIS_REPO_SLUG:-"VSCodium/vscodium"}
|
||||
GITHUB_RESPONSE=$(curl -s -H "Authorization: token $GITHUB_TOKEN" https://api.github.com/repos/$REPOSITORY/releases/tags/$LATEST_MS_TAG)
|
||||
echo "Github response: ${GITHUB_RESPONSE}"
|
||||
VSCODIUM_ASSETS=$(echo $GITHUB_RESPONSE | jq '.assets')
|
||||
echo "VSCodium assets: ${VSCODIUM_ASSETS}"
|
||||
@@ -14,37 +15,75 @@ if [ "$GITHUB_TOKEN" != "" ]; then
|
||||
echo "Building on Mac because we have no ZIP"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
else
|
||||
HAVE_RPM=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["rpm"])')
|
||||
HAVE_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["deb"])')
|
||||
HAVE_TAR=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["tar.gz"])')
|
||||
if [[ "$HAVE_RPM" != "true" ]]; then
|
||||
echo "Building on Linux because we have no RPM"
|
||||
elif [[ $BUILDARCH == "ia32" ]]; then
|
||||
HAVE_IA32_RPM=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["i386.rpm"])')
|
||||
HAVE_IA32_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["i386.deb"])')
|
||||
HAVE_IA32_TAR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "ia32-$LATEST_MS_TAG.tar.gz" 'map(.name) | contains([$suffix])')
|
||||
if [[ "$HAVE_IA32_RPM" != "true" ]]; then
|
||||
echo "Building on Linux ia32 because we have no RPM"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$HAVE_DEB" != "true" ]]; then
|
||||
echo "Building on Linux because we have no DEB"
|
||||
if [[ "$HAVE_IA32_DEB" != "true" ]]; then
|
||||
echo "Building on Linux ia32 because we have no DEB"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$HAVE_TAR" != "true" ]]; then
|
||||
echo "Building on Linux because we have no TAR"
|
||||
if [[ "$HAVE_IA32_TAR" != "true" ]]; then
|
||||
echo "Building on Linux ia32 because we have no TAR"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$SHOULD_BUILD" != "yes" ]]; then
|
||||
echo "Already have all the Linux builds"
|
||||
echo "Already have all the Linux ia32 builds"
|
||||
fi
|
||||
elif [[ $BUILDARCH == "arm64" ]]; then
|
||||
# HAVE_ARM64_RPM=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["arm64.rpm"])')
|
||||
HAVE_ARM64_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["arm64.deb"])')
|
||||
HAVE_ARM64_TAR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "arm64-$LATEST_MS_TAG.tar.gz" 'map(.name) | contains([$suffix])')
|
||||
# if [[ "$HAVE_ARM64_RPM" != "true" ]]; then
|
||||
# echo "Building on Linux arm64 because we have no RPM"
|
||||
# export SHOULD_BUILD="yes"
|
||||
# fi
|
||||
if [[ "$HAVE_ARM64_DEB" != "true" ]]; then
|
||||
echo "Building on Linux arm64 because we have no DEB"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$HAVE_ARM64_TAR" != "true" ]]; then
|
||||
echo "Building on Linux arm64 because we have no TAR"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$SHOULD_BUILD" != "yes" ]]; then
|
||||
echo "Already have all the Linux arm64 builds"
|
||||
fi
|
||||
else
|
||||
HAVE_64_RPM=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["x86_64.rpm"])')
|
||||
HAVE_64_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["amd64.deb"])')
|
||||
HAVE_64_TAR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "x64-$LATEST_MS_TAG.tar.gz" 'map(.name) | contains([$suffix])')
|
||||
if [[ "$HAVE_64_RPM" != "true" ]]; then
|
||||
echo "Building on Linux x64 because we have no RPM"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$HAVE_64_DEB" != "true" ]]; then
|
||||
echo "Building on Linux x64 because we have no DEB"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$HAVE_64_TAR" != "true" ]]; then
|
||||
echo "Building on Linux x64 because we have no TAR"
|
||||
export SHOULD_BUILD="yes"
|
||||
fi
|
||||
if [[ "$SHOULD_BUILD" != "yes" ]]; then
|
||||
echo "Already have all the Linux x64 builds"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Release assets do not exist at all, continuing build"
|
||||
export SHOULD_BUILD="yes"
|
||||
if git rev-parse $LATEST_MS_TAG >/dev/null 2>&1
|
||||
then
|
||||
export TRAVIS_TAG=$LATEST_MS_TAG
|
||||
else
|
||||
git config --local user.name "Travis CI"
|
||||
git config --local user.email "builds@travis-ci.com"
|
||||
git tag $LATEST_MS_TAG
|
||||
fi
|
||||
fi
|
||||
if git rev-parse $LATEST_MS_TAG >/dev/null 2>&1
|
||||
then
|
||||
export TRAVIS_TAG=$LATEST_MS_TAG
|
||||
else
|
||||
git config --local user.name "Travis CI"
|
||||
git config --local user.email "builds@travis-ci.com"
|
||||
git tag $LATEST_MS_TAG
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
@@ -3,7 +3,13 @@
|
||||
if [[ "$SHOULD_BUILD" == "yes" ]]; then
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
cd VSCode-darwin
|
||||
zip -r ../VSCode-darwin-${LATEST_MS_TAG}.zip ./*
|
||||
zip -r -X -y ../VSCode-darwin-${LATEST_MS_TAG}.zip ./*
|
||||
elif [[ "$BUILDARCH" == "ia32" ]]; then
|
||||
cd VSCode-linux-ia32
|
||||
tar czf ../VSCode-linux-ia32-${LATEST_MS_TAG}.tar.gz .
|
||||
elif [[ "$BUILDARCH" == "arm64" ]]; then
|
||||
cd VSCode-linux-arm64
|
||||
tar czf ../VSCode-linux-arm64-${LATEST_MS_TAG}.tar.gz .
|
||||
else
|
||||
cd VSCode-linux-x64
|
||||
tar czf ../VSCode-linux-x64-${LATEST_MS_TAG}.tar.gz .
|
||||
|
||||
12
get_repo.sh
@@ -1,8 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
git clone https://github.com/Microsoft/vscode.git
|
||||
cd vscode
|
||||
if [ -d vscode ]; then
|
||||
cd vscode
|
||||
git fetch --all
|
||||
else
|
||||
git clone https://github.com/Microsoft/vscode.git
|
||||
cd vscode
|
||||
fi
|
||||
|
||||
export LATEST_MS_TAG=$(git describe --tags `git rev-list --tags --max-count=1`)
|
||||
echo "Got the latest MS tag: ${LATEST_MS_TAG}"
|
||||
git checkout $LATEST_MS_TAG
|
||||
cd ..
|
||||
cd ..
|
||||
|
||||
@@ -2,9 +2,19 @@
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
brew update
|
||||
brew install yarn --without-node
|
||||
brew install jq zip
|
||||
else
|
||||
sudo apt-get update
|
||||
sudo apt-get install libx11-dev libxkbfile-dev libsecret-1-dev fakeroot rpm
|
||||
fi
|
||||
sudo apt-get install libx11-dev libxkbfile-dev libsecret-1-dev fakeroot rpm jq
|
||||
if [[ "$BUILDARCH" == "ia32" ]]; then
|
||||
sudo dpkg --add-architecture i386
|
||||
sudo apt-get update
|
||||
sudo apt-get install libc6-dev-i386 gcc-multilib g++-multilib
|
||||
sudo apt-get install libx11-dev:i386 libxkbfile-dev:i386
|
||||
elif [[ $BUILDARCH == "arm64" ]]; then
|
||||
# Use the default C / C++ compilers,
|
||||
# because some makefiles default to CC:=gcc:
|
||||
export CC=/usr/bin/cc
|
||||
export CXX=/usr/bin/c++
|
||||
fi
|
||||
fi
|
||||
|
||||
BIN
src/resources/darwin/bat.icns
Normal file
BIN
src/resources/darwin/bower.icns
Normal file
BIN
src/resources/darwin/c.icns
Normal file
BIN
src/resources/darwin/code.icns
Normal file
BIN
src/resources/darwin/config.icns
Normal file
BIN
src/resources/darwin/cpp.icns
Normal file
BIN
src/resources/darwin/csharp.icns
Normal file
BIN
src/resources/darwin/css.icns
Normal file
BIN
src/resources/darwin/default.icns
Normal file
BIN
src/resources/darwin/html.icns
Normal file
BIN
src/resources/darwin/jade.icns
Normal file
BIN
src/resources/darwin/java.icns
Normal file
BIN
src/resources/darwin/javascript.icns
Normal file
BIN
src/resources/darwin/json.icns
Normal file
BIN
src/resources/darwin/less.icns
Normal file
BIN
src/resources/darwin/markdown.icns
Normal file
BIN
src/resources/darwin/php.icns
Normal file
BIN
src/resources/darwin/powershell.icns
Normal file
BIN
src/resources/darwin/python.icns
Normal file
BIN
src/resources/darwin/react.icns
Normal file
BIN
src/resources/darwin/ruby.icns
Normal file
BIN
src/resources/darwin/sass.icns
Normal file
BIN
src/resources/darwin/shell.icns
Normal file
BIN
src/resources/darwin/sql.icns
Normal file
BIN
src/resources/darwin/typescript.icns
Normal file
BIN
src/resources/darwin/vue.icns
Normal file
BIN
src/resources/darwin/xml.icns
Normal file
BIN
src/resources/darwin/yaml.icns
Normal file
BIN
src/resources/linux/code.png
Normal file
|
After Width: | Height: | Size: 227 KiB |
4341
src/resources/linux/rpm/code.xpm
Normal file
BIN
src/resources/win32/bower.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/c.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/code.ico
Normal file
|
After Width: | Height: | Size: 335 KiB |
BIN
src/resources/win32/code_150x150.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
src/resources/win32/code_70x70.png
Normal file
|
After Width: | Height: | Size: 4.7 KiB |
BIN
src/resources/win32/config.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/cpp.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/csharp.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/css.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/default.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/go.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/html.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/inno-big.bmp
Normal file
|
After Width: | Height: | Size: 201 KiB |
BIN
src/resources/win32/inno-small.bmp
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
src/resources/win32/jade.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/java.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/javascript.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/json.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/less.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/markdown.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/php.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/powershell.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/python.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/react.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/ruby.png.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/shell.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/sql.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/typescript.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/vue.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/xml.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
BIN
src/resources/win32/yaml.ico
Normal file
|
After Width: | Height: | Size: 361 KiB |
10
undo_telemetry.sh
Executable file
@@ -0,0 +1,10 @@
|
||||
# dc.services.visualstudio.com
|
||||
# vortex.data.microsoft.com
|
||||
TELEMETRY_URLS="(dc\.services\.visualstudio\.com)|(vortex\.data\.microsoft\.com)"
|
||||
REPLACEMENT="s/$TELEMETRY_URLS/0\.0\.0\.0/g"
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
grep -rl --exclude-dir=.git -E $TELEMETRY_URLS . | xargs sed -i '' -E $REPLACEMENT
|
||||
else
|
||||
grep -rl --exclude-dir=.git -E $TELEMETRY_URLS . | xargs sed -i -E $REPLACEMENT
|
||||
fi
|
||||
9
update_settings.sh
Executable file
@@ -0,0 +1,9 @@
|
||||
REPLACEMENT="s/'default': true/'default': false/"
|
||||
|
||||
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
|
||||
sed -i '' -E "$REPLACEMENT" src/vs/platform/telemetry/common/telemetryService.ts
|
||||
sed -i '' -E "$REPLACEMENT" src/vs/workbench/services/crashReporter/electron-browser/crashReporterService.ts
|
||||
else
|
||||
sed -i -E "$REPLACEMENT" src/vs/platform/telemetry/common/telemetryService.ts
|
||||
sed -i -E "$REPLACEMENT" src/vs/workbench/services/crashReporter/electron-browser/crashReporterService.ts
|
||||
fi
|
||||