Compare commits

...

89 Commits

Author SHA1 Message Date
Peter Squicciarini
93bfe2e2d4 Merge pull request #668 from daiyam/fix-schedule
fix schedule runs
2021-03-12 17:41:42 -08:00
Baptiste Augrain
479d4c3dbc fix variable name 2021-03-12 10:51:07 +01:00
Baptiste Augrain
51824a83d1 correctly determine when the run if from an PR or not 2021-03-12 10:36:07 +01:00
Peter Squicciarini
88f37a102a Merge pull request #666 from daiyam/fix-build 2021-03-10 16:28:43 -08:00
Baptiste Augrain
6c87e3a778 retrigger checks 2021-03-10 21:41:51 +01:00
Baptiste Augrain
cd353df55a fix linux cache key 2021-03-10 19:47:13 +01:00
Baptiste Augrain
c4b4194df7 cache per os and arch 2021-03-10 19:38:28 +01:00
Baptiste Augrain
59ad206f9e move build scripts 2021-03-10 19:24:52 +01:00
Baptiste Augrain
2089830d92 add cache 2021-03-10 18:58:36 +01:00
Baptiste Augrain
78ba01d3a0 retrigger checks 2021-03-10 18:24:30 +01:00
Baptiste Augrain
c3f50a8efe fixing scripts path 2021-03-10 16:56:14 +01:00
Baptiste Augrain
3e50a25606 PR should build but not deploy 2021-03-10 16:48:45 +01:00
Baptiste Augrain
f8eeb2b698 - fixing build
- add manual build
2021-03-10 16:04:07 +01:00
Mike Lewis
99f27fe9ed Reduce context for patches/update-cache-path.patch
Upstream changed the next line, causing build breakage.
Reducing the context resolves the issue and should help prevent future issues if/when that function changes again.
2021-03-07 23:03:39 -05:00
Peter Squicciarini
6979e526e3 Merge pull request #650 from Livven/patch-1
Remove redundant `yarn postinstall` call
2021-03-02 11:12:54 -08:00
Peter Squicciarini
bc03b9d591 Merge pull request #647 from PawelBorkar/update-license 2021-03-02 11:08:41 -08:00
Peter Squicciarini
997e1dd61f Merge pull request #658 from yegortimoshenko/patch-2
Fix a typo (VSCode -> VS Code) in README.md
2021-03-02 11:07:41 -08:00
Peter Squicciarini
ddedf6a08a Merge pull request #660 from daiyam/fix-rpm-spec
remove Centos 7 compatibility
2021-03-02 11:06:49 -08:00
Peter Squicciarini
e961f14310 Merge pull request #649 from GitMensch/patch-1
supported platform update, fixes #648
2021-03-02 11:04:10 -08:00
Baptiste Augrain
241d311adf Centos7 isn't supported by Electron 11 2021-03-02 19:33:25 +01:00
Yegor Timoshenko
52d63a9a7d Fix a typo (VSCode -> VS Code) in README.md
Repository description and "Extensions and the Marketplace" `README.md`
paragraph refers to the upstream editor as "VS Code", while other parts of the
README refer to it as "VSCode".

