Compare commits

...

415 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
Peter Squicciarini
bfb4be2930 Merge pull request #553 from tywmick/more-microsoft-replacements
Document more Microsoft online service replacements in "Getting all the Telemetry Out"
2020-10-30 18:30:32 -07:00
Ty Mick
dfb373330c Rearrange section title 2020-10-29 19:03:45 -05:00
Ty Mick
8b978a5a6f Improve code block formatting 2020-10-29 14:38:14 -05:00
Ty Mick
679a8d97b6 Document more Microsoft online service replacements 2020-10-29 14:37:46 -05:00
Peter Squicciarini
e13b9f35ad Merge pull request #543 from weakish/typo
Fix a typo in DOCS
2020-10-26 13:25:26 -07:00
Jang Rush
30d6dfd70a Fix a typo in DOCS 2020-10-24 20:58:39 +08:00
Peter Squicciarini
fa7f150521 Merge pull request #539 from cedricroijakkers/master 2020-10-22 17:29:46 -07:00
Peter Squicciarini
6edd4e85a9 Merge pull request #540 from tywmick/update-api-note
Add note about VSCodium update API to "Getting all the Telemetry Out"
2020-10-22 13:48:23 -07:00
Ty Mick
86e4055bfe Add note about update API to DOCS.md
Also added a comma after "For example" where appropriate.
2020-10-22 14:36:05 -05:00
Cedric Roijakkers
090cf497e2 Added documentation and environment variable SKIP_LINUX_PACKAGES that skips package building since this is not needed in the AUR build. 2020-10-22 14:52:44 +02:00
Peter Squicciarini
5ffd1aa4b0 Merge pull request #536 from ferion11/bugfix
bugfix AppImage creation
2020-10-16 21:21:22 -07:00
DanielDevBR
f9c7df01ad bugfix AppImage creation 2020-10-16 22:20:13 -03:00
Peter Squicciarini
a9b505f228 Merge pull request #531 from stripedpajamas/fix-arm
Fix armhf and x64
2020-10-09 10:05:49 -07:00
Peter Squicciarini
3c5eb104f9 Disable AppImage creation since it isn't working in Docker container 2020-10-08 21:29:50 -07:00
Peter Squicciarini
c478ef85c2 Rename arm to armhf and re-enable RPMs 2020-10-08 19:45:03 -07:00
Peter Squicciarini
32583f3bd7 Merge pull request #526 from stripedpajamas/fix-checksums
Add checksumFailMoreInfoUrl to product.json
2020-10-07 13:30:42 -07:00
Peter Squicciarini
ac4bb3f987 Add checksumFailMoreInfoUrl to product.json
Without this property present, VSCode will not show the "Don't show this
again" button when integrity checks fail. This commit fixes #326
2020-10-06 11:09:18 -07:00
Peter Squicciarini
3471de4d49 Merge pull request #525 from stripedpajamas/fix-linux-builds
Fix arm builds
2020-10-06 09:05:26 -07:00
Peter Squicciarini
45af9e614b (experiment) skip GH action env writes in Windows 2020-10-05 21:30:07 -07:00
Peter Squicciarini
9f3136fd35 (experiment) bugfix arm check and skip RPM for arms 2020-10-05 19:48:04 -07:00
Peter Squicciarini
07ec36ff69 (experiment) bugfix matrix 2020-10-05 17:56:54 -07:00
Peter Squicciarini
8c04967b7e (experiment) remove further BUILDARCH branches and s/armhf/arm/ 2020-10-05 17:54:42 -07:00
Peter Squicciarini
1082261042 (experiment) Install Yarn manually 2020-10-05 16:46:22 -07:00
Peter Squicciarini
4c7c82fe06 (experiment) use and try another way of executing scripts 2020-10-05 16:31:17 -07:00
Peter Squicciarini
138269d3cf (experiment) add debug lines 2020-10-05 16:14:45 -07:00
Peter Squicciarini
661608ed6f (experiment) use public Docker images 2020-10-05 15:30:05 -07:00
Peter Squicciarini
6d33f26e3b (experiment) fix matrix setup 2020-10-05 10:21:49 -07:00
Peter Squicciarini
cab264b133 (experiment) use containers for Linux builds 2020-10-05 10:12:28 -07:00
Peter Squicciarini
d199e65310 Merge pull request #517 from CRKatri/master
README.md: Fix AUR maintainer
2020-09-23 15:25:52 -07:00
Cameron Katri
e51b9e5ecd README.md: Fix AUR maintainer 2020-09-23 15:03:32 -04:00
Peter Squicciarini
0a2378dbdc Merge pull request #510 from stripedpajamas/linux-gha
Move Linux builds to GH actions
2020-09-21 17:21:31 -07:00
Peter Squicciarini
a1985c9eb9 (experiment) add cron 2020-09-20 15:28:07 -07:00
Peter Squicciarini
401a51153f (experiment) allow linux arm build to fail bugfix #2 2020-09-20 15:13:24 -07:00
Peter Squicciarini
7797f694da (experiment) allow linux arm build to fail bugfix 2020-09-20 15:08:01 -07:00
Peter Squicciarini
0ce7a3b40a (experiment) allow linux arm build to fail 2020-09-20 15:05:55 -07:00
Peter Squicciarini
a08e243eb1 (experiment) bugfix linux workflow 2020-09-20 14:35:03 -07:00
Peter Squicciarini
b4e9c1dcb6 (experiment) cleanup and move linux builds to GHA 2020-09-20 14:26:06 -07:00
Peter Squicciarini
82fb8829fe Merge pull request #506 from stripedpajamas/fix-mac-build
Fix Mac build + cleanup
2020-09-19 10:32:11 -07:00
Peter Squicciarini
bfe2693d76 (experiment) don't print GH response 2020-09-18 17:11:53 -07:00
Peter Squicciarini
a8d355c276 (experiment) create zip for Linux and remove osx deps from travis 2020-09-18 17:02:52 -07:00
Peter Squicciarini
608edd6776 (experiment) remove -x from check_tags.sh 2020-09-18 16:36:03 -07:00
Peter Squicciarini
f88cffb39f (experiment) use stronger GH token for version update 2020-09-18 16:30:10 -07:00
Peter Squicciarini
a975177d1d (experiment) re-enable everything(?) and remove Mac stuff from Travis 2020-09-18 15:34:07 -07:00
Peter Squicciarini
dacb759766 (experiment) more cleanup 2020-09-18 14:54:45 -07:00
Peter Squicciarini
8b1f6fe734 (experiment) re-enable icons and anti-telemetry 2020-09-18 13:59:41 -07:00
Peter Squicciarini
8c5166cd56 (experiment) re-enable product.json changes 2020-09-18 13:10:28 -07:00
Peter Squicciarini
2c98e24e2d (experiment) get out of vscode 2020-09-18 12:40:54 -07:00
Peter Squicciarini
30fe5197db (experiment) undo that zip change 2020-09-18 11:52:48 -07:00
Peter Squicciarini
266448613e (experiment) disable keep alive 2020-09-18 11:51:36 -07:00
Peter Squicciarini
c92c61a50b (experiment) zip stuff 2020-09-18 10:28:14 -07:00
Peter Squicciarini
fc9c33acf4 (experiment) set scripts-prepend-node-path 2020-09-18 09:23:26 -07:00
Peter Squicciarini
feb979db54 (experiment) set GITHUB_TOKEN env var in build.sh 2020-09-18 06:44:31 -07:00
Peter Squicciarini
e0ac293279 (experiment) set GITHUB_TOKEN env var 2020-09-18 06:01:29 -07:00
Peter Squicciarini
9a046ea3a0 (experiment) set repository according to GH action env var 2020-09-18 05:57:00 -07:00
Peter Squicciarini
137a891882 (experiment) fix quoting 2020-09-18 05:42:37 -07:00
Peter Squicciarini
535861eec8 (experiment) github action 2020-09-18 05:41:04 -07:00
Peter Squicciarini
101bda7072 (experiment) disable changes 2020-09-17 15:31:03 -07:00
Peter Squicciarini
d21ea7de56 (experiment) skip optional deps for mac 2020-09-16 11:45:51 -07:00
Peter Squicciarini
99038981dc (experiment) remove jq double quotes 2020-09-16 11:21:30 -07:00
Peter Squicciarini
15260f4801 (experiment) don't download full repo 2020-09-16 11:18:02 -07:00
Peter Squicciarini
a7a52b02d5 (experiment) remove extra osx from job list 2020-09-16 09:59:41 -07:00
Peter Squicciarini
024c056cf3 (experiment) brew is too slow 2020-09-16 09:59:06 -07:00
Peter Squicciarini
a5782f621b (experiment) manual brew 2020-09-15 23:54:04 -07:00
Peter Squicciarini
2bf1841c64 (experiment) use later version of xcode 2020-09-15 10:45:50 -07:00
Peter Squicciarini
d8f341db38 (experiment) get build order proper 2020-09-15 09:54:37 -07:00
Peter Squicciarini
aae9794677 (experiment) update brew and use it for create-dmg 2020-09-15 09:53:57 -07:00
Peter Squicciarini
96e27cd232 (experiment) small travis yml changes 2020-09-15 09:47:50 -07:00
Peter Squicciarini
6142ac4170 (experiment) add logging and focus on mac only 2020-09-15 09:36:38 -07:00
Peter Squicciarini
1435710c16 (experiment) Use npx for create-dmg 2020-09-14 20:00:16 -07:00
Peter Squicciarini
229274f9c8 (experiment) skip everything that makes vscodium different 2020-09-14 15:33:19 -07:00
Peter Squicciarini
e974e22d99 (experiment) disable mac signing 2020-09-14 11:17:53 -07:00
Peter Squicciarini
a5cc6c090e (experiment) remove hygiene check, it's not for us 2020-09-14 10:13:11 -07:00
Peter Squicciarini
b012b6c1d0 (experiment) remove -reh- tasks; set yarn concurrency 2020-09-14 09:57:19 -07:00
Peter Squicciarini
07ac47b131 (experiment) Lock Node v12.14.1 2020-09-12 07:32:21 -07:00
Peter Squicciarini
27d8a66386 Disable OSX builds (they are broken) 2020-09-12 07:30:18 -07:00
Peter Squicciarini
b50c86a143 Merge pull request #485 from estatra/fix-macos-icon
Fix and future-proof the macOS icon, other fixes
2020-09-09 17:06:43 -07:00
Atra
22f80b365c Fix padding 2020-08-22 19:43:33 -03:00
Atra
46601d6f64 Fix and future-proof the macOS icon, other fixes 2020-08-22 18:52:46 -03:00
Peter Squicciarini
67d5db8019 Merge pull request #474 from estatra/fix-windows-icons-padding
Fix icon padding for Windows icons
2020-08-15 15:06:29 -07:00
Atra
eeedf51ab3 Fix icon padding for Windows icons 2020-08-15 17:56:16 -03:00
Peter Squicciarini
fd8e968c1e Merge pull request #432 from cstayyab/master
Add instruction to install with Windows Package Manager (WinGet)
2020-07-28 17:11:37 -07:00
Peter Squicciarini
51a653b6e4 Thank the logo contributors 2020-07-28 16:38:58 -07:00
Peter Squicciarini
add743eead Merge pull request #413 from estatra/new-logo
Add new logo
2020-07-28 16:36:36 -07:00
atra
14d40ad96f Fix missing icons 2020-07-14 02:41:45 -03:00
atra
9f92b7f073 Remake ICNS and ICO files and add missing icons 2020-07-01 20:28:04 -03:00
Peter Squicciarini
c25fd7717b Merge pull request #428 from Unrud/patch-1
Fix telemetry.enableCrashReporter setting
2020-06-26 16:37:36 -07:00
cstayyab
3895b385eb Add instruction to install with winget 2020-06-21 00:57:16 +05:00
Peter Squicciarini
db359f0711 Merge pull request #431 from tuanpham-dev/master
Fix sqlite error on ARM build
2020-06-19 19:12:46 -07:00
Tuan Pham
22c41976f2 Fix sqlite error on ARM build 2020-06-19 18:39:56 -04:00
Unrud
80f4d30638 Fix telemetry.enableCrashReporter setting
The file containing the setting changed.
2020-06-18 11:29:27 +02:00
cristianovitorino
e88869bbf4 Add new logo 2020-06-08 22:00:14 -03:00
Peter Squicciarini
d695216317 Merge pull request #404 from spoenemann/open-vsx
Use open-vsx.org as extension gallery
2020-05-20 09:05:02 -07:00
Peter Squicciarini
e4b87c1a0e Merge pull request #405 from linsui/patch-1
Add update information for appimage
2020-05-20 08:54:52 -07:00
Peter Squicciarini
d6fcc82584 Merge pull request #241 from watkinsmatthewp/patch-1
Update DOCS.md
2020-05-20 08:53:15 -07:00
Miro Spönemann
34aa7b0d89 #372: Use open-vsx.org as extension gallery 2020-05-20 12:58:34 +02:00
linsui
bc0826868c add option in pkg2appimage instead 2020-05-20 09:49:51 +00:00
linsui
c2c3525405 revert 2020-05-20 09:48:49 +00:00
linsui
de31868635 fix a typo and remove UPDATE_IMFORMATION 2020-05-20 09:18:49 +00:00
linsui
5004481ea9 Add update information for appimage 2020-05-20 09:11:24 +00:00
Peter Squicciarini
f63fbe4292 Update DOCS.md 2020-05-19 22:01:41 -07:00
Peter Squicciarini
8111747fab Merge pull request #328 from zhaofengli/master
product.json changes for Remote SSH
2020-05-19 21:59:27 -07:00
Peter Squicciarini
765a4b63ad Merge pull request #395 from ellietheoracle/patch-1
update to include flatpak support
2020-05-19 21:42:37 -07:00
Peter Squicciarini
0355e7013c Merge pull request #371 from linsui/patch-1
Fix appimage icon
2020-05-19 21:28:21 -07:00
Peter Squicciarini
f87035e3e6 Update README.md
Removed my name and cleaned up wording a bit.
2020-05-19 21:27:09 -07:00
The Oracle
6367d32c32 Update README.md 2020-05-10 08:15:47 -05:00
The Oracle
d1adafac84 update to include flatpak support 2020-05-09 03:05:55 -05:00
Peter Squicciarini
fb100d772b Merge pull request #387 from 4-FLOSS-Free-Libre-Open-Source-Software/patch-1
Remove sync workaround
2020-05-04 21:17:01 +00:00
Zhaofeng Li
f1ac78e6ed Add serverDataFolderName key 2020-04-21 19:01:48 -07:00
Zhaofeng Li
42bc96ba21 Enable ms-vscode-remote.remote-ssh proposed API 2020-04-21 19:00:27 -07:00
4-FLOSS-Free-Libre-Open-Source-Software
40f5d1398b Remove sync workaround
https://github.com/shanalikhan/code-settings-sync/issues/668#issuecomment-505142734
2020-04-21 09:41:30 +02:00
Peter Squicciarini
000ede1322 Merge pull request #385 from stripedpajamas/dmg-shasum
Remove space from dmg filename
2020-04-19 21:08:33 +00:00
Peter Squicciarini
0ca513930d Remove space from dmg filename 2020-04-19 12:50:45 -07:00
linsui
6788101859 Fix appimage icon 2020-03-31 12:53:57 +00:00
Peter Squicciarini
687d644b41 Merge pull request #334 from popey/patch-1
Added section on installing the snap
2020-03-21 19:17:11 +00:00
Peter Squicciarini
cb04b93044 Merge pull request #354 from piedar/split-scripts
refactor: extract prepare_vscode from build script
2020-03-12 22:30:32 +00:00
Bennjamin Blast
ed126b5cb2 refactor: extract prepare_vscode from build script 2020-03-11 22:47:05 -04:00
Peter Squicciarini
fabacf1c1a Merge pull request #347 from NebojsaKrtolica/patch-1
📜 portable mode description
2020-03-10 08:31:12 -07:00
Peter Squicciarini
8347fbcdc8 Merge pull request #335 from stripedpajamas/node_12
Use Node 12 and frozen lockfile
2020-03-10 08:30:51 -07:00
nebojsa
5dd8c0e6da 📜 portable mode description
Updated portable mode description. OS Instructions are now separated with bullet points. Added a hyperlink to "link above".
2020-02-29 08:50:43 +01:00
Peter Squicciarini
d03f6d5442 Merge pull request #346 from zilti/master
Add update information to AppImage
2020-02-27 10:41:23 -08:00
Daniel Ziltener
35f5a5a264 Update .travis.yml
Added AppImage's zsync to the list of files to deploy
2020-02-27 12:08:23 +01:00
Daniel Ziltener
ccb2ee47b3 Add update information to AppImage 2020-02-26 23:36:45 +01:00
Peter Squicciarini
a3465c0f1b Use Node 12 and frozen lockfile 2020-02-17 15:26:57 -08:00
Alan Pope
cb031ffd75 Added section on installing the snap
Thanks for making VS Codium. Now the codium snap is available in the stable channel of the snap store, I added a section to the README.md so people can find it. I also added a badge at the top which shows what build is current in the snap store, and the build status.
2020-02-17 12:37:30 +00:00
Peter Squicciarini
c440844e99 Update check_tags.sh
Fixes armhf tag check
2019-12-20 19:52:01 -08:00
Peter Squicciarini
26a5bfcab8 Merge pull request #310 from stripedpajamas/fix-builds
OS specific keep alive funcs
2019-12-20 15:59:30 -08:00
Peter Squicciarini
e379b37110 OS specific keep alive funcs 2019-12-20 14:20:10 -08:00
Peter Squicciarini
4612db050a Merge pull request #278 from mztriz/patch-1
Use cd ... || exit in case cd fails.
2019-12-19 22:08:09 -08:00
Peter Squicciarini
2c61228528 Merge pull request #303 from dimkr/arm-v2
Add hacky, initial armhf support
2019-12-14 20:09:38 -08:00
Peter Squicciarini
7b2c725cac Merge pull request #302 from dimkr/arm64-v2
Add hacky, initial arm64 support
2019-12-14 20:07:59 -08:00
Dima Krasner
a8b43ff2a5 Merge branch 'arm64-v2' into arm-v2 2019-12-11 21:19:11 +02:00
Dima Krasner
588db890f0 Merge branch 'master' into arm64-v2 2019-12-11 21:18:50 +02:00
Dima Krasner
08d8ad26ab Add armhf support 2019-12-10 17:28:28 +02:00
Peter Squicciarini
1501d185c2 Merge pull request #301 from stripedpajamas/update-cache-path
Update cache path
2019-12-09 21:42:44 -08:00
Dima Krasner
2fdaec5163 Document arm64 support 2019-12-09 22:21:26 +02:00
Dima Krasner
818097ca7e Add hacky, initial arm64 support 2019-12-09 21:40:37 +02:00
Peter Squicciarini
845f748de5 Merge branch 'master' of https://github.com/vscodium/vscodium into update-cache-path 2019-12-09 08:54:06 -08:00
Peter Squicciarini
2ea6d93325 Merge pull request #300 from stripedpajamas/fix-appimage
Fix appimage
2019-12-08 19:31:34 -08:00
Peter Squicciarini
98a9a1b231 Fix update cache path 2019-12-08 16:03:23 -08:00
Peter Squicciarini
3bba077e1e Update DOCS.md
Correct portable instructions. Closes #295
2019-12-08 16:03:23 -08:00
Peter Squicciarini
6f3791a5ca Correct path to AppImage 2019-12-08 15:26:22 -08:00
Peter Squicciarini
1a3eba742f Update DOCS.md
Correct portable instructions. Closes #295
2019-12-08 14:59:36 -08:00
Peter Squicciarini
75bbad9a0d Bugfix AppImage 2019-12-08 14:51:53 -08:00
Brian
31b80c8c09 Modified AppImage build method (#294) 2019-11-26 00:20:37 -05:00
Peter Squicciarini
e891ce2dcd Merge pull request #291 from VSCodium/stripedpajamas-patch-1
Update README.md
2019-11-23 19:22:30 -05:00
Peter Squicciarini
8d8c0cd3fc Update README.md
Clarify that VSCodium does not support Linux 32-bit anymore
2019-11-22 08:05:11 -08:00
Peter Squicciarini
6963e0db5e Merge pull request #290 from arjendk/patch-1
Update link to telemetry settings in Visual Studio Code documentation
2019-11-22 05:09:02 -08:00
Arjen de Korte
51413d265e Update link 2019-11-22 12:29:49 +01:00
Ava Barron
df742b9ee9 Use cd ... || exit in case cd fails. 2019-11-05 22:45:46 -05:00
Peter Squicciarini
cfc5bbd51e Merge pull request #275 from stripedpajamas/rn-icon
Move code-icon.svg to updated path
2019-10-28 08:36:47 -07:00
Peter Squicciarini
d3a7edee21 Move code-icon.svg to updated path 2019-10-27 21:02:01 -07:00
Peter Squicciarini
6bf38fa316 Merge pull request #274 from stripedpajamas/crash
Update path to crash reporter setting
2019-10-26 20:42:23 -07:00
Peter Squicciarini
d203723bd5 Update path to crash reporter setting 2019-10-25 17:51:55 -07:00
Peter Squicciarini
880f505515 Merge pull request #258 from stripedpajamas/shell
Remove & from win32ShellNameShort
2019-10-05 13:26:20 -07:00
Peter Squicciarini
8b57482521 Remove & from win32ShellNameShort 2019-10-05 13:13:11 -07:00
Peter Squicciarini
6d1b1c06bc Merge pull request #257 from ajkerzner/ubuntu14
Update TravisCI config to use Ubuntu 14.04
2019-09-29 19:17:23 -07:00
Alex Kerzner
112b141bf2 Update TravisCI config to use Ubuntu 14.04 2019-09-29 10:12:09 -04:00
Peter Squicciarini
53b56dbebb Merge pull request #251 from stripedpajamas/no-trigger
Stop triggering Azure
2019-09-05 12:56:06 -07:00
Peter Squicciarini
cd6e1485b5 Stop triggering Azure 2019-09-04 15:39:23 -07:00
Peter Squicciarini
f787c21b3c Merge pull request #244 from stripedpajamas/win-commit
Set BUILD_SOURCEVERSION to LATEST_MS_COMMIT explicitly
2019-08-20 16:53:38 -07:00
Peter Squicciarini
74e4592337 Set BUILD_SOURCEVERSION to LATEST_MS_COMMIT explicitly 2019-08-20 15:17:17 -07:00
Matthew Watkins
eb6ca84e21 Update DOCS.md
Added details on how to edit the product.json to enable extensions
2019-08-15 10:40:45 -05:00
Peter Squicciarini
9afbbd903b Merge pull request #237 from stripedpajamas/wait
Update build process
2019-08-09 10:37:08 -07:00
Peter Squicciarini
e21f491ecd Try keep alive for minify-vscode task 2019-08-09 09:42:15 -07:00
Peter Squicciarini
5b1a4a1950 Use new gulp targets 2019-08-09 08:49:47 -07:00
Peter Squicciarini
91f1d58dd7 Try another method to keep build process alive 2019-08-08 17:28:04 -07:00
Peter Squicciarini
d358627a19 Wait for Darwin build 2019-08-08 15:41:39 -07:00
Peter Squicciarini
06cc20f63b Merge pull request #233 from stripedpajamas/fix-hash-paths
Fix hash paths
2019-07-26 00:38:34 -07:00
Peter Squicciarini
88503d7855 Fix hash paths 2019-07-25 09:07:08 -07:00
Peter Squicciarini
b44a4f56c4 Merge pull request #227 from stripedpajamas/win32-system-update
Add update support for Win32 system install
2019-07-09 16:26:01 -07:00
Peter Squicciarini
72781d2f52 Add update support for Win32 system install 2019-07-09 15:25:17 -07:00
Peter Squicciarini
492c8c658e Merge pull request #223 from stripedpajamas/no-linux-ia32
Remove Linux 32-bit code paths
2019-07-04 14:25:56 -07:00
Peter Squicciarini
59ef86968e Remove Linux 32-bit code paths 2019-07-04 14:03:18 -07:00
Peter Squicciarini
49489575bb Update README.md
Make it clear that VSCodium build process downloads files
2019-06-30 12:51:58 -07:00
Peter Squicciarini
606674936f Merge pull request #216 from stripedpajamas/links
Add additional urls to product.json
2019-06-29 13:46:56 -07:00
Peter Squicciarini
4a0a474af7 Add additional urls to product.json 2019-06-28 08:39:27 -07:00
Peter Squicciarini
8f8a71d932 Merge pull request #211 from simooooone/codium_renaming_fixes
Updated DOCS.md instructions to reference new binary name
2019-06-26 11:19:56 -07:00
Simone Foschi
5dfd780291 Fixed other typos and one image path in DOCS.md 2019-06-26 18:51:31 +02:00
Peter Squicciarini
2653d09ffa Merge pull request #210 from stripedpajamas/links
Add documentation and introductory videos urls
2019-06-24 10:40:23 -07:00
Simone Foschi
f3b156bfcd fixed typo 2019-06-24 19:37:30 +02:00
Peter Squicciarini
4be6447a1d Add documentation and introductory videos urls 2019-06-23 19:29:33 -07:00
Peter Squicciarini
1245596c1c Merge pull request #203 from tyu1996/master
Changed from 'vscodium' to 'codium' in AppImage config file
2019-06-22 09:54:25 -07:00
Brian
c46aebbbdc Changed from 'vscodium' to 'codium'
Updated as [#203](https://github.com/VSCodium/vscodium/pull/203) requested.
2019-06-19 17:34:48 +08:00
Brian
079e741bcc Update VSCodium-AppImage-Recipe.yml 2019-06-18 13:57:26 +08:00
Peter Squicciarini
8861d9c2d9 Merge pull request #200 from stripedpajamas/fix-windows-commit
Set BUILD_SOURCEVERSION to the MS commit
2019-06-16 08:15:06 -07:00
Peter Squicciarini
d213b48a7f Set BUILD_SOURCEVERSION to the MS commit 2019-06-14 21:45:28 -07:00
Peter Squicciarini
6d24ed1d62 Merge pull request #195 from janniks/patch-1
Fix typo
2019-06-13 20:21:22 -07:00
Peter Squicciarini
99b3268f2b Merge pull request #179 from esclerofilo/master
change icon name to vscodium.png
2019-06-13 20:15:33 -07:00
Jannik
4baaf93eb2 Fix typo 2019-06-12 11:40:13 +02:00
Vicente Reyes
1c13ffb556 fix merge conflicts 2019-06-11 17:31:48 -04:00
Peter Squicciarini
db1afbd17a Merge branch 'master' of https://github.com/vscodium/vscodium 2019-06-10 21:39:30 -07:00
Peter Squicciarini
b5a6849834 Add retry logic to git push 2019-06-10 21:35:15 -07:00
Peter Squicciarini
b97f997a40 Merge pull request #187 from PalinuroSec/patch-1
change vscodium to codium in debian postinst
2019-06-09 14:08:51 -07:00
Lorenzo "Palinuro" Faletra
c2b46ceb35 change vscodium to codium in debian postinst 2019-06-09 14:33:57 +02:00
Peter Squicciarini
b6b51ba510 Merge branch 'master' of https://github.com/vscodium/vscodium 2019-06-06 16:23:50 -07:00
Peter Squicciarini
3f1e9ec9b4 Upgrade to Node 10 2019-06-06 16:22:04 -07:00
Peter Squicciarini
81ef7c6d8f Merge pull request #176 from bittner/feature/rename-binary-to-codium 2019-05-31 09:01:13 -07:00
Peter Squicciarini
02f69839a7 Update README.md
Update Mojave instructions
2019-05-31 08:42:51 -07:00
Peter Bittner
0f6cfd5989 Launch the IDE with codium (instead of vscodium) 2019-05-31 01:30:44 +02:00
Vicente Reyes
f1233fc9b8 change icon name to vscodium.png 2019-05-29 23:26:59 -04:00
Peter Squicciarini
265627feec Merge pull request #175 from stripedpajamas/letterpress
Add codium letterpress svgs
2019-05-29 08:37:28 -07:00
Peter Squicciarini
bea2917180 Add codium letterpress svgs 2019-05-28 17:38:58 -07:00
Peter Squicciarini
4ad9544910 Merge pull request #173 from stripedpajamas/titlebar-icon
Add code-icon.svg files
2019-05-24 11:08:31 -07:00
Peter Squicciarini
963aaf685a Merge pull request #172 from stripedpajamas/appimage-sum
Add sha256 sum for AppImage
2019-05-24 11:07:58 -07:00
Peter Squicciarini
4b97d24b5f Merge pull request #171 from stripedpajamas/extension-badges
Add extensionAllowedBadgeProviders to product.json
2019-05-24 11:07:42 -07:00
Peter Squicciarini
53368f6991 Add code-icon.svg files 2019-05-23 17:11:02 -07:00
Peter Squicciarini
724b1d3d21 Add sha256 sum for AppImage 2019-05-23 15:12:42 -07:00
Peter Squicciarini
9d3751db59 Add extensionAllowedBadgeProviders to product.json 2019-05-23 14:45:57 -07:00
Peter Squicciarini
e4db49f31a Merge pull request #170 from stripedpajamas/more-info
Add more info to more info
2019-05-22 16:05:41 -07:00
Peter Squicciarini
2b1aedba19 Add more info to more info 2019-05-22 09:09:02 -07:00
Peter Squicciarini
a9e74eb2bd Merge pull request #166 from stripedpajamas/update-url
Add updateUrl and releaseNotesUrl to product.json
2019-05-21 09:18:05 -07:00
Peter Squicciarini
fa720f1e0c Add updateUrl and releaseNotesUrl to product.json 2019-05-20 15:01:50 -07:00
Peter Squicciarini
75a79410d3 Merge pull request #164 from stripedpajamas/windows-version-update
Windows version update
2019-05-20 09:55:17 -07:00
Peter Squicciarini
edb1c6ce8b Pull before commit 2019-05-20 09:27:22 -07:00
Peter Squicciarini
f5dc0559c2 Make Windows version paths consistent across archs 2019-05-20 08:56:42 -07:00
Peter Squicciarini
ff70dffab8 Remove unusued argument from function call 2019-05-19 13:16:49 -07:00
Peter Squicciarini
ff2d078db8 Merge pull request #163 from ealap/master
Resize win32 70x70 icon
2019-05-19 13:08:46 -07:00
Peter Squicciarini
1db9cfba3f CRLF endings on Windows and shasum bugfixes 2019-05-18 23:03:46 -07:00
Peter Squicciarini
4860c1bca9 Add shasum of dmg and bugfix update_version.sh 2019-05-18 22:02:47 -07:00
Peter Squicciarini
7147a3a52b Merge branch 'master' of https://github.com/stripedpajamas/vscodium into windows-version-update 2019-05-18 19:49:38 -07:00
Peter Squicciarini
798eb8cb11 Use checksum for Windows builds 2019-05-18 19:15:47 -07:00
Peter Squicciarini
1c6cb799c8 Add execute permissions to create_dmg.sh 2019-05-18 19:00:21 -07:00
Emmanuel Alap
4114f3484b Resize win32 70x70 icon 2019-05-18 11:09:33 +08:00
Peter Squicciarini
d7fe3923fc Refactor update_version to support Windows builds 2019-05-17 19:47:03 -07:00
Randal Stevens
7b1c9aff73 Feature/DMG (#162)
Thanks @RandyStevens 🙏 

Closes #139
2019-05-17 09:17:54 -07:00
Peter Squicciarini
a5b2066f76 Commit version JSON after deploy (#158) 2019-05-16 10:41:32 -07:00
Peter Squicciarini
376c501f95 Merge pull request #155 from stripedpajamas/keymap-url
Add keymap urls to product.json
2019-05-13 15:08:48 -07:00
Peter Squicciarini
ae7942f5e5 Merge pull request #154 from stripedpajamas/product-json-quality
Add quality to product.json
2019-05-13 15:07:44 -07:00
Peter Squicciarini
eebde70091 Add urls for keymap references 2019-05-13 09:09:03 -07:00
Peter Squicciarini
a7e8154e98 Merge pull request #146 from tyu1996/patch-1
Update README.md
2019-05-08 12:07:42 -07:00
Brian
69f1e08df3 Update README.md
Removed AppImage subsection; added `AppImage` on line 96.
2019-05-08 09:08:31 +08:00
Brian
13c905e2d8 Update README.md
Added the "AppImage Option" under "Download/Install".
2019-05-04 17:38:58 +08:00
Peter Squicciarini
3687110918 Add quality to product.json 2019-05-03 17:10:53 -07:00
Peter Squicciarini
c72968db2d Merge pull request #141 from stripedpajamas/add-portable-instructions
Update DOCS.md
2019-04-30 15:34:08 -07:00
Peter Squicciarini
ec6568188f Update DOCS.md 2019-04-30 10:50:57 -07:00
Peter Squicciarini
0608a0e812 Sign mac app (#136) 2019-04-23 17:14:24 -07:00
Peter Squicciarini
69d8ba45eb Merge pull request #135 from cgimenes/master
Updating Arch's package name
2019-04-22 15:08:21 -07:00
Marcelo Gimenes de Oliveira
c904b620f1 Updating Arch's package name 2019-04-22 16:25:53 -03:00
Peter Squicciarini
5e481cb178 Update README.md
Correct table of contents
2019-04-20 19:38:26 -07:00
Peter Squicciarini
39d4b9c134 AppImage support (#108) 2019-04-19 06:30:10 -07:00
Peter Squicciarini
f6363a3665 Merge pull request #133 from stripedpajamas/liveshare
Update extensionAllowedProposedApi prebuild
2019-04-18 09:57:01 -07:00
Peter Squicciarini
4ac72d1b71 Update extensionAllowedProposedApi prebuild 2019-04-18 09:25:31 -07:00
Peter Squicciarini
1fe19328cc Update README.md
Closes #132
2019-04-18 08:53:47 -07:00
Peter Squicciarini
d774292e9f Merge pull request #130 from stripedpajamas/medium-icon-fix
Resize win32 150x150 icon
2019-04-17 16:58:19 -07:00
Peter Squicciarini
7911c1a336 Resize win32 150x150 icon 2019-04-17 15:50:41 -07:00
Peter Squicciarini
273bb0fae2 Merge pull request #127 from stripedpajamas/unique-app-id
Set win32x64UserAppId to a unique GUID
2019-04-16 09:57:12 -07:00
Peter Squicciarini
4f99cbf064 Set win32x64UserAppId to a unique GUID 2019-04-16 09:29:58 -07:00
Peter Squicciarini
3290066771 Merge pull request #126 from VSCodium/stripedpajamas-patch-1
Update README.md
2019-04-15 16:26:00 -07:00
Peter Squicciarini
5b2cfc70d3 Make note about free license in opening statement 2019-04-15 16:00:48 -07:00
Peter Squicciarini
0d98ab9664 Update README.md
Add note about what this project is (a convenience) and is not (a fork). 

Clarify what "free" means, since Visual Studio Code does not cost money.
2019-04-15 12:46:29 -07:00
Peter Squicciarini
84a944e39f Merge pull request #124 from stripedpajamas/disable-crash-reporting
Update logic to disable telemetry and crash reporting settings
2019-04-14 14:36:51 -07:00
Peter Squicciarini
207c9cd04b Update logic to disable telemetry and crash reporting settings 2019-04-14 13:53:09 -07:00
Peter Squicciarini
11db2cfa65 Merge pull request #122 from stripedpajamas/donate
Add donate section
2019-04-14 07:01:14 -07:00
Peter Squicciarini
a12f6d7dce Merge pull request #121 from stripedpajamas/fix-macos-check
Update check for Mac artifact
2019-04-13 21:18:55 -07:00
Peter Squicciarini
70f523fbfe Disable broken arm64 builds 2019-04-13 20:45:55 -07:00
Peter Squicciarini
a47dcab06a Merge pull request #120 from stripedpajamas/sums
Add hash digests to releases
2019-04-13 19:52:20 -07:00
Peter Squicciarini
2f6d19354f Add donate section 2019-04-13 19:51:11 -07:00
Peter Squicciarini
2cdcb23c1a Merge pull request #117 from 7596ff/patch-1
generalize the AUR package instructions
2019-04-12 22:04:42 -07:00
Cassandra McCarthy
e37fe1cc3b generalize the AUR package instructions 2019-04-13 00:53:17 -04:00
Peter Squicciarini
de66a50908 Add condition to sums 2019-04-12 16:47:54 -07:00
Peter Squicciarini
6aa7f0a180 Fix win32 sum filenames 2019-04-12 16:40:41 -07:00
Peter Squicciarini
d6fc93a4b5 Update check for Mac artifact 2019-04-12 16:40:21 -07:00
Peter Squicciarini
f70c614be3 Another bug fix 2019-04-12 16:14:09 -07:00
Peter Squicciarini
2ea06de9f8 Fix bugs 2019-04-12 15:52:13 -07:00
Peter Squicciarini
64e0cd0c7f Merge pull request #116 from joseluisq/master
Add Arch Linux install instructions
2019-04-12 15:12:26 -07:00
Peter Squicciarini
33bc3b2f8b Compute and upload sha256 sums for build artifacts 2019-04-12 15:11:27 -07:00
Jose Quintana
7452656dd9 add Arch Linux install instructions 2019-04-12 23:48:01 +02:00
Peter Squicciarini
6a307fcc6d Merge pull request #113 from rasa/patch-1
Add scoop install to readme
2019-04-12 06:21:11 -07:00
Ross Smith II
79a2dd7d51 Add scoop install to readme 2019-04-11 23:29:28 -07:00
Thomas Andrade
b6c2a40d0b Docs update (#112)
* Add reference to external Gentoo overlay @wolviecb
2019-04-11 16:43:49 -07:00
Peter Squicciarini
ac42eadd68 Update issue templates 2019-04-10 21:02:00 -07:00
Peter Squicciarini
1b9d7adc60 Reword telemetry note 2019-04-10 20:51:44 -07:00
Peter Squicciarini
532959ee9a Update README.md
Closes #97
2019-04-06 20:03:13 -07:00
Peter Squicciarini
f9f92ce008 Build cleanup and Windows ia32 (#103) 2019-04-05 10:13:11 -07:00
Peter Squicciarini
0f3afe4cba Merge pull request #94 from stripedpajamas/win-license
Copy license file to LICENSE.rtf for Windows builds
2019-03-18 19:00:00 -07:00
Peter Squicciarini
562f4d484f Copy license file to LICENSE.rtf for Windows builds 2019-03-18 18:24:43 -07:00
Peter Squicciarini
cf4adbf6f8 Update build.sh
Windows builds were not using the npm gulp script which allows for a bigger heap
2019-03-11 13:37:57 -04:00
Peter Squicciarini
b8a1f7c979 Merge pull request #89 from VSCodium/flatpak
Add note about flatpak
2019-03-07 13:33:03 -05:00
Peter Squicciarini
34953d11f3 Update README
Add note about flatpak
2019-03-07 09:49:16 -05:00
Peter Squicciarini
ab7d14add8 Merge pull request #56 from JL2210/fix-arm64-build
arm64 build cleanup
2019-03-02 07:01:22 -05:00
Peter Squicciarini
4fe1ea6727 Merge branch 'master' into fix-arm64-build 2019-03-01 15:56:01 -05:00
Peter Squicciarini
a61e56c152 Merge pull request #87 from stripedpajamas/update-docs
Add workaround docs for C# extension woes
2019-02-21 10:56:31 -05:00
Peter Squicciarini
a02839b466 Add workaround for C# extension woes 2019-02-20 15:23:26 -05:00
Peter Squicciarini
890377a893 Merge pull request #86 from stripedpajamas/update-docs
Update DOCS.md to include link to workaround for code-settings-sync
2019-02-19 20:39:13 -05:00
Peter Squicciarini
e95b3f0732 Update DOCS.md to include link to workaround for code-settings-sync 2019-02-19 15:59:29 -05:00
Peter Squicciarini
c38cc161c0 Fix linux 32 bit builds (#85)
* Correct Linux 32-bit dependency installation
2019-02-14 19:40:11 -05:00
Peter Squicciarini
4cf7166a48 Merge pull request #81 from stripedpajamas/fix-azure-node
Specify node version 8.x (Azure)
2019-02-09 07:49:01 -05:00
Peter Squicciarini
f5bb3f6007 Specify node version 8.x 2019-02-09 07:40:42 -05:00
Peter Squicciarini
a1596e9820 Merge pull request #79 from stripedpajamas/trigger-azure
Add script to trigger Azure pipelines build
2019-01-24 14:01:19 -05:00
Peter Squicciarini
3ccdd1171d Add script to trigger Azure pipelines build 2019-01-23 17:01:32 -05:00
Peter Squicciarini
4dbc77dbba Merge pull request #78 from VSCodium/chocolatey-readme-update
Add choco installation instructions
2019-01-16 15:16:21 -05:00
Peter Squicciarini
1991d1af61 Add choco installation instructions 2019-01-15 12:55:36 -05:00
Peter Squicciarini
56cce9d14c Merge pull request #77 from stripedpajamas/name-tar-zip
Use VSCodium in name of zip/tar
2019-01-11 08:53:19 -05:00
Peter Squicciarini
cf28585423 Use VSCodium in name of zip/tar 2019-01-10 14:55:28 -05:00
Peter Squicciarini
1b421c701c Merge pull request #70 from stripedpajamas/master
Correct GH token logic for Windows builds
2018-12-22 17:16:29 -05:00
Peter Squicciarini
85da65c0b0 Add null check for GH token 2018-12-22 17:14:08 -05:00
Peter Squicciarini
1633faf377 Recorrect GH token logic 2018-12-22 17:10:55 -05:00
Peter Squicciarini
2564115929 Correct GH token logic 2018-12-22 17:09:36 -05:00
Peter Squicciarini
dd6e08a285 Merge pull request #69 from stripedpajamas/master
Add logging when GH token doesn't exist in Windows build
2018-12-22 17:06:16 -05:00
Peter Squicciarini
b5df7d5af8 Add logging when GH token doesn't exist in Windows build 2018-12-22 17:03:27 -05:00
Peter Squicciarini
8959faeca9 Merge pull request #64 from stripedpajamas/master
Add logo to README
2018-12-11 13:34:54 -05:00
Peter Squicciarini
7391746c6b Add title 2018-12-09 20:05:15 -05:00
Peter Squicciarini
833fcec1e8 Fix badges 2018-12-09 20:04:18 -05:00
Peter Squicciarini
576145f38e Update README.md 2018-12-09 20:03:10 -05:00
Peter Squicciarini
c1dd804250 Add Azure badge 2018-12-03 14:39:06 -05:00
Peter Squicciarini
83cfe077ee Cleanup Windows build process (#62) 2018-12-03 14:16:48 -05:00
Peter Squicciarini
a3129e3f57 Merge pull request #61 from pavanagrawal123/patch-1
Update Readme to show Windows builds are ready
2018-12-03 09:24:10 -05:00
Pavan Agrawal
dfa09d149e Update Readme to show Windows builds are ready 2018-12-02 23:02:24 -06:00
JL2210
8096387e74 Merge branch 'master' of https://github.com/VSCodium/vscodium into fix-arm64-build 2018-11-28 08:15:23 -05:00
Pavan Agrawal
098cab67bd Windows builds with Azure Pipelines (#58) 2018-11-27 09:19:34 -05:00
Peter Squicciarini
dc649ff259 Add gitter badge 2018-11-22 09:08:28 -05:00
Peter Squicciarini
d408fcc060 Use latest yarn (#57) 2018-11-13 11:58:05 -05:00
Peter Squicciarini
0f3bba8d9f Merge pull request #55 from stripedpajamas/fix-big-darwin
Fix big darwin file
2018-11-13 10:08:02 -05:00
JL2210
7b764d5c5b export npm_config_target_arch instead of npm_config_arch on arm64 2018-11-05 10:32:51 -05:00
JL2210
31ad142664 Fix broken package name 2018-11-04 16:26:54 -05:00
JL2210
a4ea6d60a4 Fix arm64 build 2018-11-04 16:05:53 -05:00
Peter Squicciarini
213baf8651 Add -X -y to zip command 2018-10-30 10:54:21 -04:00
Peter Squicciarini
5f035559e5 Merge pull request #53 from stripedpajamas/terminal-support-docs
Add section for vscodium terminal support
2018-10-25 05:36:47 -04:00
Peter Squicciarini
58823c7ad8 Add section for vscodium terminal support 2018-10-24 15:34:23 -04:00
Peter Squicciarini
f4a46d1c7b Merge pull request #52 from stripedpajamas/docs
Separate out more technical docs into DOCS.md
Closes #50
2018-10-24 15:05:03 -04:00
Peter Squicciarini
bfcfedb1e8 Separate out more technical docs into DOCS.md 2018-10-24 10:34:20 -04:00
Joel Wasserman
74d06bf01d Change default telemetry settings to disabled (#46)
Closes #44
2018-10-19 11:38:43 -04:00
Peter Squicciarini
a541390984 Merge pull request #49 from tynx/patch-1
Add jq dependency
2018-10-16 09:45:30 -04:00
tynx
da0eaa5d45 adding missing dependency jq
While using the script I realized that the package jq was missing
2018-10-15 23:49:22 +02:00
Peter Squicciarini
008aacc81e Merge pull request #43 from paulcarroty/patch-1
add info about automatic updates for Linux
2018-10-13 08:59:43 -04:00
Pavlo Rudyi
ed99748de8 add info about automatic updates for Linux 2018-10-13 10:10:51 +00:00
101 changed files with 2205 additions and 253 deletions

38
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View File

@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**Please confirm that this problem is VSCodium-specific**
- [ ] This bug doesn't happen if I use Microsoft's Visual Studio Code. It only happens in VSCodium.
**Please confirm that the issue/resolution isn't already documented**
- [ ] I checked [the Docs page](https://github.com/VSCodium/vscodium/blob/master/DOCS.md) and my issue is not mentioned there.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. Mac OS, Ubuntu 16.04, etc]
- Architecture [e.g. x64, ia32, arm64]
- Version [e.g. 1.33.0]
**Additional context**
Add any other context about the problem here.

114
.github/workflows/linux.yml vendored Normal file
View File

@@ -0,0 +1,114 @@
name: linux_build
on:
schedule:
- cron: '0 0 * * *'
push:
pull_request:
branches: [ master ]
jobs:
linux:
runs-on: ubuntu-latest
container:
image: ${{ matrix.image }}
env:
OS_NAME: 'linux'
VSCODE_ARCH: ${{ matrix.vscode_arch }}
strategy:
fail-fast: false
matrix:
vscode_arch: [x64, arm64, armhf]
include:
- vscode_arch: x64
npm_arch: x64
image: vscodium/vscodium-linux-build-agent:bionic-x64
- vscode_arch: arm64
npm_arch: arm64
image: vscodium/vscodium-linux-build-agent:stretch-arm64
- vscode_arch: armhf
npm_arch: armv7l
image: vscodium/vscodium-linux-build-agent:stretch-armhf
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
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
- name: Check existing VSCodium tags/releases
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:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
npm_config_arch: ${{ matrix.npm_arch }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Zip release
run: |
cd VSCode-linux-${VSCODE_ARCH}
tar czf ../VSCodium-linux-${VSCODE_ARCH}-${LATEST_MS_TAG}.tar.gz .
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Generate shasums
run: ./sum.sh
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
./*.zip
./*.tar.gz
./*.deb
./*.rpm
./*.AppImage
./*.AppImage.zsync
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

119
.github/workflows/macos.yml vendored Normal file
View File

@@ -0,0 +1,119 @@
name: macos_build
on:
schedule:
- cron: '0 0 * * *'
push:
pull_request:
branches: [ master ]
jobs:
build:
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
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
- name: Check existing VSCodium tags/releases
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: ${{ 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 }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Sign binary
env:
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' && env.SHOULD_DEPLOY == 'yes'
run: |
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
security create-keychain -p mysecretpassword $KEYCHAIN
security default-keychain -s $KEYCHAIN
security unlock-keychain -p mysecretpassword $KEYCHAIN
security import $CERTIFICATE_P12 -k $KEYCHAIN -P $CERTIFICATE_OSX_PASSWORD -T /usr/bin/codesign
security set-key-partition-list -S apple-tool:,apple: -s -k mysecretpassword $KEYCHAIN
codesign --deep --force --verbose --sign "$CERTIFICATE_OSX_ID" VSCodium.app
fi
- name: Zip release
run: |
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-${VSCODE_ARCH}"
npx create-dmg VSCodium.app ..
mv "../VSCodium ${LATEST_MS_TAG}.dmg" "../VSCodium.${VSCODE_ARCH}.${LATEST_MS_TAG}.dmg"
popd
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Generate shasums
run: ./sum.sh
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: |
./*.zip
./*.dmg
./*.sha256
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Update versions repo
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

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 }}

2
.gitignore vendored
View File

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

View File

@@ -1,44 +0,0 @@
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:
- ./install_deps.sh
- . get_repo.sh
- . check_tags.sh
script:
- ./build.sh
before_deploy:
- ./create_zip.sh
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

128
DOCS.md Normal file
View File

@@ -0,0 +1,128 @@
# 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 run VSCodium in portable mode?](#portable)
- [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)
- [Gentoo overlay/ebuild](#gentoo-overlay)
## <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/getstarted/telemetry#_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.)_
### Replacements to Microsoft Online Services
When searching the `@tag:usesOnlineServices` filter, note that while the "Update: Mode" setting description still says "The updates are fetched from a Microsoft online service", VSCodium's build script [sets the `updateUrl` field](https://github.com/VSCodium/vscodium/blob/master/prepare_vscode.sh#L36) in `product.json` to that of VSCodium's own small [update server](https://github.com/VSCodium/update-api), so enabling that setting won't actually result in any calls to Microsoft servers.
Likewise, while the descriptions for "Extensions: Auto Check Updates" and "Extensions: Auto Update" include the same phrase, VSCodium [replaces](https://github.com/VSCodium/vscodium/blob/master/prepare_vscode.sh#L42) the Visual Studio Marketplace with Open VSX, so these settings won't call Microsoft, either.
## <a id="extensions-marketplace"></a>Extensions + Marketplace
The `product.json` file is set up to use [open-vsx.org](https://open-vsx.org/) as extension gallery, which has an [adapter](https://github.com/eclipse/openvsx/wiki/Using-Open-VSX-in-VS-Code) to the Marketplace API used by VS Code. Since that is a rather new project, you will likely miss some extensions you know from the VS Code Marketplace. You have the following options to obtain such missing extensions:
* Ask the extension maintainers to publish to [open-vsx.org](https://open-vsx.org/) in addition to the VS Code Marketplace. The publishing process is documented in the [Open VSX Wiki](https://github.com/eclipse/openvsx/wiki/Publishing-Extensions).
* Create a pull request to [this repository](https://github.com/open-vsx/publish-extensions) to have the [@open-vsx](https://github.com/open-vsx) service account publish the extensions for you.
* Download and [install the vsix files](https://code.visualstudio.com/docs/editor/extension-gallery#_install-from-a-vsix).
* Modify the `extensionsGallery` section of the `product.json` file in your VSCodium installation to use the VS Code Marketplace as shown below. However, note that [it is not clear whether this is legal](https://github.com/microsoft/vscode/issues/31168).
```json
"extensionsGallery": {
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
"itemUrl": "https://marketplace.visualstudio.com/items"
}
```
See [this article](https://www.gitpod.io/blog/open-vsx/) for more information on the motivation behind Open VSX.
### Proprietary Debugging Tools
The debugger provided with Microsoft's [C# extension](https://github.com/OmniSharp/omnisharp-vscode) as well as the (Windows) debugger provided with their [C++ extension](https://github.com/Microsoft/vscode-cpptools) are very restrictively licensed to only work with the offical Visual Studio Code build. See [this comment in the C# extension repo](https://github.com/OmniSharp/omnisharp-vscode/issues/2491#issuecomment-418811364) and [this comment in the C++ extension repo](https://github.com/Microsoft/vscode-cpptools/issues/21#issuecomment-248349017).
A workaround exists to get debugging working in C# projects, by using Samsung's opensource [netcoredbg](https://github.com/Samsung/netcoredbg) package. See [this comment](https://github.com/VSCodium/vscodium/issues/82#issue-409806641) for instructions on how to set that up.
### 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 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": [
// ...
"ms-vscode-remote.vscode-remote-extensionpack",
"ms-vscode-remote.remote-wsl",
// ...
],
```
In some cases, the above change won't help because the extension is hard-coded to only work with the official Visual Studio Code product.
## <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 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="portable"></a>How do I run VSCodium in portable mode?
You can follow the [Portable Mode instructions](https://code.visualstudio.com/docs/editor/portable) from the Visual Studio Code website.
- **Windows** / **Linux** : the instructions can be followed as written.
- **macOS** : portable mode is enabled by the existence of a specially named folder. For Visual Studio Code that folder name is `code-portable-data`. For VSCodium, that folder name is `codium-portable-data`. So to enable portable mode for VSCodium on Mac OS, follow the instructions outlined in the [link above](https://code.visualstudio.com/docs/editor/portable), but create a folder named `codium-portable-data` instead of `code-portable-data`.
## <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 'codium' command in PATH`.
![](https://user-images.githubusercontent.com/2707340/60140295-18338a00-9766-11e9-8fda-b525b6f15c13.png)
This allows you to open files or directories in VSCodium directly from your terminal:
```bash
~/in-my-project $ codium . # open this directory
~/in-my-project $ codium file.txt # open this file
```
Feel free to alias this command to something easier to type in your shell profile (e.g. `alias code=codium`).
## <a id="gentoo-overlay"></a>Gentoo ebuild/overlay
There is an external Gentoo overlay with a working ebuild to install VSCodium, provided by [@wolviecb](https://github.com/wolviecb/). The overlay can be found [here](https://github.com/wolviecb/overlay).

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

154
README.md
View File

@@ -1,48 +1,104 @@
# VSCodium
<div id="vscodium-logo" align="center">
<br />
<img src="./src/resources/linux/code.png" alt="VSCodium Logo" width="200"/>
<h1>VSCodium</h1>
<h3>Free/Libre Open Source Software Binaries of VS Code</h3>
</div>
### Free/Libre Open Source Software Binaries of VSCode
[![build status](https://travis-ci.com/VSCodium/vscodium.svg?branch=master)](https://travis-ci.com/VSCodium/vscodium)
[![current release](https://img.shields.io/github/release/vscodium/vscodium.svg)](https://github.com/vscodium/vscodium/releases)
<div id="badges" align="center">
[![current release](https://img.shields.io/github/release/vscodium/vscodium.svg)](https://github.com/vscodium/vscodium/releases)
[![windows_build_status](https://dev.azure.com/vscodium/VSCodium/_apis/build/status/VSCodium.vscodium?branchName=master)](https://dev.azure.com/vscodium/VSCodium/_build?definitionId=1)
[![license](https://img.shields.io/github/license/VSCodium/vscodium.svg)](https://github.com/VSCodium/vscodium/blob/master/LICENSE)
[![Gitter](https://img.shields.io/gitter/room/vscodium/vscodium.svg)](https://gitter.im/VSCodium/Lobby)
[![codium](https://snapcraft.io//codium/badge.svg)](https://snapcraft.io/codium)
[![codium](https://snapcraft.io//codium/trending.svg?name=0)](https://snapcraft.io/codium)
</div>
**This is not a fork. This is a repository of scripts to automatically build Microsoft's `vscode` repository into freely-licensed binaries with a community-driven default configuration.**
## Table of Contents
- [Download/Install](#download-install)
- [Install with Brew](#install-with-brew)
- [Install with Windows Package Manager (WinGet)](#install-with-winget)
- [Install with Chocolatey](#install-with-choco)
- [Install with Scoop](#install-with-scoop)
- [Install with snap](#install-with-snap)
- [Install with Package Manager](#install-with-package-manager)
- [Install on Arch Linux](#install-on-arch-linux)
- [Flatpak Option](#flatpak)
- [Why Does This Exist](#why)
- [Getting all the Telemetry Out](#disable-telemetry)
- [Supported OS](#supported-os)
- [Extensions + Marketplace](#extensions-marketplace)
- [Migrating from Visual Studio Code to VSCodium](#migrating)
- [More Info](#more-info)
- [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:
[More info / helpful tips are here.](https://github.com/VSCodium/vscodium/blob/master/DOCS.md)
#### <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: if you see "App cant 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._
_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-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. [@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-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:
```bash
winget install vscodium
```
#### <a id="install-with-choco"></a>Install with Chocolatey (Windows)
If you use Windows and have [Chocolatey](https://chocolatey.org) installed (thanks to [@Thilas](https://github.com/Thilas)):
```bash
choco install vscodium
```
#### <a id="install-with-scoop"></a>Install with Scoop (Windows)
If you use Windows and have [Scoop](https://scoop.sh) installed:
```bash
scoop bucket add extras
scoop install vscodium
```
#### <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 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 (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 [@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 (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
flatpak run com.vscodium.codium
```
## <a id="why"></a>Why Does This Exist
This repository contains a build file to generate FLOSS release binaries of Microsoft's VSCode.
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.
>
> 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
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.__
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 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:
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:
- Extensions from the Microsoft Marketplace:
- ms-vscode.node-debug2
@@ -51,51 +107,39 @@ Microsoft's build process does download additional files. This was brought up in
- electron
- ffmpeg
## <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. After installing VSCodium, you must manually disable telemetry in your settings file to stop it from sending tracking data to Microsoft.
## <a id="more-info"></a>More Info
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 disabling telemetry.
### Documentation
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.
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
### Extensions and the Marketplace
According to the VS Code Marketplace [Terms of Use](https://aka.ms/vsmarketplace-ToU), _you may only install and use Marketplace Offerings with Visual Studio Products and Services._ For this reason, VSCodium uses [open-vsx.org](https://open-vsx.org/), an open source registry for VS Code extensions. See the [Extensions + Marketplace](https://github.com/VSCodium/vscodium/blob/master/DOCS.md#extensions-marketplace) section on the Docs page for more details.
These can all be disabled.
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.
__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.__
### 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 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).
_(For example the C# extension `ms-vscode.csharp` sends tracking data to Microsoft.)_
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] 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:
## <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
The ARM architecture is not currently supported but is actively being worked on.
## <a id="donate"></a>Donate
If you would like to support the development of VSCodium, feel free to send BTC to `3PgjE95yzBDTrSPxPiqoxSgZFuKPPAix1N`.
## <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
Special thanks to:
- @estatra for the latest logo
- @jaredreich for the previous logo
## <a id="license"></a>License
MIT
[MIT](https://github.com/VSCodium/vscodium/blob/master/LICENSE)

View File

@@ -0,0 +1,32 @@
# Based on
# https://github.com/AppImage/pkg2appimage/blob/master/recipes/VSCode.yml
#
# On a Debian/Ubuntu system:
# wget -c "https://github.com/AppImage/pkg2appimage/raw/master/pkg2appimage"
# bash -ex pkg2appimage VSCodium
app: VSCodium
ingredients:
packages:
- code
- libgconf2-4
dist: trusty
sources:
- deb http://archive.ubuntu.com/ubuntu/ trusty main universe
script:
- pwd
- cp ../vscode/.build/linux/deb/amd64/deb/*.deb .
- ls codium_*.deb | cut -d _ -f 2 > VERSION
script:
- sed -i -e 's|/usr/share/pixmaps/||g' usr/share/applications/codium.desktop
- cp usr/share/applications/codium.desktop .
- cp usr/share/pixmaps/vscodium.png vscodium.png
- convert vscodium.png -resize 512x512 usr/share/icons/hicolor/512x512/apps/vscodium.png
- convert vscodium.png -resize 256x256 usr/share/icons/hicolor/256x256/apps/vscodium.png
- convert vscodium.png -resize 128x128 usr/share/icons/hicolor/128x128/apps/vscodium.png
- convert vscodium.png -resize 64x64 usr/share/icons/hicolor/64x64/apps/vscodium.png
- convert vscodium.png -resize 48x48 usr/share/icons/hicolor/48x48/apps/vscodium.png
- convert vscodium.png -resize 32x32 usr/share/icons/hicolor/32x32/apps/vscodium.png
- ( cd usr/bin/ ; ln -s ../share/codium/codium . )

View File

@@ -1,44 +1,40 @@
#!/bin/bash
set -ex
if [[ "$SHOULD_BUILD" == "yes" ]]; then
cp -rp src/* vscode/
cd vscode
npm config set scripts-prepend-node-path true
if [[ "$BUILDARCH" == "ia32" ]]; then
export npm_config_arch=ia32
fi
echo "LATEST_MS_COMMIT: ${LATEST_MS_COMMIT}"
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
. prepare_vscode.sh
export NODE_ENV=production
cd vscode || exit
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
yarn monaco-compile-check
yarn valid-layers-check
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
yarn gulp compile-build
yarn gulp compile-extensions-build
yarn gulp minify-vscode
if [[ "$OS_NAME" == "osx" ]]; 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-${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
yarn gulp "vscode-linux-${VSCODE_ARCH}-build-deb"
yarn gulp "vscode-linux-${VSCODE_ARCH}-build-rpm"
. ../create_appimage.sh
fi
fi
cd ..

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,89 +1,133 @@
#!/bin/bash
REPOSITORY=${TRAVIS_REPO_SLUG:-"VSCodium/vscodium"}
set -e
REPOSITORY=${GITHUB_REPOSITORY:-"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}"
# if we just don't have the github token, get out fast
if [ "$GITHUB_TOKEN" != "" ]; then
if [ "$VSCODIUM_ASSETS" != "null" ]; then
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
HAVE_MAC=$(echo $VSCODIUM_ASSETS | jq 'map(.name) | contains(["zip"])')
if [[ "$OS_NAME" == "osx" ]]; then
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 [[ $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"
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_IA32_DEB" != "true" ]]; then
echo "Building on Linux ia32 because we have no DEB"
export SHOULD_BUILD="yes"
fi
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 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"
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
echo "Release assets do not exist at all, continuing build"
export SHOULD_BUILD="yes"
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
echo "SHOULD_BUILD=$SHOULD_BUILD" >> $GITHUB_ENV

9
create_appimage.sh Executable file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
if [[ "$VSCODE_ARCH" == "x64" ]]; then
# install a dep needed for this process
sudo apt-get install desktop-file-utils
cd ..
export DOCKER_BUILD=1
bash -e src/resources/linux/appimage/pkg2appimage VSCodium-AppImage-Recipe.yml
fi

View File

@@ -1,19 +0,0 @@
#!/bin/bash
if [[ "$SHOULD_BUILD" == "yes" ]]; then
if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then
cd VSCode-darwin
zip -r ../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 .
fi
cd ..
fi

View File

@@ -1,14 +1,15 @@
#!/bin/bash
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`)
# figure out latest tag by calling MS update API
UPDATE_INFO=$(curl https://update.code.visualstudio.com/api/update/darwin/stable/lol)
export LATEST_MS_COMMIT=$(echo $UPDATE_INFO | jq -r '.version')
export LATEST_MS_TAG=$(echo $UPDATE_INFO | jq -r '.name')
echo "Got the latest MS tag: ${LATEST_MS_TAG}"
git checkout $LATEST_MS_TAG
cd ..
git clone https://github.com/Microsoft/vscode.git --branch $LATEST_MS_TAG --depth 1
# for GH actions
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

@@ -1,21 +0,0 @@
#!/bin/bash
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
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

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

@@ -0,0 +1,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}`);

91
prepare_vscode.sh Executable file
View File

@@ -0,0 +1,91 @@
#!/bin/bash
set -e
cp -rp src/* vscode/
cd vscode || exit
../update_settings.sh
# 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
fi
mv product.json product.json.bak
# set fields in product.json
checksumFailMoreInfoUrl='setpath(["checksumFailMoreInfoUrl"]; "https://go.microsoft.com/fwlink/?LinkId=828886")'
tipsAndTricksUrl='setpath(["tipsAndTricksUrl"]; "https://go.microsoft.com/fwlink/?linkid=852118")'
twitterUrl='setpath(["twitterUrl"]; "https://go.microsoft.com/fwlink/?LinkID=533687")'
requestFeatureUrl='setpath(["requestFeatureUrl"]; "https://go.microsoft.com/fwlink/?LinkID=533482")'
documentationUrl='setpath(["documentationUrl"]; "https://go.microsoft.com/fwlink/?LinkID=533484#vscode")'
introductoryVideosUrl='setpath(["introductoryVideosUrl"]; "https://go.microsoft.com/fwlink/?linkid=832146")'
extensionAllowedBadgeProviders='setpath(["extensionAllowedBadgeProviders"]; ["api.bintray.com", "api.travis-ci.com", "api.travis-ci.org", "app.fossa.io", "badge.fury.io", "badge.waffle.io", "badgen.net", "badges.frapsoft.com", "badges.gitter.im", "badges.greenkeeper.io", "cdn.travis-ci.com", "cdn.travis-ci.org", "ci.appveyor.com", "circleci.com", "cla.opensource.microsoft.com", "codacy.com", "codeclimate.com", "codecov.io", "coveralls.io", "david-dm.org", "deepscan.io", "dev.azure.com", "flat.badgen.net", "gemnasium.com", "githost.io", "gitlab.com", "godoc.org", "goreportcard.com", "img.shields.io", "isitmaintained.com", "marketplace.visualstudio.com", "nodesecurity.io", "opencollective.com", "snyk.io", "travis-ci.com", "travis-ci.org", "visualstudio.com", "vsmarketplacebadge.apphb.com", "www.bithound.io", "www.versioneye.com"])'
updateUrl='setpath(["updateUrl"]; "https://vscodium.now.sh")'
releaseNotesUrl='setpath(["releaseNotesUrl"]; "https://go.microsoft.com/fwlink/?LinkID=533483#vscode")'
keyboardShortcutsUrlMac='setpath(["keyboardShortcutsUrlMac"]; "https://go.microsoft.com/fwlink/?linkid=832143")'
keyboardShortcutsUrlLinux='setpath(["keyboardShortcutsUrlLinux"]; "https://go.microsoft.com/fwlink/?linkid=832144")'
keyboardShortcutsUrlWin='setpath(["keyboardShortcutsUrlWin"]; "https://go.microsoft.com/fwlink/?linkid=832145")'
quality='setpath(["quality"]; "stable")'
extensionsGallery='setpath(["extensionsGallery"]; {"serviceUrl": "https://open-vsx.org/vscode/gallery", "itemUrl": "https://open-vsx.org/vscode/item"})'
linkProtectionTrustedDomains='setpath(["linkProtectionTrustedDomains"]; ["https://open-vsx.org"])'
nameShort='setpath(["nameShort"]; "VSCodium")'
nameLong='setpath(["nameLong"]; "VSCodium")'
linuxIconName='setpath(["linuxIconName"]; "vscodium")'
applicationName='setpath(["applicationName"]; "codium")'
win32MutexName='setpath(["win32MutexName"]; "vscodium")'
win32DirName='setpath(["win32DirName"]; "VSCodium")'
win32NameVersion='setpath(["win32NameVersion"]; "VSCodium")'
win32RegValueName='setpath(["win32RegValueName"]; "VSCodium")'
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", "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}"
cat product.json.bak | jq "${product_json_changes}" > product.json
cat product.json
../undo_telemetry.sh
if [[ "$OS_NAME" == "linux" ]]; 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/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.

View File

@@ -0,0 +1,11 @@
#!/bin/sh
HERE="$(dirname "$(readlink -f "${0}")")"
export UNION_PRELOAD="${HERE}"
export PATH="${HERE}"/usr/bin/:"${HERE}"/usr/sbin/:"${HERE}"/usr/games/:"${HERE}"/bin/:"${HERE}"/sbin/:"${PATH}"
export LD_LIBRARY_PATH="${HERE}"/usr/lib/:"${HERE}"/usr/lib/i386-linux-gnu/:"${HERE}"/usr/lib/x86_64-linux-gnu/:"${HERE}"/usr/lib32/:"${HERE}"/usr/lib64/:"${HERE}"/lib/:"${HERE}"/lib/i386-linux-gnu/:"${HERE}"/lib/x86_64-linux-gnu/:"${HERE}"/lib32/:"${HERE}"/lib64/:"${LD_LIBRARY_PATH}"
export XDG_DATA_DIRS="${HERE}"/usr/share/:"${XDG_DATA_DIRS}"
export PERLLIB="${HERE}"/usr/share/perl5/:"${HERE}"/usr/lib/perl5/:"${PERLLIB}"
export GSETTINGS_SCHEMA_DIR="${HERE}"/usr/share/glib-2.0/schemas/:"${GSETTINGS_SCHEMA_DIR}"
export QT_PLUGIN_PATH="${HERE}"/usr/lib/qt4/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib32/qt4/plugins/:"${HERE}"/usr/lib64/qt4/plugins/:"${HERE}"/usr/lib/qt5/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib32/qt5/plugins/:"${HERE}"/usr/lib64/qt5/plugins/:"${QT_PLUGIN_PATH}"
EXEC=$(grep -e '^Exec=.*' "${HERE}"/*.desktop | head -n 1 | cut -d "=" -f 2- | sed -e 's|%.||g')
exec ${EXEC} "$@"

View File

@@ -0,0 +1,349 @@
# This file is supposed to be sourced by each Recipe
# that wants to use the functions contained herein
# like so:
# wget -q https://github.com/AppImage/AppImages/raw/${PKG2AICOMMIT}/functions.sh -O ./functions.sh
# . ./functions.sh
# RECIPE=$(realpath "$0")
# Specify a certain commit if you do not want to use master
# by using:
# export PKG2AICOMMIT=<git sha>
if [ -z "$PKG2AICOMMIT" ] ; then
PKG2AICOMMIT=master
fi
# Options for apt-get to use local files rather than the system ones
OPTIONS="-o Debug::NoLocking=1
-o APT::Cache-Limit=125829120
-o Dir::Etc::sourcelist=./sources.list
-o Dir::State=./tmp
-o Dir::Cache=./tmp
-o Dir::State::status=./status
-o Dir::Etc::sourceparts=-
-o APT::Get::List-Cleanup=0
-o APT::Get::AllowUnauthenticated=1
-o Debug::pkgProblemResolver=true
-o Debug::pkgDepCache::AutoInstall=true
-o APT::Install-Recommends=0
-o APT::Install-Suggests=0
"
# Detect if we are running inside Docker
grep docker /proc/1/cgroup >/dev/null && export DOCKER_BUILD=1 || true
# Detect system architecture to know which binaries of AppImage tools
# should be downloaded and used.
case "$(uname -i)" in
x86_64|amd64)
# echo "x86-64 system architecture"
SYSTEM_ARCH="x86_64";;
i?86)
# echo "x86 system architecture"
SYSTEM_ARCH="i686";;
# arm*)
# echo "ARM system architecture"
# SYSTEM_ARCH="";;
unknown|AuthenticAMD|GenuineIntel)
# uname -i not answer on debian, then:
case "$(uname -m)" in
x86_64|amd64)
# echo "x86-64 system architecture"
SYSTEM_ARCH="x86_64";;
i?86)
# echo "x86 system architecture"
SYSTEM_ARCH="i686";;
esac ;;
*)
echo "Unsupported system architecture"
exit 1;;
esac
# Either get the file from remote or from a static place.
# critical for builds without network access like in Open Build Service
cat_file_from_url()
{
cat_excludelist="wget -q $1 -O -"
[ -e "$STATIC_FILES/${1##*/}" ] && cat_excludelist="cat $STATIC_FILES/${1##*/}"
$cat_excludelist
}
git_pull_rebase_helper()
{
git reset --hard HEAD
git pull
}
# Patch /usr to ././ in ./usr
# to make the contents of usr/ relocateable
# (this requires us to cd ./usr before running the application; AppRun does that)
patch_usr()
{
find usr/ -type f -executable -exec sed -i -e "s|/usr|././|g" {} \;
}
# Download AppRun and make it executable
get_apprun()
{
cp ${HERE}/AppRun .
chmod a+x AppRun
}
# Copy the library dependencies of all exectuable files in the current directory
# (it can be beneficial to run this multiple times)
copy_deps()
{
PWD=$(readlink -f .)
FILES=$(find . -type f -executable -or -name *.so.* -or -name *.so | sort | uniq )
for FILE in $FILES ; do
ldd "${FILE}" | grep "=>" | awk '{print $3}' | xargs -I '{}' echo '{}' >> DEPSFILE
done
DEPS=$(cat DEPSFILE | sort | uniq)
for FILE in $DEPS ; do
if [ -e $FILE ] && [[ $(readlink -f $FILE)/ != $PWD/* ]] ; then
cp -v --parents -rfL $FILE ./ || true
fi
done
rm -f DEPSFILE
}
# Move ./lib/ tree to ./usr/lib/
move_lib()
{
mkdir -p ./usr/lib ./lib && find ./lib/ -exec cp -v --parents -rfL {} ./usr/ \; && rm -rf ./lib
mkdir -p ./usr/lib ./lib64 && find ./lib64/ -exec cp -v --parents -rfL {} ./usr/ \; && rm -rf ./lib64
}
# Delete blacklisted files
delete_blacklisted()
{
BLACKLISTED_FILES=$(cat_file_from_url https://github.com/AppImage/pkg2appimage/raw/${PKG2AICOMMIT}/excludelist | sed 's|#.*||g')
echo $BLACKLISTED_FILES
for FILE in $BLACKLISTED_FILES ; do
FILES="$(find . -name "${FILE}" -not -path "./usr/optional/*")"
for FOUND in $FILES ; do
rm -vf "$FOUND" "$(readlink -f "$FOUND")"
done
done
# Do not bundle developer stuff
rm -rf usr/include || true
rm -rf usr/lib/cmake || true
rm -rf usr/lib/pkgconfig || true
find . -name '*.la' | xargs -i rm {}
}
# Echo highest glibc version needed by the executable files in the current directory
glibc_needed()
{
find . -name *.so -or -name *.so.* -or -type f -executable -exec strings {} \; | grep ^GLIBC_2 | sed s/GLIBC_//g | sort --version-sort | uniq | tail -n 1
# find . -name *.so -or -name *.so.* -or -type f -executable -exec readelf -s '{}' 2>/dev/null \; | sed -n 's/.*@GLIBC_//p'| awk '{print $1}' | sort --version-sort | tail -n 1
}
# Add desktop integration
# Usage: get_desktopintegration name_of_desktop_file_and_exectuable
get_desktopintegration()
{
# REALBIN=$(grep -o "^Exec=.*" *.desktop | sed -e 's|Exec=||g' | cut -d " " -f 1 | head -n 1)
# cat_file_from_url https://raw.githubusercontent.com/AppImage/AppImageKit/deprecated/AppImageAssistant/desktopintegration > ./usr/bin/$REALBIN.wrapper
# chmod a+x ./usr/bin/$REALBIN.wrapper
echo "The desktopintegration script is deprecated. Please advise users to use https://github.com/AppImage/appimaged instead."
# sed -i -e "s|^Exec=$REALBIN|Exec=$REALBIN.wrapper|g" $1.desktop
}
# Generate AppImage; this expects $ARCH, $APP and $VERSION to be set
generate_appimage()
{
# Download AppImageAssistant
URL="https://github.com/AppImage/AppImageKit/releases/download/6/AppImageAssistant_6-${SYSTEM_ARCH}.AppImage"
wget -c "$URL" -O AppImageAssistant
chmod a+x ./AppImageAssistant
# if [[ "$RECIPE" == *ecipe ]] ; then
# echo "#!/bin/bash -ex" > ./$APP.AppDir/Recipe
# echo "# This recipe was used to generate this AppImage." >> ./$APP.AppDir/Recipe
# echo "# See http://appimage.org for more information." >> ./$APP.AppDir/Recipe
# echo "" >> ./$APP.AppDir/Recipe
# cat $RECIPE >> ./$APP.AppDir/Recipe
# fi
#
# Detect the architecture of what we are packaging.
# The main binary could be a script, so let's use a .so library
BIN=$(find . -name *.so* -type f | head -n 1)
INFO=$(file "$BIN")
if [ -z $ARCH ] ; then
if [[ $INFO == *"x86-64"* ]] ; then
ARCH=x86_64
elif [[ $INFO == *"i686"* ]] ; then
ARCH=i686
elif [[ $INFO == *"armv6l"* ]] ; then
ARCH=armhf
else
echo "Could not automatically detect the architecture."
echo "Please set the \$ARCH environment variable."
exit 1
fi
fi
mkdir -p ../out || true
rm ../out/$APP"-"$VERSION".glibc"$GLIBC_NEEDED"-"$ARCH".AppImage" 2>/dev/null || true
GLIBC_NEEDED=$(glibc_needed)
./AppImageAssistant --appimage-extract-and-run ./$APP.AppDir/ ../out/$APP"-"$VERSION".glibc"$GLIBC_NEEDED"-"$ARCH".AppImage"
}
# Generate AppImage type 2
# Additional parameters given to this routine will be passed on to appimagetool
#
# If the environment variable NO_GLIBC_VERSION is set, the required glibc version
# will not be added to the AppImage filename
generate_type2_appimage()
{
# Get the ID of the last successful build on Travis CI
# ID=$(wget -q https://api.travis-ci.org/repos/AppImage/appimagetool/builds -O - | head -n 1 | sed -e 's|}|\n|g' | grep '"result":0' | head -n 1 | sed -e 's|,|\n|g' | grep '"id"' | cut -d ":" -f 2)
# Get the transfer.sh URL from the logfile of the last successful build on Travis CI
# Only Travis knows why build ID and job ID don't match and why the above doesn't give both...
# URL=$(wget -q "https://s3.amazonaws.com/archive.travis-ci.org/jobs/$((ID+1))/log.txt" -O - | grep "https://transfer.sh/.*/appimagetool" | tail -n 1 | sed -e 's|\r||g')
# if [ -z "$URL" ] ; then
# URL=$(wget -q "https://s3.amazonaws.com/archive.travis-ci.org/jobs/$((ID+2))/log.txt" -O - | grep "https://transfer.sh/.*/appimagetool" | tail -n 1 | sed -e 's|\r||g')
# fi
if [ -z "$(which appimagetool)" ] ; then
URL="https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-${SYSTEM_ARCH}.AppImage"
wget -c "$URL" -O appimagetool
chmod a+x ./appimagetool
appimagetool=$(readlink -f appimagetool)
else
appimagetool=$(which appimagetool)
fi
if [ "$DOCKER_BUILD" ]; then
appimagetool_tempdir=$(mktemp -d)
mv appimagetool "$appimagetool_tempdir"
pushd "$appimagetool_tempdir" &>/dev/null
ls -al
./appimagetool --appimage-extract
rm appimagetool
appimagetool=$(readlink -f squashfs-root/AppRun)
popd &>/dev/null
_appimagetool_cleanup() { [ -d "$appimagetool_tempdir" ] && rm -r "$appimagetool_tempdir"; }
trap _appimagetool_cleanup EXIT
fi
if [ -z ${NO_GLIBC_VERSION+true} ]; then
GLIBC_NEEDED=$(glibc_needed)
VERSION_EXPANDED=$VERSION.glibc$GLIBC_NEEDED
else
VERSION_EXPANDED=$VERSION
fi
set +x
GLIBC_NEEDED=$(glibc_needed)
if ( [ ! -z "$KEY" ] ) && ( ! -z "$TRAVIS" ) ; then
wget https://github.com/AppImage/AppImageKit/files/584665/data.zip -O data.tar.gz.gpg
( set +x ; echo $KEY | gpg2 --batch --passphrase-fd 0 --no-tty --skip-verify --output data.tar.gz --decrypt data.tar.gz.gpg )
tar xf data.tar.gz
sudo chown -R $USER .gnu*
mv $HOME/.gnu* $HOME/.gnu_old ; mv .gnu* $HOME/
VERSION=$VERSION_EXPANDED "$appimagetool" $@ -n -s --bintray-user $BINTRAY_USER --bintray-repo $BINTRAY_REPO -v ./$APP.AppDir/
else
VERSION=$VERSION_EXPANDED "$appimagetool" $@ -n --bintray-user $BINTRAY_USER --bintray-repo $BINTRAY_REPO -v ./$APP.AppDir/
fi
set -x
mkdir -p ../out/ || true
mv *.AppImage* ../out/
}
# Generate status file for use by apt-get; assuming that the recipe uses no newer
# ingredients than what would require more recent dependencies than what we assume
# to be part of the base system
generate_status()
{
mkdir -p ./tmp/archives/
mkdir -p ./tmp/lists/partial
touch tmp/pkgcache.bin tmp/srcpkgcache.bin
if [ -e "${HERE}/usr/share/pkg2appimage/excludedeblist" ] ; then
EXCLUDEDEBLIST="${HERE}/usr/share/pkg2appimage/excludedeblist"
else
wget -q -c "https://github.com/AppImage/AppImages/raw/${PKG2AICOMMIT}/excludedeblist"
EXCLUDEDEBLIST=excludedeblist
fi
rm status 2>/dev/null || true
for PACKAGE in $(cat excludedeblist | cut -d "#" -f 1) ; do
printf "Package: $PACKAGE\nStatus: install ok installed\nArchitecture: all\nVersion: 9:999.999.999\n\n" >> status
done
}
# Find the desktop file and copy it to the AppDir
get_desktop()
{
find usr/share/applications -iname "*${LOWERAPP}.desktop" -exec cp {} . \; || true
}
fix_desktop() {
# fix trailing semicolons
for key in Actions Categories Implements Keywords MimeType NotShowIn OnlyShowIn; do
sed -i '/'"$key"'.*[^;]$/s/$/;/' $1
done
}
# Find the icon file and copy it to the AppDir
get_icon()
{
find ./usr/share/pixmaps/$LOWERAPP.png -exec cp {} . \; 2>/dev/null || true
find ./usr/share/icons -path *64* -name $LOWERAPP.png -exec cp {} . \; 2>/dev/null || true
find ./usr/share/icons -path *128* -name $LOWERAPP.png -exec cp {} . \; 2>/dev/null || true
find ./usr/share/icons -path *512* -name $LOWERAPP.png -exec cp {} . \; 2>/dev/null || true
find ./usr/share/icons -path *256* -name $LOWERAPP.png -exec cp {} . \; 2>/dev/null || true
ls -lh $LOWERAPP.png || true
}
# Find out the version
get_version()
{
THEDEB=$(find ../*.deb -name $LOWERAPP"_*" | head -n 1)
if [ -z "$THEDEB" ] ; then
echo "Version could not be determined from the .deb; you need to determine it manually"
fi
VERSION=$(echo $THEDEB | cut -d "~" -f 1 | cut -d "_" -f 2 | cut -d "-" -f 1 | sed -e 's|1%3a||g' | sed -e 's|.dfsg||g' )
echo $VERSION
}
# transfer.sh
transfer() { if [ $# -eq 0 ]; then echo "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi
tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile; }
# Patch binary files; fill with padding if replacement is shorter than original
# http://everydaywithlinux.blogspot.de/2012/11/patch-strings-in-binary-files-with-sed.html
# Example: patch_strings_in_file foo "/usr/local/lib/foo" "/usr/lib/foo"
patch_strings_in_file() {
local FILE="$1"
local PATTERN="$2"
local REPLACEMENT="$3"
# Find all unique strings in FILE that contain the pattern
STRINGS=$(strings ${FILE} | grep ${PATTERN} | sort -u -r)
if [ "${STRINGS}" != "" ] ; then
echo "File '${FILE}' contain strings with '${PATTERN}' in them:"
for OLD_STRING in ${STRINGS} ; do
# Create the new string with a simple bash-replacement
NEW_STRING=${OLD_STRING//${PATTERN}/${REPLACEMENT}}
# Create null terminated ASCII HEX representations of the strings
OLD_STRING_HEX="$(echo -n ${OLD_STRING} | xxd -g 0 -u -ps -c 256)00"
NEW_STRING_HEX="$(echo -n ${NEW_STRING} | xxd -g 0 -u -ps -c 256)00"
if [ ${#NEW_STRING_HEX} -le ${#OLD_STRING_HEX} ] ; then
# Pad the replacement string with null terminations so the
# length matches the original string
while [ ${#NEW_STRING_HEX} -lt ${#OLD_STRING_HEX} ] ; do
NEW_STRING_HEX="${NEW_STRING_HEX}00"
done
# Now, replace every occurrence of OLD_STRING with NEW_STRING
echo -n "Replacing ${OLD_STRING} with ${NEW_STRING}... "
hexdump -ve '1/1 "%.2X"' ${FILE} | \
sed "s/${OLD_STRING_HEX}/${NEW_STRING_HEX}/g" | \
xxd -r -p > ${FILE}.tmp
chmod --reference ${FILE} ${FILE}.tmp
mv ${FILE}.tmp ${FILE}
echo "Done!"
else
echo "New string '${NEW_STRING}' is longer than old" \
"string '${OLD_STRING}'. Skipping."
fi
done
fi
}

View File

@@ -0,0 +1,471 @@
#!/usr/bin/env bash
# env
ARCH=x86_64
HERE="$(dirname "$(readlink -f "${0}")")"
# Use privately bundled apt-get and dpkg-deb if available; can be got on trusty using
# apt download apt libapt-pkg4.12 libbz2-1.0 liblzma5 multiarch-support zlib1g dpkg
if [ -e "${HERE}/libunionpreload.so" ] ; then
export UNION_PRELOAD="${HERE}"
export LD_PRELOAD="${HERE}/libunionpreload.so"
export PATH="${HERE}"/usr/bin/:"${HERE}"/usr/sbin/:"${HERE}"/usr/games/:"${HERE}"/bin/:"${HERE}"/sbin/:"${PATH}"
export LD_LIBRARY_PATH="${HERE}"/usr/lib/:"${HERE}"/usr/lib/i386-linux-gnu/:"${HERE}"/usr/lib/x86_64-linux-gnu/:"${HERE}"/usr/lib32/:"${HERE}"/usr/lib64/:"${HERE}"/lib/:"${HERE}"/lib/i386-linux-gnu/:"${HERE}"/lib/x86_64-linux-gnu/:"${HERE}"/lib32/:"${HERE}"/lib64/:"${LD_LIBRARY_PATH}"
export XDG_DATA_DIRS="${HERE}"/usr/share/:"${XDG_DATA_DIRS}"
fi
# Specify a certain commit if you do not want to use master
# by using:
# export PKG2AICOMMIT=<git sha>
if [ -z "$PKG2AICOMMIT" ] ; then
PKG2AICOMMIT=master
fi
usage() {
if [ -z "$APPIMAGE" ] ; then
MYSELF="$0"
else
MYSELF="$APPIMAGE"
fi
echo "usage:"
echo " $MYSELF [--no-di] META-NAME|YAMLFILE"
echo ""
echo "options:"
echo " --di enable legacy desktop integration (unsupported)"
exit 1
}
if [ $# -eq 0 ] || [ "x${!#}" = "x--di" ] ; then
usage
fi
if [ $# -eq 2 ] && [ "x$1" != "x--di" ] ; then
usage
fi
if [ "x$1" = "x--di" ] ; then
ENABLE_DI="yes"
else
ENABLE_DI="no"
fi
# Halt on errors
set -e
set -x
# Check dependencies
which wget >/dev/null 2>&1 || ( echo wget missing && exit 1 )
which grep >/dev/null 2>&1 || ( echo grep missing && exit 1 )
which sed >/dev/null 2>&1 || ( echo sed missing && exit 1 )
which cut >/dev/null 2>&1 || ( echo cut missing && exit 1 )
which file >/dev/null 2>&1 || ( echo file missing && exit 1 )
which desktop-file-validate >/dev/null 2>&1 || ( echo desktop-file-validate missing && exit 1 )
# If the yaml file doesn't exist locally, get it from GitHub
if [ ! -f "${!#}" ] ; then
YAMLFILE=/tmp/_recipe.yml
rm -f "$YAMLFILE"
wget -q "https://github.com/AppImage/AppImages/raw/${PKG2AICOMMIT}/recipes/${!#}.yml" -O "$YAMLFILE"
else
YAMLFILE=$(readlink -f "${!#}")
fi
# Lightweight bash-only dpkg-scanpackages replacement
scanpackages() {
for deb in *.deb ; do
dpkg -I $deb | sed 's/^ *//g' | grep -i -E '(package|version|installed-size|architecture|depends|priority):'
echo "Filename: $(readlink -f $deb)"
echo "MD5sum: $(md5sum -b $deb | cut -d' ' -f1)"
echo "SHA1: $(sha1sum -b $deb | cut -d' ' -f1)"
echo "SHA256: $(sha256sum -b $deb | cut -d' ' -f1)"
echo
done
}
# Function to parse yaml
# https://gist.github.com/epiloque/8cf512c6d64641bde388
# based on https://gist.github.com/pkuczynski/8665367
parse_yaml() {
local prefix=$2
local s
local w
local fs
s='[[:blank:]]*'
w='[a-zA-Z0-9_]*'
fs="$(echo @|tr @ '\034')"
sed -ne "s|^\($s\)\($w\)$s:$s\"\(.*\)\"$s\$|\1$fs\2$fs\3|p" \
-e "s|^\($s\)\($w\)$s[:-]$s\(.*\)$s\$|\1$fs\2$fs\3|p" "$1" |
awk -F"$fs" '{
indent = length($1)/2;
vname[indent] = $2;
for (i in vname) {if (i > indent) {delete vname[i]}}
if (length($3) > 0) {
vn=""; for (i=0; i<indent; i++) {vn=(vn)(vname[i])("_")}
printf("%s%s%s=(\"%s\")\n", "'"$prefix"'",vn, $2, $3);
}
}' | sed 's/_=/+=/g'
}
# Read yaml file
parse_yaml $YAMLFILE "_"
eval $(parse_yaml $YAMLFILE "_")
if [ ! -z $_enable_di ]; then
ENABLE_DI="$_enable_di"
fi
# Execute multiple script lines together as one
# shell_execute filename key_of_group_of_commands
shell_execute() {
if [ -f /tmp/recipe_script ] ; then
rm /tmp/recipe_script
fi
parse_yaml $YAMLFILE "_" | grep "^$2+=" > /tmp/recipe_script
sed -i -e 's|^'$2'+=("||g' /tmp/recipe_script
sed -i -e 's|")$||g' /tmp/recipe_script
bash -ex /tmp/recipe_script
rm /tmp/recipe_script
}
APP=$_app
LOWERAPP=${APP,,}
if [ ! -z $_lowerapp ] ; then
LOWERAPP=$_lowerapp
fi
mkdir -p ./$APP/$APP.AppDir/usr/lib
cd ./$APP/
if [ -d "./$APP.AppDir/" ] ; then
rm -rf ./$APP.AppDir/
fi
# Source the bundled functions.sh if it exists
# in "${HERE}/usr/share/pkg2appimage/functions.sh"
# or source a user-provided functions.sh if the environment
# variable FUNCTIONS_SH was set and the file exists
if [ -e "${HERE}/usr/share/pkg2appimage/functions.sh" ] ; then
. "${HERE}/usr/share/pkg2appimage/functions.sh"
elif [ -z "$FUNCTIONS_SH" ] ; then
if [ ! -e "${HERE}/functions.sh" ] ; then
echo "functions.sh IS NOT FOUND, PLEASE CONTACT CODIUM APPIMAGE MAINTAINER!!!"
fi
cp ${HERE}/functions.sh ./functions.sh
. ./functions.sh
else
if [ -e "$FUNCTIONS_SH" ] ; then
. "$FUNCTIONS_SH"
fi
fi
# If there is an ARCH environment variable, then use that
# architecture to for apt-get. Not that for the AppImage to be
# operable, we also need to embed a matching AppImage runtime
# and ingredients of that architecture. Debian packages
# should be available for most architectures, e.g., oldstable
# has "armhf"
if [ ! -z $ARCH ] ; then
OPTIONS="$OPTIONS -o APT::Architecture=$ARCH"
fi
if [ ! -z "${_ingredients_ghreleases[0]}" ] ; then
for GHREPO in "${_ingredients_ghreleases[@]}" ; do
wget -q "https://github.com/${GHREPO}/releases/" -O /tmp/gh-release.html
DEB=$(cat /tmp/gh-release.html | grep ".deb" | grep x86_64 | head -n 1 | cut -d '"' -f 2)
if [ -z "$DEB" ] ; then
DEB=$(cat /tmp/gh-release.html | grep ".deb" | grep amd64 | head -n 1 | cut -d '"' -f 2)
fi
if [ -z "$DEB" ] ; then
DEB=$(cat /tmp/gh-release.html | grep ".deb" | grep x64 | head -n 1 | cut -d '"' -f 2)
fi
if [ -z "$DEB" ] ; then
DEB=$(cat /tmp/gh-release.html | grep ".deb" | grep linux64 | head -n 1 | cut -d '"' -f 2)
fi
rm /tmp/gh-release.html
wget -c "https://github.com/${DEB}"
done
fi
if [ ! -z "${_ingredients_dist}" ] ; then
rm status 2>/dev/null || true
generate_status
# Some packages depend on packages which we do not want to bundle,
# in addition to the global excludes defined in excludedeblist.
# Use
# ingredients:
# exclude:
# - packagename
if [ ! -z "${_ingredients_exclude[0]}" ] ; then
for PACKAGE in "${_ingredients_exclude[@]}" ; do
printf "Package: $PACKAGE\nStatus: install ok installed\nArchitecture: all\nVersion: 9:999.999.999\n\n" >> status
done
fi
# Some packages depend on an exact version of a dependency to be installed.
# Use
# ingredients:
# pretend:
# - packagename version_to_be_pretended
if [ ! -z "${_ingredients_pretend[0]}" ] ; then
for PRETEND in "${_ingredients_pretend[@]}" ; do
P_PKG=$(echo "$PRETEND" | cut -d " " -f 1)
P_VER=$(echo "$PRETEND" | cut -d " " -f 2)
cat status | tr '\n' '@' | sed -e 's|@@|\n\n|g' | sed -e 's|Package: '"$P_PKG"'@Status: install ok installed@Architecture: all@Version: 9:999.999.999|Package: '"$P_PKG"'@Status: install ok installed@Architecture: all@Version: '"$P_VER"'|g' | sed -e 's|@|\n|g' > status.temp
mv status.temp status
done
fi
if [ -e sources.list ] ; then
rm sources.list
fi
for SOURCE in "${_ingredients_sources[@]}" ; do
echo "${SOURCE}" >> sources.list
done
for PPA in "${_ingredients_ppas[@]}" ; do
echo "deb http://ppa.launchpad.net/${PPA}/ubuntu ${_ingredients_dist} main" >> sources.list
done
for DEBFILE in "${_ingredients_debs[@]}" ; do
cp ${DEBFILE} .
done
# Use libcurl-slim to reduce AppImage size, thanks darealshinji
# Not really compiled on xenial but CentOS 6, https://github.com/AppImage/AppImages/issues/187
echo "deb http://ppa.launchpad.net/djcj/libcurl-slim/ubuntu xenial main" >> sources.list
# Use gnutls-patched to have libgnutls look in various distributions' places for certificates,
# https://github.com/darealshinji/vlc-AppImage/issues/1#issuecomment-321041496
# echo "deb http://ppa.launchpad.net/djcj/gnutls-patched/ubuntu ${_ingredients_dist} main" >> sources.list
### echo "deb http://ppa.launchpad.net/djcj/gnutls-patched/ubuntu trusty main" >> sources.list # https://github.com/AppImage/pkg2appimage/issues/345
fi
if [ ! -z "${_ingredients_script[0]}" ] ; then
# Execute extra steps defined in recipe
shell_execute $YAMLFILE _ingredients_script
fi
if [ ! -z "${_ingredients_dist}" ] ; then
# Some projects provide raw .deb files without a repository
# hence we create our own local repository as part of
# the AppImage creation process in order to "install"
# the package using apt-get as normal
if [ ! -z "${_ingredients_debs[0]}" ] ; then
for DEB in "${_ingredients_debs[@]}" ; do
if [ ! -f $(basename "$DEB") ] ; then
wget -c $DEB
fi
done
fi
scanpackages | gzip -9c > Packages.gz
echo "deb file:$(readlink -e $PWD) ./" >> sources.list
INSTALL=$LOWERAPP
if [ ! -z "${_ingredients_package}" ] ; then
INSTALL="${_ingredients_package}"
fi
if [ ! -z "${_ingredients_packages}" ] ; then
INSTALL=""
fi
# If packages are specifically listed, only install these, not a package with the name of the app
if [ ! -z "${_ingredients_packages[0]}" ] ; then
INSTALL=${_ingredients_packages[@]}
fi
apt-get -o Acquire::AllowInsecureRepositories=true -o Acquire::Languages="none" -o Acquire::AllowDowngradeToInsecureRepositories=true $OPTIONS update || true
URLS=$(apt-get --allow-unauthenticated -o Apt::Get::AllowUnauthenticated=true $OPTIONS -y install --print-uris $INSTALL | cut -d "'" -f 2 | grep -e "^http") || true
if which aria2c &>/dev/null; then
dltool=aria2c
else
dltool=wget
fi
$dltool -c -i- <<<"$URLS"
fi
if [ ! -z "${_ingredients_post_script[0]}" ] ; then
# Execute extra steps defined in recipe
shell_execute $YAMLFILE _ingredients_post_script
fi
mkdir -p ./$APP.AppDir/
cd ./$APP.AppDir/
mkdir -p usr/bin usr/lib
find ../*.deb -exec dpkg-deb -X {} . \; || true
unset LD_PRELOAD
# Try to copy icons to standard locations where appimaged can pick them up
mkdir -p usr/share/icons/hicolor/{22x22,24x24,32x32,48x48,64x64,128x128,256x256,512x512}/apps/
find . -path *icons* -path *22* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/22x22/apps/ \; || true
find . -path *icons* -path *24* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/24x24/apps/ \; || true
find . -path *icons* -path *32* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/32x32/apps/ \; || true
find . -path *icons* -path *48* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/48x48/apps/ \; || true
find . -path *icons* -path *64* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/64x64/apps/ \; || true
find . -path *icons* -path *128* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/128x128/apps/ \; || true
find . -path *icons* -path *256* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/256x256/apps/ \; || true
find . -path *icons* -path *512* -name "*$LOWERAPP*" -exec cp {} usr/share/icons/hicolor/512x512/apps/ \; || true
get_icon
if [ -z "${_union}" ] ; then
get_apprun
else
cat > AppRun <<\EOF
#!/bin/sh
HERE="$(dirname "$(readlink -f "${0}")")"
export UNION_PRELOAD="${HERE}"
export LD_PRELOAD="${HERE}/libunionpreload.so"
export PATH="${HERE}"/usr/bin/:"${HERE}"/usr/sbin/:"${HERE}"/usr/games/:"${HERE}"/bin/:"${HERE}"/sbin/:"${PATH}"
export LD_LIBRARY_PATH="${HERE}"/usr/lib/:"${HERE}"/usr/lib/i386-linux-gnu/:"${HERE}"/usr/lib/x86_64-linux-gnu/:"${HERE}"/usr/lib32/:"${HERE}"/usr/lib64/:"${HERE}"/lib/:"${HERE}"/lib/i386-linux-gnu/:"${HERE}"/lib/x86_64-linux-gnu/:"${HERE}"/lib32/:"${HERE}"/lib64/:"${LD_LIBRARY_PATH}"
export PYTHONPATH="${HERE}"/usr/share/pyshared/:"${PYTHONPATH}"
export PYTHONHOME="${HERE}"/usr/
export XDG_DATA_DIRS="${HERE}"/usr/share/:"${XDG_DATA_DIRS}"
export PERLLIB="${HERE}"/usr/share/perl5/:"${HERE}"/usr/lib/perl5/:"${PERLLIB}"
export GSETTINGS_SCHEMA_DIR="${HERE}"/usr/share/glib-2.0/schemas/:"${GSETTINGS_SCHEMA_DIR}"
export QT_PLUGIN_PATH="${HERE}"/usr/lib/qt4/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt4/plugins/:"${HERE}"/usr/lib32/qt4/plugins/:"${HERE}"/usr/lib64/qt4/plugins/:"${HERE}"/usr/lib/qt5/plugins/:"${HERE}"/usr/lib/i386-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib/x86_64-linux-gnu/qt5/plugins/:"${HERE}"/usr/lib32/qt5/plugins/:"${HERE}"/usr/lib64/qt5/plugins/:"${QT_PLUGIN_PATH}"
EXEC=$(grep -e '^Exec=.*' "${HERE}"/*.desktop | head -n 1 | cut -d "=" -f 2- | sed -e 's|%.||g')
exec ${EXEC} "$@"
EOF
chmod a+x AppRun
fi
get_desktop
# Prevent Qt from loading plugins from the system
unset QTPATH
QTPATH=$(find usr/lib -type d -name qt4 -or -name qt5 | sed -e 's|usr/|../|g')
if [ ! -z $QTPATH ] ; then
cat > usr/bin/qt.conf <<EOF
[Paths]
Prefix = $QTPATH
EOF
fi
# http://www.mono-project.com/docs/advanced/assemblies-and-the-gac/
# At runtime, Mono looks in three places for assemblies necessary
# to run a program. It first searches the location of the executing assembly.
# For this to work without setting $MONO_PATH, we need to move the
# main *.exe to usr/lib/mono/exe, because we move all "assemblies" (sic)
# there in this script
if [ -e usr/lib/mono ] ; then
# Force all so files referenced in config files into LD_LIBRARY_PATH
find . -name "*.dll.config" -exec cat {} > temp \;
# Remove all absolute paths
sed -i -E 's|target=\"\/(.*\/)([a-z0-9].*?)>|target=\"\2>|g' temp
SONAMES=$(cat temp | cut -d '"' -f 4 | grep ".so" || true)
if [ "" != "$SONAMES" ] ; then
for SONAME in $SONAMES; do
find . -name "$SONAME" -exec mv {} usr/lib \;
done
fi
rm temp
PATH_OF_THE_EXE="usr/lib/mono/exe"
mkdir -p "$PATH_OF_THE_EXE"
# Force all dll files into PATH_OF_THE_EXE (or MONO_PATH which we would have to set)
find . -name "*.dll" -and -not -name "mscorlib.dll" -exec mv {} "$PATH_OF_THE_EXE" \;
# Edit all config files in place to remove absolute paths
find . -name "*.dll.config" -exec sed -i -E 's|target=\"\/(.*\/)([a-z0-9].*?)>|target=\"\2>|g' {} \;
# Force all config files into the PATH_OF_THE_EXE (or MONO_PATH which we would have to set)
find . -name "*.dll.config" -exec mv {} "$PATH_OF_THE_EXE" \;
# Remove gac, we are not using it since it is convoluted
rm -rf usr/lib/mono/gac/
fi
if [ -d "./usr/lib/x86_64-linux-gnu/gstreamer-1.0/" ] ; then
mv ./usr/lib/x86_64-linux-gnu/gstreamer-1.0/* ./usr/lib/x86_64-linux-gnu/
rm -r ./usr/lib/x86_64-linux-gnu/gstreamer-1.0
fi
if [ -d "./usr/lib/x86_64-linux-gnu/pulseaudio/" ] ; then
mv ./usr/lib/x86_64-linux-gnu/pulseaudio/* ./usr/lib/x86_64-linux-gnu/
rm -r ./usr/lib/x86_64-linux-gnu/pulseaudio
fi
# Execute extra steps defined in recipe
if [ ! -z "${_script}" ] ; then
shell_execute $YAMLFILE _script
fi
DESKTOP=$(find . -name '*.desktop' | sort | head -n 1)
# desktop-file-validate complains about missing trailing semicolons for some
# keys although the format definition says that they are optional
fix_desktop "$DESKTOP"
# Some non-distribution provided applications have an absolute
# path in the Exec= line which we remove for relocateability
if [ -z "$DESKTOP" ] ; then
echo "desktop file not found, aborting"
exit 1
else
desktop-file-validate "$DESKTOP" || exit 1
ORIG=$(grep -o "^Exec=.*$" "${DESKTOP}" | head -n 1| cut -d " " -f 1)
REPL=$(basename $(grep -o "^Exec=.*$" "${DESKTOP}" | head -n 1 | cut -d " " -f 1 | sed -e 's|Exec=||g'))
sed -i -e 's|'"${ORIG}"'|Exec='"${REPL}"'|g' "${DESKTOP}"
fi
# Compile GLib schemas if the subdirectory is present in the AppImage
# AppRun has to export GSETTINGS_SCHEMA_DIR for this to work
if [ -d usr/share/glib-2.0/schemas/ ] ; then
( cd usr/share/glib-2.0/schemas/ ; glib-compile-schemas . )
fi
if [ -f ../VERSION ] ; then
VERSION=$(cat ../VERSION)
else
get_version || true
fi
# patch_usr
# Patching only the executable files seems not to be enough for some apps
if [ ! -z "${_binpatch}" ] ; then
find usr/ -type f -exec sed -i -e 's|/usr|././|g' {} \;
find usr/ -type f -exec sed -i -e 's@././/bin/env@/usr/bin/env@g' {} \;
fi
# Don't suffer from NIH; use LD_PRELOAD to override calls to /usr paths
if [ ! -z "${_union}" ] ; then
mkdir -p usr/src/
wget -q "https://raw.githubusercontent.com/mikix/deb2snap/master/src/preload.c" -O - | \
sed -e 's|SNAPPY|UNION|g' | sed -e 's|SNAPP|UNION|g' | sed -e 's|SNAP|UNION|g' | \
sed -e 's|snappy|union|g' > usr/src/libunionpreload.c
gcc -shared -fPIC usr/src/libunionpreload.c -o libunionpreload.so -ldl -DUNION_LIBNAME=\"libunionpreload.so\"
strip libunionpreload.so
fi
delete_blacklisted
if [ "$ENABLE_DI" = "yes" ] ; then
get_desktopintegration $LOWERAPP
fi
# Fix desktop files that have file endings for icons
sed -i -e 's|\.png||g' *.desktop || true
sed -i -e 's|\.svg||g' *.desktop || true
sed -i -e 's|\.svgz||g' *.desktop || true
sed -i -e 's|\.xpm||g' *.desktop || true
# Setting PYTHONHOME instead
# Fix Python imports,
# https://github.com/AppImage/AppImages/issues/172
# SITECUSTOMIZEFILES=$(find . -name "sitecustomize.py")
# for SITECUSTOMIZEFILE in $SITECUSTOMIZEFILES ; do
# rm $SITECUSTOMIZEFILE # Remove symlinks, replace by files
# cat > $SITECUSTOMIZEFILE <<\EOF
# import sys,os
# if sys.version_info[0] < 3:
# prefix = os.path.dirname(os.path.dirname(os.path.dirname(os.path.dirname(sys.path[0]))))
# sys.path = [ prefix+s for s in sys.path if not s.startswith(prefix) ]
# EOF
# done
# Execute extra steps defined in recipe
if [ ! -z "${_post_script[0]}" ] ; then
shell_execute $YAMLFILE _post_script
fi
# Go out of AppImage
cd ..
generate_type2_appimage -u "gh-releases-zsync|VSCodium|vscodium|latest|*.AppImage.zsync"
ls -lh ../out/*.AppImage*

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 335 KiB

After

Width:  |  Height:  |  Size: 163 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 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: 4.7 KiB

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 154 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 148 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 152 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 361 KiB

After

Width:  |  Height:  |  Size: 150 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.7 KiB

30
sum.sh Executable file
View File

@@ -0,0 +1,30 @@
#!/bin/bash
npm install -g checksum
sum_file () {
if [[ -f "$1" ]]; then
checksum -a sha256 "$1" > "$1".sha256
checksum "$1" > "$1".sha1
fi
}
if [[ "$SHOULD_BUILD" == "yes" ]]; then
if [[ "$OS_NAME" == "osx" ]]; then
sum_file VSCodium-darwin-*.zip
sum_file VSCodium*.dmg
elif [[ "$OS_NAME" == "windows" ]]; then
sum_file VSCodiumSetup-*.exe
sum_file VSCodiumUserSetup-*.exe
sum_file VSCodium-win32-*.zip
else # linux
cp out/*.AppImage* .
cp vscode/.build/linux/deb/*/deb/*.deb .
cp vscode/.build/linux/rpm/*/*.rpm .
sum_file *.AppImage
sum_file VSCodium-linux*.tar.gz
sum_file *.deb
sum_file *.rpm
fi
fi

View File

@@ -3,7 +3,7 @@
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
if [[ "$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

49
update_settings.sh Executable file
View File

@@ -0,0 +1,49 @@
DEFAULT_TRUE="'default': true"
DEFAULT_FALSE="'default': false"
TELEMETRY_ENABLE="'telemetry.enableTelemetry':"
TELEMETRY_CRASH_REPORTER="'telemetry.enableCrashReporter':"
replace () {
echo $1
if [[ "$OS_NAME" == "osx" ]]; then
sed -i '' -E "$1" $2
else
sed -i -E "$1" $2
fi
}
update_setting () {
local FILENAME="$2"
# check that the file exists
if [ ! -f $FILENAME ]; then
echo "File to update setting in does not exist ${FILENAME}"
return
fi
# go through lines of file, looking for block that contains setting
local SETTING="$1"
local LINE_NUM=0
while read -r line; do
local LINE_NUM=$(( $LINE_NUM + 1 ))
if [[ $line == *"$SETTING"* ]]; then
local IN_SETTING=1
fi
if [[ $line == *"$DEFAULT_TRUE"* && "$IN_SETTING" == "1" ]]; then
local FOUND=1
break
fi
done < $FILENAME
if [[ "$FOUND" != "1" ]]; then
echo "$DEFAULT_TRUE not found for setting $SETTING in file $FILENAME"
return
fi
# construct line-aware replacement string
local DEFAULT_TRUE_TO_FALSE="${LINE_NUM}s/${DEFAULT_TRUE}/${DEFAULT_FALSE}/"
replace "$DEFAULT_TRUE_TO_FALSE" $FILENAME
}
update_setting "$TELEMETRY_ENABLE" src/vs/platform/telemetry/common/telemetryService.ts
update_setting "$TELEMETRY_CRASH_REPORTER" src/vs/workbench/electron-sandbox/desktop.contribution.ts

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