Upstream refers to it as "VS Code", this commit standardizes on that specific
spelling (e.g. see https://github.com/microsoft/vscode#related-projects).
2021-02-28 21:51:06 +03:00
Pawel Borkar
0b282757ce Update README.md 2021-02-26 13:01:11 +05:30
Simon Sobisch
8f0532f4b6 supported platform update, fixes #648
* some minimal versions, along with the reason for it
* arm64 macOS status
* Windows arm64
* GNU/Linux
* OS -> platforms
2021-02-25 18:43:45 +01:00
Liwen Guo
97a74cc61b Remove redundant yarn postinstall call
Saves around 10 to 20 seconds in the build job.
2021-02-23 11:17:17 +01:00
Pawel Borkar
9c2cc86935 Update back to MIT from MIT License 2021-02-21 12:16:06 +05:30
Pawel Borkar
6fba344a63 Add hyperlink to the MIT license in the License section 2021-02-21 10:40:44 +05:30
Pawel Borkar
b41635b951 Update the license year to 2021 2021-02-21 10:39:32 +05:30
Peter Squicciarini
f8b17d45a8 Merge pull request #633 from daiyam/fix-icon
update windows icon
2021-02-07 14:44:14 -08:00
Peter Squicciarini
f103b1beaa Merge pull request #634 from stripedpajamas/update-build-agents 2021-02-07 13:57:43 -08:00
Peter Squicciarini
a0eebe5775 (experiment) remove permissions reset 2021-02-07 13:17:03 -08:00
Baptiste Augrain
aec3519ea7 generate win32's icon based on linux' icon 2021-02-07 19:35:57 +01:00
Peter Squicciarini
c9ae0c605f (experiment) reset permissions before checking out 2021-02-07 00:09:35 -08:00
Peter Squicciarini
5d26e9d7f6 Update Linux build agents 2021-02-06 21:48:11 -08:00
Peter Squicciarini
96d79aeb70 Merge pull request #628 from sscotth/patch-1 2021-02-06 13:14:39 -08:00
Scott Humphries
baf7e684ee API rate limit exceeded 2021-02-06 14:21:39 -06:00
Scott Humphries
c9e9f28130 Update update-cache-path.patch 2021-02-05 12:05:37 -06:00
Peter Squicciarini
9ed4558b54 Merge pull request #620 from hazarek/patch-1 2021-01-19 15:09:25 -08:00
Peter Squicciarini
6dd97cce54 Merge pull request #618 from daiyam/update-icons 2021-01-19 15:08:45 -08:00
Hazar
22001fcae5 Typo
OS X -> macOS
2021-01-20 01:14:02 +03:00
Baptiste Augrain
e6fe0cddd6 use icon from #616 2021-01-19 20:15:21 +01:00
Peter Squicciarini
1f5761ccea Merge pull request #617 from hazarek/patch-1
OS X -> macOS | since 2016
2021-01-19 09:49:20 -08:00
Baptiste Augrain
c12606a81b clean up script 2021-01-18 11:21:32 +01:00
Baptiste Augrain
60de1450bc use script to generate icons 2021-01-18 04:46:57 +01:00
Hazar
364838eaba macOS since 2016. OSX name changed 4 years ago.
macOS since 2016. OSX name changed 4 years ago.
2021-01-18 02:01:17 +03:00
Peter Squicciarini
5298b33e68 Merge pull request #611 from stripedpajamas/zsync 2021-01-14 09:24:44 -08:00
Peter Squicciarini
820ca10fe4 Merge pull request #612 from hazarek/master
macOS Big Sur App icon update.
2021-01-13 18:42:20 -08:00
hazarek
a8372aa348 macOS Big Sur App icon update. 2021-01-14 05:02:37 +03:00
Peter Squicciarini
7b13dd63e7 Copy AppImage zsync file to be uploaded to GH 2021-01-13 15:39:11 -08:00
Peter Squicciarini
d001f1875e Merge pull request #610 from stripedpajamas/windows-gh 2021-01-13 15:29:25 -08:00
Peter Squicciarini
384789005b specify system setup name properly in check_tags 2021-01-13 09:57:49 -08:00
Peter Squicciarini
9dd4e545c0 Merge pull request #609 from stripedpajamas/windows-gh 2021-01-12 23:31:12 -08:00
Peter Squicciarini
29f3534b16 Merge pull request #608 from KevinBlue18/patch-1
Update DOCS.md
2021-01-12 16:29:47 -08:00
Peter Squicciarini
9bfe5e3b73 use npm checksum 2021-01-12 15:44:17 -08:00
Kevin Canto
d547c16120 Update DOCS.md
Grammar fix: adding missing preposition
2021-01-12 16:03:32 -06:00
Peter Squicciarini
78aa52ea05 bugfix linux metadata paths; set OS_NAME in windows builds 2021-01-12 13:56:52 -08:00
Peter Squicciarini
70139913d6 (experiment) bugfix build shell 2021-01-12 12:04:28 -08:00
Peter Squicciarini
768ea6778e (experiment) use GH actions for Windows builds 2021-01-12 12:01:29 -08:00
Peter Squicciarini
c7187ed00f Merge pull request #595 from daiyam/fix-update-version-macos 2020-12-28 15:27:02 -08:00
Peter Squicciarini
0039e51b87 Merge pull request #592 from paulcarroty/master
fix metadata, closes #202
2020-12-28 15:23:20 -08:00
Peter Squicciarini
5811dab0eb Merge pull request #596 from L1Cafe/patch-1
Fixed macOS install instructions
2020-12-28 14:38:31 -08:00
L1Cafe
17cb8b1d4e Fixed macOS install instructions
The process to install macOS packages through Homebrew Cask has changed.
2020-12-23 13:42:52 +00:00
Baptiste Augrain
37851b2f04 fix name 2020-12-23 05:23:12 +01:00
Baptiste Augrain
b3e6c6dbe1 add missing VSCODE_ARCH 2020-12-23 05:02:22 +01:00
Peter Squicciarini
aeec80474f Merge pull request #594 from daiyam/fix-check-tags-macos
fix check-tags.sh on macos
2020-12-22 19:50:30 -08:00
Baptiste Augrain
02b97b5d79 add VSCODE_ARCH to archive name 2020-12-23 04:06:04 +01:00
Pavlo Rudyi
10ec7d8e2b fix metadata, closes #202 2020-12-21 16:26:30 +02:00
Peter Squicciarini
b8b5dc9aeb Merge pull request #589 from getrooted0019/master 2020-12-18 11:02:17 -08:00
Peter Squicciarini
86f076f68c Merge pull request #582 from stripedpajamas/master 2020-12-18 10:59:49 -08:00
nishant
5b15d72328 Updated license year. 2020-12-16 11:45:30 +05:30
Peter Squicciarini
e0c124d19e Update README.md 2020-12-14 17:21:25 -08:00
Peter Squicciarini
2b1a4ff693 Merge pull request #586 from stripedpajamas/fix-macos-build 2020-12-14 16:28:36 -08:00
Peter Squicciarini
05819c1f79 Update signing to use new path 2020-12-14 14:53:43 -08:00
Peter Squicciarini
4782bb2ead Update other places Darwin arch is mentioned 2020-12-14 14:22:48 -08:00
Peter Squicciarini
3909371fa4 Include arch in Darwin build task 2020-12-14 12:35:53 -08:00
Peter Squicciarini
cb5e22e005 Revert "Add new logo"
This reverts commit e88869bbf4.
2020-11-27 11:22:29 -08:00
Peter Squicciarini
eb45bbea1f Revert "Remake ICNS and ICO files and add missing icons"
This reverts commit 9f92b7f073.
2020-11-27 11:22:15 -08:00
Peter Squicciarini
098bdc3f31 Revert "Fix missing icons"
This reverts commit 14d40ad96f.
2020-11-26 18:10:42 -08:00
Peter Squicciarini
2203dfbf0f Revert "Fix icon padding for Windows icons"
This reverts commit eeedf51ab3.
2020-11-26 18:09:59 -08:00
Peter Squicciarini
0a20f8159a Revert "Fix and future-proof the macOS icon, other fixes"
This reverts commit 46601d6f64.
2020-11-26 18:09:49 -08:00
Peter Squicciarini
e961dde624 Revert "Fix padding"
This reverts commit 22f80b365c.
2020-11-26 18:08:45 -08:00
Peter Squicciarini
16eb6e4c83 Merge pull request #578 from stripedpajamas/fix-action 2020-11-23 12:16:03 -08:00
Peter Squicciarini
bbf621e19f Remove set-env calls from mac action definition 2020-11-19 11:37:55 -08:00
Peter Squicciarini
47ca41068c Remove minor version spec from setup-node action 2020-11-19 11:30:46 -08:00
Peter Squicciarini
7ce133a5c4 Merge pull request #569 from proletarius101/no-replace-product-json
Don't replace product.json in RPM updates
2020-11-19 11:23:50 -08:00
Peter Squicciarini
3a593d2958 Merge pull request #568 from proletarius101/more-proposed-apis
Add more proposed APIs
2020-11-19 11:22:47 -08:00
Peter Squicciarini
e74de8ff37 Merge pull request #565 from binex-dsk/patch-1
update AUR maintainer
2020-11-19 10:43:41 -08:00
proletarius101
2d58d3bd1e Don't replace product.json in RPM updates 2020-11-15 15:45:03 +08:00
proletarius101
90ee5b2d41 Add more proposed APIs 2020-11-15 14:59:00 +08:00
binex
5b825c8bf7 fix the AUR maintainer
narcissism at its finest :)
2020-11-14 04:31:41 -05:00
112 changed files with 4913 additions and 2133 deletions

View File

@@ -23,25 +23,28 @@ jobs:
include:
- vscode_arch: x64
npm_arch: x64
image: vscodium/vscodium-linux-build-agent:x64
image: vscodium/vscodium-linux-build-agent:bionic-x64
- vscode_arch: arm64
npm_arch: arm64
image: vscodium/vscodium-linux-build-agent:buster-arm64
image: vscodium/vscodium-linux-build-agent:stretch-arm64
- vscode_arch: armhf
npm_arch: armv7l
image: vscodium/vscodium-linux-build-agent:buster-armhf
image: vscodium/vscodium-linux-build-agent:stretch-armhf
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v1.4.3
uses: actions/setup-node@v1
with:
node-version: 12.14.1
- name: Install Yarn
run: npm install -g yarn
- name: Check PR or cron
run: ./check_cron_or_pr.sh
- name: Clone VSCode repo
run: ./get_repo.sh
@@ -49,6 +52,25 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Compute cache key
id: yarnCacheKey
run: echo "::set-output name=value::$(node build/azure-pipelines/computeYarnCacheKey.js)"
if: env.SHOULD_BUILD == 'yes'
- name: Get yarn cache directory path
id: yarnCacheDirPath
run: echo "::set-output name=dir::$(yarn cache dir)"
if: env.SHOULD_BUILD == 'yes'
- name: Cache yarn directory
uses: actions/cache@v2
with:
path: ${{ steps.yarnCacheDirPath.outputs.dir }}
key: linux-${{ matrix.npm_arch }}-yarnCacheDir-${{ steps.yarnCacheKey.outputs.value }}
restore-keys: linux-${{ matrix.npm_arch }}-yarnCacheDir-
if: env.SHOULD_BUILD == 'yes'
- name: Build
env:
@@ -61,15 +83,15 @@ jobs:
run: |
cd VSCode-linux-${VSCODE_ARCH}
tar czf ../VSCodium-linux-${VSCODE_ARCH}-${LATEST_MS_TAG}.tar.gz .
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Generate shasums
run: ./sum.sh
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
with:
tag_name: ${{ env.LATEST_MS_TAG }}
files: |
@@ -84,7 +106,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}

View File

@@ -12,27 +12,48 @@ jobs:
runs-on: macOS-latest
env:
OS_NAME: "osx"
VSCODE_ARCH: "x64"
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v1.4.3
uses: actions/setup-node@v1
with:
node-version: 12.14.1
- name: Check PR or cron
run: |
. check_cron_or_pr.sh
- name: Clone VSCode repo
run: |
. get_repo.sh
echo "::set-env name=LATEST_MS_TAG::$LATEST_MS_TAG"
echo "::set-env name=LATEST_MS_COMMIT::$LATEST_MS_COMMIT"
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
. check_tags.sh
echo "::set-env name=SHOULD_BUILD::$SHOULD_BUILD"
if: env.SHOULD_DEPLOY == 'yes'
- name: Compute cache key
id: yarnCacheKey
run: echo "::set-output name=value::$(node build/azure-pipelines/computeYarnCacheKey.js)"
if: env.SHOULD_BUILD == 'yes'
- name: Get yarn cache directory path
id: yarnCacheDirPath
run: echo "::set-output name=dir::$(yarn cache dir)"
if: env.SHOULD_BUILD == 'yes'
- name: Cache yarn directory
uses: actions/cache@v2
with:
path: ${{ steps.yarnCacheDirPath.outputs.dir }}
key: ${{ env.OS_NAME }}-${{ env.VSCODE_ARCH }}-yarnCacheDir-${{ steps.yarnCacheKey.outputs.value }}
restore-keys: ${{ env.OS_NAME }}-${{ env.VSCODE_ARCH }}-yarnCacheDir-
if: env.SHOULD_BUILD == 'yes'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -44,10 +65,10 @@ jobs:
CERTIFICATE_OSX_P12: ${{ secrets.CERTIFICATE_OSX_P12 }}
CERTIFICATE_OSX_PASSWORD: ${{ secrets.CERTIFICATE_OSX_PASSWORD }}
CERTIFICATE_OSX_ID: ${{ secrets.CERTIFICATE_OSX_ID }}
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: |
if [ -d "VSCode-darwin" ]; then # just in case the build failed
cd VSCode-darwin
if [ -d "VSCode-darwin-${VSCODE_ARCH}" ]; then # just in case the build failed
cd "VSCode-darwin-${VSCODE_ARCH}"
export CERTIFICATE_P12=VSCodium.p12
echo $CERTIFICATE_OSX_P12 | base64 --decode > $CERTIFICATE_P12
export KEYCHAIN=build.keychain
@@ -61,25 +82,25 @@ jobs:
- name: Zip release
run: |
cd VSCode-darwin
zip -r -X -y ../VSCodium-darwin-${LATEST_MS_TAG}.zip ./*.app
if: env.SHOULD_BUILD == 'yes'
cd "VSCode-darwin-${VSCODE_ARCH}"
zip -r -X -y ../VSCodium-darwin-${VSCODE_ARCH}-${LATEST_MS_TAG}.zip ./*.app
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: DMG the release
run: |
pushd VSCode-darwin
pushd "VSCode-darwin-${VSCODE_ARCH}"
npx create-dmg VSCodium.app ..
mv "../VSCodium ${LATEST_MS_TAG}.dmg" "../VSCodium.${LATEST_MS_TAG}.dmg"
mv "../VSCodium ${LATEST_MS_TAG}.dmg" "../VSCodium.${VSCODE_ARCH}.${LATEST_MS_TAG}.dmg"
popd
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Generate shasums
run: ./sum.sh
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
with:
tag_name: ${{ env.LATEST_MS_TAG }}
files: |
@@ -90,7 +111,7 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes'
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}

112
.github/workflows/windows.yml vendored Normal file
View File

@@ -0,0 +1,112 @@
name: windows_build
on:
schedule:
- cron: '0 0 * * *'
push:
pull_request:
branches: [ master ]
jobs:
windows:
runs-on: windows-2016
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
OS_NAME: 'windows'
strategy:
fail-fast: false
matrix:
vscode_arch: [x64, ia32, arm64]
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v1
with:
node-version: 12.18.3
- name: Install Yarn
run: npm install -g yarn
- name: Setup Python 2
uses: actions/setup-python@v2
with:
python-version: '2.x'
- name: Check PR or cron
run: ./check_cron_or_pr.sh
shell: bash
- name: Clone VSCode repo
run: ./get_repo.sh
shell: bash
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
shell: bash
if: env.SHOULD_DEPLOY == 'yes'
- name: Compute cache key
id: yarnCacheKey
run: echo "::set-output name=value::$(node build/azure-pipelines/computeYarnCacheKey.js)"
if: env.SHOULD_BUILD == 'yes'
- name: Get yarn cache directory path
id: yarnCacheDirPath
run: echo "::set-output name=dir::$(yarn cache dir)"
if: env.SHOULD_BUILD == 'yes'
- name: Cache yarn directory
uses: actions/cache@v2
with:
path: ${{ steps.yarnCacheDirPath.outputs.dir }}
key: ${{ env.OS_NAME }}-${{ env.VSCODE_ARCH }}-yarnCacheDir-${{ steps.yarnCacheKey.outputs.value }}
restore-keys: ${{ env.OS_NAME }}-${{ env.VSCODE_ARCH }}-yarnCacheDir-
if: env.SHOULD_BUILD == 'yes'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
npm_config_arch: ${{ matrix.vscode_arch }}
npm_config_target_arch: ${{ matrix.vscode_arch }}
run: ./build.sh
shell: bash
if: env.SHOULD_BUILD == 'yes'
- name: Move/rename build artifacts
run: |
mv vscode\\.build\\win32-${VSCODE_ARCH}\\system-setup\\VSCodeSetup.exe VSCodiumSetup-${VSCODE_ARCH}-${LATEST_MS_TAG}.exe
mv vscode\\.build\\win32-${VSCODE_ARCH}\\user-setup\\VSCodeSetup.exe VSCodiumUserSetup-${VSCODE_ARCH}-${LATEST_MS_TAG}.exe
mv vscode\\.build\\win32-${VSCODE_ARCH}\\archive\\VSCode-win32-${VSCODE_ARCH}.zip VSCodium-win32-${VSCODE_ARCH}-${LATEST_MS_TAG}.zip
shell: bash
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Generate shasums
run: ./sum.sh
shell: bash
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
with:
tag_name: ${{ env.LATEST_MS_TAG }}
files: |
./*.sha256
./VSCodium*.zip
./VSCodiumUserSetup*.exe
./VSCodiumSetup*.exe
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: ./update_version.sh
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

3
.gitignore vendored
View File

@@ -1,2 +1,3 @@
vscode
VS*/*
VS*/*
.DS_Store

View File

@@ -59,7 +59,7 @@ A workaround exists to get debugging working in C# projects, by using Samsung's
### Proprietary Extensions
Like the debuggers mentioned above, some extensions you may find in the marketplace (like the [Remote Development Extensions](https://code.visualstudio.com/docs/remote/remote-overview)) only function the offical Visual Studio Code build. You can work around this by adding the extension's internal ID (found on the extension's page) to the `extensionAllowedProposedApi` property of the product.json in your VSCodium installation. For example:
Like the debuggers mentioned above, some extensions you may find in the marketplace (like the [Remote Development Extensions](https://code.visualstudio.com/docs/remote/remote-overview)) only function with the offical Visual Studio Code build. You can work around this by adding the extension's internal ID (found on the extension's page) to the `extensionAllowedProposedApi` property of the product.json in your VSCodium installation. For example:
```json
"extensionAllowedProposedApi": [

View File

@@ -1,6 +1,6 @@
MIT License
Copyright (c) 2018 Peter Squicciarini
Copyright (c) 2021 Peter Squicciarini
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -2,7 +2,7 @@
<br />
<img src="./src/resources/linux/code.png" alt="VSCodium Logo" width="200"/>
<h1>VSCodium</h1>
<h3>Free/Libre Open Source Software Binaries of VSCode</h3>
<h3>Free/Libre Open Source Software Binaries of VS Code</h3>
</div>
<div id="badges" align="center">
@@ -30,7 +30,7 @@
- [Flatpak Option](#flatpak)
- [Why Does This Exist](#why)
- [More Info](#more-info)
- [Supported OS](#supported-os)
- [Supported Platforms](#supported-platforms)
## <a id="download-install"></a>Download/Install
:tada: :tada: [Download latest release here](https://github.com/VSCodium/vscodium/releases) :tada: :tada:
@@ -40,10 +40,10 @@
#### <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
brew install --cask vscodium
```
_Note for Mac OS X Mojave users: if you see "App can't be opened because Apple cannot check it for malicious software" 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 Mojave._
_Note for Mac macOS Mojave users: if you see "App can't be opened because Apple cannot check it for malicious software" 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 Mojave._
#### <a id="install-with-winget"></a>Install with Windows Package Manager (WinGet)
If you use Windows and have [Windows Package Manager](https://github.com/microsoft/winget-cli) installed:
@@ -64,20 +64,20 @@ scoop bucket add extras
scoop install vscodium
```
#### <a id="install-with-snap"></a>Install with snap (Linux)
#### <a id="install-with-snap"></a>Install with snap (GNU/Linux)
VSCodium is available in the [Snap Store](https://snapcraft.io/) as [Codium](https://snapcraft.io/codium), published by the [Snapcrafters](https://github.com/snapcrafters/codium) community.
If your Linux distribution has support for [snaps](https://snapcraft.io/docs/installing-snapd):
If your GNU/Linux distribution has support for [snaps](https://snapcraft.io/docs/installing-snapd):
```bash
snap install codium
```
#### <a id="install-with-package-manager"></a>Install with Package Manager (Linux)
#### <a id="install-with-package-manager"></a>Install with Package Manager (GNU/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="install-on-arch-linux"></a>Install on Arch Linux
VSCodium is available in [AUR](https://wiki.archlinux.org/index.php/Arch_User_Repository) as package [vscodium-bin](https://aur.archlinux.org/packages/vscodium-bin/), maintained by [@CRKatri](https://github.com/CRKatri). An alternative package [vscodium-git](https://aur.archlinux.org/packages/vscodium-git/), maintained by [@cedricroijakkers](https://github.com/cedricroijakkers), is also available should you wish to compile from source yourself.
VSCodium is available in [AUR](https://wiki.archlinux.org/index.php/Arch_User_Repository) as package [vscodium-bin](https://aur.archlinux.org/packages/vscodium-bin/), maintained by [@binex-dsk](https://github.com/binex-dsk). An alternative package [vscodium-git](https://aur.archlinux.org/packages/vscodium-git/), maintained by [@cedricroijakkers](https://github.com/cedricroijakkers), is also available should you wish to compile from source yourself.
#### <a id="flatpak"></a>Flatpak Option (Linux)
#### <a id="flatpak"></a>Flatpak Option (GNU/Linux)
VSCodium is (unofficially) available as a Flatpak app [here](https://flathub.org/apps/details/com.vscodium.codium) and the build repo is [here](https://github.com/flathub/com.vscodium.codium). If your distribution has support for [flatpak](https://flathub.org), and you have enabled the [flathub repo](https://flatpak.org/setup/):
```bash
flatpak install flathub com.vscodium.codium
@@ -86,9 +86,9 @@ flatpak run com.vscodium.codium
```
## <a id="why"></a>Why Does This Exist
This repository contains build files to generate free release binaries of Microsoft's VSCode. When we speak of "free software", we're talking about freedom, not price.
This repository contains build files to generate free release binaries of Microsoft's VS Code. When we speak of "free software", we're talking about freedom, not price.
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 releases 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:
> 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.
>
@@ -96,7 +96,7 @@ Microsoft's downloads of Visual Studio Code are licensed under [this not-FLOSS l
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 disabled.__
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.
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 VS Code.
Microsoft's build process (which we are running to build the binaries) 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:
@@ -118,18 +118,21 @@ According to the VS Code Marketplace [Terms of Use](https://aka.ms/vsmarketplace
Please note that some Visual Studio Code extensions have licenses that restrict their use to the official Visual Studio Code builds and therefore do not work with VSCodium. See [this note](https://github.com/VSCodium/vscodium/blob/master/DOCS.md#proprietary-debugging-tools) on the Docs page for what's been found so far and possible workarounds.
### How are the VSCodium binaries built?
If you would like to see the commands we run to build `vscode` into VSCodium binaries, have a look at the workflow files in `.github/workflow` (for Linux and OS X builds) and the `win32-build.yml` file (for Windows builds). These build files call all the other scripts in the repo. If you find something that doesn't make sense, feel free to ask about it [on Gitter](https://gitter.im/VSCodium/Lobby).
If you would like to see the commands we run to build `vscode` into VSCodium binaries, have a look at the workflow files in `.github/workflow` (for GNU/Linux and macOS builds) and the `win32-build.yml` file (for Windows builds). These build files call all the other scripts in the repo. If you find something that doesn't make sense, feel free to ask about it [on Gitter](https://gitter.im/VSCodium/Lobby).
The builds are run every day, but exit early if there isn't a new release from Microsoft.
## <a id="supported-os"></a>Supported OS
- [x] OS X (`zip`, `dmg`)
- [x] Linux x64 (`deb`, `rpm`, `AppImage`, `tar.gz`)
- [x] Linux x86 (`deb`, `rpm`, `tar.gz`) ([up to v1.35.1](https://code.visualstudio.com/updates/v1_36#_linux-32bit-support-ends))
- [x] Linux arm64 (`deb`, `tar.gz`)
- [x] Linux armhf (`deb`, `tar.gz`)
- [x] Windows x64
- [x] Windows x86
## <a id="supported-platforms"></a>Supported Platforms
The minimal version is limitted by the core component Electron, you may want to check its [supported platform list](https://www.electronjs.org/docs/tutorial/support#supported-platforms).
- [x] macOS (`zip`, `dmg`) OS X 10.10 or newer x64
- [x] macOS (`zip`, `dmg`) macOS 11.0 or newer arm64 via x64 emulation, see [status issue](https://github.com/VSCodium/vscodium/issues/597)
- [x] GNU/Linux x64 (`deb`, `rpm`, `AppImage`, `tar.gz`)
- [x] GNU/Linux x86 (`deb`, `rpm`, `tar.gz`) ([up to v1.35.1](https://code.visualstudio.com/updates/v1_36#_linux-32bit-support-ends))
- [x] GNU/Linux arm64 (`deb`, `tar.gz`)
- [x] GNU/Linux armhf (`deb`, `tar.gz`)
- [x] Windows 7 or newer x64
- [x] Windows 7 or newer x86
- [x] Windows 10 arm64
## <a id="donate"></a>Donate
If you would like to support the development of VSCodium, feel free to send BTC to `3PgjE95yzBDTrSPxPiqoxSgZFuKPPAix1N`.
@@ -139,4 +142,4 @@ Special thanks to:
- @jaredreich for the previous logo
## <a id="license"></a>License
MIT
[MIT](https://github.com/VSCodium/vscodium/blob/master/LICENSE)

View File

@@ -1,16 +0,0 @@
jobs:
- job: Windows
pool:
vmImage: VS2017-Win2016
variables:
BUILDARCH: x64
steps:
- template: win32-build.yml
- job: Windows32
pool:
vmImage: VS2017-Win2016
variables:
BUILDARCH: ia32
steps:
- template: win32-build.yml

View File

@@ -5,14 +5,7 @@ set -ex
if [[ "$SHOULD_BUILD" == "yes" ]]; then
npm config set scripts-prepend-node-path true
export BUILD_SOURCEVERSION=$LATEST_MS_COMMIT
echo "LATEST_MS_COMMIT: ${LATEST_MS_COMMIT}"
echo "BUILD_SOURCEVERSION: ${BUILD_SOURCEVERSION}"
if [[ "$CI_WINDOWS" == "True" ]]; then
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
fi
. prepare_vscode.sh
@@ -26,15 +19,15 @@ if [[ "$SHOULD_BUILD" == "yes" ]]; then
yarn gulp minify-vscode
if [[ "$OS_NAME" == "osx" ]]; then
yarn gulp vscode-darwin-min-ci
elif [[ "$CI_WINDOWS" == "True" ]]; then
yarn gulp "vscode-darwin-${VSCODE_ARCH}-min-ci"
elif [[ "$OS_NAME" == "windows" ]]; then
cp LICENSE.txt LICENSE.rtf # windows build expects rtf license
yarn gulp "vscode-win32-${BUILDARCH}-min-ci"
yarn gulp "vscode-win32-${BUILDARCH}-code-helper"
yarn gulp "vscode-win32-${BUILDARCH}-inno-updater"
yarn gulp "vscode-win32-${BUILDARCH}-archive"
yarn gulp "vscode-win32-${BUILDARCH}-system-setup"
yarn gulp "vscode-win32-${BUILDARCH}-user-setup"
yarn gulp "vscode-win32-${VSCODE_ARCH}-min-ci"
yarn gulp "vscode-win32-${VSCODE_ARCH}-code-helper"
yarn gulp "vscode-win32-${VSCODE_ARCH}-inno-updater"
yarn gulp "vscode-win32-${VSCODE_ARCH}-archive"
yarn gulp "vscode-win32-${VSCODE_ARCH}-system-setup"
yarn gulp "vscode-win32-${VSCODE_ARCH}-user-setup"
else # linux
yarn gulp "vscode-linux-${VSCODE_ARCH}-min-ci"
if [[ "$SKIP_LINUX_PACKAGES" != "True" ]]; then

View File

@@ -0,0 +1,24 @@
const fs = require("fs");
const crypto = require("crypto");
const path = require("path");
const { dirs } = require('../../vscode/build/npm/dirs');
const ROOT = path.join(__dirname, '../../vscode');
const shasum = crypto.createHash('sha1');
shasum.update(fs.readFileSync(path.join(ROOT, '.yarnrc')));
shasum.update(fs.readFileSync(path.join(ROOT, 'remote/.yarnrc')));
// Add `yarn.lock` files
for (let dir of dirs) {
const yarnLockPath = path.join(ROOT, dir, 'yarn.lock');
shasum.update(fs.readFileSync(yarnLockPath));
}
// Add any other command line arguments
for (let i = 2; i < process.argv.length; i++) {
shasum.update(process.argv[i]);
}
process.stdout.write(shasum.digest('hex'));

8
build/build_linux.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
rm -rf VSCode*
rm -rf vscode
./get_repo.sh
SHOULD_BUILD=yes CI_BUILD=no OS_NAME=linux VSCODE_ARCH=x64 ./build.sh

8
build/build_macos.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
rm -rf VSCode*
rm -rf vscode
. get_repo.sh
SHOULD_BUILD=yes CI_BUILD=no OS_NAME=osx VSCODE_ARCH=x64 . build.sh

15
build/build_windows.ps1 Executable file
View File

@@ -0,0 +1,15 @@
# powershell -ExecutionPolicy ByPass -File build_windows.ps1
$env:Path += ";C:\Program Files\Git\bin"
Remove-Item -Recurse -Force VSCode*
Remove-Item -Recurse -Force vscode
bash ./get_repo.sh
$Env:SHOULD_BUILD = 'yes'
$Env:CI_BUILD = 'no'
$Env:OS_NAME = 'windows'
$Env:VSCODE_ARCH = 'x64'
bash ./build.sh

19
check_cron_or_pr.sh Executable file
View File

@@ -0,0 +1,19 @@
#!/bin/bash
set -e
if [[ $GITHUB_EVENT_NAME == "pull_request" ]]; then
echo "It's a PR"
export SHOULD_BUILD="yes"
export SHOULD_DEPLOY="no"
else
echo "It's a cron"
export SHOULD_DEPLOY="yes"
fi
if [[ $GITHUB_ENV ]]; then
echo "SHOULD_BUILD=$SHOULD_BUILD" >> $GITHUB_ENV
echo "SHOULD_DEPLOY=$SHOULD_DEPLOY" >> $GITHUB_ENV
fi

View File

@@ -1,38 +0,0 @@
echo "tag: $env:LATEST_MS_TAG"
$REPO_URI = [uri]$env:BUILD_REPOSITORY_URI
$USER_REPO = $REPO_URI."LocalPath"
echo $USER_REPO
$GITHUB_RESPONSE = curl.exe -s -H "Authorization: token $env:MAPPED_GITHUB_TOKEN" "https://api.github.com/repos$USER_REPO/releases/tags/$env:LATEST_MS_TAG"
echo "Github response: ${GITHUB_RESPONSE}"
$VSCODIUM_ASSETS = $GITHUB_RESPONSE | jq '.assets'
echo "VSCodium assets: ${VSCODIUM_ASSETS}"
# if we just don't have the github token, get out fast
if (!$env:MAPPED_GITHUB_TOKEN -or $env:MAPPED_GITHUB_TOKEN -like "*GITHUB_TOKEN*") {
echo "This build does not have the GH token"
echo $env:MAPPED_GITHUB_TOKEN
return
}
if ($VSCODIUM_ASSETS -eq "null" -or !$VSCODIUM_ASSETS) {
echo "Release assets do not exist at all, continuing build"
$SHOULD_BUILD = 'yes'
} else {
$WindowsAssets = ($VSCODIUM_ASSETS | ConvertFrom-Json) | Where-Object { $_.name.Contains('exe') }
$SYSTEM_SETUP = $WindowsAssets | Where-Object { $_.name.Contains('Setup') }
$USER_SETUP = $WindowsAssets | Where-Object { $_.name.Contains('User') }
if (!$SYSTEM_SETUP) {
echo "Building on Windows because we have no system-setup.exe";
$SHOULD_BUILD = 'yes'
}
elseif (!$USER_SETUP) {
echo "Building on Windows because we have no user-setup.exe";
$SHOULD_BUILD = 'yes'
}
else {
echo "Already have all the Windows builds"
}
}
Write-Host "##vso[task.setvariable variable=SHOULD_BUILD]$SHOULD_BUILD"

View File

@@ -10,57 +10,118 @@ VSCODIUM_ASSETS=$(echo $GITHUB_RESPONSE | jq '.assets')
if [ "$GITHUB_TOKEN" != "" ]; then
if [ "$VSCODIUM_ASSETS" != "null" ]; then
if [[ "$OS_NAME" == "osx" ]]; then
HAVE_MAC=$(echo $VSCODIUM_ASSETS | jq --arg suffix "darwin-$LATEST_MS_TAG.zip" 'map(.name) | contains([$suffix])')
HAVE_MAC=$(echo $VSCODIUM_ASSETS | jq --arg suffix "darwin-$VSCODE_ARCH-$LATEST_MS_TAG.zip" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_MAC" != "true" ]]; then
echo "Building on Mac because we have no ZIP"
export SHOULD_BUILD="yes"
fi
elif [[ $VSCODE_ARCH == "arm64" ]]; then
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_DEB" != "true" ]]; then
echo "Building on Linux arm64 because we have no DEB"
export SHOULD_BUILD="yes"
elif [[ "$OS_NAME" == "windows" ]]; then
if [[ $VSCODE_ARCH == "arm64" ]]; then
HAVE_ARM64_SYS=$(echo $VSCODIUM_ASSETS | jq --arg suffix "VSCodiumSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_ARM64_USR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "UserSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_ARM64_ZIP=$(echo $VSCODIUM_ASSETS | jq --arg suffix "win32-$VSCODE_ARCH-$LATEST_MS_TAG.zip" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_ARM64_SYS" != "true" ]]; then
echo "Building on Windows arm64 because we have no system setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_ARM64_USR" != "true" ]]; then
echo "Building on Windows arm64 because we have no user setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_ARM64_ZIP" != "true" ]]; then
echo "Building on Windows arm64 because we have no zip"
export SHOULD_BUILD="yes"
fi
if [[ "$SHOULD_BUILD" != "yes" ]]; then
echo "Already have all the Windows arm64 builds"
fi
elif [[ $VSCODE_ARCH == "ia32" ]]; then
HAVE_IA32_SYS=$(echo $VSCODIUM_ASSETS | jq --arg suffix "VSCodiumSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_IA32_USR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "UserSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_IA32_ZIP=$(echo $VSCODIUM_ASSETS | jq --arg suffix "win32-$VSCODE_ARCH-$LATEST_MS_TAG.zip" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_IA32_SYS" != "true" ]]; then
echo "Building on Windows ia32 because we have no system setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_IA32_USR" != "true" ]]; then
echo "Building on Windows ia32 because we have no user setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_IA32_ZIP" != "true" ]]; then
echo "Building on Windows ia32 because we have no zip"
export SHOULD_BUILD="yes"
fi
if [[ "$SHOULD_BUILD" != "yes" ]]; then
echo "Already have all the Windows ia32 builds"
fi
else # Windows x64
HAVE_X64_SYS=$(echo $VSCODIUM_ASSETS | jq --arg suffix "VSCodiumSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_X64_USR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "UserSetup-$VSCODE_ARCH-$LATEST_MS_TAG.exe" 'map(.name) | contains([$suffix])')
HAVE_X64_ZIP=$(echo $VSCODIUM_ASSETS | jq --arg suffix "win32-$VSCODE_ARCH-$LATEST_MS_TAG.zip" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_X64_SYS" != "true" ]]; then
echo "Building on Windows x64 because we have no system setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_X64_USR" != "true" ]]; then
echo "Building on Windows x64 because we have no user setup"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_X64_ZIP" != "true" ]]; then
echo "Building on Windows x64 because we have no zip"
export SHOULD_BUILD="yes"
fi
if [[ "$SHOULD_BUILD" != "yes" ]]; then
echo "Already have all the Windows x64 builds"
fi
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
elif [[ $VSCODE_ARCH == "armhf" ]]; then
HAVE_ARM_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["armhf.deb"])')
HAVE_ARM_TAR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "armhf-$LATEST_MS_TAG.tar.gz" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_ARM_DEB" != "true" ]]; then
echo "Building on Linux arm because we have no DEB"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_ARM_TAR" != "true" ]]; then
echo "Building on Linux arm because we have no TAR"
export SHOULD_BUILD="yes"
fi
if [[ "$SHOULD_BUILD" != "yes" ]]; then
echo "Already have all the Linux arm 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"
elif [[ "$OS_NAME" == "linux" ]]; then
if [[ $VSCODE_ARCH == "arm64" ]]; then
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_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
elif [[ $VSCODE_ARCH == "armhf" ]]; then
HAVE_ARM_DEB=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["armhf.deb"])')
HAVE_ARM_TAR=$(echo $VSCODIUM_ASSETS | jq --arg suffix "armhf-$LATEST_MS_TAG.tar.gz" 'map(.name) | contains([$suffix])')
if [[ "$HAVE_ARM_DEB" != "true" ]]; then
echo "Building on Linux arm because we have no DEB"
export SHOULD_BUILD="yes"
fi
if [[ "$HAVE_ARM_TAR" != "true" ]]; then
echo "Building on Linux arm because we have no TAR"
export SHOULD_BUILD="yes"
fi
if [[ "$SHOULD_BUILD" != "yes" ]]; then
echo "Already have all the Linux arm builds"
fi
else # Linux x64
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
fi
else

View File

@@ -9,8 +9,7 @@ echo "Got the latest MS tag: ${LATEST_MS_TAG}"
git clone https://github.com/Microsoft/vscode.git --branch $LATEST_MS_TAG --depth 1
# for GH actions
if [[ "$CI_WINDOWS" != "True" ]]; then
echo "LATEST_MS_COMMIT=$LATEST_MS_COMMIT" >> $GITHUB_ENV
echo "LATEST_MS_TAG=$LATEST_MS_TAG" >> $GITHUB_ENV
if [[ $GITHUB_ENV ]]; then
echo "LATEST_MS_COMMIT=$LATEST_MS_COMMIT" >> $GITHUB_ENV
echo "LATEST_MS_TAG=$LATEST_MS_TAG" >> $GITHUB_ENV
fi

55
icons/build_icons.sh Executable file
View File

@@ -0,0 +1,55 @@
#!/usr/bin/env bash
check_programs() {
for arg in "$@"
do
if ! command -v $arg >/dev/null 2>&1
then
echo "$arg could not be found"
exit
fi
done
}
check_programs "icns2png" "composite" "convert" "png2icns" "icotool"
for file in vscode/resources/darwin/*
do
if [ -f "$file" ]; then
name=$(basename $file '.icns')
if [[ $name != 'code' ]] && [ ! -f "src/resources/darwin/$name.icns" ]; then
icns2png -x -s 512x512 $file -o .
composite -blend 100% -geometry +323+365 icons/corner_512.png "${name}_512x512x32.png" "$name.png"
composite icons/code_darwin.png "$name.png" "$name.png"
convert "$name.png" -resize 256x256 "${name}_256.png"
png2icns "src/resources/darwin/$name.icns" "$name.png" "${name}_256.png"
rm "${name}_512x512x32.png" "$name.png" "${name}_256.png"
fi
fi
done
for file in vscode/resources/win32/*.ico
do
if [ -f "$file" ]; then
name=$(basename $file '.ico')
if [[ $name != 'code' ]] && [ ! -f "src/resources/win32/$name.ico" ]; then
icotool -x -w 256 $file
composite -geometry +150+185 icons/code_64.png "${name}_9_256x256x32.png" "${name}.png"
convert "${name}.png" -define icon:auto-resize=256,128,96,64,48,32,24,20,16 "src/resources/win32/$name.ico"
rm "${name}_9_256x256x32.png" "${name}.png"
fi
fi
done
if [ ! -f "src/resources/win32/code.ico" ]; then
convert "src/resources/linux/code.png" -define icon:auto-resize=256,128,96,64,48,32,24,20,16 "src/resources/win32/code.ico"
fi

BIN
icons/code_64.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

BIN
icons/code_darwin.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

BIN
icons/corner_512.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,16 @@
--- vscode/resources/linux/rpm/code.spec.template 2021-03-02 19:26:53.000000000 +0100
+++ vscode/resources/linux/rpm/code.spec.template.new 2021-03-02 19:28:12.000000000 +0100
@@ -1,6 +1,6 @@
Name: @@NAME@@
Version: @@VERSION@@
-Release: @@RELEASE@@.el7
+Release: @@RELEASE@@.el8
Summary: Code editing. Redefined.
Group: Development/Tools
Vendor: Microsoft Corporation
@@ -69,3 +69,5 @@
/usr/share/pixmaps/@@ICON@@.png
/usr/share/bash-completion/completions/@@NAME@@
/usr/share/zsh/site-functions/_@@NAME@@
+
+%config(noreplace) /usr/share/@@NAME@@/resources/app/product.json

View File

@@ -1,11 +1,7 @@
--- vscode/src/vs/platform/update/electron-main/updateService.win32.ts 2019-12-08 15:09:44.000000000 -0800
+++ src/src/vs/platform/update/electron-main/updateService.win32.ts 2019-12-08 15:12:56.000000000 -0800
@@ -55,7 +55,7 @@
--- vscode/src/vs/platform/update/electron-main/updateService.win32.ts 2021-02-05 11:59:17.564060663 -0600
+++ src/src/vs/platform/update/electron-main/updateService.win32.ts 2021-02-05 11:59:39.780745778 -0600
@@ -56,3 +56,3 @@
@memoize
get cachePath(): Promise<string> {
- const result = path.join(tmpdir(), `vscode-update-${product.target}-${process.arch}`);
+ const result = path.join(tmpdir(), `vscodium-update-${product.target}-${process.arch}`);
return pfs.mkdirp(result, undefined).then(() => result);
}

View File

@@ -2,11 +2,6 @@
set -e
if [[ "$CI_WINDOWS" == "True" ]]; then
export npm_config_arch="$BUILDARCH"
export npm_config_target_arch="$BUILDARCH"
fi
cp -rp src/* vscode/
cd vscode || exit
@@ -14,13 +9,13 @@ cd vscode || exit
# apply patches
patch -u src/vs/platform/update/electron-main/updateService.win32.ts -i ../patches/update-cache-path.patch
patch -u resources/linux/rpm/code.spec.template -i ../patches/fix-rpm-spec.patch
if [[ "$OS_NAME" == "osx" ]]; then
CHILD_CONCURRENCY=1 yarn --frozen-lockfile --ignore-optional
npm_config_argv='{"original":["--ignore-optional"]}' yarn postinstall
else
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
yarn postinstall
fi
mv product.json product.json.bak
@@ -53,7 +48,7 @@ win32AppUserModelId='setpath(["win32AppUserModelId"]; "Microsoft.VSCodium")'
win32ShellNameShort='setpath(["win32ShellNameShort"]; "VSCodium")'
win32x64UserAppId='setpath (["win32x64UserAppId"]; "{{2E1F05D1-C245-4562-81EE-28188DB6FD17}")'
urlProtocol='setpath(["urlProtocol"]; "vscodium")'
extensionAllowedProposedApi='setpath(["extensionAllowedProposedApi"]; getpath(["extensionAllowedProposedApi"]) + ["ms-vsliveshare.vsliveshare", "ms-vscode-remote.remote-ssh"])'
extensionAllowedProposedApi='setpath(["extensionAllowedProposedApi"]; getpath(["extensionAllowedProposedApi"]) + ["ms-vsliveshare.vsliveshare", "ms-vscode-remote.remote-ssh", "ms-vscode.cpptools", "ms-azuretools.vscode-docker", "visualstudioexptteam.vscodeintellicode", "ms-python.python"])'
serverDataFolderName='setpath(["serverDataFolderName"]; ".vscode-server-oss")'
product_json_changes="${checksumFailMoreInfoUrl} | ${tipsAndTricksUrl} | ${twitterUrl} | ${requestFeatureUrl} | ${documentationUrl} | ${introductoryVideosUrl} | ${extensionAllowedBadgeProviders} | ${updateUrl} | ${releaseNotesUrl} | ${keyboardShortcutsUrlMac} | ${keyboardShortcutsUrlLinux} | ${keyboardShortcutsUrlWin} | ${quality} | ${extensionsGallery} | ${linkProtectionTrustedDomains} | ${nameShort} | ${nameLong} | ${linuxIconName} | ${applicationName} | ${win32MutexName} | ${win32DirName} | ${win32NameVersion} | ${win32RegValueName} | ${win32AppUserModelId} | ${win32ShellNameShort} | ${win32x64UserAppId} | ${urlProtocol} | ${extensionAllowedProposedApi} | ${serverDataFolderName}"
@@ -68,6 +63,29 @@ if [[ "$OS_NAME" == "linux" ]]; then
# as we are renaming the application to vscodium
# we need to edit a line in the post install template
sed -i "s/code-oss/codium/" resources/linux/debian/postinst.template
# fix the packages metadata
# code.appdata.xml
sed -i 's|Visual Studio Code|VSCodium|g' resources/linux/code.appdata.xml
sed -i 's|https://code.visualstudio.com/docs/setup/linux|https://github.com/VSCodium/vscodium#download-install|' resources/linux/code.appdata.xml
sed -i 's|https://code.visualstudio.com/home/home-screenshot-linux-lg.png|https://vscodium.com/img/vscodium.png|' resources/linux/code.appdata.xml
sed -i 's|https://code.visualstudio.com|https://vscodium.com|' resources/linux/code.appdata.xml
# control.template
sed -i 's|Microsoft Corporation <vscode-linux@microsoft.com>|VSCodium Team https://github.com/VSCodium/vscodium/graphs/contributors|' resources/linux/debian/control.template
sed -i 's|https://code.visualstudio.com|https://vscodium.com|' resources/linux/debian/control.template
sed -i 's|Visual Studio Code|VSCodium|g' resources/linux/debian/control.template
sed -i 's|https://code.visualstudio.com/docs/setup/linux|https://github.com/VSCodium/vscodium#download-install|' resources/linux/debian/control.template
# code.spec.template
sed -i 's|https://code.visualstudio.com/docs/setup/linux|https://github.com/VSCodium/vscodium#download-install|' resources/linux/rpm/code.spec.template
sed -i 's|Microsoft Corporation|VSCodium Team|' resources/linux/rpm/code.spec.template
sed -i 's|Visual Studio Code Team <vscode-linux@microsoft.com>|VSCodium Team https://github.com/VSCodium/vscodium/graphs/contributors|' resources/linux/rpm/code.spec.template
sed -i 's|https://code.visualstudio.com|https://vscodium.com|' resources/linux/rpm/code.spec.template
sed -i 's|Visual Studio Code|VSCodium|' resources/linux/rpm/code.spec.template
# snapcraft.yaml
sed -i 's|Visual Studio Code|VSCodium|' resources/linux/rpm/code.spec.template
fi
cd ..

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 227 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 83 KiB

After

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

BIN
src/resources/win32/code_70x70.png Normal file → Executable file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 290 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 441 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 593 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 774 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 971 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 201 KiB

After

Width:  |  Height:  |  Size: 201 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 146 KiB

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Some files were not shown because too many files have changed in this diff Show More