Compare commits

...

666 Commits

Author SHA1 Message Date
VSCodium CI
eea73cb564 build(stable): update to commit 8b37750 2024-01-19 19:14:48 +01:00
Baptiste Augrain
6ada8c9026 ci: add user/email for merge [skip ci] 2023-12-17 19:41:35 +01:00
Baptiste Augrain
1c424b6c05 ci: do not commit PR testing [skip ci] 2023-12-17 19:28:39 +01:00
Baptiste Augrain
8168609ee9 ci: do not commit PR testing [skip ci] 2023-12-17 19:19:19 +01:00
Baptiste Augrain
24aafd81b9 ci: unshallow for PR testing [skip ci] 2023-12-17 19:15:12 +01:00
Baptiste Augrain
508642510a ci: skip message for merge [skip ci] 2023-12-17 18:47:41 +01:00
Baptiste Augrain
ef4d13a0c6 ci: merge PR with main branch [skip ci] 2023-12-17 18:42:23 +01:00
Baptiste Augrain
f09882677b ci: disable PR for dependencies [skip ci] 2023-12-17 18:21:55 +01:00
Baptiste Augrain
0952b2f0dc ci: checkout PR [skip ci] 2023-12-17 18:13:34 +01:00
Baptiste Augrain
0d7ded33f3 ci: checkout PR with git commands [skip ci] 2023-12-17 18:00:43 +01:00
Baptiste Augrain
40c487fcf9 ci: generate assets for a pr [skip ci] 2023-12-17 00:30:20 +01:00
VSCodium CI
01f2c461ad build(stable): update to commit 0ee08df 2023-12-14 21:19:46 +01:00
Baptiste Augrain
56e99f2989 fix: update commit msg and branch name [skip ci] 2023-12-14 21:11:53 +01:00
dependabot[bot]
e159da782a build(deps): bump actions/setup-python from 4 to 5 (#1758) 2023-12-11 14:45:10 +01:00
dependabot[bot]
ae0d209284 build(deps): bump actions/stale from 8 to 9 (#1759) 2023-12-11 14:06:44 +01:00
Baptiste Augrain
d6d31a6443 ci(linux): use node-v18 (#1754) 2023-12-09 23:30:17 +01:00
Baptiste Augrain
f3a832f6cb feat(1.85.0): update patches 2023-12-08 20:38:04 +01:00
dependabot[bot]
9cfdb0fa14 build(deps): bump dessant/lock-threads from 4 to 5 (#1734) 2023-11-20 14:29:42 +01:00
Mizux
48f5958d8b docs: add vscode link (#1730)
Add link to microsoft/vscode repo to easily find original source.
2023-11-16 10:22:09 +01:00
Baptiste Augrain
b0c823fc07 ci: streamline insider dispatch [skip ci] 2023-11-15 23:31:19 +01:00
Baptiste Augrain
4de18fae52 build: add spearhead checking [skip ci] 2023-11-15 22:41:07 +01:00
Baptiste Augrain
5039d2d09b ci: disable slow cache [skip ci] 2023-11-15 22:33:43 +01:00
Baptiste Augrain
8bb53bf173 ci: add single event to dispatch all build [skip ci] 2023-11-15 22:30:37 +01:00
Baptiste Augrain
8606615423 fix: make prepare_src.sh executable [skip ci] 2023-11-15 22:02:08 +01:00
Baptiste Augrain
efca1a2c2c fix: don't checkout insider for stable [skip ci] 2023-11-15 20:45:18 +01:00
Baptiste Augrain
3b1a4e39c6 build: add debug [skip ci] 2023-11-15 20:28:00 +01:00
Baptiste Augrain
40b1d413f5 fix: workflow name [skip ci] 2023-11-15 17:33:27 +01:00
Baptiste Augrain
b8eac1f27b feat: notarize commit id (#1728) 2023-11-15 17:31:04 +01:00
Baptiste Augrain
dfc41b2911 fix(windows): disable background update for MSI (#1722) 2023-11-13 13:40:07 +01:00
Baptiste Augrain
fbeaf45cdb feat(1.84.2): fix patch (#1715) 2023-11-10 14:23:58 +01:00
Baptiste Augrain
6748d842bb build: skip setup-python on self-hosted runner 2023-11-10 13:33:29 +01:00
Baptiste Augrain
e658a1cf0b build: use specific python version 2023-11-07 19:24:04 +01:00
Max Kratz
f3a6b9555b docs: fixes typos (#1714) 2023-11-07 19:20:49 +01:00
Baptiste Augrain
ce52a2931b feat: disable cloud (#1709) 2023-11-02 10:05:07 +01:00
Baptiste Augrain
6868dc47cd Merge branch 'insider' 2023-11-02 09:59:29 +01:00
Baptiste Augrain
f470320501 docs: reorganize docs pages and CONTRIBUTING.md (#1705) 2023-11-02 09:36:13 +01:00
Baptiste Augrain
7580fb767a fix: always add platform info for windows (#1707) 2023-10-31 14:49:34 +01:00
Baptiste Augrain
49583eb39d feat: prepare for 1.85 (#1706) 2023-10-31 12:39:06 +01:00
Ahhj93
f1fa60db6d Update DOCS.md (#1679) 2023-10-13 21:44:11 +03:00
Baptiste Augrain
fef49abfd5 fix(windows): path of node-gyp with spectre mitigation (#1690) 2023-10-10 14:49:35 +02:00
Baptiste Augrain
f38ad8b6a2 fix(windows): path of node-gyp with spectre mitigation (#1690) 2023-10-10 13:49:41 +02:00
Baptiste Augrain
b1ca680ce7 feat: update to 1.84 2023-10-10 01:28:12 +02:00
Baptiste Augrain
282e23dff0 fix: use node-v18.17 to generate all artifacts (#1689) 2023-10-10 00:06:20 +02:00
Baptiste Augrain
fa6fbaa4e0 wip: use latest npm [skip ci] 2023-10-09 22:21:14 +02:00
Baptiste Augrain
e727f395ba wip: use specific python version [skip ci] 2023-10-07 22:17:29 +02:00
Baptiste Augrain
5f055bf5ae wip: testing windows-build-tools 2023-10-07 22:02:11 +02:00
Baptiste Augrain
e863d764eb wip: add debug [skip ci] 2023-10-07 20:08:07 +02:00
Baptiste Augrain
5e143f4297 wip: update node_gyp path [skip ci] 2023-10-07 20:00:52 +02:00
Baptiste Augrain
df298f9630 wip: install python 2.x [skip ci] 2023-10-07 19:53:03 +02:00
Simon Sobisch
0851b9abd3 docs: choco install for insiders 2023-10-06 13:31:31 +02:00
Baptiste Augrain
5e61d7d3db wip: fix git merge [skip ci] 2023-10-05 17:25:23 +02:00
Baptiste Augrain
fc7ef66af4 wip: fix git merge [skip ci] 2023-10-05 17:20:04 +02:00
Baptiste Augrain
240fb384a2 wip: fix git merge [skip ci] 2023-10-05 17:08:54 +02:00
Baptiste Augrain
8de14b5c6a wip: use patched node-gyp [skip ci] 2023-10-05 16:44:52 +02:00
Baptiste Augrain
dd84d4841a wip: try latest windows [skip ci] 2023-10-05 16:17:09 +02:00
Baptiste Augrain
5290310677 fix: update patch [skip ci] 2023-10-04 19:42:31 +02:00
Baptiste Augrain
fca50b1b9b Merge branch 'master' into insider 2023-10-04 19:16:42 +02:00
Baptiste Augrain
75e7f71ac6 fix: full revert of gh actions [skip ci] 2023-10-04 18:24:54 +02:00
Baptiste Augrain
5d50317e0e revert: newest gh actions aren't compatible with linux images [skip ci] 2023-10-04 18:09:05 +02:00
Simon Sobisch
b667614448 Add Insiders to README 2023-09-29 11:26:20 +02:00
dependabot[bot]
51b0ff47bc build(deps): bump docker/setup-qemu-action from 2 to 3 (#1647) 2023-09-26 14:18:33 +02:00
dependabot[bot]
1789f03920 build(deps): bump actions/checkout from 3 to 4 (#1637) 2023-09-26 14:16:53 +02:00
Baptiste Augrain
1861b90513 fix: stop cheking appiamge [skip ci] 2023-09-21 10:36:52 +02:00
Baptiste Augrain
5631262eb7 fix: disabling appimage [skip ci] 2023-09-13 09:14:23 +02:00
VSCodium CI
2523267fed build(insider): update to commit 5a400e5 2023-09-08 09:17:57 +02:00
Baptiste Augrain
5600db3e57 feat(1.82): update patch and api [skip ci] 2023-09-07 20:18:23 +02:00
Baptiste Augrain
4314fdae01 Merge branch 'insider' 2023-09-07 20:14:03 +02:00
Baptiste Augrain
d7f0ff07dc fix: update insider version [skip ci] 2023-09-07 18:00:22 +02:00
Baptiste Augrain
5621279b19 fix: disable node check on linux 2023-09-07 17:35:38 +02:00
VSCodium CI
ffebe6ddf1 build(insider): update to commit f1302be 2023-09-04 09:36:29 +02:00
Baptiste Augrain
4930c5a71e feat: use node-v18 for insider workflow [skip ci] 2023-09-04 09:22:59 +02:00
Baptiste Augrain
1c6056c2c0 feat: add apis for open-remote-wsl extension (#1627) 2023-09-03 16:32:02 +02:00
Baptiste Augrain
c2d980b0a2 fix: script to update insider.json [skip ci] 2023-09-03 15:53:14 +02:00
Baptiste Augrain
61f4931efb feat(1.82): update patches and use node-v18 (#1626) 2023-09-03 14:59:11 +02:00
osfanbuff63
6333caaf8a docs: clarify winget install command (#1251) 2023-09-03 12:32:28 +02:00
DodoLeDev
e7f41946a4 docs: add vscodium-electron for arch (#1317) 2023-09-03 12:31:15 +02:00
Zac
c2894d5563 revert: fix the patch file for linux builds (#1617) 2023-09-03 12:25:03 +02:00
theskcd
6f36a980aa [vscodium][linux] Fix the patch file for linux builds (#1608)
The URL was updated on the vscode repo, but not updated for the patch. Fixing it on this commit
2023-08-23 22:27:46 +03:00
Baptiste Augrain
9468e97c13 fix(linux): regroup deb and rpm package preparation [skip ci] 2023-08-04 19:52:37 +02:00
Baptiste Augrain
a631bc594c fix: remove npm config [skip ci] 2023-08-04 19:03:41 +02:00
Baptiste Augrain
13a608979c ci: nodejs is installed in build agents [skip ci] 2023-08-04 17:51:58 +02:00
Baptiste Augrain
025a078b3b fix(windows): don't move zip [skip ci] 2023-08-04 15:04:48 +02:00
Baptiste Augrain
f51c90526f feat: add flag to test assets builder in CI (#1590) 2023-08-04 14:36:30 +02:00
Baptiste Augrain
61e44afbc4 feat(1.81): update patches and build agents (#1588) 2023-08-04 14:00:28 +02:00
Baptiste Augrain
63dc9d739b Merge branch 'master' into insider 2023-08-04 11:03:00 +02:00
Baptiste Augrain
1e41cef8a6 fix: exit when patching fails (#1587) 2023-08-04 11:02:12 +02:00
VSCodium CI
b9cfdf370d build(insider): update to commit 83fc3ad 2023-08-04 09:18:29 +02:00
Baptiste Augrain
a8262e5152 fix: build archive (#1586) 2023-08-04 01:38:44 +02:00
Baptiste Augrain
d468b7a1e0 Merge branch 'master' into insider 2023-08-04 00:22:50 +02:00
Baptiste Augrain
0b2fc64a3b fix: correctly update product.json (#1581) 2023-07-27 02:11:09 +02:00
Baptiste Augrain
8dcc87596b fix: correctly download pkg2appimage (#1577) 2023-07-24 22:20:13 +02:00
Baptiste Augrain
0810ba2404 revert: correctly detect assets (#1576) 2023-07-24 22:05:24 +02:00
Zac
79baded01d refactor: shell optimizations 2023-07-23 18:35:27 +02:00
VSCodium CI
17f154098d build(insider): update to commit 822ad2d 2023-07-22 09:13:00 +02:00
Zac
1c0c30e6d6 refactor: passing linter on all bash scripts 2023-07-21 16:45:07 +02:00
VSCodium CI
06e05f233a build(insider): update to commit daf9647 2023-07-21 09:18:42 +02:00
Zac
b4318d78a0 refactor: passing linter for root bash scripts (#1569) 2023-07-20 20:25:13 +02:00
VSCodium CI
3e1420722c build(insider): update to commit c85bf61 2023-07-19 10:59:38 +02:00
Baptiste Augrain
9a210dc964 feat: update to 1.81 2023-07-18 22:25:40 +02:00
Baptiste Augrain
11083b9a1b Merge branch 'master' into insider 2023-07-18 21:59:13 +02:00
Baptiste Augrain
d6b7880a05 fix: use blank commit id 2023-07-18 21:57:50 +02:00
Baptiste Augrain
3fa7f2179b feat: used latest nodejs 16 2023-07-07 00:23:35 +02:00
Baptiste Augrain
d06d8127d5 feat: update to 1.80 2023-07-07 00:10:45 +02:00
Simon Sobisch
02d21f5264 Merge pull request #1548 from daiyam/disable-update-linux
fix: disable update on linux
2023-06-23 09:47:45 +02:00
Baptiste Augrain
7710a09830 fix: disable update on linux 2023-06-16 18:28:28 +02:00
Baptiste Augrain
599eb2adc9 fix(linux): type for ppc64le 2023-06-14 11:50:23 +02:00
Baptiste Augrain
e8161f6e4f fix(linux): type for ppc64le 2023-06-14 11:48:56 +02:00
Baptiste Augrain
31b5e5b919 Merge branch 'master' into insider 2023-06-14 11:47:56 +02:00
Lex
ff05d093c9 fix: incorrect npm_config_arch for ppc64le (#1547) 2023-06-14 08:16:06 +02:00
Baptiste Augrain
08114ab943 fix(linux): only reh for ppc64le [skip ci] 2023-06-13 20:39:59 +02:00
Baptiste Augrain
a17ae154cc Merge branch 'master' into insider 2023-06-13 15:33:13 +02:00
Baptiste Augrain
272566cc25 fix: use correct directory to generate new version [skip ci] 2023-06-13 15:31:03 +02:00
Baptiste Augrain
d3db3c1f52 ci: add log when updating version [skip ci] 2023-06-13 15:24:24 +02:00
Baptiste Augrain
bd8b0d5920 feat(insider): v1.80.0 2023-06-13 15:23:37 +02:00
Baptiste Augrain
aac82d75f4 ci: add log when updating version [skip ci] 2023-06-13 14:33:30 +02:00
Lex
c66d9b7edc fix(workflow): typo in stable-linux (#1544) 2023-06-11 16:48:56 +02:00
Baptiste Augrain
73f7d062da fix(linux): ppc64le [skip ci] 2023-06-09 00:16:20 +02:00
Baptiste Augrain
c9b8e2f5a5 chore: update product.json 2023-06-08 21:23:46 +02:00
Baptiste Augrain
6f03ab0ba1 build: use node 16.17 since it's the shipped one 2023-06-08 21:21:08 +02:00
Baptiste Augrain
fad378871b Merge branch 'insider' 2023-06-08 21:10:31 +02:00
Baptiste Augrain
3050fad108 fix: update patches 2023-06-08 18:14:07 +02:00
Lex
f7fc439526 feat: add linux-ppc64le (#1527) 2023-06-05 08:50:34 +02:00
Baptiste Augrain
7c294be474 ci: enable 32bits 2023-06-02 17:40:24 +02:00
Baptiste Augrain
dfa2100471 Merge branch 'master' into insider 2023-06-02 16:33:37 +02:00
Baptiste Augrain
443107bfa5 fix: 32bits builds (#1535) 2023-06-02 16:32:07 +02:00
VSCodium CI
2af05c9f5b build(insider): update to commit c386785 2023-06-01 09:12:18 +02:00
VSCodium CI
4b237cbd3c build(insider): update to commit fa8eefd 2023-05-31 09:14:14 +02:00
VSCodium CI
b11613470e build(insider): update to commit 784e72b 2023-05-30 09:16:10 +02:00
VSCodium CI
b019f9c25a build(insider): update to commit 667d462 2023-05-29 09:14:14 +02:00
Baptiste Augrain
e2bf570707 fix: space in merge-user-product.patch 2023-05-29 00:02:39 +02:00
ririxi
a2aed6a9e7 fix: enable electron sandbox (#1530) 2023-05-28 23:57:35 +02:00
Baptiste Augrain
dc1e3961c3 fix(1.79): updates patches 2023-05-28 23:07:30 +02:00
Baptiste Augrain
272f67d95b fix: make webview works again (#1514) 2023-05-11 16:01:50 +02:00
Baptiste Augrain
7afbfe03ad feat: update to 1.78 (#1500) 2023-05-10 02:30:07 +02:00
Baptiste Augrain
94ab319d86 Merge branch 'insider' 2023-05-09 23:44:00 +02:00
scientificworld
6137a9fcc5 fix: cannot open welcome page when offline (#1493) 2023-04-26 00:58:13 +02:00
Baptiste Augrain
8661322052 feat: update vote announcements [skip ci] 2023-04-24 23:32:14 +02:00
Baptiste Augrain
84aabe12e3 feat: update vote announcements [skip ci] 2023-04-19 01:21:31 +02:00
Baptiste Augrain
99da974ce5 feat: add vote announcements 2023-04-13 01:39:54 +02:00
Baptiste Augrain
c3e35a9e82 fix: add missing neverShowAgain [skip ci] 2023-04-05 11:07:08 +02:00
Baptiste Augrain
bfdd19ccf2 fix: banner uses same flag as the notification (#1463) 2023-04-05 11:07:08 +02:00
Baptiste Augrain
033a6bdf30 fix: add missing neverShowAgain [skip ci] 2023-04-05 10:00:24 +02:00
Baptiste Augrain
9dbdd411a0 fix: banner uses same flag as the notification (#1463) 2023-04-04 23:29:53 +02:00
Baptiste Augrain
31a42d485b Merge branch 'master' into insider 2023-04-03 10:46:37 +02:00
VSCodium CI
89d3113d66 build(insider): update to commit 2da5a00 2023-04-03 09:16:09 +02:00
Baptiste Augrain
5e26c4a9c4 fix: icons (#1459) 2023-04-03 00:15:06 +02:00
NovaliX
38ba585382 fix: macos icon generation (#1457) 2023-04-03 00:09:32 +02:00
Baptiste Augrain
974619f5d8 fix: get dirname from repository [skip ci] 2023-04-02 15:55:31 +02:00
Baptiste Augrain
f985c78aaa chore: update api and annoucements [skip ci] 2023-03-31 14:54:19 +02:00
Baptiste Augrain
d9368b3668 Merge branch 'insider' 2023-03-31 14:17:26 +02:00
Baptiste Augrain
de60efb3ea style: update insiders icons [skip ci] 2023-03-31 14:16:43 +02:00
Baptiste Augrain
b94741d88d style: update insiders icon templates 2023-03-31 14:10:18 +02:00
VSCodium CI
afc33000a6 build(insider): update to commit f31dffc 2023-03-31 09:14:08 +02:00
VSCodium CI
5dc393d199 build(insider): update to commit 7f329fe 2023-03-30 09:14:11 +02:00
VSCodium CI
a4a0d37b5f build(insider): update to commit 10295b5 2023-03-29 09:15:27 +02:00
dependabot[bot]
cd3b6e425a build(deps): bump actions/stale from 7 to 8 (#1453) 2023-03-27 16:03:15 +02:00
Baptiste Augrain
4e373455f2 feat: add downloadUrl (#1449) 2023-03-26 09:41:43 +02:00
VSCodium CI
1c582203e5 build(insider): update to commit b9226e1 2023-03-25 08:11:50 +01:00
Baptiste Augrain
55377464bb Merge branch 'insider' of github.com:VSCodium/vscodium into insider 2023-03-24 20:50:10 +01:00
Baptiste Augrain
a1d08f4273 feat: update internal icons 2023-03-24 20:47:47 +01:00
VSCodium CI
7c2088709b build(insider): update to commit c83f54a 2023-03-24 08:11:56 +01:00
VSCodium CI
44a49cde49 build(insider): update to commit a5bd844 2023-03-23 08:11:42 +01:00
VSCodium CI
56bfd87ca9 build(insider): update to commit b8e4c55 2023-03-22 08:12:14 +01:00
VSCodium CI
adf3181b0d build(insider): update to commit 833ac68 2023-03-21 08:12:41 +01:00
VSCodium CI
f479f2aeff build(insider): update to commit fa13bf1 2023-03-20 08:12:30 +01:00
Baptiste Augrain
f2f78ed89f feat: add reh binary url in product.json 2023-03-19 01:58:29 +01:00
Baptiste Augrain
7a5936976f fix: update patches 2023-03-19 01:26:17 +01:00
Baptiste Augrain
b113c874f2 build: try new icons 2023-03-19 00:49:08 +01:00
Baptiste Augrain
83b39e549b Merge branch 'master' into insider 2023-03-19 00:47:16 +01:00
dependabot[bot]
141716f439 build(deps): bump dessant/lock-threads from 3 to 4 (#1434) 2023-03-03 17:52:48 +01:00
dependabot[bot]
7c0f7c3576 build(deps): bump actions/stale from 6 to 7 (#1437) 2023-03-03 14:26:14 +01:00
dependabot[bot]
b53d9177f7 build(deps): bump actions/setup-python from 3 to 4 (#1436) 2023-03-03 14:25:51 +01:00
dependabot[bot]
8999b26b10 build(deps): bump docker/setup-qemu-action from 1 to 2 (#1435) 2023-03-03 14:25:30 +01:00
Araxeus
a27b5b2466 ci: create dependabot.yml (#1426) 2023-03-03 11:59:21 +01:00
Baptiste Augrain
13df952922 ci: use lastest winget releaser [skip ci] 2023-03-03 09:30:46 +01:00
Baptiste Augrain
3d745a9a37 fix: update patch 2023-03-02 23:40:15 +01:00
Baptiste Augrain
41b949f19e fix: update to 1.76 (#1432) 2023-03-02 23:23:03 +01:00
Baptiste Augrain
69261e134e docs: update announcements icon [skip ci] 2023-03-01 12:46:02 +01:00
Baptiste Augrain
3771db7395 docs: update announcements 2023-03-01 12:29:49 +01:00
Semnodime
b405f160de Fix Typo (#1401) 2023-02-07 07:39:14 +02:00
Pavlo Rudy
d6e7ae1f6f chore: update ms-python api; close #1400 2023-02-06 09:47:07 +02:00
Baptiste Augrain
9ad93a467b chore: update apis 2023-02-02 21:42:21 +01:00
Baptiste Augrain
e0ce361df9 Merge branch 'insider' 2023-02-02 21:30:44 +01:00
VSCodium CI
2b463cd728 build(insider): update to commit e2816fe 2023-02-02 08:12:16 +01:00
Baptiste Augrain
fc77078868 fix: remove retry-all-errors option [skip ci] 2023-01-31 17:13:55 +01:00
Baptiste Augrain
4ccfb857a4 ci: add retry to gh install [skip ci] 2023-01-31 16:03:37 +01:00
Baptiste Augrain
4b4cfe4f74 fix: reduce mangle to minimum 2023-01-31 14:33:29 +01:00
Baptiste Augrain
4afe89a9ce feat: add command to provide reh url (#1392) 2023-01-30 00:03:37 +01:00
Baptiste Augrain
2d254e9368 feat: disable mangle 2023-01-29 17:42:40 +01:00
Baptiste Augrain
553b29623c fix: remove patch [skip ci] 2023-01-29 16:34:54 +01:00
VSCodium CI
73f8d5cc86 build(insider): update to commit 9ccc2b3 2023-01-20 08:13:01 +01:00
VSCodium CI
a409e6a7ec build(insider): update to commit b899232 2023-01-19 08:12:45 +01:00
Simon Sobisch
11f4749bdb Merge pull request #1374 from jaredreich/patch-1
Update README.md (updated special thanks for logo)
2023-01-18 11:27:33 +01:00
VSCodium CI
f701fd714b build(insider): update to commit 1379f03 2023-01-17 08:12:57 +01:00
VSCodium CI
ad388af833 build(insider): update to commit 2438547 2023-01-14 08:12:30 +01:00
VSCodium CI
617cc85c43 build(insider): update to commit 6d40104 2023-01-12 08:15:29 +01:00
Baptiste Augrain
6fdca57be5 build: improve patch script 2023-01-11 12:22:54 +01:00
VSCodium CI
7fffa6bcf1 build(insider): update to commit e7b5449 2023-01-11 08:16:21 +01:00
VSCodium CI
b98ae5fe32 build(insider): update to commit 04b15ff 2023-01-10 08:10:54 +01:00
Jared Reich
519d9d1e30 Update README.md special thanks for logo
Just keeping this up to date since we reverted back to the original logo from #4 
Great continued work on this project!!!
2023-01-09 14:31:44 -07:00
Baptiste Augrain
e82cd45830 fix: retrieve BUILD_SOURCEVERSION when force update versions [skip ci] 2023-01-08 16:08:05 +01:00
Baptiste Augrain
30fea6fcbd fix: force update versions [skip ci] 2023-01-08 15:37:11 +01:00
Baptiste Augrain
32637c09c8 feat: allows to forcely update versions [skip ci] 2023-01-08 15:33:27 +01:00
Baptiste Augrain
9618e11b99 chore: update api 2023-01-08 11:11:51 +01:00
Baptiste Augrain
43f11068ce fix: update mangle patch 2023-01-08 10:44:54 +01:00
Baptiste Augrain
8474e2eec6 Merge branch 'master' into insider 2023-01-08 10:39:27 +01:00
Baptiste Augrain
ceaf9ce37b fix: don't compile build dir and fix patch 2023-01-07 14:07:56 +01:00
Baptiste Augrain
57507e0abf feat: compile build dir before building editor 2023-01-07 13:40:46 +01:00
Baptiste Augrain
15addf4476 fix: patch mangle for windows (#1370) 2023-01-07 12:16:19 +01:00
VSCodium CI
df7ed19561 build(insider): update to commit 727d2d3 2023-01-07 08:12:16 +01:00
VSCodium CI
35b7b32db0 build(insider): update to commit 79c4f9b 2023-01-06 08:12:02 +01:00
VSCodium CI
26f90e6511 build(insider): update to commit 4acf2d9 2023-01-05 08:11:55 +01:00
Baptiste Augrain
3a9c276c70 fix: update github patch 2023-01-03 12:10:17 +01:00
Baptiste Augrain
1753520ee0 fix: update ms commit 2023-01-03 11:57:29 +01:00
Baptiste Augrain
2d51987163 fix: update github patch 2023-01-03 11:53:10 +01:00
Hulusi Kafalıer
f73d7b632b docs: fix invalid product.json example (#1366) 2023-01-02 08:57:17 +01:00
Nicolas Hedger
369ff79b9f Fix broken workflow badges (#1361)
* Fix broken workflow badges

* Add missing parentheses
2022-12-30 19:52:55 +02:00
VSCodium CI
a4b47f50a4 build(insider): update to commit 11238fa 2022-12-13 08:19:45 +01:00
VSCodium CI
557fc06d55 build(insider): update to commit 250a8f3 2022-12-12 08:17:47 +01:00
VSCodium CI
14ca97b75c build(insider): update to commit f076d55 2022-12-10 08:14:22 +01:00
Baptiste Augrain
3cf93c6ded enhance: update apis 2022-12-08 20:22:27 +01:00
Baptiste Augrain
12121c9c9b Merge branch 'insider' 2022-12-08 19:54:34 +01:00
VSCodium CI
5d3b20bf8f build(insider): update to commit b928944 2022-12-08 08:17:37 +01:00
VSCodium CI
b57285ebae build(insider): update to commit 5235c6b 2022-12-06 08:16:53 +01:00
Baptiste Augrain
a31e11a51e feat: add default apis for open-remote-ssh (#1344) 2022-12-02 22:22:58 +01:00
Baptiste Augrain
ee8c7f094a fix: remove recommendationsUrl 2022-12-02 20:31:45 +01:00
eugen-auschew
078ce9427f docs: changed packagename in docs.md for ApplePressAndHoldEnabled setting (#1341)
Co-authored-by: eauw <info@ea-it.de>
2022-11-30 14:02:35 +01:00
VSCodium CI
f781310c69 build(insider): update to commit d0e44be 2022-11-26 08:11:48 +01:00
Simon Sobisch
33b563c334 Merge pull request #1330 from VSCodium/docs-extensions
update concerning extension gallery
2022-11-24 20:56:04 +01:00
VSCodium CI
71277ceb29 build(insider): update to commit 2eca6d3 2022-11-24 08:22:11 +01:00
Baptiste Augrain
8b260dc895 fix(insider): update patches 2022-11-23 21:52:51 +01:00
Baptiste Augrain
25985ec81b fix(insider): test before using getPreferredSystemLanguages
closes #1335
2022-11-21 15:51:03 +01:00
VSCodium CI
50313cace5 build(insider): update to commit fef85ea 2022-11-21 08:11:50 +01:00
Baptiste Augrain
61ab6ebb68 build: add title to github's release 2022-11-20 00:42:22 +01:00
Baptiste Augrain
ef0a3400d5 fix: update patch 2022-11-18 10:36:13 +01:00
Baptiste Augrain
1bfa2d920c fix: update patch 2022-11-17 22:56:46 +01:00
VSCodium CI
7ecd465204 build(insider): update to commit 3fb8e8f 2022-11-15 08:10:09 +01:00
Simon Sobisch
c57d5aa768 update concerning extension gallery 2022-11-12 14:59:47 +01:00
Baptiste Augrain
5c3db580d5 feat(1.74): support windows 7 (#1329) 2022-11-12 10:14:22 +01:00
Baptiste Augrain
de28e119be feat(1.74): update custom gallery patch 2022-11-12 10:09:54 +01:00
Pavlo Rudy
522300a657 feat(issue): add sandbox info [skip ci] 2022-11-11 12:02:38 +02:00
Baptiste Augrain
d0b246a9e1 fix: update patches 2022-11-10 18:36:08 +01:00
Baptiste Augrain
1b48e182cb Merge branch 'master' into insider 2022-11-10 18:20:15 +01:00
Baptiste Augrain
59389da1b0 fix: remote dependencies (#1324) 2022-11-10 18:18:26 +01:00
Baptiste Augrain
ab5bc94dc5 Merge branch 'master' into insider 2022-11-05 13:01:29 +01:00
Baptiste Augrain
51e8c96447 fix(winget): use correct assets path [skip ci] 2022-11-05 13:00:13 +01:00
Baptiste Augrain
0a4c9f8822 fix: disable windows' appx (#1321) 2022-11-04 12:48:12 +01:00
Geoffrey Huntley
8a4d27cbc5 docs(marketplace): insights how to self-host vscode marketplace (#1320) 2022-11-03 21:32:44 +01:00
Baptiste Augrain
82818e303b ci: remove cache & use centos dependencies 2022-11-02 20:03:09 +01:00
Baptiste Augrain
06e0b79e29 fix: update patch with correct version 2022-11-02 09:42:32 +01:00
Baptiste Augrain
0f32071868 fix: patch [skip ci] 2022-11-02 08:23:18 +01:00
Baptiste Augrain
b9cf9669ec Merge branch 'master' into insider 2022-11-02 08:13:40 +01:00
Crystal-RainSlide
9bef306878 fix: add translation for release (#1305) 2022-11-01 18:56:12 +01:00
Gabor Greif
43a12a99d9 fix: typo (#1304) 2022-10-26 12:19:21 +02:00
Baptiste Augrain
b99b8a6254 ci: replace all ::set-output 2022-10-24 21:27:03 +02:00
Baptiste Augrain
1151ccb8a5 ci: add force release checkbox [skip ci] 2022-10-24 16:15:48 +02:00
Baptiste Augrain
36077f90dc ci: re-export modified env variables 2022-10-24 15:51:39 +02:00
Baptiste Augrain
34d56d0b52 ci: share more env variables 2022-10-24 15:00:38 +02:00
Baptiste Augrain
fc7019dc75 ci: share env variables 2022-10-24 14:34:38 +02:00
Baptiste Augrain
3cba28cb77 ci: fix restore path 2022-10-24 13:47:42 +02:00
Baptiste Augrain
6694eb6755 ci: fix retention days 2022-10-24 12:55:05 +02:00
Baptiste Augrain
87ce7bc40b ci: fix needs 2022-10-24 12:27:29 +02:00
Baptiste Augrain
3d28de08df ci: disable centos7 arm64 2022-10-24 12:04:36 +02:00
Baptiste Augrain
728235372d ci: force output missing variables 2022-10-23 19:53:10 +02:00
Baptiste Augrain
fb37594000 ci: rename variable 2022-10-23 19:47:16 +02:00
Baptiste Augrain
ad3016dabf ci: don't store repositories (too long) 2022-10-23 19:39:14 +02:00
Baptiste Augrain
e891b4a3dc ci: fix restore data 2022-10-23 19:24:55 +02:00
Baptiste Augrain
f847dfc262 ci: fix workflow 2022-10-23 18:15:40 +02:00
Baptiste Augrain
5fc33c7681 ci: build reh dependencies 2022-10-23 18:13:18 +02:00
Baptiste Augrain
1f2ecf7714 ci: fix linux workflow 2022-10-23 17:54:17 +02:00
Baptiste Augrain
54952104e8 feat: compute reh dependencies from centos7 2022-10-23 17:49:40 +02:00
Baptiste Augrain
9c8d4b367d doc: update downloaded files (#1300) 2022-10-23 15:59:19 +02:00
VSCodium CI
06222aa96e build(insider): update to commit 504c5a7 2022-10-22 09:13:54 +02:00
VSCodium CI
66c137de6a build(insider): update to commit 266ff5b 2022-10-20 09:21:43 +02:00
Baptiste Augrain
79fe5639f3 fix: update patch [skip ci] 2022-10-19 19:41:51 +02:00
Baptiste Augrain
2bdecb847c Merge branch 'master' into insider 2022-10-19 18:25:03 +02:00
Baptiste Augrain
d9493e47c6 fix(ci): get version hash after check_tags.sh since it can modify target version [skip ci] 2022-10-19 18:19:55 +02:00
Baptiste Augrain
8eea67c50d fix(ci): strip -insider from version [skip ci] 2022-10-19 17:56:16 +02:00
Baptiste Augrain
db5caf4c9b ci: build aur in parallel [skip ci] 2022-10-17 11:13:23 +02:00
Crystal-RainSlide
8b5ad26b10 fix: use setpath_json for trusted domains (#1294) 2022-10-17 11:11:34 +02:00
Baptiste Augrain
e14a115b0e fix: use RELEASE_VERSION for BUILD_SOURCEVERSION (#1293) 2022-10-16 23:55:34 +02:00
VSCodium CI
431fecfad7 build(insider): update to commit 3e4e351 2022-10-12 09:20:10 +02:00
Baptiste Augrain
fc8e62c908 fix: correctly generate src archives [skip ci] 2022-10-11 21:58:57 +02:00
VSCodium CI
6b71e7a5d3 build(insider): update to commit 8e1235e 2022-10-11 09:23:08 +02:00
Baptiste Augrain
c14e5d4a97 fix(ci): use secret variable [skip ci] 2022-10-09 19:56:36 +02:00
Pavlo Rudy
2c17eed9d3 add deb-rpm-repo-hook (#1284) 2022-10-09 20:17:21 +03:00
Baptiste Augrain
1aeca3ebce ci(winget): releaser version has being renamed as v1 [skip ci] 2022-10-08 10:16:24 +02:00
Baptiste Augrain
ce4af41a4a ci: fix winget & stale workflows [skip ci] 2022-10-07 21:24:10 +02:00
VSCodium CI
35dcdf39ca build(insider): update to commit fad3a77 2022-10-07 09:20:09 +02:00
Baptiste Augrain
bba3e74815 ci(aur): the version is automatically determined [skip ci] 2022-10-06 23:52:38 +02:00
Baptiste Augrain
9f2a6fe772 ci(linux): disable aur [skip ci] 2022-10-06 23:32:13 +02:00
Baptiste Augrain
ac01dd9d0e fix: stable version should also generate src asset [skip ci] 2022-10-06 23:04:00 +02:00
Baptiste Augrain
10582b3c86 fix: update api [skip ci] 2022-10-06 22:18:18 +02:00
Baptiste Augrain
fed608b13e feat: make build more generic (#1279) 2022-10-06 22:15:41 +02:00
Baptiste Augrain
6cb5e52ffe ci: fix stale workflow [skip ci] 2022-10-06 21:29:08 +02:00
Baptiste Augrain
59e72eed70 Merge branch 'master' into insider 2022-10-06 20:24:19 +02:00
Baptiste Augrain
6fa185f59e ci: stale only issues [skip ci] 2022-10-05 15:19:08 +02:00
Baptiste Augrain
10143fdee2 ci: stale issues [skip ci] 2022-10-05 13:56:58 +02:00
VSCodium CI
fa73d77b97 build(insider): update to commit 64bbfbf 2022-10-05 08:19:10 +02:00
Baptiste Augrain
8335ca9c14 ci: prepare 3rd parties releases [skip ci] 2022-10-04 21:57:06 +02:00
Baptiste Augrain
983eefdc2e feat: update announcements [skip ci] 2022-10-04 21:39:53 +02:00
Baptiste Augrain
633e46eede feat: show announcements to welcome page (#1274) 2022-10-04 19:01:54 +02:00
VSCodium CI
5d3d8c3fb7 build(insider): update to commit 9fb452c 2022-10-04 08:17:18 +02:00
Baptiste Augrain
ae2b84df50 feat: dev build script can build only packages 2022-10-02 10:39:39 +02:00
VSCodium CI
d7450f5afe build(insider): update to commit bcb6c9b 2022-10-01 09:19:18 +02:00
Baptiste Augrain
b87deb8af1 feat: add annoucements 2022-09-30 19:50:49 +02:00
VSCodium CI
4a41898d02 build(insider): update to commit 2c80125 2022-09-30 10:44:22 +02:00
Baptiste Augrain
97eb57c196 fix(msi): launch installer [skip ci] 2022-09-30 08:44:14 +02:00
VSCodium CI
0b4c409685 build(insider): update to commit 96dda01 2022-09-29 09:27:33 +02:00
Baptiste Augrain
d91dc90a71 fix(msi): update shortcuts and context menus 2022-09-28 12:32:19 +02:00
VSCodium CI
8d74a04beb build(insider): update to commit 835d39c 2022-09-28 08:36:49 +02:00
Baptiste Augrain
3f6a260aa3 fix: use official winget-releaser 2022-09-27 20:17:42 +02:00
Baptiste Augrain
b5b3376645 fix: update msi (#1270) 2022-09-27 20:14:27 +02:00
Baptiste Augrain
ecd187faa2 feat(issue): add app manager info 2022-09-27 12:08:27 +02:00
Baptiste Augrain
9f887867a9 fix(ci): delay spearhead because it didn't catch today updates [skip ci] 2022-09-27 12:07:35 +02:00
VSCodium CI
d9b0bdb1fc build(insider): update to commit 36b1398 2022-09-27 12:00:39 +02:00
Baptiste Augrain
81eb0c7da3 fix(aur): rename variables [skip ci] 2022-09-27 00:16:46 +02:00
Baptiste Augrain
fadc24f733 feat(issue): add app manager info 2022-09-26 18:16:19 +02:00
Baptiste Augrain
6023f014bf fix(aur): pass version for insiders 2022-09-26 15:43:56 +02:00
Baptiste Augrain
0671054494 feat(linux): add AUR releases 2022-09-26 14:42:54 +02:00
Baptiste Augrain
87aaa7131e fix(linux): appimage 2022-09-26 11:42:26 +02:00
Baptiste Augrain
8a80e023ad fix: bad keyword 2022-09-26 11:13:10 +02:00
Baptiste Augrain
2f8edd92f3 feat: add DISABLE_UPDATE env to disable updates 2022-09-26 09:30:43 +02:00
miromarszal
f0d9c5aed4 fix(snap): enable wayland (#1268) 2022-09-26 09:24:00 +02:00
VSCodium CI
6b164c0699 build(insider): update to commit eeaee50 2022-09-26 08:37:13 +02:00
miromarszal
6471151e96 fix(snap): enable wayland (#1268) 2022-09-26 08:19:41 +02:00
Baptiste Augrain
aa50b4f557 fix: bad syntax [skip ci] 2022-09-25 18:40:51 +02:00
Baptiste Augrain
2b61812afb fix: generate source archives [skip ci] 2022-09-25 18:31:53 +02:00
Baptiste Augrain
abbc2cb2f1 feat: generate source archives 2022-09-25 18:07:45 +02:00
Baptiste Augrain
36c0f2a014 fix: update patches 2022-09-25 14:54:41 +02:00
VSCodium CI
5b22b7bbc8 build(insider): update to commit 333754f 2022-09-22 08:28:45 +02:00
VSCodium CI
9927efe1dc build(insider): update to commit a829fbb 2022-09-21 08:29:20 +02:00
Baptiste Augrain
d83bfdea6a refactor: worflows [skip ci] 2022-09-19 17:09:16 +02:00
Baptiste Augrain
72e723735f fix(winget): add suffix to release tag 2022-09-19 16:24:59 +02:00
Baptiste Augrain
fe9701d8ff fix(winget): use fork to set release repository [skip ci] 2022-09-19 16:08:51 +02:00
Baptiste Augrain
cd5afd6e58 fix(snap): add missing outputs [skip ci] 2022-09-19 11:43:28 +02:00
Baptiste Augrain
39fab7d947 fix(winget): run with bash [skip ci] 2022-09-19 11:12:45 +02:00
Baptiste Augrain
e87d2b2587 fix(windows): add outputs 2022-09-19 11:03:49 +02:00
Baptiste Augrain
29a963b6ea Merge branch 'master' into insider 2022-09-19 10:39:42 +02:00
VSCodium CI
6299899ee6 build(insider): update to commit bd782eb 2022-09-19 08:33:37 +02:00
Pavlo Rudy
6562d7d4a4 update the supported platform list 2022-09-19 08:36:55 +03:00
Baptiste Augrain
03be08e721 feat: automate winget release (#1260) 2022-09-19 07:27:12 +02:00
Pavlo Rudy
412ab9f469 disable Natural Language Search by default; closes #1185 (#1261) 2022-09-18 23:24:50 +03:00
Baptiste Augrain
a65ecfc37b fix: pat 2022-09-18 14:52:48 +02:00
Baptiste Augrain
1dcb1f9b1f Merge branch 'master' into insider 2022-09-18 11:41:48 +02:00
Vik
b36705ca7f feat(msi): add russian translation (#1255) 2022-09-16 14:27:17 +02:00
VSCodium CI
8fa040c46f build(insider): update to commit b3546b4 2022-09-15 08:24:48 +02:00
Baptiste Augrain
e70f1391b2 fix(ci): use macos 12 runner 2022-09-14 00:00:52 +02:00
Baptiste Augrain
397b37f54c fix(linux): correctly resolve url to get pkg2appimage (#1249) 2022-09-13 22:23:52 +02:00
VSCodium CI
44c14b62bd build(insider): update to commit 1a55beb 2022-09-13 08:32:20 +02:00
Baptiste Augrain
fa83cbc835 fix(macos): cleanup signing [skip ci] 2022-09-12 15:52:26 +02:00
Baptiste Augrain
6d716bc19c fix(macos): signing [skip ci] 2022-09-12 15:06:13 +02:00
Baptiste Augrain
e2020e7ab3 fix(macos): signing [skip ci] 2022-09-12 14:21:34 +02:00
Baptiste Augrain
fb3a6c1855 fix(macos): specify keychain to codesign [skip ci] 2022-09-12 12:37:43 +02:00
Baptiste Augrain
3863b9f70a Merge branch 'insider' of github.com:VSCodium/vscodium into insider 2022-09-12 12:14:41 +02:00
Baptiste Augrain
6567a25215 fix(macos): signing 2022-09-12 12:14:30 +02:00
VSCodium CI
f05b1dfb66 build(insider): update to commit 5cecbf4 2022-09-12 08:33:10 +02:00
Baptiste Augrain
53cb71df89 fix: replace publisher's name (#1246) 2022-09-11 14:41:20 +02:00
Baptiste Augrain
a64611ceda ci: use not deprecated macOS (#1235) 2022-09-11 14:40:30 +02:00
Baptiste Augrain
3664544e77 fix: replace publisher's name (#1246) 2022-09-11 13:08:41 +02:00
VSCodium CI
00b1c23d0b build(insider): update to commit 2d27f8d 2022-09-09 08:19:04 +02:00
Baptiste Augrain
60896956ef fix(ci): put back old keychain after signing (#1245) 2022-09-08 11:06:16 +02:00
VSCodium CI
ca9a6812fd build(insider): update to commit 0f2de31 2022-09-08 08:24:35 +02:00
VSCodium CI
400997b39a build(insider): update to commit daf5eb2 2022-09-07 08:28:56 +02:00
Baptiste Augrain
1e3c695701 fix(snap): disable until classic confinement unsealed [skip ci] 2022-09-05 15:19:04 +02:00
Baptiste Augrain
778e36d118 fix(snap): replace substitution since not in bash [skip ci] 2022-09-05 14:22:00 +02:00
Baptiste Augrain
62d6c2d4f1 fix(snap): fix substitution [skip ci] 2022-09-05 12:33:40 +02:00
Baptiste Augrain
21757c11e7 fix(snap): fix substitution 2022-09-05 12:25:59 +02:00
Baptiste Augrain
7c9d1d4e54 fix(snap): escape backslash [skip ci] 2022-09-05 12:19:09 +02:00
Baptiste Augrain
70906631fe fix(snap): close expression [skip ci] 2022-09-05 12:11:56 +02:00
Baptiste Augrain
d6c96b4533 fix(snap): escape backslash [skip ci] 2022-09-05 11:54:12 +02:00
Baptiste Augrain
2530990d15 fix(snap): rename parts and use short version (#1241) 2022-09-05 11:44:21 +02:00
Baptiste Augrain
10f95cda32 fix(snap): set correct main part and update apps (#1240) 2022-09-05 11:17:56 +02:00
Baptiste Augrain
991fbbbd32 fix(snap): update icon paths (#1239) 2022-09-05 11:03:06 +02:00
Baptiste Augrain
995081e187 fix(snap): no info if no release [skip ci] (#1238) 2022-09-05 10:33:08 +02:00
Baptiste Augrain
452550caa3 fix(snap): no info if no release [skip ci] (#1237) 2022-09-05 10:22:08 +02:00
Baptiste Augrain
315d25a735 fix(snap): version is empty if no release (#1236) 2022-09-05 10:16:08 +02:00
Baptiste Augrain
b07ec41f16 feat: publish snap to edge channel 2022-09-05 09:33:52 +02:00
VSCodium CI
50b00d3036 build(insider): update to commit d17726f 2022-09-05 09:08:10 +02:00
Baptiste Augrain
37210e8499 feat: update insider.json when manual build is ok (#1234) 2022-09-04 20:50:52 +02:00
Baptiste Augrain
b8acee21ca ci: use not deprecated macOS (#1235) 2022-09-04 20:50:32 +02:00
Baptiste Augrain
a5d89f826e fix: update patches and apis (#1231) 2022-09-04 17:39:57 +02:00
Baptiste Augrain
b90af6eda5 ci: improve schedule (#1228) 2022-09-02 17:12:41 +02:00
Baptiste Augrain
7a289a8b61 fix: update quality to stable workflows and generate notes on release [skip ci] 2022-09-02 08:21:24 +02:00
Simon Sobisch
a626779410 fix automated NOTES 2022-09-02 07:58:40 +02:00
Baptiste Augrain
8c4229d230 Merge branch 'insider' 2022-09-02 07:06:49 +02:00
Baptiste Augrain
cfd36105f5 ci: add automated note on new releases [skip ci] 2022-08-31 11:58:39 +02:00
VSCodium CI
e27c6792ce build(insider): update to commit 078f8e9 2022-08-31 11:58:39 +02:00
Baptiste Augrain
9f21a39e6f fix: remove debug [skip ci] 2022-08-31 11:58:39 +02:00
Baptiste Augrain
c35178f8b7 fix: check insider version from release note [skip ci] 2022-08-31 11:58:39 +02:00
Baptiste Augrain
f8f64410c6 fix: remove "-insider" from MS_TAG [skip ci] 2022-08-31 11:58:39 +02:00
Baptiste Augrain
ec4cc3a277 ci: add automated note on new releases [skip ci] 2022-08-31 10:37:08 +02:00
VSCodium CI
c9614d1d31 build(insider): update to commit 078f8e9 2022-08-31 10:20:23 +02:00
Baptiste Augrain
29f4df6515 fix: remove debug [skip ci] 2022-08-31 10:12:41 +02:00
Baptiste Augrain
a8cda7e118 fix: check insider version from release note [skip ci] 2022-08-31 10:10:51 +02:00
Baptiste Augrain
f8b2cc75ae fix: remove "-insider" from MS_TAG [skip ci] 2022-08-31 09:54:04 +02:00
David C
7bbad32dc8 fix: README logo (#1226) 2022-08-31 09:52:17 +02:00
David C
114f731f19 fix: README logo (#1226) 2022-08-31 07:59:51 +02:00
Baptiste Augrain
2aca4d5344 fix: remove -insider suffix and remove some debug [skip ci] 2022-08-30 15:51:28 +02:00
Baptiste Augrain
885abe36a8 fix: remove -insider suffix and remove some debug [skip ci] 2022-08-30 15:49:59 +02:00
VSCodium CI
39a2fd05aa build(insider): update to commit 16faaf4 2022-08-30 15:34:48 +02:00
Baptiste Augrain
5f3af3920b ci(spearhead): add more details [skip ci] 2022-08-30 15:26:39 +02:00
Baptiste Augrain
762cfede26 ci(spearhead): push to correct branch [skip ci] 2022-08-30 15:26:39 +02:00
Baptiste Augrain
2c429f0778 fix: update spearhead workflow [skip ci] 2022-08-30 15:26:39 +02:00
Baptiste Augrain
fa4b4caf59 ci(spearhead): add more details [skip ci] 2022-08-30 15:17:00 +02:00
Baptiste Augrain
e7e2de16ce ci(spearhead): push to correct branch [skip ci] 2022-08-30 15:01:09 +02:00
Baptiste Augrain
8737578ae5 fix: update spearhead workflow [skip ci] 2022-08-30 14:46:23 +02:00
Baptiste Augrain
6da0a42a92 feat: port back changes made inside the insider branch (#1225) 2022-08-30 13:55:17 +02:00
Baptiste Augrain
7f7f2ecdf8 fix(windows): correct msi filename [skip ci] 2022-08-30 12:01:53 +02:00
Baptiste Augrain
f212b71f2a fix: correctly get MS_COMMIT [skip ci] 2022-08-30 10:53:02 +02:00
Baptiste Augrain
ba9a6a1319 ci: add input to set a specific built version [skip ci] 2022-08-30 10:46:58 +02:00
Baptiste Augrain
b803eaaefe fix(windows): msi is correctly built [skip ci] 2022-08-30 10:39:07 +02:00
Baptiste Augrain
c655e94765 fix(windows): add insider banner [skip ci] 2022-08-30 10:14:46 +02:00
Baptiste Augrain
c808d71512 fix(windows): use variable for .exe filename [skip ci] 2022-08-30 00:45:48 +02:00
Baptiste Augrain
4e20dbd99b fix(windows): correctly replace variables [skip ci] 2022-08-29 23:55:37 +02:00
Baptiste Augrain
083e25d289 fix(linux): use find/mv instead of rename [skip ci] 2022-08-29 23:41:30 +02:00
Baptiste Augrain
a549e0bdad fix: don't recreate release [skip ci] 2022-08-29 23:23:54 +02:00
Baptiste Augrain
04f80fcd48 fix: use stronger token [skip ci] 2022-08-29 22:56:03 +02:00
Baptiste Augrain
feeb053e21 fix: appimage build 2022-08-29 22:41:43 +02:00
Baptiste Augrain
8a3d35a42d fix: add owner to gh commands [skip ci] 2022-08-29 22:36:37 +02:00
Baptiste Augrain
290fa2ff81 Merge branch 'master' into insider 2022-08-29 21:59:17 +02:00
Baptiste Augrain
39af33e65a fix: generate artifacts (#1223) 2022-08-29 21:56:51 +02:00
Baptiste Augrain
697bd5ef83 refactor: move artifacts building and signing into prepare_artifacts.sh [skip ci] (#1221) 2022-08-29 17:53:29 +02:00
Baptiste Augrain
fc9d6ae8b3 fix(linux): don't check dependencies [no ci] 2022-08-29 17:15:36 +02:00
Baptiste Augrain
430d4e3888 ci: force workflows to there respective branch when manually launched
skip-checks: true
2022-08-29 16:18:59 +02:00
Baptiste Augrain
2ce1de5f4c Merge branch 'master' into insider 2022-08-29 16:10:21 +02:00
Baptiste Augrain
3345c43231 ci: remove to much debug
skip-checks: true
2022-08-29 16:06:56 +02:00
Baptiste Augrain
78b66c8909 fix(insider): spreadhead workflow must not be executed by a push or a PR 2022-08-29 15:49:24 +02:00
Baptiste Augrain
386b08ac38 Merge branch 'master' into insider 2022-08-29 15:46:02 +02:00
Baptiste Augrain
61e880da67 feat: insider version (#1217) 2022-08-29 15:13:25 +02:00
Baptiste Augrain
91f4e79db7 feat: add green icon 2022-08-26 01:35:26 +02:00
Baptiste Augrain
58707d73ba ci(snap): re-enable arm64 (#1211) 2022-08-25 01:18:03 +02:00
Baptiste Augrain
aa508b1322 feat: build successfully with new patches 2022-08-25 00:34:28 +02:00
Baptiste Augrain
121385623c ci: update when to run workflows 2022-08-23 00:59:49 +02:00
Baptiste Augrain
4e1058ef10 refactor: rename build script 2022-08-22 15:12:30 +02:00
Baptiste Augrain
70e6f66c60 feat: build insider from saved commit or from the latest 2022-08-22 15:10:00 +02:00
Baptiste Augrain
3a0ac5f70e Merge branch 'master' into insider 2022-08-21 21:37:54 +02:00
Baptiste Augrain
f21c11dde0 fix: install checksum only when needed (#1213) 2022-08-21 19:15:37 +02:00
Baptiste Augrain
7a2a3a7ab0 ci: disable insider and reh on windows arm64 2022-08-17 07:46:48 +02:00
Baptiste Augrain
41d477decd feat: update to support insider version 2022-08-17 07:36:15 +02:00
Baptiste Augrain
637ec23444 ci: disable appimage for non-x64 (#1208) 2022-08-17 07:01:37 +02:00
Baptiste Augrain
bbddc94a72 ci: use directly boolean input (#1207) 2022-08-17 06:23:19 +02:00
Baptiste Augrain
a4e5b2a101 fix: update issue reporter (#1206) 2022-08-16 23:37:20 +02:00
Baptiste Augrain
bfdaf23c6d build(linux): use vscode's ripgrep (#1205) 2022-08-16 23:10:04 +02:00
Baptiste Augrain
98bac0c1eb doc: update build doc and add script for docker (#1204) 2022-08-16 22:39:08 +02:00
Baptiste Augrain
81d304fa37 fix: split version for vscode (#1202) 2022-08-16 19:00:11 +02:00
Baptiste Augrain
fcbf70d7ca fix: use correct url to check tags (#1201) 2022-08-16 17:03:45 +02:00
Baptiste Augrain
bffbd569a5 fix: patch all versions (for macos and reh) (#1198) 2022-08-16 16:11:08 +02:00
Baptiste Augrain
79cdcd61bf ci: add input to force new release (#1197) 2022-08-16 15:33:34 +02:00
Baptiste Augrain
7327f9910d ci: get MS_TAG from update api (#1196) 2022-08-16 14:33:30 +02:00
Baptiste Augrain
118ea7993d feat: add release number (#1192) 2022-08-16 13:51:45 +02:00
Baptiste Augrain
ed5a695d2c ci(windows): disable winget until further testing (#1193) 2022-08-14 11:22:00 +02:00
Vedant
86456d833f ci(windows): prevent winget step from running multiple times (#1186) 2022-08-14 10:04:59 +02:00
Baptiste Augrain
f05272f2d0 fix: update api proposals (#1187) 2022-08-09 15:21:59 +02:00
Vedant
383b7ef4f8 feat: publish to winget (#1174) 2022-08-09 12:06:38 +02:00
Baptiste Augrain
2874277aa4 fix: replace grep with ripgrep due to excruciating timing (#1170) 2022-08-05 13:09:02 +02:00
Baptiste Augrain
8883466ef5 fix(1.70): disable dependencies checking for .deb (#1180) 2022-08-05 12:08:36 +02:00
Pavlo Rudy
fdc6b32d8b close #1160 2022-07-15 21:29:11 +03:00
Todd Williams
81836873af docs: update legality of vscode marketplace's usage (#1092) 2022-07-09 08:13:26 +02:00
Baptiste Augrain
3fa8eee9fe feat: add script to update patches (#1138) 2022-06-20 10:34:50 +02:00
Baptiste Augrain
55d502d659 doc: add patch update process (#1136) 2022-06-19 12:08:28 +02:00
Pavel Sterin
f6a99949c5 feat: use github versions of included extensions (#1133) 2022-06-19 11:49:56 +02:00
Baptiste Augrain
85126f1a7c fix: set the built files at the built time (#1132) 2022-06-17 14:47:08 +02:00
Baptiste Augrain
bca4eea470 fix(snap): remove double env variable (#1131) 2022-06-16 23:09:25 +02:00
Baptiste Augrain
2b190dfe51 fix(snap): use master branch to publish (#1130) 2022-06-16 23:06:07 +02:00
Baptiste Augrain
c4583ad3f0 fix: use env variable instead of login option (#1128) 2022-06-16 12:20:10 +02:00
laksith19
79a9f4a292 Remove repeated dependency (#1125) 2022-06-15 18:36:20 +03:00
Baptiste Augrain
112f730493 fix: generate mssing out directory (#1117) 2022-06-11 13:46:15 +02:00
Baptiste Augrain
7313f3ad25 ci(linux): correctly detect reh binaries (#1116) 2022-06-10 07:31:34 +02:00
Baptiste Augrain
bbaaed2ec1 fix: update patches & install optional dependencies (#1115) 2022-06-09 22:19:30 +02:00
Frazer Smith
3737c9f4e2 build: Use cd ... || exit in case cd fails (#1107) 2022-06-08 22:03:44 +02:00
Baptiste Augrain
90bc38c840 vcs: fix lock workflow config (#1113) 2022-06-08 18:00:26 +02:00
Baptiste Augrain
84b4396476 feat: add support for reh (#1111) 2022-06-08 16:59:06 +02:00
Frazer Smith
add78d6829 build(stores/snapcraft): quote grep pattern so shell won't interpret it (#1108) 2022-06-07 23:20:09 +02:00
Frazer Smith
98d30bdc2c build: double quote args and wrap in brace expansions (#1105) 2022-06-05 21:30:23 +02:00
Baptiste Augrain
31355417a8 vcs: add workflow to lock old closed issues (#1106) 2022-06-05 16:52:38 +02:00
Baptiste Augrain
c3debb387d feat(macos): build script is detecting arch (#1085) 2022-05-16 01:35:17 +02:00
Baptiste Augrain
c53a88ee51 docs: improve macOS troubleshooting and add thanks table (#1083)
* docs: update supported macOS and link to troubleshooting wiki
* docs: add thanks table
2022-05-14 20:16:15 +02:00
Baptiste Augrain
c2469ff520 fix: re-enable 32bits builds with npm_config_force_process_config env variable (#1082) 2022-05-14 18:44:59 +02:00
Baptiste Augrain
70082e0f0f fix(macos): correctly clean up keychain (#1075) 2022-05-07 17:29:18 +02:00
Baptiste Augrain
e9ea41fcfa fix(macos): clean up keychain (#1074) 2022-05-07 17:18:14 +02:00
Baptiste Augrain
014d9a339d fix(macos): delete keychain to avoid conflict on next release (#1071) 2022-05-07 14:02:20 +02:00
Pavlo Rudy
4855694fd6 fix: add git workaround for release upload (#1069) 2022-05-07 13:51:07 +02:00
Maikel
e480df5b1f fix: update 'Report Issue' GitHub url. (#1068) 2022-05-07 09:51:33 +02:00
Baptiste Augrain
0932463dfb fix(1.67): update patches (#1066) 2022-05-07 09:50:30 +02:00
Baptiste Augrain
65e376786f ci: add macos arm64 (#1063) 2022-04-27 17:58:03 +02:00
Baptiste Augrain
afe72aba83 fix: disable updating the builtin extensions (#1062) 2022-04-27 17:20:47 +02:00
Pineapples
bff2e71e55 docs: update CODE_OF_CONDUCT.md from v1.4 to v2.1 (#1056) 2022-04-20 06:09:35 +02:00
Baptiste Augrain
966ae12699 build: use node v16 (#1054) 2022-04-19 22:55:02 +02:00
GeopJr
843ef66728 fix: letterpress icons names (#1042) 2022-04-19 20:35:22 +02:00
PF4Public
8336a4c7ad fix: update telemetry domains (#1047) 2022-04-14 23:28:22 +02:00
Frazer Smith
1eff01d6f0 ci: bump github actions (#1046) 2022-04-11 14:37:54 +02:00
Baptiste Augrain
db8d1e7a8d fix: add missing extensionEnabledApiProposals and more (#1040) 2022-04-07 23:15:32 +02:00
Baptiste Augrain
c741ae3347 refactor: remove deprecated telemetry.enableTelemetry (#1039) 2022-04-07 20:30:38 +02:00
Baptiste Augrain
becd52f518 ci: fully disable snap for arm64 (#1028) 2022-03-31 12:20:26 +02:00
Baptiste Augrain
7ee4f2f735 fix(1.66): update patches & linux workflow (#1027) 2022-03-31 10:46:32 +02:00
Baptiste Augrain
3208188249 build: use windows 2019 since 2016 is deprecated (#1017) 2022-03-16 09:02:30 +01:00
Baptiste Augrain
be445bcba6 docs: update CI shields in README.md (#1016) 2022-03-16 08:06:03 +01:00
Baptiste Augrain
3277bd4fa1 fix: try to fix snap (#1009) 2022-03-07 11:18:37 +01:00
Baptiste Augrain
08b0b1b3e5 fix(snap): add debug infos (#1008) 2022-03-04 15:08:21 +01:00
Baptiste Augrain
c46abc14ee fix(appimage): remove unnecessary glib (#1007) 2022-03-04 15:02:49 +01:00
Baptiste Augrain
5bd755a9cc fix(1.65): update patches (#1001) 2022-03-04 09:47:45 +01:00
Baptiste Augrain
1cbc6e55bf enhance: move variables outside loop (#1002) 2022-03-04 09:16:49 +01:00
Simon Sobisch
351460f992 Merge pull request #997 from dsm/master
changed hardcoded owner
2022-03-04 08:33:58 +01:00
Muhammet Şükrü Demir
f7e1c11ea7 owner and repository pre-calculated
added OWNER and REPOSITORY var using github env vars and if not available fallback option is available.
2022-03-04 10:30:33 +03:00
Muhammet Şükrü Demir
50197bbeef changed hardcoded owner 2022-02-15 15:03:01 +03:00
Baptiste Augrain
b319b178ea fix: update size of letterpress images (#992) 2022-02-06 16:05:53 +01:00
Baptiste Augrain
2dab7cfcdf fix(1.64): update patch (#988) 2022-02-03 21:46:31 +01:00
Baptiste Augrain
6a86200d38 docs: how to fix default file manager on linux (#983) 2022-01-30 14:12:54 +01:00
Rui Ming (Max) Xiong
c803059121 docs: update built-in package names (#982) 2022-01-28 08:16:44 +01:00
Pavlo Rudy
d529fd3c20 Merge pull request #978 from myersg86/master
Fix typos in DOCS.md and README.md
2022-01-22 19:53:53 +02:00
myersg86
f817226abd Fix typos in DOCS.md and README.md
DOCS.md:85,91: offical -> official
README.md:130: limitted -> limited
2022-01-22 10:50:18 -07:00
Baptiste Augrain
353c002605 fix(appimage): remove extraneous libs (#944) 2022-01-20 20:04:34 +01:00
Baptiste Augrain
3f00a255b1 build(win): remove superfluous files from archive (#967) 2021-12-26 10:34:08 +01:00
Baptiste Augrain
23152cf50f fix(snap): review snap only when needed (#959) 2021-12-18 16:08:51 +01:00
Bruno Cabral
1f31a1c27b indicate build documentation (#890) 2021-12-18 15:44:29 +01:00
Baptiste Augrain
49eb715333 fix(snap): publish snap as stable (#958) 2021-12-18 15:42:43 +01:00
Baptiste Augrain
bbcdc2be11 fix(snap): add missing icons and add review before publish (#957) 2021-12-18 10:24:44 +01:00
Baptiste Augrain
dfd7ebbf85 fix: updating snapcraft.yaml to latest version (#956) 2021-12-18 05:17:12 +01:00
Baptiste Augrain
e087f00ff1 fix: specify image for arm64 (#954) 2021-12-18 04:30:42 +01:00
Baptiste Augrain
79bc275386 fix: update acl (#953) 2021-12-18 04:03:23 +01:00
Baptiste Augrain
851b5f2659 fix: pass platform and correctly release (#952) 2021-12-18 03:28:34 +01:00
Baptiste Augrain
e5de9c3096 fix: install snapcraft to check version (#951) 2021-12-18 03:09:27 +01:00
Baptiste Augrain
3b6954231f fix: detect version based on the architecture (#950) 2021-12-18 02:58:54 +01:00
Baptiste Augrain
99840540ac fix: use diddlesnaps/snapcraft-multiarch-action to generate arm64 snap (#949) 2021-12-18 02:25:18 +01:00
Baptiste Augrain
3103c80234 fix: correct jobs' runs-on (#948) 2021-12-18 01:41:21 +01:00
Baptiste Augrain
6a4668040b fix: use ubuntu-18.04 (#947) 2021-12-18 01:35:10 +01:00
Baptiste Augrain
02755e7599 fix: build differently so arm64 can be generated (#946) 2021-12-18 01:24:22 +01:00
Baptiste Augrain
36b06dd66b fix: correct script to get latest snap version (#945) 2021-12-18 00:37:49 +01:00
Baptiste Augrain
33a6670cad feat: publish snap (#942) 2021-12-17 23:21:31 +01:00
Pavlo Rudy
1ef601a79b sync build dependencies with MS VSC docs 2021-12-12 23:08:34 +02:00
Pavlo Rudy
c67c2ad9f5 Merge pull request #891 from brccabral/dependencies
add missed Linux build dependencies
2021-12-12 22:49:45 +02:00
Baptiste Augrain
d164e43b78 fix(1.63): update patch (#937) 2021-12-09 02:30:35 +01:00
Pavlo Rudy
f3ba593ae7 Merge pull request #927 from matkoniecz/patch-1
do not suggest that EOL versions are supported
2021-11-29 18:10:19 +02:00
Mateusz Konieczny
78b32d7931 do not suggest that EOL versions are supported 2021-11-24 10:56:42 +01:00
Baptiste Augrain
c71f2250ce fix: remove bad negation (#916) 2021-11-12 02:14:13 +01:00
Baptiste Augrain
b0154c7831 fix: add debug log (#915) 2021-11-10 11:52:44 +01:00
Baptiste Augrain
23313d41ba fix: correctly read exit status (#914) 2021-11-10 10:40:20 +01:00
Baptiste Augrain
cf48030b59 fix: deleting bad assets (#913) 2021-11-10 10:13:12 +01:00
Baptiste Augrain
848aabfe54 fix: fixing release script (#912) 2021-11-10 09:36:35 +01:00
Baptiste Augrain
10a0cb4b30 fix: remove infinity loop in the release script (#904) 2021-11-06 12:58:53 +01:00
Baptiste Augrain
0469329683 fix: fixing release script (#903) 2021-11-06 12:26:36 +01:00
Baptiste Augrain
6acd2fbfe1 feat: break force the uploads (#902) 2021-11-06 12:03:44 +01:00
Baptiste Augrain
38810539a7 fix(1.62): fix patches (#899) 2021-11-06 02:52:55 +01:00
Bruno Cabral
34b399c05a update build.md
update dependencies list
2021-10-27 18:37:44 -07:00
Pavlo Rudy
b0ff3b4f34 re-disable telemetry; closes #872 (#883) 2021-10-19 20:55:44 +02:00
Baptiste Augrain
ca2dc5fcaf feat: remove use of lfs (#881) 2021-10-17 02:20:08 +02:00
Simon Sobisch
962326e182 Merge pull request #871 from GitMensch/msi
license conversion txt2rtf
2021-10-16 21:04:01 +02:00
Simon Sobisch
d3371f8aab license conversion txt2rtf
directly via shell as neither special escaping nor conversion are necessary
2021-10-16 21:01:37 +02:00
Baptiste Augrain
0f5a7d4a1b fix(1.61): update github authentication patch (#866) 2021-10-08 23:14:50 +02:00
Baptiste Augrain
02cc193086 fix: check of armhf's rpm is corrected (#860) 2021-10-01 19:21:07 +02:00
Baptiste Augrain
e564685c1e feat: selective publish (#858) 2021-10-01 18:47:10 +02:00
Baptiste Augrain
85cbd0b0f2 fix: remove macos arm64 build (#851) 2021-09-20 09:25:00 +02:00
Baptiste Augrain
b748657b09 feat: add arm64 on macos build (#848) 2021-09-18 10:12:10 +02:00
Baptiste Augrain
db02ad1133 feat: remove CORS validation patch (#845) 2021-09-17 23:25:34 +02:00
Baptiste Augrain
573c0230c5 fix(linux): add shell attribute to the AppImage can be copied (#844) 2021-09-15 23:04:58 +02:00
Baptiste Augrain
bb483f44e2 fix(linux): correctly check if the AppImage has been built (#843) 2021-09-15 22:28:27 +02:00
Baptiste Augrain
3fa3f18d91 fix(windows): generate checksum for both .msi files (#838) 2021-09-12 09:13:59 +02:00
Baptiste Augrain
ef1ce60ad8 fix: don't loop when there is no assets in the tag (#837) 2021-09-12 00:51:25 +02:00
Baptiste Augrain
a6da364b3c fix: correct filename (#834) 2021-09-10 09:49:32 +02:00
Baptiste Augrain
a8964122dc build(linux): reorganizing appimage build (#831) 2021-09-09 10:18:22 +02:00
Baptiste Augrain
f1dd2cf1cc ci(linux): copy should ignore missing files (#829) 2021-09-09 02:41:56 +02:00
Baptiste Augrain
108166f640 build: add MSI (#827)
Co-authored-by: Alexander Hass <4450722+alexhass@users.noreply.github.com>
2021-09-09 01:38:07 +02:00
Baptiste Augrain
07877c5e12 fix: correctly load internal pages (#826) 2021-09-07 12:24:50 +02:00
Baptiste Augrain
5439ac0757 fix: update license menu (#824) 2021-09-07 12:22:40 +02:00
Baptiste Augrain
9c2f61b79c fix: report issue to vscodium (#825) 2021-09-07 01:56:10 +02:00
Baptiste Augrain
0d433893b7 use github personal access token (#672) 2021-09-06 15:22:30 +02:00
Baptiste Augrain
bf524a9c2c fix(1.60): add patch to disable CORS (#822) 2021-09-06 12:01:31 +02:00
Baptiste Augrain
d862b86a27 fix(1.60): update custom gallery patch (#817) 2021-09-02 22:34:19 +02:00
Baptiste Augrain
8aa9de17b1 fix: rewrite tag search for linux arm (#809) 2021-08-27 23:40:30 +02:00
Baptiste Augrain
72363757b3 build: push event are detected to avoid premature deployment (#808) 2021-08-27 18:26:59 +02:00
Baptiste Augrain
96332714ae build: specify vscode version to build (#807) 2021-08-27 16:01:17 +02:00
Baptiste Augrain
a5506b975c add some small improvements (#803) 2021-08-23 05:05:01 +02:00
Baptiste Augrain
b175fd43eb fix: fail build when a patch can't be applied (#797) 2021-08-14 22:59:32 +02:00
Baptiste Augrain
b1970e82af do not start crashReporter when appCenter isn't configured (#787) 2021-08-06 01:49:57 +02:00
Baptiste Augrain
23160ad483 Disable cors (#774) 2021-08-03 18:51:40 +02:00
swinder0161
51ee66e019 Add support to build insider latest build: $ INSIDER=1 ./build/build_mac.sh (#784) 2021-08-03 14:43:49 +02:00
descodess
2abbfed911 fix typo in README.md (#785) 2021-08-03 14:42:23 +02:00
Baptiste Augrain
8187c7fd7f add a loop to apply patches (#779) 2021-07-29 12:31:54 +02:00
Baptiste Augrain
53b071366b Fix AppImage's dependency (#775)
* move dependency installation into workflow

* dependency install not needed
2021-07-26 01:15:55 +02:00
Baptiste Augrain
98372f9d1e Fixing python in AppImage (#773)
- overwrite AppRun to remove the env variables `PYTHONHOME` and `PYTHONPATH`
- update building script to it can be build manually in docker
2021-07-23 10:01:38 +02:00
Baptiste Augrain
30313a518b Update doc (#772)
* add missing dependencies for linux
* update node version
2021-07-23 09:48:52 +02:00
Michael Kirsch
2ecbd09c2b update icon paths (#440) 2021-07-22 16:43:39 -07:00
swinder0161
66551077f8 Add support to use GNU sed installed in mac osx (#770)
* Add support to use GNU sed installed in mac osx

* Move common functions to utils.sh

Co-authored-by: Swinder Pal Singh Juneja <swinder.juneja@oneplus.com>
2021-07-21 22:49:00 +02:00
Liwen Guo
e1b4583cf9 Use applicationName for update cache path (#765) 2021-07-16 16:37:07 -07:00
Baptiste Augrain
bbc6e8f4b7 Merge pull request #756 from larryw3i/larryw3i-patch-1
using snap to install codium requires classic mode
2021-07-15 11:10:03 +02:00
atesca09
d29337f328 Fix custom-gallery patch (#758)
* Fix custom-gallery patch

* Bump GA to node 14

Co-authored-by: Atesca <2404098-atesca@users.noreply.gitlab.com>
2021-07-10 07:09:37 -07:00
Larry Wei
ca52c1cfda using snap to install codium requires classic mode 2021-07-06 15:15:11 +08:00
Peter Squicciarini
c7cc061077 Merge pull request #742 from ShadowCreator250/add-extension-links-to-readme
README: add links to marketplace for extensions included during build process
2021-07-02 09:57:13 -07:00
Peter Squicciarini
34b5dbce34 Merge pull request #753 from daiyam/fix-preview
fix markdown's preview
2021-07-02 09:56:45 -07:00
Peter Squicciarini
cb8d774c77 Merge pull request #754 from daiyam/doc 2021-07-02 09:47:54 -07:00
Baptiste Augrain
6a5ba92d10 add link to build doc 2021-06-30 10:29:54 +02:00
Baptiste Augrain
643b0f869d - add build doc
- improve terminal doc
2021-06-30 10:24:06 +02:00
Baptiste Augrain
7d636ce0f7 build media files used for the preview 2021-06-29 20:02:52 +02:00
Peter Squicciarini
5b3b76e65b Merge pull request #748 from swinder0161/user-patches
Add ability to apply user specific patches to vscode source
2021-06-26 11:13:10 -07:00
Swinder Pal Singh Juneja
64e101b963 Add ability to apply user specific patches to vscode source 2021-06-21 08:50:25 +05:30
ShadowCreator250
527ce5efd2 README: add links to marketplace for extensions included during build process 2021-06-17 11:12:59 +02:00
Peter Squicciarini
8bb2491be1 Merge pull request #736 from daiyam/icon-builder
Make icons builder includable
2021-06-15 13:32:28 -07:00
Peter Squicciarini
63244816b6 Merge pull request #737 from daiyam/fix-build
fix build
2021-06-12 20:00:41 -07:00
Baptiste Augrain
e0944b1769 fix patches 2021-06-12 23:53:56 +02:00
Baptiste Augrain
28ccd0bf00 insert final newline 2021-06-07 22:47:56 +02:00
Baptiste Augrain
226c019adf rewrite script so it can be included 2021-06-07 22:40:02 +02:00
Peter Squicciarini
2a742910df Merge pull request #730 from papjul/patch-1
Vscodium officially available in Gentoo repos
2021-06-07 10:57:56 -07:00
Peter Squicciarini
15fac881ce Merge pull request #735 from daiyam/fix-sed
detect sed version
2021-06-07 02:12:33 -07:00
Baptiste Augrain
d5f6866981 detect sed version instead of using global variable 2021-06-07 10:05:57 +02:00
Baptiste Augrain
b00ffc8610 Fix icons (#734)
* move shared icon

* add generated Inno Setup icons
2021-06-06 09:03:25 -07:00
Baptiste Augrain
52ef4eb7be linux: fix appimage (#731)
* always use latest version of pkg2appimage

* generate zsync file to make the appimage updateable

* install fuse for GH actions

* remove fuse

* run AppImage

* comment converts

* getting info on images

* using bugfix from #536

* add DOCKER_BUILD flag

* extract AppImageAssistant before running it

* use local `convert` and not from `pkg2appimage`
2021-06-05 16:47:16 -07:00
Peter Squicciarini
efe3f6b103 Merge pull request #695 from jingyu9575/patch-1
Fix Jupyter extension crash
2021-06-05 08:29:07 -07:00
Peter Squicciarini
a8cd9694ee Merge pull request #683 from ghost/add-qol
Allow workflows to run by using the REST API or from the Actions tab on GitHub
2021-06-05 08:24:50 -07:00
Julien Papasian
d8bc3e7963 Vscodium officially available in Gentoo repos
No longer requires to install an overlay.
2021-06-04 20:06:56 +02:00
Peter Squicciarini
d636a66828 Merge pull request #728 from daiyam/fix-gallery
fix custom gallery on windows
2021-05-30 08:55:57 -07:00
Baptiste Augrain
97db123287 fix custom gallery on windows 2021-05-28 19:45:05 +02:00
Peter Squicciarini
10815a5b2d Merge pull request #715 from atesca09/custom_gallery_patch_fix
Fix custom gallery patch for 1.56
2021-05-09 08:42:17 -07:00
Atesca
656a02b50f Fix custom gallery pacht for 1.56 2021-05-06 16:30:55 +02:00
jingyu9575
3d016f4f48 Add all extensionAllowedProposedApi from VSCode 2021-04-10 05:31:26 +08:00
jingyu9575
9b538aebc3 Fix Jupyter extension crash 2021-04-07 01:23:54 +08:00
Baptiste Augrain
d8a91cf13e fixing build for 1.55 (#690)
* Fix patch for builds after 1.55

* Remove no longer needed centos7 patch

* updating patches for 1.55

Co-authored-by: Atesca <2404098-atesca@users.noreply.gitlab.com>
2021-04-01 07:43:49 -07:00
wdkse
c43a4e5136 obsolete win32-build.yml information 2021-03-29 12:12:44 -04:00
wdkse
336bfce8fd workflows manual trigger via dispatch event 2021-03-29 12:11:20 -04:00
Peter Squicciarini
62a7dce09d Merge pull request #655 from daiyam/fix-binary 2021-03-25 09:08:37 -07:00
Baptiste Augrain
b07aee0b20 Merge branch 'master' into fix-binary 2021-03-24 22:42:06 +01:00
Peter Squicciarini
73c8e12182 Merge pull request #674 from daiyam/custom-gallery 2021-03-24 12:46:28 -07:00
Baptiste Augrain
96312bd7f4 add subheadings to table of contents 2021-03-24 02:15:35 +01:00
Baptiste Augrain
0ead786b6c - rename env variables
- update doc
2021-03-19 17:02:21 +01:00
Baptiste Augrain
ccd219e96e - add cacheUrl
- locate & load user-customized product.json
2021-03-19 13:27:33 +01:00
Baptiste Augrain
e7c96e706d Merge branch '#537' into custom-gallery 2021-03-19 05:30:27 +01:00
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
Baptiste Augrain
b99e93970e fixing windows 2021-03-11 04:11:59 +01:00
Baptiste Augrain
3a15ad9778 fixing for 1.54 2021-03-11 02:13:52 +01:00
Baptiste Augrain
edc9773c9c Merge branch 'master' into fix-binary 2021-03-11 01:45:06 +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
Baptiste Augrain
54b4d842ad Merge branch 'master' into fix-binary 2021-03-08 20:09:18 +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
Baptiste Augrain
b17312f534 patch static binary name 2021-02-26 22:14:40 +01: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
articlecat
23bd025392 Apply custom-extensions-gallery.patch in prepare_vscode.sh 2020-10-19 06:01:04 -07:00
articlecat
dad2a98413 Add patch for custom extensions gallery
Extend product.ts to accept environment variables for custom extensions gallery URLs
2020-10-19 05:59:14 -07:00
353 changed files with 12273 additions and 6179 deletions

25
.editorconfig Normal file
View File

@@ -0,0 +1,25 @@
root = true
[*]
indent_style = space
indent_size = 2
tab_width = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
[*.sh]
indent_style = space
indent_size = 2
[*.{yml,yaml}]
indent_style = space
indent_size = 2
[*.patch]
trim_trailing_whitespace = false
insert_final_newline = false
[*.svg]
insert_final_newline = false

View File

@@ -14,7 +14,7 @@ A clear and concise description of what the bug is.
- [ ] 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.
- [ ] I checked [the Docs page](https://github.com/VSCodium/vscodium/blob/master/docs/index.md) and [the Troubleshooting page](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md) and my issue is not mentioned there.
**To Reproduce**
Steps to reproduce the behavior:
@@ -30,9 +30,11 @@ A clear and concise description of what you expected to happen.
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. Mac OS, Ubuntu 16.04, etc]
- OS: [e.g. Mac OS, Ubuntu 20.04, etc]
- Architecture [e.g. x64, ia32, arm64]
- Version [e.g. 1.33.0]
- App Manager [e.g. Winget, Homebrew, Snap, AUR, RPM, Nix, ...]
- Sandboxed [e.g. no, Flatpak, Snap]
**Additional context**
Add any other context about the problem here.

11
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

260
.github/workflows/insider-linux.yml vendored Normal file
View File

@@ -0,0 +1,260 @@
name: insider-linux
on:
workflow_dispatch:
inputs:
release_version:
type: string
description: Forced release version
generate_assets:
type: boolean
description: Generate assets
repository_dispatch:
types: [insider]
push:
branches: [ insider ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ insider ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}-insiders
GITHUB_BRANCH: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || 'insider' }}
OS_NAME: linux
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: insider
jobs:
check:
runs-on: ubuntu-latest
container:
image: vscodium/vscodium-linux-build-agent:bionic-x64
outputs:
MS_COMMIT: ${{ env.MS_COMMIT }}
MS_TAG: ${{ env.MS_TAG }}
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_BUILD: ${{ env.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
env:
RELEASE_VERSION: ${{ github.event.inputs.release_version }}
run: ./get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: ./check_cron_or_pr.sh
dependencies:
needs:
- check
runs-on: ubuntu-latest
env:
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }}
strategy:
fail-fast: false
matrix:
include:
- vscode_arch: x64
image: vscodium/vscodium-linux-build-agent:centos7-devtoolset8-x64
# - vscode_arch: arm64
# image: vscodium/vscodium-linux-build-agent:centos7-devtoolset8-arm64
container:
image: ${{ matrix.image }}
if: needs.check.outputs.SHOULD_BUILD == 'yes' || needs.check.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
run: ./get_repo.sh
- uses: docker/setup-qemu-action@v3
if: matrix.vscode_arch == 'arm64' || matrix.vscode_arch == 'ppc64le'
- name: Install remote dependencies
run: ./install_remote_dependencies.sh
- name: Save remote dependencies
uses: actions/upload-artifact@v3
with:
name: remote-dependencies-${{ matrix.vscode_arch }}
path: ./remote-dependencies.tar
retention-days: ${{ needs.check.outputs.SHOULD_DEPLOY == 'yes' && 30 || 1 }}
build:
needs:
- check
- dependencies
runs-on: ubuntu-latest
env:
DISABLE_UPDATE: 'yes'
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }}
SHOULD_BUILD: ${{ needs.check.outputs.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ needs.check.outputs.SHOULD_DEPLOY }}
strategy:
fail-fast: false
matrix:
include:
- vscode_arch: x64
npm_arch: x64
image: vscodium/vscodium-linux-build-agent:focal-x64
- vscode_arch: arm64
npm_arch: arm64
image: vscodium/vscodium-linux-build-agent:focal-arm64
- vscode_arch: armhf
npm_arch: arm
image: vscodium/vscodium-linux-build-agent:focal-armhf
- vscode_arch: ppc64le
npm_arch: ppc64
image: vscodium/vscodium-linux-build-agent:focal-ppc64le
container:
image: ${{ matrix.image }}
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
outputs:
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_BUILD: ${{ env.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
if: needs.check.outputs.SHOULD_BUILD == 'yes' || needs.check.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
run: ./get_repo.sh
- name: Install GH
run: ./install_gh.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Restore remote dependencies
uses: actions/download-artifact@v3
with:
name: remote-dependencies-${{ matrix.vscode_arch }}
if: env.SHOULD_BUILD == 'yes' && matrix.vscode_arch == 'x64'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
npm_config_arch: ${{ matrix.npm_arch }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
aur:
needs:
- build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- package_name: vscodium-insiders-bin
- package_name: vscodium-insiders
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- name: Get version
env:
RELEASE_VERSION: ${{ needs.build.outputs.RELEASE_VERSION }}
run: echo "PACKAGE_VERSION=${RELEASE_VERSION/-*/}" >> "${GITHUB_ENV}"
- name: Publish ${{ matrix.package_name }}
uses: zokugun/github-actions-aur-releaser@v1
with:
package_name: ${{ matrix.package_name }}
package_version: ${{ env.PACKAGE_VERSION }}
aur_private_key: ${{ secrets.AUR_PRIVATE_KEY }}
aur_username: ${{ secrets.AUR_USERNAME }}
aur_email: ${{ secrets.AUR_EMAIL }}
snap:
needs:
- build
runs-on: ubuntu-latest
env:
APP_NAME: codium
strategy:
fail-fast: false
matrix:
platform:
- amd64
- arm64
# if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
if: false
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Check version
env:
ARCHITECTURE: ${{ matrix.platform }}
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_STORE_LOGIN }}
run: ./stores/snapcraft/check_version.sh
- uses: docker/setup-qemu-action@v3
if: env.SHOULD_DEPLOY == 'yes'
- uses: diddlesnaps/snapcraft-multiarch-action@v1
with:
path: stores/snapcraft/insider
architecture: ${{ matrix.platform }}
id: build
if: env.SHOULD_DEPLOY == 'yes'
- uses: diddlesnaps/snapcraft-review-action@v1
with:
snap: ${{ steps.build.outputs.snap }}
isClassic: 'true'
if: env.SHOULD_DEPLOY == 'yes'
- uses: snapcore/action-publish@master
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_STORE_LOGIN }}
with:
snap: ${{ steps.build.outputs.snap }}
release: edge
if: env.SHOULD_DEPLOY == 'yes'

113
.github/workflows/insider-macos.yml vendored Normal file
View File

@@ -0,0 +1,113 @@
name: insider-macos
on:
workflow_dispatch:
inputs:
release_version:
type: string
description: Forced release version
generate_assets:
type: boolean
description: Generate assets
repository_dispatch:
types: [insider]
push:
branches: [ insider ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ insider ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}-insiders
GITHUB_BRANCH: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || 'insider' }}
OS_NAME: osx
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: insider
jobs:
build:
runs-on: ${{ matrix.runner }}
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
strategy:
fail-fast: false
matrix:
include:
- runner: macos-12
vscode_arch: x64
- runner: [self-hosted, macOS, ARM64]
vscode_arch: arm64
steps:
- uses: actions/checkout@v4
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18.17'
- name: Setup Python 3
uses: actions/setup-python@v5
with:
python-version: '3.11'
if: env.VSCODE_ARCH == 'x64'
- name: Clone VSCode repo
env:
RELEASE_VERSION: ${{ github.event.inputs.release_version }}
run: . get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: . check_cron_or_pr.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: . check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
env:
CERTIFICATE_OSX_P12: ${{ secrets.CERTIFICATE_OSX_P12 }}
CERTIFICATE_OSX_PASSWORD: ${{ secrets.CERTIFICATE_OSX_PASSWORD }}
CERTIFICATE_OSX_ID: ${{ secrets.CERTIFICATE_OSX_ID }}
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Clean up keychain
if: always()
run: |
KEYCHAIN=$RUNNER_TEMP/build.keychain
if [ -f "$KEYCHAIN" ];
then
security delete-keychain $KEYCHAIN
fi

75
.github/workflows/insider-spearhead.yml vendored Normal file
View File

@@ -0,0 +1,75 @@
name: insider-spearhead
on:
workflow_dispatch:
inputs:
new_release:
type: boolean
description: Force new Release
force_dispatch:
type: boolean
description: Force dispatch
schedule:
- cron: '0 7 * * *'
jobs:
build:
runs-on: [self-hosted, macOS, ARM64]
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}-insiders
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
OS_NAME: osx
VSCODE_ARCH: arm64
VSCODE_LATEST: yes
VSCODE_QUALITY: insider
steps:
- uses: actions/checkout@v4
with:
ref: insider
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Clone VSCode repo
run: . get_repo.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NEW_RELEASE: ${{ github.event.inputs.new_release }}
IS_SPEARHEAD: 'yes'
run: . check_tags.sh
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Update <quality>.json
run: ./update_qualityjson.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
if: env.SHOULD_BUILD == 'yes'
- name: Prepare source
run: ./prepare_src.sh
if: env.SHOULD_BUILD == 'yes'
- name: Release source
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes'
- name: Dispatch builds
uses: peter-evans/repository-dispatch@v2
with:
event-type: 'insider'
if: env.SHOULD_BUILD == 'yes' || github.event.inputs.force_dispatch == 'true'

140
.github/workflows/insider-windows.yml vendored Normal file
View File

@@ -0,0 +1,140 @@
name: insider-windows
on:
workflow_dispatch:
inputs:
release_version:
type: string
description: Forced release version
generate_assets:
type: boolean
description: Generate assets
repository_dispatch:
types: [insider]
push:
branches: [ insider ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ insider ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}-insiders
GITHUB_BRANCH: ${{ github.event_name == 'pull_request' && github.event.pull_request.head.sha || 'insider' }}
OS_NAME: windows
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: insider
jobs:
build:
runs-on: windows-2019
defaults:
run:
shell: bash
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
strategy:
fail-fast: false
matrix:
vscode_arch:
- x64
# - ia32
- arm64
outputs:
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
steps:
- uses: actions/checkout@v4
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18.17'
- name: Install Yarn
run: npm install -g yarn
- name: Setup Python 3
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Clone VSCode repo
env:
RELEASE_VERSION: ${{ github.event.inputs.release_version }}
run: ./get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: ./check_cron_or_pr.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
if: env.SHOULD_DEPLOY == '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
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
winget:
needs: build
runs-on: windows-latest
defaults:
run:
shell: bash
env:
APP_IDENTIFIER: VSCodium.VSCodium.Insiders
ASSETS_REPOSITORY: vscodium-insiders
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v4
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Check version
run: ./stores/winget/check_version.sh
env:
RELEASE_VERSION: ${{ needs.build.outputs.RELEASE_VERSION }}
- name: Release to WinGet
uses: vedantmgoyal2009/winget-releaser@v2
with:
identifier: ${{ env.APP_IDENTIFIER }}
version: ${{ env.RELEASE_VERSION }}
release-repository: ${{ env.ASSETS_REPOSITORY }}
release-tag: ${{ env.RELEASE_VERSION }}-insider
installers-regex: '\.exe$' # only .exe files
token: ${{ secrets.STRONGER_GITHUB_TOKEN }}
if: env.SHOULD_DEPLOY == 'yes'

View File

@@ -1,92 +0,0 @@
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:x64
- vscode_arch: arm64
npm_arch: arm64
image: vscodium/vscodium-linux-build-agent:buster-arm64
- vscode_arch: armhf
npm_arch: armv7l
image: vscodium/vscodium-linux-build-agent:buster-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: Clone VSCode repo
run: ./get_repo.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
- 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'
- name: Generate shasums
run: ./sum.sh
if: env.SHOULD_BUILD == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == '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'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

16
.github/workflows/lock.yml vendored Normal file
View File

@@ -0,0 +1,16 @@
name: Lock Issues
on:
schedule:
- cron: '0 2 * * *'
jobs:
lock:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@v5
with:
github-token: ${{ github.token }}
issue-inactive-days: '90'
pr-inactive-days: '90'
log-output: true

View File

@@ -1,96 +0,0 @@
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: Clone VSCode repo
run: |
. get_repo.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
. check_tags.sh
- 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'
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'
- 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'
- name: Generate shasums
run: ./sum.sh
if: env.SHOULD_BUILD == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == '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'
run: ./update_version.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

280
.github/workflows/stable-linux.yml vendored Normal file
View File

@@ -0,0 +1,280 @@
name: stable-linux
on:
workflow_dispatch:
inputs:
force_version:
type: boolean
description: Force update version
generate_assets:
type: boolean
description: Generate assets
checkout_pr:
type: string
description: Checkout PR
repository_dispatch:
types: [stable]
push:
branches: [ master ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ master ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}
OS_NAME: linux
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: stable
jobs:
check:
runs-on: ubuntu-latest
container:
image: vscodium/vscodium-linux-build-agent:bionic-x64
outputs:
MS_COMMIT: ${{ env.MS_COMMIT }}
MS_TAG: ${{ env.MS_TAG }}
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_BUILD: ${{ env.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
env:
PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }}
run: ./get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: ./check_cron_or_pr.sh
dependencies:
needs:
- check
runs-on: ubuntu-latest
env:
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }}
strategy:
fail-fast: false
matrix:
include:
- vscode_arch: x64
image: vscodium/vscodium-linux-build-agent:centos7-devtoolset8-x64
# - vscode_arch: arm64
# image: vscodium/vscodium-linux-build-agent:centos7-devtoolset8-arm64
container:
image: ${{ matrix.image }}
if: needs.check.outputs.SHOULD_BUILD == 'yes' || needs.check.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
# env:
# PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }}
run: ./get_repo.sh
- uses: docker/setup-qemu-action@v3
if: matrix.vscode_arch == 'arm64' || matrix.vscode_arch == 'ppc64le'
- name: Install remote dependencies
run: ./install_remote_dependencies.sh
- name: Save remote dependencies
uses: actions/upload-artifact@v3
with:
name: remote-dependencies-${{ matrix.vscode_arch }}
path: ./remote-dependencies.tar
retention-days: ${{ needs.check.outputs.SHOULD_DEPLOY == 'yes' && 30 || 1 }}
build:
needs:
- check
- dependencies
runs-on: ubuntu-latest
env:
DISABLE_UPDATE: 'yes'
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
RELEASE_VERSION: ${{ needs.check.outputs.RELEASE_VERSION }}
SHOULD_BUILD: ${{ needs.check.outputs.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ needs.check.outputs.SHOULD_DEPLOY }}
strategy:
fail-fast: false
matrix:
include:
- vscode_arch: x64
npm_arch: x64
image: vscodium/vscodium-linux-build-agent:focal-x64
- vscode_arch: arm64
npm_arch: arm64
image: vscodium/vscodium-linux-build-agent:focal-arm64
- vscode_arch: armhf
npm_arch: arm
image: vscodium/vscodium-linux-build-agent:focal-armhf
- vscode_arch: ppc64le
npm_arch: ppc64
image: vscodium/vscodium-linux-build-agent:focal-ppc64le
container:
image: ${{ matrix.image }}
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
outputs:
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_BUILD: ${{ env.SHOULD_BUILD }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
if: needs.check.outputs.SHOULD_BUILD == 'yes' || needs.check.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v3
with:
ref: ${{ env.GITHUB_BRANCH }}
- name: Clone VSCode repo
env:
PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }}
run: ./get_repo.sh
- name: Install GH
run: ./install_gh.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Restore remote dependencies
uses: actions/download-artifact@v3
with:
name: remote-dependencies-${{ matrix.vscode_arch }}
if: env.SHOULD_BUILD == 'yes' && matrix.vscode_arch == 'x64'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
npm_config_arch: ${{ matrix.npm_arch }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Upload assets
uses: actions/upload-artifact@v3
with:
name: assets
path: ./assets/
retention-days: 3
if: env.SHOULD_BUILD == 'yes' && github.event.inputs.generate_assets == 'true'
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_DEPLOY == 'yes'
aur:
needs:
- build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- package_name: vscodium
package_type: stable
- package_name: vscodium-git
package_type: rolling
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- name: Publish ${{ matrix.package_name }}
uses: zokugun/github-actions-aur-releaser@v1
with:
package_name: ${{ matrix.package_name }}
package_type: ${{ matrix.package_type }}
aur_private_key: ${{ secrets.AUR_PRIVATE_KEY }}
aur_username: ${{ secrets.AUR_USERNAME }}
aur_email: ${{ secrets.AUR_EMAIL }}
snap:
needs:
- build
runs-on: ubuntu-latest
env:
APP_NAME: codium
strategy:
fail-fast: false
matrix:
platform:
- amd64
- arm64
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v3
- name: Check version
env:
ARCHITECTURE: ${{ matrix.platform }}
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_STORE_LOGIN }}
run: ./stores/snapcraft/check_version.sh
- uses: docker/setup-qemu-action@v3
if: env.SHOULD_DEPLOY == 'yes'
- uses: diddlesnaps/snapcraft-multiarch-action@v1
with:
path: stores/snapcraft/stable
architecture: ${{ matrix.platform }}
id: build
if: env.SHOULD_DEPLOY == 'yes'
- uses: diddlesnaps/snapcraft-review-action@v1
with:
snap: ${{ steps.build.outputs.snap }}
isClassic: 'true'
if: env.SHOULD_DEPLOY == 'yes'
- uses: snapcore/action-publish@master
env:
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAP_STORE_LOGIN }}
with:
snap: ${{ steps.build.outputs.snap }}
release: stable
if: env.SHOULD_DEPLOY == 'yes'
deb-rpm-repo-hook:
needs:
- build
runs-on: ubuntu-latest
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- name: Trigger repository rebuild
env:
GL_PAGES_TOKEN: ${{ secrets.GL_PAGES_TOKEN }}
run: curl -X POST --fail -F token="${GL_PAGES_TOKEN}" -F ref=master https://gitlab.com/api/v4/projects/8762263/trigger/pipeline

108
.github/workflows/stable-macos.yml vendored Normal file
View File

@@ -0,0 +1,108 @@
name: stable-macos
on:
workflow_dispatch:
inputs:
force_version:
type: boolean
description: Force update version
generate_assets:
type: boolean
description: Generate assets
repository_dispatch:
types: [stable]
push:
branches: [ master ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ master ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}
OS_NAME: osx
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: stable
jobs:
build:
runs-on: ${{ matrix.runner }}
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
strategy:
fail-fast: false
matrix:
include:
- runner: macos-12
vscode_arch: x64
- runner: [self-hosted, macOS, ARM64]
vscode_arch: arm64
steps:
- uses: actions/checkout@v4
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18.17'
- name: Setup Python 3
uses: actions/setup-python@v5
with:
python-version: '3.11'
if: env.VSCODE_ARCH == 'x64'
- name: Clone VSCode repo
run: . get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: . check_cron_or_pr.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: . check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
env:
CERTIFICATE_OSX_P12: ${{ secrets.CERTIFICATE_OSX_P12 }}
CERTIFICATE_OSX_PASSWORD: ${{ secrets.CERTIFICATE_OSX_PASSWORD }}
CERTIFICATE_OSX_ID: ${{ secrets.CERTIFICATE_OSX_ID }}
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Clean up keychain
if: always()
run: |
KEYCHAIN=$RUNNER_TEMP/build.keychain
if [ -f "$KEYCHAIN" ];
then
security delete-keychain $KEYCHAIN
fi

73
.github/workflows/stable-spearhead.yml vendored Normal file
View File

@@ -0,0 +1,73 @@
name: stable-spearhead
on:
workflow_dispatch:
inputs:
new_release:
type: boolean
description: Force new Release
force_dispatch:
type: boolean
description: Force dispatch
schedule:
- cron: '0 18 * * *'
jobs:
build:
runs-on: [self-hosted, macOS, ARM64]
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
OS_NAME: osx
VSCODE_ARCH: arm64
VSCODE_LATEST: yes
VSCODE_QUALITY: stable
steps:
- uses: actions/checkout@v4
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Clone VSCode repo
run: . get_repo.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NEW_RELEASE: ${{ github.event.inputs.new_release }}
IS_SPEARHEAD: 'yes'
run: . check_tags.sh
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Update <quality>.json
run: ./update_qualityjson.sh
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
if: env.SHOULD_BUILD == 'yes'
- name: Prepare source
run: ./prepare_src.sh
if: env.SHOULD_BUILD == 'yes'
- name: Release source
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes'
- name: Dispatch builds
uses: peter-evans/repository-dispatch@v2
with:
event-type: 'stable'
if: env.SHOULD_BUILD == 'yes' || github.event.inputs.force_dispatch == 'true'

133
.github/workflows/stable-windows.yml vendored Normal file
View File

@@ -0,0 +1,133 @@
name: stable-windows
on:
workflow_dispatch:
inputs:
force_version:
type: boolean
description: Force update version
generate_assets:
type: boolean
description: Generate assets
repository_dispatch:
types: [stable]
push:
branches: [ master ]
paths-ignore:
- '**/*.md'
pull_request:
branches: [ master ]
paths-ignore:
- '**/*.md'
env:
APP_NAME: VSCodium
ASSETS_REPOSITORY: ${{ github.repository }}
OS_NAME: windows
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
VSCODE_QUALITY: stable
jobs:
build:
runs-on: windows-2019
defaults:
run:
shell: bash
env:
VSCODE_ARCH: ${{ matrix.vscode_arch }}
strategy:
fail-fast: false
matrix:
vscode_arch:
- x64
# - ia32
- arm64
outputs:
RELEASE_VERSION: ${{ env.RELEASE_VERSION }}
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
steps:
- uses: actions/checkout@v4
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '18.17'
- name: Install Yarn
run: npm install -g yarn
- name: Setup Python 3
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Clone VSCode repo
run: ./get_repo.sh
- name: Check PR or cron
env:
GENERATE_ASSETS: ${{ github.event.inputs.generate_assets }}
run: ./check_cron_or_pr.sh
- name: Check existing VSCodium tags/releases
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./check_tags.sh
if: env.SHOULD_DEPLOY == 'yes'
- name: Build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
npm_config_arch: ${{ matrix.vscode_arch }}
npm_config_target_arch: ${{ matrix.vscode_arch }}
run: ./build.sh
if: env.SHOULD_BUILD == 'yes'
- name: Prepare assets
run: ./prepare_assets.sh
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: ./release.sh
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
- name: Update versions repo
env:
FORCE_UPDATE: ${{ github.event.inputs.force_version }}
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}
run: ./update_version.sh
if: env.SHOULD_DEPLOY == 'yes'
winget:
needs: build
runs-on: windows-latest
defaults:
run:
shell: bash
env:
APP_IDENTIFIER: VSCodium.VSCodium
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
steps:
- uses: actions/checkout@v4
- name: Check version
run: ./stores/winget/check_version.sh
env:
RELEASE_VERSION: ${{ needs.build.outputs.RELEASE_VERSION }}
- name: Release to WinGet
uses: vedantmgoyal2009/winget-releaser@v2
with:
identifier: ${{ env.APP_IDENTIFIER }}
version: ${{ env.RELEASE_VERSION }}
release-tag: ${{ env.RELEASE_VERSION }}
installers-regex: '\.exe$' # only .exe files
token: ${{ secrets.STRONGER_GITHUB_TOKEN }}
if: env.SHOULD_DEPLOY == 'yes'

25
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: Stale Issues
on:
schedule:
- cron: '0 1 * * *'
permissions:
issues: write
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v9
with:
days-before-stale: 180
days-before-close: 30
stale-issue-label: stale
operations-per-run: 1024
stale-issue-message: >
This issue has been automatically marked as stale. **If this issue is still affecting you, please leave any comment**, and we'll keep it open. If you have any new additional information, please include it with your comment!
close-issue-message: >
This issue has been closed due to inactivity, and will not be monitored. If this is a bug and you can reproduce this issue, please open a new issue.
exempt-issue-labels: discussion
only-pr-labels: not-a-real-label

View File

@@ -1,89 +0,0 @@
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: 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
- 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'
- name: Generate shasums
run: ./sum.sh
shell: bash
if: env.SHOULD_BUILD == 'yes'
- name: Release
uses: softprops/action-gh-release@v1
if: env.SHOULD_BUILD == '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'
run: ./update_version.sh
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
GITHUB_USERNAME: ${{ github.repository_owner }}

15
.gitignore vendored
View File

@@ -1,3 +1,16 @@
vscode
vscode*
VS*/*
VSCode*
VSCodium*
.DS_Store
*.env
assets/
build/linux/appimage/out
build/linux/appimage/pkg2appimage.AppDir
build/linux/appimage/pkg2appimage-*.AppImage
build/linux/appimage/squashfs-root
build/linux/appimage/VSCodium
build/windows/msi/releasedir
build/windows/msi/Files*.wxs
build/windows/msi/Files*.wixobj
remote-dependencies.tar

1
.nvmrc Normal file
View File

@@ -0,0 +1 @@
18.15

View File

@@ -2,45 +2,122 @@
## Our Pledge
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual
identity and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to creating a positive environment include:
Examples of behavior that contributes to a positive environment for our
community include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the overall
community
Examples of unacceptable behavior by participants include:
Examples of unacceptable behavior include:
* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* The use of sexualized language or imagery, and sexual attention or advances of
any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
* Publishing others' private information, such as a physical or email address,
without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Our Responsibilities
## Enforcement Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at vscodium@protonmail.com. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
vscodium@protonmail.com.
All complaints will be reviewed and investigated promptly and fairly.
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series of
actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or permanent
ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within the
community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/
[homepage]: https://www.contributor-covenant.org
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html

42
CONTRIBUTING.md Normal file
View File

@@ -0,0 +1,42 @@
# Contributing
:+1::tada: First off, thanks for taking the time to contribute! :tada::+1:
#### Table Of Contents
- [Code of Conduct](#code-of-conduct)
- [Reporting Bugs](#reporting-bugs)
- [Making Changes](#making-changes)
## Code of Conduct
This project and everyone participating in it is governed by the [VSCodium Code of Conduct](CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code.
## Reporting Bugs
### Before Submitting an Issue
Before creating bug reports, please check existing issues and [the Troubleshooting page](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md) as you might find out that you don't need to create one.
When you are creating a bug report, please include as many details as possible. Fill out [the required template](https://github.com/VSCodium/vscodium/issues/new?&labels=bug&&template=bug_report.md), the information it asks for helps us resolve issues faster.
## Making Changes
If you want to make changes, please read [the Build page](./docs/howto-build.md).
### Building VSCodium
To build VSCodium, please follow the command found in the section [`Build Scripts`](./docs/howto-build.md#build-scripts).
### Updating patches
If you want to update the existing patches, please follow the section [`Patch Update Process - Semi-Automated`](./docs/howto-build.md#patch-update-process-semiauto).
### Add a new patch
- first, you need to build VSCodium
- then use the command `patch.sh <your patch name>`, to initiate a new patch
- when the script pauses at `Press any key when the conflict have been resolved...`, open `vscode` directory in **VSCodium**
- run `yarn watch`
- run `./script/code.sh`
- make your changes
- press any key to continue the script `patch.sh`

128
DOCS.md
View File

@@ -1,128 +0,0 @@
# 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,8 @@
MIT License
Copyright (c) 2020 Peter Squicciarini
Copyright (c) 2018-present The VSCodium contributors
Copyright (c) 2018-present Peter Squicciarini
Copyright (c) 2015-present Microsoft Corporation
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

182
README.md
View File

@@ -1,24 +1,28 @@
<div id="vscodium-logo" align="center">
<br />
<img src="./src/resources/linux/code.png" alt="VSCodium Logo" width="200"/>
<img src="./icons/stable/codium_cnl.svg" alt="VSCodium Logo" width="200"/>
<h1>VSCodium</h1>
<h3>Free/Libre Open Source Software Binaries of VSCode</h3>
<h3>Free/Libre Open Source Software Binaries of VS Code</h3>
</div>
<div id="badges" align="center">
[![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)
[![current release](https://img.shields.io/github/release/vscodium/vscodium.svg)](https://github.com/vscodium/vscodium/releases)
[![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)
[![build status (linux)](https://img.shields.io/github/actions/workflow/status/VSCodium/vscodium/stable-linux.yml?branch=master&label=build%28linux%29)](https://github.com/VSCodium/vscodium/actions/workflows/stable-linux.yml?query=branch%3Amaster)
[![build status (macos)](https://img.shields.io/github/actions/workflow/status/VSCodium/vscodium/stable-macos.yml?branch=master&label=build%28macOS%29)](https://github.com/VSCodium/vscodium/actions/workflows/stable-macos.yml?query=branch%3Amaster)
[![build status (windows)](https://img.shields.io/github/actions/workflow/status/VSCodium/vscodium/stable-windows.yml?branch=master&label=build%28windows%29)](https://github.com/VSCodium/vscodium/actions/workflows/stable-windows.yml?query=branch%3Amaster)
</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.**
**This is not a fork. This is a repository of scripts to automatically build [Microsoft's `vscode` repository](https://github.com/microsoft/vscode) 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)
@@ -28,81 +32,136 @@
- [Install with Package Manager](#install-with-package-manager)
- [Install on Arch Linux](#install-on-arch-linux)
- [Flatpak Option](#flatpak)
- [Build](#build)
- [Why Does This Exist](#why)
- [More Info](#more-info)
- [Supported OS](#supported-os)
- [Supported Platforms](#supported-platforms)
## <a id="download-install"></a>Download/Install
:tada: :tada: [Download latest release here](https://github.com/VSCodium/vscodium/releases) :tada: :tada:
[More info / helpful tips are here.](https://github.com/VSCodium/vscodium/blob/master/DOCS.md)
:tada: :tada:
Download latest release here:
[stable](https://github.com/VSCodium/vscodium/releases) or
[insiders](https://github.com/VSCodium/vscodium-insiders/releases)
:tada: :tada:
[More info / helpful tips are here.](https://github.com/VSCodium/vscodium/blob/master/docs/index.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
# stable
brew install --cask vscodium
# insiders
brew tap homebrew/cask-versions
brew install --cask vscodium-insiders
```
_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._
*Note for macOS users: if you can't open the App, please read [the following troubleshooting](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md#macos).*
#### <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
```cmd
:: stable
winget install -e --id VSCodium.VSCodium
:: insider
winget install -e --id VSCodium.VSCodium.Insiders
```
#### <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
```cmd
:: stable
choco install vscodium
:: insider
choco install vscodium-insiders
```
#### <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 (Linux)
VSCodium is available in the [Snap Store](https://snapcraft.io/) as [Codium](https://snapcraft.io/codium), published by the [Snapcrafters](https://github.com/snapcrafters/codium) community.
If your Linux distribution has support for [snaps](https://snapcraft.io/docs/installing-snapd):
#### <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),
thanks to the help of 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
snap install codium --classic
```
#### <a id="install-with-package-manager"></a>Install with Package Manager (Linux)
You can always install using the downloads (deb, rpm, tar) on the [releases page](https://github.com/VSCodium/vscodium/releases), but you can also install using your favorite package manager and get automatic updates. [@paulcarroty](https://github.com/paulcarroty) has set up a repository with instructions [here](https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo). Any issues installing VSCodium using your package manager should be directed to that repository's issue tracker.
#### <a id="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 for
[stable](https://github.com/VSCodium/vscodium/releases) or
[insiders](https://github.com/VSCodium/vscodium-insiders/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
for `apt`, `dnf` and `zypper` [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 (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/):
VSCodium is available in [AUR](https://wiki.archlinux.org/index.php/Arch_User_Repository),
maintained by [@binex-dsk](https://github.com/binex-dsk)
as package [vscodium-bin](https://aur.archlinux.org/packages/vscodium-bin/) (stable) and
as [vscodium-insiders-bin](https://aur.archlinux.org/packages/vscodium-insiders-bin).
If you want to save disk space by having VSCodium use the Electron system-wide, you also have
[vscodium-electron](https://aur.archlinux.org/packages/vscodium-electron),
maintained by [@m00nw4tch3r](https://aur.archlinux.org/account/m00nw4tch3r).
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 build files to generate free release binaries of Microsoft's VSCode. When we speak of "free software", we're talking about freedom, not price.
## <a id="build"></a>Build
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:
Build instructions can be found [here](https://github.com/VSCodium/vscodium/blob/master/docs/howto-build.md)
## <a id="why"></a>Why Does This Exist
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 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 disabled.__
If you want to build from source yourself, head over to [Microsoft's vscode repo](https://github.com/Microsoft/vscode) and follow their [instructions](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#build-and-run). This repo exists to make it easier to get the latest version of MIT-licensed VSCode.
If you want to build from source yourself, head over to [Microsoft's vscode repo](https://github.com/Microsoft/vscode) and follow their [instructions](https://github.com/Microsoft/vscode/wiki/How-to-Contribute#build-and-run). This repo exists to make it easier to get the latest version of MIT-licensed VS Code.
Microsoft's build process (which we are running to build the binaries) does download additional files. This was brought up in [Microsoft/vscode#49159](https://github.com/Microsoft/vscode/issues/49159) and [Microsoft/vscode#45978](https://github.com/Microsoft/vscode/issues/45978). These are the packages downloaded during build:
Microsoft's build process (which we are running to build the binaries) does download additional files. Those packages downloaded during build are:
- Extensions from the Microsoft Marketplace:
- ms-vscode.node-debug2
- ms-vscode.node-debug
- Pre-built extensions from the GitHub:
- [ms-vscode.js-debug-companion](https://github.com/microsoft/vscode-js-debug-companion)
- [ms-vscode.js-debug](https://github.com/microsoft/vscode-js-debug)
- [ms-vscode.vscode-js-profile-table](https://github.com/microsoft/vscode-js-profile-visualizer)
- From [Electron releases](https://github.com/electron/electron/releases) (using [gulp-atom-electron](https://github.com/joaomoreno/gulp-atom-electron))
- electron
- ffmpeg
@@ -110,33 +169,60 @@ Microsoft's build process (which we are running to build the binaries) does down
## <a id="more-info"></a>More Info
### 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.
For more information on getting all the telemetry disabled, tips for migrating from Visual Studio Code to VSCodium and more, have a look at [the Docs page](https://github.com/VSCodium/vscodium/blob/master/docs/index.md) page.
### Troubleshooting
If you have any issue, please check [the Troubleshooting page](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md) or the existing issues.
### 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.
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.
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/index.md#extensions-marketplace) section on the Docs page for more details.
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/index.md#proprietary-debugging-tools) on the Docs page for what's been found so far and possible workarounds.
### How are the VSCodium binaries built?
If you would like to see the commands we run to build `vscode` into VSCodium binaries, have a look at the workflow files in `.github/workflow` (for Linux and macOS builds) and the `win32-build.yml` file (for Windows builds). These build files call all the other scripts in the repo. If you find something that doesn't make sense, feel free to ask about it [on Gitter](https://gitter.im/VSCodium/Lobby).
The builds are run every day, but exit early if there isn't a new release from Microsoft.
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/workflows` for Windows, GNU/Linux and macOS. These build files call all the other scripts in the repo. If you find something that doesn't make sense, feel free to ask about it [on Gitter](https://gitter.im/VSCodium/Lobby).
The builds are run every day, but exit early if there isn't a new release from Microsoft.
## <a id="supported-platforms"></a>Supported Platforms
The minimal version is limited by the core component Electron, you may want to check its [platform prerequisites](https://www.electronjs.org/docs/latest/development/build-instructions-gn#platform-prerequisites).
- [x] macOS (`zip`, `dmg`) OS X 10.10 or newer x64
- [x] macOS (`zip`, `dmg`) macOS 11.0 or newer arm64
- [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 10 / Server 2012 R2 or newer x64
- [x] Windows 10 / Server 2012 R2 or newer x86
- [x] Windows 10 / Server 2012 R2 or newer arm64
## <a id="supported-os"></a>Supported OS
- [x] macOS (`zip`, `dmg`)
- [x] Linux x64 (`deb`, `rpm`, `AppImage`, `tar.gz`)
- [x] Linux x86 (`deb`, `rpm`, `tar.gz`) ([up to v1.35.1](https://code.visualstudio.com/updates/v1_36#_linux-32bit-support-ends))
- [x] Linux arm64 (`deb`, `tar.gz`)
- [x] Linux armhf (`deb`, `tar.gz`)
- [x] Windows x64
- [x] Windows x86
## <a id="donate"></a>Donate
If you would like to support the development of VSCodium, feel free to send BTC to `3PgjE95yzBDTrSPxPiqoxSgZFuKPPAix1N`.
Special thanks to:
- @estatra for the latest logo
- @jaredreich for the previous logo
<table>
<tr>
<td><a href="https://github.com/jaredreich" target="_blank">@jaredreich</a></td>
<td>for the logo</td>
</tr>
<tr>
<td><a href="https://github.com/PalinuroSec" target="_blank">@PalinuroSec</a></td>
<td>for CDN and domain name</td>
</tr>
<tr>
<td><a href="https://www.macstadium.com" target="_blank"><img src="https://images.prismic.io/macstadium/66fbce64-707e-41f3-b547-241908884716_MacStadium_Logo.png?w=128&q=75" width="128" height="49" alt="MacStadium logo" /></a></td>
<td>for providing a Mac mini M1</td>
</tr>
</table>
## <a id="license"></a>License
MIT
[MIT](https://github.com/VSCodium/vscodium/blob/master/LICENSE)

View File

@@ -1,32 +0,0 @@
# 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

@@ -0,0 +1,2 @@
[
]

2
announcements-extra.json Normal file
View File

@@ -0,0 +1,2 @@
[
]

View File

@@ -1,40 +1,58 @@
#!/bin/bash
#!/usr/bin/env bash
# shellcheck disable=SC1091
set -ex
if [[ "$SHOULD_BUILD" == "yes" ]]; then
npm config set scripts-prepend-node-path true
if [[ -f "./remote-dependencies.tar" ]]; then
tar -xf ./remote-dependencies.tar ./vscode/remote/node_modules
fi
echo "LATEST_MS_COMMIT: ${LATEST_MS_COMMIT}"
. version.sh
if [[ "${SHOULD_BUILD}" == "yes" ]]; then
echo "MS_COMMIT=\"${MS_COMMIT}\""
. prepare_vscode.sh
cd vscode || exit
cd vscode || { echo "'vscode' dir not found"; exit 1; }
yarn monaco-compile-check
yarn valid-layers-check
yarn gulp compile-build
yarn gulp compile-extension-media
yarn gulp compile-extensions-build
yarn gulp minify-vscode
if [[ "$OS_NAME" == "osx" ]]; then
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
find "../VSCode-darwin-${VSCODE_ARCH}" -print0 | xargs -0 touch -c
VSCODE_PLATFORM="darwin"
elif [[ "${OS_NAME}" == "windows" ]]; then
. ../build/windows/rtf/make.sh
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"
if [[ "${VSCODE_ARCH}" != "ia32" && "${VSCODE_ARCH}" != "x64" ]]; then
SHOULD_BUILD_REH="no"
fi
VSCODE_PLATFORM="win32"
elif [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then # linux-ppc64le
VSCODE_PLATFORM="linux"
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
find "../VSCode-linux-${VSCODE_ARCH}" -print0 | xargs -0 touch -c
VSCODE_PLATFORM="linux"
fi
if [[ "${SHOULD_BUILD_REH}" != "no" ]]; then
yarn gulp minify-vscode-reh
yarn gulp "vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}-min-ci"
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'));

6
build/build.ps1 Executable file
View File

@@ -0,0 +1,6 @@
# powershell -ExecutionPolicy ByPass -File .\build\build.ps1
# first so `bash` is the one installed with `git`, avoid conflict with WSL
$env:Path = "C:\Program Files\Git\bin;" + $env:Path
bash ./build/build.sh

117
build/build.sh Executable file
View File

@@ -0,0 +1,117 @@
#!/usr/bin/env bash
# shellcheck disable=SC1091,SC2129
### Windows
# to run with Bash: "C:\Program Files\Git\bin\bash.exe" ./build/build.sh
###
export APP_NAME="VSCodium"
export CI_BUILD="no"
export SHOULD_BUILD="yes"
export SKIP_ASSETS="yes"
export SKIP_BUILD="no"
export SKIP_SOURCE="no"
export VSCODE_LATEST="no"
export VSCODE_QUALITY="stable"
while getopts ":ilops" opt; do
case "$opt" in
i)
export VSCODE_QUALITY="insider"
;;
l)
export VSCODE_LATEST="yes"
;;
o)
export SKIP_BUILD="yes"
;;
p)
export SKIP_ASSETS="no"
;;
s)
export SKIP_SOURCE="yes"
;;
*)
;;
esac
done
case "${OSTYPE}" in
darwin*)
export OS_NAME="osx"
;;
msys* | cygwin*)
export OS_NAME="windows"
;;
*)
export OS_NAME="linux"
;;
esac
UNAME_ARCH=$( uname -m )
if [[ "${UNAME_ARCH}" == "arm64" ]]; then
export VSCODE_ARCH="arm64"
elif [[ "${UNAME_ARCH}" == "ppc64le" ]]; then
export VSCODE_ARCH="ppc64le"
else
export VSCODE_ARCH="x64"
fi
echo "OS_NAME=\"${OS_NAME}\""
echo "SKIP_SOURCE=\"${SKIP_SOURCE}\""
echo "SKIP_BUILD=\"${SKIP_BUILD}\""
echo "SKIP_ASSETS=\"${SKIP_ASSETS}\""
echo "VSCODE_ARCH=\"${VSCODE_ARCH}\""
echo "VSCODE_LATEST=\"${VSCODE_LATEST}\""
echo "VSCODE_QUALITY=\"${VSCODE_QUALITY}\""
if [[ "${SKIP_SOURCE}" == "no" ]]; then
rm -rf vscode* VSCode*
. get_repo.sh
. version.sh
# save variables for later
echo "MS_TAG=\"${MS_TAG}\"" > build.env
echo "MS_COMMIT=\"${MS_COMMIT}\"" >> build.env
echo "RELEASE_VERSION=\"${RELEASE_VERSION}\"" >> build.env
echo "BUILD_SOURCEVERSION=\"${BUILD_SOURCEVERSION}\"" >> build.env
else
if [[ "${SKIP_ASSETS}" != "no" ]]; then
rm -rf VSCode*
fi
. build.env
echo "MS_TAG=\"${MS_TAG}\""
echo "MS_COMMIT=\"${MS_COMMIT}\""
echo "RELEASE_VERSION=\"${RELEASE_VERSION}\""
echo "BUILD_SOURCEVERSION=\"${BUILD_SOURCEVERSION}\""
fi
if [[ "${SKIP_BUILD}" == "no" ]]; then
if [[ "${SKIP_SOURCE}" != "no" ]]; then
cd vscode || { echo "'vscode' dir not found"; exit 1; }
git add .
git reset -q --hard HEAD
cd ..
fi
. build.sh
if [[ "${VSCODE_LATEST}" == "yes" ]]; then
jsonTmp=$( cat "${VSCODE_QUALITY}.json" | jq --arg 'tag' "${MS_TAG/\-insider/}" --arg 'commit' "${MS_COMMIT}" '. | .tag=$tag | .commit=$commit' )
echo "${jsonTmp}" > "${VSCODE_QUALITY}.json" && unset jsonTmp
fi
fi
if [[ "${SKIP_ASSETS}" == "no" ]]; then
if [[ "${OS_NAME}" == "windows" ]]; then
rm -rf build/windows/msi/releasedir
fi
. prepare_assets.sh
fi

60
build/build_docker.sh Executable file
View File

@@ -0,0 +1,60 @@
#!/usr/bin/env bash
# shellcheck disable=SC1091
exists() { type -t "$1" &> /dev/null; }
export APP_NAME="VSCodium"
export CI_BUILD="no"
export OS_NAME="linux"
export SHOULD_BUILD="yes"
export SKIP_ASSETS="yes"
export VSCODE_LATEST="no"
export VSCODE_QUALITY="stable"
while getopts ":ilp" opt; do
case "$opt" in
i)
export VSCODE_QUALITY="insider"
;;
l)
export VSCODE_LATEST="yes"
;;
p)
export SKIP_ASSETS="no"
;;
*)
;;
esac
done
if ! exists yarn; then
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs desktop-file-utils
npm install -g yarn
fi
UNAME_ARCH=$( uname -m )
if [[ "${UNAME_ARCH}" == "x86_64" ]]; then
export VSCODE_ARCH="x64"
else
export npm_config_arch=armv7l
export npm_config_force_process_config="true"
export VSCODE_ARCH="armhf"
fi
echo "OS_NAME=\"${OS_NAME}\""
echo "SKIP_ASSETS=\"${SKIP_ASSETS}\""
echo "VSCODE_ARCH=\"${VSCODE_ARCH}\""
echo "VSCODE_LATEST=\"${VSCODE_LATEST}\""
echo "VSCODE_QUALITY=\"${VSCODE_QUALITY}\""
rm -rf vscode* VSCode*
. get_repo.sh
. build.sh
if [[ "${SKIP_ASSETS}" == "no" ]]; then
. prepare_assets.sh
fi

47
build/linux/appimage/build.sh Executable file
View File

@@ -0,0 +1,47 @@
#!/usr/bin/env bash
set -ex
CALLER_DIR=$( pwd )
cd "$( dirname "${BASH_SOURCE[0]}" )"
if [[ "${VSCODE_ARCH}" == "x64" ]]; then
GITHUB_RESPONSE=$( curl --silent --location "https://api.github.com/repos/AppImage/pkg2appimage/releases/latest" )
APPIMAGE_URL=$( echo "${GITHUB_RESPONSE}" | jq --raw-output '.assets | map(select( .name | test("x86_64.AppImage(?!.zsync)"))) | map(.browser_download_url)[0]' )
if [[ -z "${APPIMAGE_URL}" ]]; then
echo "The url for pkg2appimage.AppImage hasn't been found"
exit 1
fi
wget -c "${APPIMAGE_URL}" -O pkg2appimage.AppImage
chmod +x ./pkg2appimage.AppImage
./pkg2appimage.AppImage --appimage-extract && mv ./squashfs-root ./pkg2appimage.AppDir
# add update's url
sed -i 's/generate_type2_appimage/generate_type2_appimage -u "gh-releases-zsync|VSCodium|vscodium|latest|*.AppImage.zsync"/' pkg2appimage.AppDir/AppRun
# remove check so build in docker can succeed
sed -i 's/grep docker/# grep docker/' pkg2appimage.AppDir/usr/share/pkg2appimage/functions.sh
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
sed -i 's|@@NAME@@|VSCodium-Insiders|g' recipe.yml
sed -i 's|@@APPNAME@@|codium-insiders|g' recipe.yml
sed -i 's|@@ICON@@|vscodium-insiders|g' recipe.yml
else
sed -i 's|@@NAME@@|VSCodium|g' recipe.yml
sed -i 's|@@APPNAME@@|codium|g' recipe.yml
sed -i 's|@@ICON@@|vscodium|g' recipe.yml
fi
bash -ex pkg2appimage.AppDir/AppRun recipe.yml
rm -f pkg2appimage-*.AppImage
rm -rf pkg2appimage.AppDir
rm -rf VSCodium*
fi
cd "${CALLER_DIR}"

View File

@@ -0,0 +1,46 @@
# 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: @@NAME@@
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 @@APPNAME@@_*.deb | cut -d _ -f 2 > VERSION
script:
- sed -i -e 's|/usr/share/pixmaps/||g' usr/share/applications/@@APPNAME@@.desktop
- cp usr/share/applications/@@APPNAME@@.desktop .
- cp usr/share/pixmaps/@@ICON@@.png .
- /usr/bin/convert @@ICON@@.png -resize 512x512 usr/share/icons/hicolor/512x512/apps/@@ICON@@.png
- /usr/bin/convert @@ICON@@.png -resize 256x256 usr/share/icons/hicolor/256x256/apps/@@ICON@@.png
- /usr/bin/convert @@ICON@@.png -resize 128x128 usr/share/icons/hicolor/128x128/apps/@@ICON@@.png
- /usr/bin/convert @@ICON@@.png -resize 64x64 usr/share/icons/hicolor/64x64/apps/@@ICON@@.png
- /usr/bin/convert @@ICON@@.png -resize 48x48 usr/share/icons/hicolor/48x48/apps/@@ICON@@.png
- /usr/bin/convert @@ICON@@.png -resize 32x32 usr/share/icons/hicolor/32x32/apps/@@ICON@@.png
- ( cd usr/bin/ ; ln -s ../share/@@APPNAME@@/@@APPNAME@@ . )
- rm -rf usr/lib/x86_64-linux-gnu
- rm -f lib/x86_64-linux-gnu/libglib*
- cat > AppRun <<\EOF
- #!/bin/sh
- HERE="$(dirname "$(readlink -f "${0}")")"
- 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/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} "$@"
- EOF

39
build/update_api.sh Executable file
View File

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

60
build/update_patches.sh Executable file
View File

@@ -0,0 +1,60 @@
#!/usr/bin/env bash
export VSCODE_QUALITY="stable"
while getopts ":i" opt; do
case "$opt" in
i)
export VSCODE_QUALITY="insider"
;;
*)
;;
esac
done
cd vscode || { echo "'vscode' dir not found"; exit 1; }
git add .
git reset -q --hard HEAD
for FILE in ../patches/*.patch; do
if [[ -f "${FILE}" ]]; then
echo applying patch: "${FILE}"
if ! git apply --ignore-whitespace "${FILE}"; then
echo failed to apply patch "${FILE}"
git apply --reject "${FILE}"
git apply --reject "../patches/helper/settings.patch"
read -rp "Press any key when the conflict have been resolved..." -n1 -s
git restore .vscode/settings.json
git add .
git diff --staged -U1 > "${FILE}"
fi
git add .
git reset -q --hard HEAD
fi
done
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
for FILE in ../patches/insider/*.patch; do
if [[ -f "${FILE}" ]]; then
echo applying patch: "${FILE}"
if ! git apply --ignore-whitespace "${FILE}"; then
echo failed to apply patch "${FILE}"
git apply --reject "${FILE}"
git apply --reject "../patches/helper/settings.patch"
read -rp "Press any key when the conflict have been resolved..." -n1 -s
git restore .vscode/settings.json
git add .
git diff --staged -U1 > "${FILE}"
fi
git add .
git reset -q --hard HEAD
fi
done
fi

View File

@@ -0,0 +1,20 @@
#!/usr/bin/env bash
set -ex
CALLER_DIR=$( pwd )
cd "$( dirname "${BASH_SOURCE[0]}" )"
SCRIPT_DIR=$( pwd )
cd "../../../VSCode-win32-${VSCODE_ARCH}/resources/app"
jsonTmp=$( jq "del(.updateUrl)" product.json )
echo "${jsonTmp}" > product.json && unset jsonTmp
cd "${SCRIPT_DIR}"
./build.sh "updates-disabled"
cd "${CALLER_DIR}"

100
build/windows/msi/build.sh Normal file
View File

@@ -0,0 +1,100 @@
#!/usr/bin/env bash
set -ex
CALLER_DIR=$( pwd )
cd "$( dirname "${BASH_SOURCE[0]}" )"
WIN_SDK_MAJOR_VERSION="10"
WIN_SDK_FULL_VERSION="10.0.17763.0"
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
PRODUCT_NAME="VSCodium - Insiders"
PRODUCT_CODE="VSCodiumInsiders"
PRODUCT_UPGRADE_CODE="1C9B7195-5A9A-43B3-B4BD-583E20498467"
ICON_DIR="..\\..\\..\\src\\insider\\resources\\win32"
SETUP_RESOURCES_DIR=".\\resources\\insider"
else
PRODUCT_NAME="VSCodium"
PRODUCT_CODE="VSCodium"
PRODUCT_UPGRADE_CODE="965370CD-253C-4720-82FC-2E6B02A53808"
ICON_DIR="..\\..\\..\\src\\stable\\resources\\win32"
SETUP_RESOURCES_DIR=".\\resources\\stable"
fi
PRODUCT_ID=$( powershell.exe -command "[guid]::NewGuid().ToString().ToUpper()" )
PRODUCT_ID="${PRODUCT_ID%%[[:cntrl:]]}"
CULTURE="en-us"
LANGIDS="1033"
SETUP_RELEASE_DIR=".\\releasedir"
BINARY_DIR="..\\..\\..\\VSCode-win32-${VSCODE_ARCH}"
LICENSE_DIR="..\\..\\..\\vscode"
PROGRAM_FILES_86=$( env | sed -n 's/^ProgramFiles(x86)=//p' )
if [[ -z "${1}" ]]; then
OUTPUT_BASE_FILENAME="VSCodium-${VSCODE_ARCH}-${RELEASE_VERSION}"
else
OUTPUT_BASE_FILENAME="VSCodium-${VSCODE_ARCH}-${1}-${RELEASE_VERSION}"
fi
if [[ "${VSCODE_ARCH}" == "ia32" ]]; then
export PLATFORM="x86"
else
export PLATFORM="${VSCODE_ARCH}"
fi
sed -i "s|@@PRODUCT_UPGRADE_CODE@@|${PRODUCT_UPGRADE_CODE}|g" .\\includes\\vscodium-variables.wxi
sed -i "s|@@PRODUCT_NAME@@|${PRODUCT_NAME}|g" .\\vscodium.xsl
find i18n -name '*.wxl' -print0 | xargs -0 sed -i "s|@@PRODUCT_NAME@@|${PRODUCT_NAME}|g"
BuildSetupTranslationTransform() {
local CULTURE=${1}
local LANGID=${2}
LANGIDS="${LANGIDS},${LANGID}"
echo "Building setup translation for culture \"${CULTURE}\" with LangID \"${LANGID}\"..."
"${WIX}bin\\light.exe" vscodium.wixobj "Files-${OUTPUT_BASE_FILENAME}.wixobj" -ext WixUIExtension -ext WixUtilExtension -ext WixNetFxExtension -spdb -cc "${TEMP}\\vscodium-cab-cache\\${PLATFORM}" -reusecab -out "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.msi" -loc "i18n\\vscodium.${CULTURE}.wxl" -cultures:"${CULTURE}" -sice:ICE60 -sice:ICE69
cscript "${PROGRAM_FILES_86}\\Windows Kits\\${WIN_SDK_MAJOR_VERSION}\\bin\\${WIN_SDK_FULL_VERSION}\\${PLATFORM}\\WiLangId.vbs" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.msi" Product "${LANGID}"
"${PROGRAM_FILES_86}\\Windows Kits\\${WIN_SDK_MAJOR_VERSION}\\bin\\${WIN_SDK_FULL_VERSION}\\x86\\msitran" -g "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.msi" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.msi" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.mst"
cscript "${PROGRAM_FILES_86}\\Windows Kits\\${WIN_SDK_MAJOR_VERSION}\\bin\\${WIN_SDK_FULL_VERSION}\\${PLATFORM}\\wisubstg.vbs" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.msi" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.mst" "${LANGID}"
cscript "${PROGRAM_FILES_86}\\Windows Kits\\${WIN_SDK_MAJOR_VERSION}\\bin\\${WIN_SDK_FULL_VERSION}\\${PLATFORM}\\wisubstg.vbs" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.msi"
rm -f "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.msi"
rm -f "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.${CULTURE}.mst"
}
"${WIX}bin\\heat.exe" dir "${BINARY_DIR}" -out "Files-${OUTPUT_BASE_FILENAME}.wxs" -t vscodium.xsl -gg -sfrag -scom -sreg -srd -ke -cg "AppFiles" -var var.ManufacturerName -var var.AppName -var var.AppCodeName -var var.ProductVersion -var var.IconDir -var var.LicenseDir -var var.BinaryDir -dr APPLICATIONFOLDER -platform "${PLATFORM}"
"${WIX}bin\\candle.exe" -arch "${PLATFORM}" vscodium.wxs "Files-${OUTPUT_BASE_FILENAME}.wxs" -ext WixUIExtension -ext WixUtilExtension -ext WixNetFxExtension -dManufacturerName="VSCodium" -dAppCodeName="${PRODUCT_CODE}" -dAppName="${PRODUCT_NAME}" -dProductVersion="${RELEASE_VERSION%-insider}" -dProductId="${PRODUCT_ID}" -dBinaryDir="${BINARY_DIR}" -dIconDir="${ICON_DIR}" -dLicenseDir="${LICENSE_DIR}" -dSetupResourcesDir="${SETUP_RESOURCES_DIR}" -dCulture="${CULTURE}"
"${WIX}bin\\light.exe" vscodium.wixobj "Files-${OUTPUT_BASE_FILENAME}.wixobj" -ext WixUIExtension -ext WixUtilExtension -ext WixNetFxExtension -spdb -cc "${TEMP}\\vscodium-cab-cache\\${PLATFORM}" -out "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.msi" -loc "i18n\\vscodium.${CULTURE}.wxl" -cultures:"${CULTURE}" -sice:ICE60 -sice:ICE69
BuildSetupTranslationTransform de-de 1031
BuildSetupTranslationTransform es-es 3082
BuildSetupTranslationTransform fr-fr 1036
BuildSetupTranslationTransform it-it 1040
# WixUI_Advanced bug: https://github.com/wixtoolset/issues/issues/5909
# BuildSetupTranslationTransform ja-jp 1041
BuildSetupTranslationTransform ko-kr 1042
BuildSetupTranslationTransform ru-ru 1049
BuildSetupTranslationTransform zh-cn 2052
BuildSetupTranslationTransform zh-tw 1028
# Add all supported languages to MSI Package attribute
cscript "${PROGRAM_FILES_86}\\Windows Kits\\${WIN_SDK_MAJOR_VERSION}\\bin\\${WIN_SDK_FULL_VERSION}\\${PLATFORM}\\WiLangId.vbs" "${SETUP_RELEASE_DIR}\\${OUTPUT_BASE_FILENAME}.msi" Package "${LANGIDS}"
# Remove files we do not need any longer.
rm -rf "${TEMP}\\vscodium-cab-cache"
rm -f "Files-${OUTPUT_BASE_FILENAME}.wxs"
rm -f "Files-${OUTPUT_BASE_FILENAME}.wixobj"
rm -f "vscodium.wixobj"
cd "${CALLER_DIR}"

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="de-de" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1031</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Paket mit @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Startmenü-Verknüpfung</String>
<String Id="FeatureStartMenuShortcutDescription">Startmenü-Symbol erstellen.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop-Verknüpfung</String>
<String Id="FeatureDesktopShortcutDescription">Desktop-Symbol erstellen.</String>
<String Id="FeatureFileTypeAssociationsTitle">Dateizuordnungen</String>
<String Id="FeatureFileTypeAssociationsDescription">@@PRODUCT_NAME@@ als Editor für unterstützte Dateitypen registrieren.</String>
<String Id="FeatureAddContextMenuFilesTitle">Dateikontextmenü</String>
<String Id="FeatureAddContextMenuFilesDescription">Aktion "Mit @@PRODUCT_NAME@@ öffnen" dem Dateikontextmenü von Windows-Explorer hinzufügen.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Verzeichniskontextmenü</String>
<String Id="FeatureAddContextMenuFoldersDescription">Aktion "Mit @@PRODUCT_NAME@@ öffnen" dem Verzeichniskontextmenü von Windows-Explorer hinzufügen.</String>
<String Id="FeatureEnvironmentTitle">Zu PATH hinzufügen</String>
<String Id="FeatureEnvironmentDescription">@@PRODUCT_NAME@@ zur PATH Variable hinzufügen. Nach dem Neustart verfügbar.</String>
<String Id="LaunchApplication">@@PRODUCT_NAME@@ ausführen</String>
<String Id="NewerVersionInstalled">Eine neuere Version von @@PRODUCT_NAME@@ ist bereits installiert.</String>
<String Id="MinimumNetFramworkRequired">Diese Anwendung erfordert .NET Framework 4.5.2 oder höher. Bitte installieren Sie .NET Framework und führen Sie dieses Installationsprogramm erneut aus.</String>
<String Id="OSVersionRequired">Windows 7 oder neuer ist erforderlich.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="en-us" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1033</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="es-es" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">3082</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="fr-fr" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1036</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="it-it" Codepage="1252" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1040</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="ja-jp" Codepage="932" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1041</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="ko-kr" Codepage="949" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1042</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="ru-ru" Codepage="1251" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1049</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Пакет с @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Ярлык в меню «Пуск»</String>
<String Id="FeatureStartMenuShortcutDescription">Создайте значок в меню «Пуск».</String>
<String Id="FeatureDesktopShortcutTitle">Ярлык рабочего стола</String>
<String Id="FeatureDesktopShortcutDescription">Создать значок на рабочем столе.</String>
<String Id="FeatureFileTypeAssociationsTitle">Ассоциации файлов</String>
<String Id="FeatureFileTypeAssociationsDescription">Зарегистрировать @@PRODUCT_NAME@@ в качестве редактора поддерживаемых типов файлов.</String>
<String Id="FeatureAddContextMenuFilesTitle">Контекстное меню файлов</String>
<String Id="FeatureAddContextMenuFilesDescription">Добавить действие «Открыть с помощью @@PRODUCT_NAME@@» в контекстное меню файлов Проводника Windows.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Контекстное меню каталога</String>
<String Id="FeatureAddContextMenuFoldersDescription">Добавить действие «Открыть с помощью @@PRODUCT_NAME@@» в контекстное меню каталога Проводника Windows.</String>
<String Id="FeatureEnvironmentTitle">Добавить в PATH</String>
<String Id="FeatureEnvironmentDescription">Добавить @@PRODUCT_NAME@@ в переменную среды PATH. Доступно после перезапуска.</String>
<String Id="LaunchApplication">Запустить @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Новая версия @@PRODUCT_NAME@@ уже установлена.</String>
<String Id="MinimumNetFramworkRequired">Приложению требуется .NET Framework 4.5.2 или более новая версии. Пожалуйста, установите .NET Framework, затем снова запустите установщик.</String>
<String Id="OSVersionRequired">Требуется Windows 7 или более новая версия.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="zh-cn" Codepage="936" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">2052</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-8"?>
<WixLocalization Culture="zh-tw" Codepage="950" xmlns="http://schemas.microsoft.com/wix/2006/localization">
<String Id="ProductLanguage">1028</String>
<String Id="ProductName">@@PRODUCT_NAME@@</String>
<String Id="ProductHelpLink">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlInfoAbout">https://github.com/VSCodium/vscodium</String>
<String Id="ProductUrlUpdateInfo">https://github.com/VSCodium/vscodium</String>
<String Id="PackageDescription">Package with @@PRODUCT_NAME@@</String>
<String Id="FeatureStartMenuShortcutTitle">Start Menu shortcut</String>
<String Id="FeatureStartMenuShortcutDescription">Create a start menu icon.</String>
<String Id="FeatureDesktopShortcutTitle">Desktop shortcut</String>
<String Id="FeatureDesktopShortcutDescription">Create a desktop icon.</String>
<String Id="FeatureFileTypeAssociationsTitle">File Associations</String>
<String Id="FeatureFileTypeAssociationsDescription">Register @@PRODUCT_NAME@@ as an editor for supported file types.</String>
<String Id="FeatureAddContextMenuFilesTitle">Files context menu</String>
<String Id="FeatureAddContextMenuFilesDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer file contect menu.</String>
<String Id="FeatureAddContextMenuFoldersTitle">Directory context menu</String>
<String Id="FeatureAddContextMenuFoldersDescription">Add "Open with @@PRODUCT_NAME@@" action to Windows Explorer directory contect menu.</String>
<String Id="FeatureEnvironmentTitle">Add to PATH</String>
<String Id="FeatureEnvironmentDescription">Add @@PRODUCT_NAME@@ to PATH environment variable. Available after restart.</String>
<String Id="LaunchApplication">Launch @@PRODUCT_NAME@@</String>
<String Id="NewerVersionInstalled">Newer version of @@PRODUCT_NAME@@ is already installed.</String>
<String Id="MinimumNetFramworkRequired">This application requires .NET Framework 4.5.2 or later. Please install the .NET Framework then run this installer again.</String>
<String Id="OSVersionRequired">Windows 7 or later is required.</String>
</WixLocalization>

View File

@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
<Include>
<!-- Setup UI strings. -->
<?if $(env.Platform)=x86?>
<?define ProgramFilesFolder="ProgramFilesFolder" ?>
<?define Win64="no" ?>
<?define Arch="(x86)" ?>
<?else?>
<?define ProgramFilesFolder="ProgramFiles64Folder" ?>
<?define Win64="yes" ?>
<?define Arch="(x64)" ?>
<?endif?>
<?define ProductName="!(loc.ProductName)" ?>
<?define ProductNameWithVersion="!(loc.ProductName) $(var.ProductVersion) $(var.Arch)" ?>
<?define ProductLanguage="!(loc.ProductLanguage)" ?>
<?define AppFolderName="$(var.AppName)" ?>
<?define ProductManufacturerShort="$(var.ManufacturerName)" ?>
<?define ProductManufacturerLong="$(var.ManufacturerName)" ?>
<!-- Static settings, DO NOT TOUCH or upgrades will break! -->
<?define ProductUpgradeCode="{@@PRODUCT_UPGRADE_CODE@@}" ?>
<?define RTMProductVersion="0.0.1" ?>
</Include>

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 KiB

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,468 @@
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:wi="http://schemas.microsoft.com/wix/2006/wi">
<xsl:strip-space elements="*"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:key name="vId1ToReplace" match="wi:Component[wi:File[contains(@Source,'@@PRODUCT_NAME@@.exe')]]" use="@Id"/>
<xsl:template match="node()[key('vId1ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">VSCODIUM.EXE</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'@@PRODUCT_NAME@@.exe')]">
<xsl:copy>
<xsl:attribute name="Id">VSCODIUM.EXE</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId2ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\bower.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId2ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">BOWER.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\bower.ico')]">
<xsl:copy>
<xsl:attribute name="Id">BOWER.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId3ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\c.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId3ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">C.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\c.ico')]">
<xsl:copy>
<xsl:attribute name="Id">C.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId4ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\config.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId4ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">CONFIG.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\config.ico')]">
<xsl:copy>
<xsl:attribute name="Id">CONFIG.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId5ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\cpp.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId5ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">CPP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\cpp.ico')]">
<xsl:copy>
<xsl:attribute name="Id">CPP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId7ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\csharp.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId7ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">CSHARP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\csharp.ico')]">
<xsl:copy>
<xsl:attribute name="Id">CSHARP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId8ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\css.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId8ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">CSS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\css.ico')]">
<xsl:copy>
<xsl:attribute name="Id">CSS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId9ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\default.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId9ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">DEFAULT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\default.ico')]">
<xsl:copy>
<xsl:attribute name="Id">DEFAULT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId10ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\go.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId10ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">GO.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\go.ico')]">
<xsl:copy>
<xsl:attribute name="Id">GO.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId11ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\html.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId11ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">HTML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\html.ico')]">
<xsl:copy>
<xsl:attribute name="Id">HTML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId12ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\jade.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId12ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">JADE.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\jade.ico')]">
<xsl:copy>
<xsl:attribute name="Id">JADE.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId13ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\java.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId13ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">JAVA.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\java.ico')]">
<xsl:copy>
<xsl:attribute name="Id">JAVA.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId14ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\javascript.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId14ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">JAVASCRIPT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\javascript.ico')]">
<xsl:copy>
<xsl:attribute name="Id">JAVASCRIPT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId15ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\json.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId15ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">JSON.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\json.ico')]">
<xsl:copy>
<xsl:attribute name="Id">JSON.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId16ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\less.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId16ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">LESS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\less.ico')]">
<xsl:copy>
<xsl:attribute name="Id">LESS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId17ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\markdown.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId17ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">MARKDOWN.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\markdown.ico')]">
<xsl:copy>
<xsl:attribute name="Id">MARKDOWN.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId18ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\php.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId18ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">PHP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\php.ico')]">
<xsl:copy>
<xsl:attribute name="Id">PHP.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId19ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\powershell.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId19ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">POWERSHELL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\powershell.ico')]">
<xsl:copy>
<xsl:attribute name="Id">POWERSHELL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId20ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\python.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId20ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">PYTHON.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\python.ico')]">
<xsl:copy>
<xsl:attribute name="Id">PYTHON.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId21ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\react.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId21ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">REACT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\react.ico')]">
<xsl:copy>
<xsl:attribute name="Id">REACT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId22ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\ruby.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId22ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">RUBY.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\ruby.ico')]">
<xsl:copy>
<xsl:attribute name="Id">RUBY.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId23ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\sass.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId23ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">SASS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\sass.ico')]">
<xsl:copy>
<xsl:attribute name="Id">SASS.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId24ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\shell.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId24ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">SHELL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\shell.ico')]">
<xsl:copy>
<xsl:attribute name="Id">SHELL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId25ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\sql.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId25ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">SQL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\sql.ico')]">
<xsl:copy>
<xsl:attribute name="Id">SQL.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId26ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\typescript.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId26ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">TYPESCRIPT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\typescript.ico')]">
<xsl:copy>
<xsl:attribute name="Id">TYPESCRIPT.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId27ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\vue.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId27ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">VUE.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\vue.ico')]">
<xsl:copy>
<xsl:attribute name="Id">VUE.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId28ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\xml.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId28ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">XML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\xml.ico')]">
<xsl:copy>
<xsl:attribute name="Id">XML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:key name="vId29ToReplace" match="wi:Component[wi:File[contains(@Source,'resources\app\resources\win32\yaml.ico')]]" use="@Id"/>
<xsl:template match="node()[key('vId29ToReplace', @Id)]">
<xsl:copy>
<xsl:attribute name="Id">YAML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<xsl:template match="wi:Component/wi:File[contains(@Source,'resources\app\resources\win32\yaml.ico')]">
<xsl:copy>
<xsl:attribute name="Id">YAML.ICO</xsl:attribute>
<xsl:copy-of select="@*[name()!='Id']"/>
<xsl:apply-templates />
</xsl:copy>
</xsl:template>
<!-- Remove conflicting non-MSI updater -->
<xsl:key name="FileToRemove" match="wi:Component[wi:File[contains(@Source,'tools\inno_updater.exe')]]" use="@Id" />
<xsl:template match="*[self::wi:Component or self::wi:ComponentRef][key('FileToRemove', @Id)]" />
<xsl:key name="FileToRemove" match="wi:Component[wi:File[contains(@Source,'tools\vcruntime140.dll')]]" use="@Id" />
<xsl:template match="*[self::wi:Component or self::wi:ComponentRef][key('FileToRemove', @Id)]" />
</xsl:stylesheet>

20
build/windows/rtf/make.sh Normal file
View File

@@ -0,0 +1,20 @@
#!/usr/bin/env bash
cd "$( dirname "${BASH_SOURCE[0]}" )"/../../../vscode || { echo "'vscode' dir not found"; exit 1; }
input=LICENSE.txt
target=LICENSE.rtf
cat - >$target <<_EOF
{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Consolas;}}
\viewkind4\uc1\pard\lang1033\f0\fs22
_EOF
sed -zE -e 's/([A-Za-z,])\r?\n([A-Za-z])/\1 \2/g' -e 's/\r?\n\r?\n/\\par\n\n/g' -e 's/(\\par\n)/\\line\1/g' -e 's/\s*(Copyright)/\\line\n\1/g' -e 's/(\\par)\\line/\1\n/g' $input >> $target
cat - >>$target <<_EOF
\par
}
_EOF

38
check_cron_or_pr.sh Executable file
View File

@@ -0,0 +1,38 @@
#!/usr/bin/env bash
# shellcheck disable=SC2129
set -e
if [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then
echo "It's a PR"
export SHOULD_BUILD="yes"
export SHOULD_DEPLOY="no"
elif [[ "${GITHUB_EVENT_NAME}" == "push" ]]; then
echo "It's a Push"
export SHOULD_BUILD="yes"
export SHOULD_DEPLOY="no"
elif [[ "${GITHUB_EVENT_NAME}" == "workflow_dispatch" ]]; then
if [[ "${GENERATE_ASSETS}" == "true" ]]; then
echo "It will generate the assets"
export SHOULD_BUILD="yes"
export SHOULD_DEPLOY="no"
else
echo "It's a Dispatch"
export SHOULD_DEPLOY="yes"
fi
else
echo "It's a Cron"
export SHOULD_DEPLOY="yes"
fi
if [[ "${GITHUB_ENV}" ]]; then
echo "GITHUB_BRANCH=${GITHUB_BRANCH}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD=${SHOULD_BUILD}" >> "${GITHUB_ENV}"
echo "SHOULD_DEPLOY=${SHOULD_DEPLOY}" >> "${GITHUB_ENV}"
echo "VSCODE_QUALITY=${VSCODE_QUALITY}" >> "${GITHUB_ENV}"
fi

View File

@@ -1,133 +1,380 @@
#!/bin/bash
#!/usr/bin/env bash
# shellcheck disable=SC2129
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)
VSCODIUM_ASSETS=$(echo $GITHUB_RESPONSE | jq '.assets')
if [[ -z "${GITHUB_TOKEN}" ]]; then
echo "Will not build because no GITHUB_TOKEN defined"
exit 0
fi
# if we just don't have the github token, get out fast
if [ "$GITHUB_TOKEN" != "" ]; then
if [ "$VSCODIUM_ASSETS" != "null" ]; then
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"
APP_NAME_LC="$( echo "${APP_NAME}" | awk '{print tolower($0)}' )"
GITHUB_RESPONSE=$( curl -s -H "Authorization: token ${GITHUB_TOKEN}" "https://api.github.com/repos/${ASSETS_REPOSITORY}/releases/latest" )
LATEST_VERSION=$( echo "${GITHUB_RESPONSE}" | jq -c -r '.tag_name' )
if [[ "${LATEST_VERSION}" =~ ^([0-9]+\.[0-9]+\.[0-9]+) ]]; then
if [[ "${MS_TAG}" != "${BASH_REMATCH[1]}" ]]; then
echo "New VSCode version, new build"
export SHOULD_BUILD="yes"
elif [[ "${NEW_RELEASE}" == "true" ]]; then
echo "New release build"
export SHOULD_BUILD="yes"
elif [[ "${VSCODE_QUALITY}" == "insider" ]]; then
BODY=$( echo "${GITHUB_RESPONSE}" | jq -c -r '.body' )
if [[ "${BODY}" =~ \[([a-z0-9]+)\] ]]; then
if [[ "${MS_COMMIT}" != "${BASH_REMATCH[1]}" ]]; then
echo "New VSCode Insiders version, new build"
export SHOULD_BUILD="yes"
fi
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
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
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
export RELEASE_VERSION="${LATEST_VERSION}"
echo "RELEASE_VERSION=${RELEASE_VERSION}" >> "${GITHUB_ENV}"
echo "Switch to release version: ${RELEASE_VERSION}"
ASSETS=$( echo "${GITHUB_RESPONSE}" | jq -c '.assets | map(.name)?' )
else
echo "Release assets do not exist at all, continuing build"
export SHOULD_BUILD="yes"
ASSETS="null"
fi
fi
echo "SHOULD_BUILD=$SHOULD_BUILD" >> $GITHUB_ENV
contains() {
# add " to match the end of a string so any hashs won't be matched by mistake
echo "${ASSETS}" | grep "${1}\""
}
if [[ "${ASSETS}" != "null" ]]; then
if [[ "${IS_SPEARHEAD}" == "yes" ]]; then
if [[ -z $( contains "${APP_NAME}-${RELEASE_VERSION}-src.tar.gz" ) || -z $( contains "${APP_NAME}-${RELEASE_VERSION}-src.zip" ) ]]; then
echo "Building because we have no SRC"
export SHOULD_BUILD="yes"
export SHOULD_BUILD_SRC="yes"
fi
# macos
elif [[ "${OS_NAME}" == "osx" ]]; then
if [[ -z $( contains "${APP_NAME}-darwin-${VSCODE_ARCH}-${RELEASE_VERSION}.zip" ) ]]; then
echo "Building on MacOS because we have no ZIP"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_ZIP="no"
fi
if [[ -z $( contains ".${VSCODE_ARCH}.${RELEASE_VERSION}.dmg" ) ]]; then
echo "Building on MacOS because we have no DMG"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_DMG="no"
fi
if [[ -z $( contains "${APP_NAME_LC}-reh-darwin-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on MacOS because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the MacOS builds"
fi
elif [[ "${OS_NAME}" == "windows" ]]; then
# windows-arm64
if [[ "${VSCODE_ARCH}" == "arm64" ]]; then
if [[ -z $( contains "${APP_NAME}Setup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows arm64 because we have no system setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_SYS="no"
fi
if [[ -z $( contains "UserSetup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows arm64 because we have no user setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_USR="no"
fi
if [[ -z $( contains "${APP_NAME}-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.zip" ) ]]; then
echo "Building on Windows arm64 because we have no zip"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_ZIP="no"
fi
export SHOULD_BUILD_REH="no"
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Windows arm64 builds"
fi
# windows-ia32
elif [[ "${VSCODE_ARCH}" == "ia32" ]]; then
if [[ -z $( contains "${APP_NAME}Setup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows ia32 because we have no system setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_SYS="no"
fi
if [[ -z $( contains "UserSetup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows ia32 because we have no user setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_USR="no"
fi
if [[ -z $( contains "${APP_NAME}-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.zip" ) ]]; then
echo "Building on Windows ia32 because we have no zip"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_ZIP="no"
fi
if [[ -z $( contains "${APP_NAME}-${VSCODE_ARCH}-${RELEASE_VERSION}.msi" ) ]]; then
echo "Building on Windows ia32 because we have no msi"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_MSI="no"
fi
if [[ -z $( contains "${APP_NAME}-${VSCODE_ARCH}-updates-disabled-${RELEASE_VERSION}.msi" ) ]]; then
echo "Building on Windows ia32 because we have no updates-disabled msi"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_MSI_NOUP="no"
fi
if [[ -z $( contains "${APP_NAME_LC}-reh-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Windows ia32 because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Windows ia32 builds"
fi
# windows-x64
else
if [[ -z $( contains "${APP_NAME}Setup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows x64 because we have no system setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_SYS="no"
fi
if [[ -z $( contains "UserSetup-${VSCODE_ARCH}-${RELEASE_VERSION}.exe" ) ]]; then
echo "Building on Windows x64 because we have no user setup"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_EXE_USR="no"
fi
if [[ -z $( contains "${APP_NAME}-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.zip" ) ]]; then
echo "Building on Windows x64 because we have no zip"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_ZIP="no"
fi
if [[ -z $( contains "${APP_NAME}-${VSCODE_ARCH}-${RELEASE_VERSION}.msi" ) ]]; then
echo "Building on Windows x64 because we have no msi"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_MSI="no"
fi
if [[ -z $( contains "${APP_NAME}-${VSCODE_ARCH}-updates-disabled-${RELEASE_VERSION}.msi" ) ]]; then
echo "Building on Windows x64 because we have no updates-disabled msi"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_MSI_NOUP="no"
fi
if [[ -z $( contains "${APP_NAME_LC}-reh-win32-${VSCODE_ARCH}-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Windows x64 because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Windows x64 builds"
fi
fi
elif [[ "${OS_NAME}" == "linux" ]]; then
# linux-arm64
if [[ "${VSCODE_ARCH}" == "arm64" ]]; then
if [[ -z $( contains "arm64.deb" ) ]]; then
echo "Building on Linux arm64 because we have no DEB"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_DEB="no"
fi
if [[ -z $( contains "aarch64.rpm" ) ]]; then
echo "Building on Linux arm64 because we have no RPM"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_RPM="no"
fi
if [[ -z $( contains "${APP_NAME}-linux-arm64-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux arm64 because we have no TAR"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_TAR="no"
fi
if [[ -z $( contains "${APP_NAME_LC}-reh-linux-arm64-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux arm64 because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
export SHOULD_BUILD_APPIMAGE="no"
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Linux arm64 builds"
fi
# linux-armhf
elif [[ "${VSCODE_ARCH}" == "armhf" ]]; then
if [[ -z $( contains "armhf.deb" ) ]]; then
echo "Building on Linux arm because we have no DEB"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_DEB="no"
fi
if [[ -z $( contains "armv7hl.rpm" ) ]]; then
echo "Building on Linux arm because we have no RPM"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_RPM="no"
fi
if [[ -z $( contains "${APP_NAME}-linux-armhf-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux arm because we have no TAR"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_TAR="no"
fi
if [[ -z $( contains "${APP_NAME_LC}-reh-linux-armhf-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux arm because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
export SHOULD_BUILD_APPIMAGE="no"
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Linux arm builds"
fi
# linux-ppc64le
elif [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then
SHOULD_BUILD_DEB="no"
SHOULD_BUILD_APPIMAGE="no"
SHOULD_BUILD_RPM="no"
SHOULD_BUILD_TAR="no"
if [[ -z $( contains "${APP_NAME_LC}-reh-linux-ppc64le-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux PowerPC64LE because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Linux PowerPC64LE builds"
fi
# linux-x64
else
if [[ -z $( contains "amd64.deb" ) ]]; then
echo "Building on Linux x64 because we have no DEB"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_DEB="no"
fi
if [[ -z $( contains "x86_64.rpm" ) ]]; then
echo "Building on Linux x64 because we have no RPM"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_RPM="no"
fi
if [[ -z $( contains "${APP_NAME}-linux-x64-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux x64 because we have no TAR"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_TAR="no"
fi
# if [[ -z $( contains "x86_64.AppImage" ) ]]; then
# echo "Building on Linux x64 because we have no AppImage"
# export SHOULD_BUILD="yes"
# else
# export SHOULD_BUILD_APPIMAGE="no"
# fi
export SHOULD_BUILD_APPIMAGE="no"
if [[ -z $( contains "${APP_NAME_LC}-reh-linux-x64-${RELEASE_VERSION}.tar.gz" ) ]]; then
echo "Building on Linux x64 because we have no REH archive"
export SHOULD_BUILD="yes"
else
export SHOULD_BUILD_REH="no"
fi
if [[ "${SHOULD_BUILD}" != "yes" ]]; then
echo "Already have all the Linux x64 builds"
fi
fi
fi
else
if [[ "${IS_SPEARHEAD}" == "yes" ]]; then
export SHOULD_BUILD_SRC="yes"
elif [[ "${OS_NAME}" == "linux" ]]; then
if [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then
SHOULD_BUILD_DEB="no"
SHOULD_BUILD_APPIMAGE="no"
SHOULD_BUILD_RPM="no"
SHOULD_BUILD_TAR="no"
elif [[ "${VSCODE_ARCH}" != "x64" ]]; then
export SHOULD_BUILD_APPIMAGE="no"
fi
elif [[ "${OS_NAME}" == "windows" ]]; then
if [[ "${VSCODE_ARCH}" == "arm64" ]]; then
export SHOULD_BUILD_REH="no"
fi
fi
echo "Release assets do not exist at all, continuing build"
export SHOULD_BUILD="yes"
fi
echo "SHOULD_BUILD=${SHOULD_BUILD}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_APPIMAGE=${SHOULD_BUILD_APPIMAGE}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_DEB=${SHOULD_BUILD_DEB}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_DMG=${SHOULD_BUILD_DMG}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_EXE_SYS=${SHOULD_BUILD_EXE_SYS}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_EXE_USR=${SHOULD_BUILD_EXE_USR}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_MSI=${SHOULD_BUILD_MSI}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_MSI_NOUP=${SHOULD_BUILD_MSI_NOUP}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_REH=${SHOULD_BUILD_REH}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_RPM=${SHOULD_BUILD_RPM}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_TAR=${SHOULD_BUILD_TAR}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_ZIP=${SHOULD_BUILD_ZIP}" >> "${GITHUB_ENV}"
echo "SHOULD_BUILD_SRC=${SHOULD_BUILD_SRC}" >> "${GITHUB_ENV}"

View File

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

@@ -0,0 +1,17 @@
# Accounts authentication
## GitHub
The GitHub authentication has been patched to use personal access tokens.
Here is how to create a new personal access token: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
## Microsoft
The Microsoft authentication hasn't been patched so its status is unknown.
## When does it happen?
An account authentication occurs only when an extension is asking for it.
For `GitLens`, since the `12 non-plus` version, it won't ask for any new authentication.

View File

@@ -0,0 +1,27 @@
# Extensions compatibility
## Partial Compatibility
- [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
> [Since May 2021](https://devblogs.microsoft.com/python/python-in-visual-studio-code-may-2021-release/), Python is using a closed source language server ([Pylance](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance))
## Incompatibility
- [LaTeX Workshop](https://marketplace.visualstudio.com/items?itemName=James-Yu.latex-workshop)
> It's officially unsupported: https://github.com/James-Yu/LaTeX-Workshop/wiki/FAQ#vscodium-is-not-officially-supported
## Incompatibility due to licensing
The following extensions are not compatible with VSCodium due to their licensing:
- [Live Share](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare)
- [Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)
- [Remote - SSH](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh)
- [Remote - SSH: Editing Configuration Files](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh-edit)
- [Remote - WSL](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl)
## Replacements
The following extensions are functional replacements for incompatible extensions:
- [Open Remote - SSH](https://open-vsx.org/extension/jeanp413/open-remote-ssh)

149
docs/howto-build.md Normal file
View File

@@ -0,0 +1,149 @@
# How to build VSCodium
## Table of Contents
- [Dependencies](#dependencies)
- [Linux](#dependencies-linux)
- [MacOS](#dependencies-macos)
- [Windows](#dependencies-windows)
- [Build Scripts](#build-scripts)
- [Build in Docker](#build-docker)
- [X64](#build-docker-x64)
- [ARM 32bits](#build-docker-arm32)
- [Build Snap](#build-snap)
- [Patch Update Process](#patch-update-process)
- [Semi-Automated](#patch-update-process-semiauto)
- [Manual](#patch-update-process-manual)
## <a id="dependencies"></a>Dependencies
- node 16
- yarn
- jq
- git
### <a id="dependencies-linux"></a>Linux
- GCC
- make
- pkg-config
- libx11-dev
- libxkbfile-dev
- libsecret-1-dev
- fakeroot
- rpm
- rpmbuild
- dpkg
- python3
- imagemagick (for AppImage)
### <a id="dependencies-macos"></a>MacOS
- imagemagick
- png2icns (`npm install png2icns -g`)
- librsvg
### <a id="dependencies-windows"></a>Windows
- powershell
- sed
- 7z
- [WiX Toolset](http://wixtoolset.org/releases/)
- python3
- 'Tools for Native Modules' from hte official Node.js installer
## <a id="build-scripts"></a>Build Scripts
A build helper script can be found at `build/build.sh`.
- Linux: `./build/build.sh`
- MacOS: `./build/build.sh`
- Windows: `powershell -ExecutionPolicy ByPass -File .\build\build.ps1` or `"C:\Program Files\Git\bin\bash.exe" ./build/build.sh`
### Insider
The `insider` version can be built with `./build/build.sh -i` on the `insider` branch.
You can try the latest version with the command `./build/build.sh -il` but the patches might not be up to date.
## <a id="build-docker"></a>Build in Docker
To build for Linux, you can alternatively build VSCodium in docker
### <a id="build-docker-x64"></a>X64
Firstly, create the container with:
```
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
```
like
```
docker run -ti --volume=$(pwd):/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
```
When inside the container, you can use the following commands to build:
```
cd /root/vscodium
./build/build.sh
```
### <a id="build-docker-arm32"></a>ARM 32bits
Firstly, create the container with:
```
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-armhf bash
```
like
```
docker run -ti --volume=$(pwd):/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-armhf bash
```
When inside the container, you can use the following commands to build:
```
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs desktop-file-utils
cd /root/vscodium
./build/build.sh
```
## <a id="build-snap"></a>Build Snap
```
# for the stable version
cd ./stores/snapcraft/stable
# for the insider version
cd ./stores/snapcraft/insider
# create the snap
snapcraft --use-lxd
# verify the snap
review-tools.snap-review --allow-classic codium*.snap
```
## <a id="patch-update-process"></a>Patch Update Process
## <a id="patch-update-process-semiauto"></a>Semi-Automated
- run `./build/build_<os>.sh`, if a patch is failing then,
- run `./build/update_patches.sh`
- when the script pauses at `Press any key when the conflict have been resolved...`, open `vscode` directory in **VSCodium**
- fix all the `*.rej` files
- run `yarn watch`
- run `./script/code.sh` until everything is ok
- press any key to continue the script `update_patches.sh`
## <a id="patch-update-process-manual"></a>Manual
- run `./build/build_<os>.sh`, if a patch is failing then,
- open `vscode` directory in **VSCodium**
- revert all changes
- run `git apply --reject ../patches/<name>.patch`
- fix all the `*.rej` files
- run `yarn watch`
- run `./script/code.sh` until everything is ok
- run `git diff > ../patches/<name>.patch`

224
docs/index.md Normal file
View File

@@ -0,0 +1,224 @@
# More Info
## Table of Contents
- [Getting all the Telemetry Out](#disable-telemetry)
- [Replacements to Microsoft Online Services](#replacement-online-services)
- [Extensions + Marketplace](#extensions-marketplace)
- [How to use the OpenVSX Marketplace](#howto-openvsx-marketplace)
- [How to use the VS Code Marketplace](#howto-vscode-marketplace)
- [How to self host your own VS Code Marketplace](#howto-selfhost-marketplace)
- [Proprietary Debugging Tools](#proprietary-debugging-tools)
- [Proprietary Extensions](#proprietary-extensions)
- [Extensions compatibility](https://github.com/VSCodium/vscodium/blob/master/docs/extensions-compatibility.md)
- [Migrating from Visual Studio Code to VSCodium](#migrating)
- [Sign in with GitHub](#signin-github)
- [Accounts authentication](https://github.com/VSCodium/vscodium/blob/master/docs/accounts-authentication.md)
- [How do I run VSCodium in portable mode?](#portable)
- [How do I fix the default file manager?](#file-manager)
- [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)
- [From Linux .tar.gz](#from-linux-targz)
- [Troubleshooting](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md)
- [Contributing](https://github.com/VSCodium/vscodium/blob/master/CONTRIBUTING.md)
- [How to build VSCodium](https://github.com/VSCodium/vscodium/blob/master/docs/howto-build.md)
## <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.)_
### <a id="replacement-online-services"></a>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
Being a vscode based editor, VSCodium gets additional features by installing VS Code extensions.
Unfortunately, as Microsoft [prohibits usages of the Microsoft marketplace by any other products](https://github.com/microsoft/vscode/issues/31168) or redistribution of `.vsix` files from it, in order to use VS Code extensions in non-Microsoft products those need to be installed differently.
By default, 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), for example from the release page in their source repository.
### <a id="howto-openvsx-marketplace"></a>How to use the Open VSX Registry
As noted above, the [Open VSX Registry](https://open-vsx.org/) is the pre-set extension gallery in VSCodium. Using the extension view in VSCodium will therefore by default use it.
See [this article](https://www.gitpod.io/blog/open-vsx/) for more information on the motivation behind Open VSX.
### <a id="howto-switch-marketplace"></a>How to use a different extension gallery
You can switch from the pre-set Open VSX Registry by configuring the endpoints using the following solutions.
These examples use the URLs for Microsoft's VS Code Marketplace, see [below](#howto-vscode-marketplace) for more information on that.
With the following environment variables:
- `VSCODE_GALLERY_SERVICE_URL='https://marketplace.visualstudio.com/_apis/public/gallery'`
- `VSCODE_GALLERY_ITEM_URL='https://marketplace.visualstudio.com/items'`
- `VSCODE_GALLERY_CACHE_URL='https://vscode.blob.core.windows.net/gallery/index'`
- `VSCODE_GALLERY_CONTROL_URL=''`
Or by creating a custom `product.json` at the following location (replace `VSCodium` by `VSCodium - Insiders` if you use that):
- Windows: `%APPDATA%\VSCodium` or `%USERPROFILE%\AppData\Roaming\VSCodium`
- macOS: `~/Library/Application Support/VSCodium`
- Linux: `$XDG_CONFIG_HOME/VSCodium` or `~/.config/VSCodium`
with the content:
- Note: set `cacheUrl` to empty string for every other extension gallery
```jsonc
{
"extensionsGallery": {
"serviceUrl": "https://marketplace.visualstudio.com/_apis/public/gallery",
"itemUrl": "https://marketplace.visualstudio.com/items",
"cacheUrl": "https://vscode.blob.core.windows.net/gallery/index",
"controlUrl": ""
}
}
```
### <a id="howto-selfhost-marketplace"></a>How to self-host your own extension gallery
Individual developers and enterprise companies in regulated or security-conscious industries can self-host their own extension gallery. In all of these cases, you'd enter its endpoint URLs as noted above, replacing `marketplace.visualstudio.com` with `your-self-hosted-marketplace-address.example.com` (or IP address), setting `cacheUrl` / `VSCODE_GALLERY_CACHE_URL` to an empty string.
There are likely other options, but the following were reported to work:
* [Open VSX](https://github.com/eclipse/openvsx) eclipse open-source project
While the public instance which is run by the Eclipse Foundation is the pre-set endpoint in VSCodium, you can host your own instance.
> Open VSX is a [vendor-neutral](https://projects.eclipse.org/projects/ecd.openvsx) open-source alternative to the [Visual Studio Marketplace](https://marketplace.visualstudio.com/vscode). It provides a server application that manages [VS Code extensions](https://code.visualstudio.com/api) in a database, a web application similar to the VS Code Marketplace, and a command-line tool for publishing extensions similar to [vsce](https://code.visualstudio.com/api/working-with-extensions/publishing-extension#vsce).
* [code-marketplace](https://coder.com/blog/running-a-private-vs-code-extension-marketplace) open-source project
> `code-marketplace` is a self-contained go binary that does not have a frontend or any mechanisms for extension authors to add or update extensions in the marketplace. It simply reads extensions from file storage and provides an API for VSCode compatible editors to consume.
### <a id="howto-vscode-marketplace"></a>How to use the VS Code Marketplace
As with any online service, ensure you've understood [its terms of use](https://aka.ms/vsmarketplace-ToU).
Also note that this extension gallery hosts multiple extensions that are non-free and have license-agreements that explicitly forbid using them in non-Microsoft products, along with using telemetry.
The endpoint URLs are given in the [example above](#howto-switch-marketplace).
### <a id="proprietary-debugging-tools"></a>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 official 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.
### <a id="proprietary-extensions"></a>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 official 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:
```jsonc
"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="signin-github"></a>Sign in with GitHub
In VSCodium, `Sign in with GitHub` is using a Personal Access Token.<br />
Follow the documentation https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token to create your token.<br />
Select the scopes dependending on the extension which needs access to GitHub. (GitLens requires the `repo` scope.)
### Linux
If you are getting the error `Writing login information to the keychain failed with error 'The name org.freedesktop.secrets was not provided by any .service files'.`, you need to install the package `gnome-keyring`.
## <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="file-manager"></a>How do I fix the default file manager (Linux)?
In some cases, VSCodium becomes the file manager used to open directories (instead of apps like Dolphin or Nautilus).<br />
It's due to that no application was defined as the default file manager and so the system is using the latest capable application.
To set the default app, create the file `~/.config/mimeapps.list` with the content like:
```
[Default Applications]
inode/directory=org.gnome.Nautilus.desktop;
```
You can find your regular file manager with the command:
```
> grep directory /usr/share/applications/mimeinfo.cache
inode/directory=codium.desktop;org.gnome.Nautilus.desktop;
```
## <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.vscodium ApplePressAndHoldEnabled -bool false
```
## <a id="terminal-support"></a>How do I open VSCodium from the terminal?
For macOS and Windows:
- 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`).
On Linux, when installed with a package manager, `codium` has been installed in your `PATH`.
### <a id="from-linux-targz"></a>From Linux .tar.gz
When the archive `VSCodium-linux-<arch>-<version>.tar.gz` is extracted, the main entry point for VSCodium is `./bin/codium`.

51
docs/troubleshooting.md Normal file
View File

@@ -0,0 +1,51 @@
# Troubleshooting
## Table of Contents
- [Linux](#linux)
- [Fonts showing up as rectangles](#linux-fonts-rectangle)
- [Global menu workaround for KDE](#linux-kde-global-menu)
- [macOS](#macos)
- [App can't be opened because Apple cannot check it for malicious software](#macos-unidentified-developer)
- ["VSCodium.app" is damaged and cant be opened. You should move it to the Bin](#macos-quarantine)
## <a id="linux"></a>Linux
#### <a id="linux-fonts-rectangle"></a>*Fonts showing up as rectangles*
The following command should help:
```
rm -rf ~/.cache/fontconfig
rm -rf ~/snap/codium/common/.cache
fc-cache -r
```
#### <a id="linux-kde-global-menu"></a>*Global menu workaround for KDE*
Install these packages on Fedora:
* libdbusmenu-devel
* dbus-glib-devel
* libdbusmenu
On Ubuntu this package is called `libdbusmenu-glib4`.
Credits: [Gerson](https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/-/issues/91)
## <a id="macos"></a>macOS
Since the App is signed with a self-signed certificate, on the first launch, you might see the following messages:
#### <a id="macos-unidentified-developer"></a>*App can't be opened because Apple cannot check it for malicious software*
You can right-click the App and choose `Open`.
#### <a id="macos-quarantine"></a>*"VSCodium.app" is damaged and cant be opened. You should move it to the Bin.*
The following command will remove the quarantine attribute.
```
xattr -r -d com.apple.quarantine /Applications/VSCodium.app
```

View File

@@ -1,14 +1,118 @@
#!/bin/bash
#!/usr/bin/env bash
# shellcheck disable=SC2129
set -e
# git workaround
if [[ "${CI_BUILD}" != "no" ]]; then
git config --global --add safe.directory "/__w/$( echo "${GITHUB_REPOSITORY}" | awk '{print tolower($0)}' )"
fi
if [[ -n "${PULL_REQUEST_ID}" ]]; then
BRANCH_NAME=$( git rev-parse --abbrev-ref HEAD )
git config --global user.email "$( echo "${GITHUB_USERNAME}" | awk '{print tolower($0)}' )-ci@not-real.com"
git config --global user.name "${GITHUB_USERNAME} CI"
git fetch --unshallow
git fetch origin "pull/${PULL_REQUEST_ID}/head"
git checkout FETCH_HEAD
git merge --no-edit "origin/${BRANCH_NAME}"
fi
if [[ -z "${RELEASE_VERSION}" ]]; then
if [[ "${VSCODE_LATEST}" == "yes" ]] || [[ ! -f "${VSCODE_QUALITY}.json" ]]; then
UPDATE_INFO=$( curl --silent --fail "https://update.code.visualstudio.com/api/update/darwin/${VSCODE_QUALITY}/0000000000000000000000000000000000000000" )
else
MS_COMMIT=$( jq -r '.commit' "${VSCODE_QUALITY}.json" )
MS_TAG=$( jq -r '.tag' "${VSCODE_QUALITY}.json" )
fi
if [[ -z "${MS_COMMIT}" ]]; then
MS_COMMIT=$( echo "${UPDATE_INFO}" | jq -r '.version' )
MS_TAG=$( echo "${UPDATE_INFO}" | jq -r '.name' )
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
MS_TAG="${MS_TAG/\-insider/}"
fi
fi
date=$( date +%Y%j )
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
RELEASE_VERSION="${MS_TAG}.${date: -5}-insider"
else
RELEASE_VERSION="${MS_TAG}.${date: -5}"
fi
else
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
if [[ "${RELEASE_VERSION}" =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.[0-9]+-insider$ ]];
then
MS_TAG="${BASH_REMATCH[1]}"
else
echo "Error: Bad RELEASE_VERSION: ${RELEASE_VERSION}"
exit 1
fi
else
if [[ "${RELEASE_VERSION}" =~ ^([0-9]+\.[0-9]+\.[0-9]+)\.[0-9]+$ ]];
then
MS_TAG="${BASH_REMATCH[1]}"
else
echo "Error: Bad RELEASE_VERSION: ${RELEASE_VERSION}"
exit 1
fi
fi
if [[ "${MS_TAG}" == "$( jq -r '.tag' "${VSCODE_QUALITY}".json )" ]]; then
MS_COMMIT=$( jq -r '.commit' "${VSCODE_QUALITY}".json )
else
echo "Error: No MS_COMMIT for ${RELEASE_VERSION}"
exit 1
fi
fi
echo "RELEASE_VERSION=\"${RELEASE_VERSION}\""
mkdir -p vscode
cd vscode || { echo "'vscode' dir not found"; exit 1; }
git init -q
git remote add origin https://github.com/Microsoft/vscode.git
# 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}"
if [[ -z "${MS_TAG}" ]]; then
UPDATE_INFO=$( curl --silent --fail "https://update.code.visualstudio.com/api/update/darwin/${VSCODE_QUALITY}/0000000000000000000000000000000000000000" )
MS_COMMIT=$( echo "${UPDATE_INFO}" | jq -r '.version' )
MS_TAG=$( echo "${UPDATE_INFO}" | jq -r '.name' )
elif [[ -z "${MS_COMMIT}" ]]; then
REFERENCE=$( git ls-remote --tags | grep -x ".*refs\/tags\/${MS_TAG}" | head -1 )
git clone https://github.com/Microsoft/vscode.git --branch $LATEST_MS_TAG --depth 1
if [[ -z "${REFERENCE}" ]]; then
echo "Error: The following tag can't be found: ${MS_TAG}"
exit 1
elif [[ "${REFERENCE}" =~ ^([[:alnum:]]+)[[:space:]]+refs\/tags\/([0-9]+\.[0-9]+\.[0-9]+)$ ]]; then
MS_COMMIT="${BASH_REMATCH[1]}"
MS_TAG="${BASH_REMATCH[2]}"
else
echo "Error: The following reference can't be parsed: ${REFERENCE}"
exit 1
fi
fi
echo "MS_TAG=\"${MS_TAG}\""
echo "MS_COMMIT=\"${MS_COMMIT}\""
git fetch --depth 1 origin "${MS_COMMIT}"
git checkout FETCH_HEAD
cd ..
# for GH actions
echo "LATEST_MS_COMMIT=$LATEST_MS_COMMIT" >> $GITHUB_ENV
echo "LATEST_MS_TAG=$LATEST_MS_TAG" >> $GITHUB_ENV
if [[ "${GITHUB_ENV}" ]]; then
echo "MS_TAG=${MS_TAG}" >> "${GITHUB_ENV}"
echo "MS_COMMIT=${MS_COMMIT}" >> "${GITHUB_ENV}"
echo "RELEASE_VERSION=${RELEASE_VERSION}" >> "${GITHUB_ENV}"
fi
export MS_TAG
export MS_COMMIT
export RELEASE_VERSION

9
icons/README.md Normal file
View File

@@ -0,0 +1,9 @@
## Files
| filename | color | width | border |
| ------------------------- | ------ | ----- | ------ |
| `codium_clt.svg` | light | | |
| `codium_cnl.svg` | normal | | |
| `codium_cnl_w80_b8.svg` | normal | 80% | 8pt |
| `codium_cnl_w100_b05.svg` | normal | 100% | 0.5pt |

View File

@@ -1,51 +1,177 @@
#!/usr/bin/env bash
# shellcheck disable=SC1091
check_programs() {
for arg in "$@"
do
if ! command -v $arg >/dev/null 2>&1
then
echo "$arg could not be found"
exit
fi
done
set -e
# DEBUG
# set -o xtrace
QUALITY="stable"
COLOR="blue1"
while getopts ":i" opt; do
case "$opt" in
i)
export QUALITY="insider"
export COLOR="orange1"
;;
*)
;;
esac
done
check_programs() { # {{{
for arg in "$@"; do
if ! command -v "${arg}" &> /dev/null; then
echo "${arg} could not be found"
exit 0
fi
done
} # }}}
check_programs "icns2png" "composite" "convert" "png2icns" "icotool" "rsvg-convert" "sed"
. ./utils.sh
SRC_PREFIX=""
VSCODE_PREFIX=""
build_darwin_main() { # {{{
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/darwin/code.icns" ]]; then
rsvg-convert -w 655 -h 655 "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
composite "code_logo.png" -gravity center "icons/template_macos.png" "code_1024.png"
convert "code_1024.png" -resize 512x512 code_512.png
convert "code_1024.png" -resize 256x256 code_256.png
convert "code_1024.png" -resize 128x128 code_128.png
png2icns "${SRC_PREFIX}src/${QUALITY}/resources/darwin/code.icns" code_512.png code_256.png code_128.png
rm code_1024.png code_512.png code_256.png code_128.png code_logo.png
fi
} # }}}
build_darwin_types() { # {{{
rsvg-convert -w 128 -h 128 "icons/${QUALITY}/codium_cnl_w80_b8.svg" -o "code_logo.png"
for file in "${VSCODE_PREFIX}"vscode/resources/darwin/*; do
if [[ -f "${file}" ]]; then
name=$(basename "${file}" '.icns')
if [[ "${name}" != 'code' ]] && [[ ! -f "${SRC_PREFIX}src/${QUALITY}/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 -geometry +359+374 "code_logo.png" "${name}.png" "${name}.png"
convert "${name}.png" -resize 256x256 "${name}_256.png"
png2icns "${SRC_PREFIX}src/${QUALITY}/resources/darwin/${name}.icns" "${name}.png" "${name}_256.png"
rm "${name}_512x512x32.png" "${name}.png" "${name}_256.png"
fi
fi
done
rm "code_logo.png"
} # }}}
build_linux_main() { # {{{
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/linux/code.png" ]]; then
wget "https://raw.githubusercontent.com/VSCodium/icons/main/icons/linux/circle1/${COLOR}/paulo22s.png" -O "${SRC_PREFIX}src/${QUALITY}/resources/linux/code.png"
fi
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/linux/rpm"
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/linux/rpm/code.xpm" ]]; then
convert "${SRC_PREFIX}src/${QUALITY}/resources/linux/code.png" "${SRC_PREFIX}src/${QUALITY}/resources/linux/rpm/code.xpm"
fi
} # }}}
build_media() { # {{{
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/src/vs/workbench/browser/media/code-icon.svg" ]]; then
cp "icons/${QUALITY}/codium_clt.svg" "${SRC_PREFIX}src/${QUALITY}/src/vs/workbench/browser/media/code-icon.svg"
gsed -i 's|width="100" height="100"|width="1024" height="1024"|' "${SRC_PREFIX}src/${QUALITY}/src/vs/workbench/browser/media/code-icon.svg"
fi
} # }}}
build_windows_main() { # {{{
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/win32/code.ico" ]]; then
wget "https://raw.githubusercontent.com/VSCodium/icons/main/icons/win32/nobg/${COLOR}/paulo22s.ico" -O "${SRC_PREFIX}src/${QUALITY}/resources/win32/code.ico"
fi
} # }}}
build_windows_type() {
local FILE_PATH IMG_SIZE IMG_BG_COLOR LOGO_SIZE GRAVITY
FILE_PATH="$1"
IMG_SIZE="$2"
IMG_BG_COLOR="$3"
LOGO_SIZE="$4"
GRAVITY="$5"
if [[ ! -f "${FILE_PATH}" ]]; then
if [[ "${FILE_PATH##*.}" == "png" ]]; then
convert -size "${IMG_SIZE}" "${IMG_BG_COLOR}" PNG32:"${FILE_PATH}"
else
convert -size "${IMG_SIZE}" "${IMG_BG_COLOR}" "${FILE_PATH}"
fi
rsvg-convert -w "${LOGO_SIZE}" -h "${LOGO_SIZE}" "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
composite -gravity "${GRAVITY}" "code_logo.png" "${FILE_PATH}" "${FILE_PATH}"
fi
}
check_programs "icns2png" "composite" "convert" "png2icns" "icotool"
build_windows_types() { # {{{
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/win32"
for file in vscode/resources/darwin/*
do
if [ -f "$file" ]; then
name=$(basename $file '.icns')
rsvg-convert -b "#F5F6F7" -w 64 -h 64 "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
if [[ $name != 'code' ]] && [ ! -f "src/resources/darwin/$name.icns" ]; then
icns2png -x -s 512x512 $file -o .
for file in "${VSCODE_PREFIX}"vscode/resources/win32/*.ico; do
if [[ -f "${file}" ]]; then
name=$(basename "${file}" '.ico')
composite -blend 100% -geometry +323+365 icons/corner_512.png "${name}_512x512x32.png" "$name.png"
composite icons/code_darwin.png "$name.png" "$name.png"
if [[ "${name}" != 'code' ]] && [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/win32/${name}.ico" ]]; then
icotool -x -w 256 "${file}"
convert "$name.png" -resize 256x256 "${name}_256.png"
composite -geometry +150+185 "code_logo.png" "${name}_9_256x256x32.png" "${name}.png"
png2icns "src/resources/darwin/$name.icns" "$name.png" "${name}_256.png"
convert "${name}.png" -define icon:auto-resize=256,128,96,64,48,32,24,20,16 "${SRC_PREFIX}src/${QUALITY}/resources/win32/${name}.ico"
rm "${name}_512x512x32.png" "$name.png" "${name}_256.png"
fi
fi
done
rm "${name}_9_256x256x32.png" "${name}.png"
fi
fi
done
for file in vscode/resources/win32/*.ico
do
if [ -f "$file" ]; then
name=$(basename $file '.ico')
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/code_70x70.png" "70x70" "canvas:transparent" "45" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/code_150x150.png" "150x150" "canvas:transparent" "64" "+44+25"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-100.bmp" "164x314" "xc:white" "126" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-125.bmp" "192x386" "xc:white" "147" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-150.bmp" "246x459" "xc:white" "190" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-175.bmp" "273x556" "xc:white" "211" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-200.bmp" "328x604" "xc:white" "255" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-225.bmp" "355x700" "xc:white" "273" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-big-250.bmp" "410x797" "xc:white" "317" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-100.bmp" "55x55" "xc:white" "44" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-125.bmp" "64x68" "xc:white" "52" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-150.bmp" "83x80" "xc:white" "63" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-175.bmp" "92x97" "xc:white" "76" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-200.bmp" "110x106" "xc:white" "86" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-225.bmp" "119x123" "xc:white" "103" "center"
build_windows_type "${SRC_PREFIX}src/${QUALITY}/resources/win32/inno-small-250.bmp" "138x140" "xc:white" "116" "center"
build_windows_type "${SRC_PREFIX}build/windows/msi/resources/${QUALITY}/wix-banner.bmp" "493x58" "xc:white" "50" "+438+6"
build_windows_type "${SRC_PREFIX}build/windows/msi/resources/${QUALITY}/wix-dialog.bmp" "493x312" "xc:white" "120" "+22+152"
if [[ $name != 'code' ]] && [ ! -f "src/resources/win32/$name.ico" ]; then
icotool -x -w 256 $file
rm code_logo.png
} # }}}
composite -geometry +150+185 icons/code_64.png "${name}_9_256x256x32.png" "${name}.png"
if [[ "${0}" == "${BASH_SOURCE[0]}" ]]; then
build_darwin_main
build_linux_main
build_windows_main
convert "${name}.png" -define icon:auto-resize=256,128,96,64,48,32,24,20,16 "src/resources/win32/$name.ico"
build_darwin_types
build_windows_types
rm "${name}_9_256x256x32.png" "${name}.png"
fi
fi
done
build_media
fi

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="199.997" y1="214.302" x2="296.665" y2="307.573" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#FFB062"/>
<stop offset="1" stop-color="#E04F00"/>
</linearGradient>
</defs>
<g id="Layer_1">
<path d="M48.26,2.274 C45.406,4.105 44.583,7.898 46.422,10.742 C56.531,26.397 58.917,38.205 57.882,48.553 C53.698,68.369 44.603,72.389 36.655,72.389 C28.895,72.389 30.973,59.618 36.806,55.88 C40.288,53.706 44.748,52.293 48.171,52.293 C51.563,52.293 54.313,49.552 54.313,46.17 C54.313,42.787 51.563,40.046 48.171,40.046 C44.173,40.046 40.251,40.886 36.59,42.316 C37.338,38.787 37.614,34.973 36.647,30.919 C35.179,24.763 30.953,18.883 23.615,13.183 C22.33,12.183 20.7,11.734 19.083,11.934 C17.466,12.134 15.995,12.966 14.994,14.248 C12.912,16.918 13.394,20.766 16.072,22.843 C22.05,27.486 24.024,30.923 24.699,33.752 C25.374,36.581 24.831,39.616 23.475,43.786 C21.742,49.406 19.73,54.423 18.848,59.234 C18.414,61.602 18.377,64.179 18.265,66.238 C13.96,62.042 12.275,56.502 12.275,48.407 C12.274,45.025 9.524,42.283 6.133,42.284 C2.744,42.287 -0.002,45.027 -0.003,48.407 C-0.003,59.463 3.23,69.983 11.895,77.001 C19.739,84.474 39.686,81.712 39.686,93.709 C39.686,97.095 44.642,98.743 48.033,98.743 C51.511,98.743 55.888,96.418 55.888,93.709 C55.888,80.097 70.233,71.824 93.848,71.86 C97.24,71.865 99.992,69.126 99.997,65.744 C100.003,62.361 97.259,59.614 93.867,59.608 C92.252,59.606 90.678,59.661 89.126,59.753 C91.766,53.544 92.937,46.708 92.695,39.324 C92.583,35.943 89.745,33.293 86.356,33.403 C82.963,33.513 80.305,36.346 80.416,39.729 C80.736,49.397 80.374,58.03 73.171,62.581 C71.123,63.874 68.742,64.996 66.484,64.996 C68.237,60.228 69.561,55.195 70.103,49.77 C70.449,46.308 70.486,42.195 70.091,39 C69.478,34.05 68.738,28.436 70.617,24.207 C72.305,20.565 76.087,19.04 81.64,19.04 C85.029,19.037 87.775,16.296 87.776,12.917 C87.778,9.534 85.031,6.79 81.64,6.787 C73.388,6.787 67.133,11.13 63.587,16.377 C61.733,12.417 59.475,8.336 56.747,4.112 C55.866,2.747 54.478,1.788 52.887,1.443 C52.099,1.272 51.285,1.257 50.491,1.399 C49.697,1.542 48.939,1.839 48.26,2.274 z" fill="url(#Gradient_1)" id="path6008"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="199.997" y1="214.302" x2="296.665" y2="307.573" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#FFA348"/>
<stop offset="1" stop-color="#C64600"/>
</linearGradient>
</defs>
<g id="Layer_1">
<path d="M48.26,2.274 C45.406,4.105 44.583,7.898 46.422,10.742 C56.531,26.397 58.917,38.205 57.882,48.553 C53.698,68.369 44.603,72.389 36.655,72.389 C28.895,72.389 30.973,59.618 36.806,55.88 C40.288,53.706 44.748,52.293 48.171,52.293 C51.563,52.293 54.313,49.552 54.313,46.17 C54.313,42.787 51.563,40.046 48.171,40.046 C44.173,40.046 40.251,40.886 36.59,42.316 C37.338,38.787 37.614,34.973 36.647,30.919 C35.179,24.763 30.953,18.883 23.615,13.183 C22.33,12.183 20.7,11.734 19.083,11.934 C17.466,12.134 15.995,12.966 14.994,14.248 C12.912,16.918 13.394,20.766 16.072,22.843 C22.05,27.486 24.024,30.923 24.699,33.752 C25.374,36.581 24.831,39.616 23.475,43.786 C21.742,49.406 19.73,54.423 18.848,59.234 C18.414,61.602 18.377,64.179 18.265,66.238 C13.96,62.042 12.275,56.502 12.275,48.407 C12.274,45.025 9.524,42.283 6.133,42.284 C2.744,42.287 -0.002,45.027 -0.003,48.407 C-0.003,59.463 3.23,69.983 11.895,77.001 C19.739,84.474 39.686,81.712 39.686,93.709 C39.686,97.095 44.642,98.743 48.033,98.743 C51.511,98.743 55.888,96.418 55.888,93.709 C55.888,80.097 70.233,71.824 93.848,71.86 C97.24,71.865 99.992,69.126 99.997,65.744 C100.003,62.361 97.259,59.614 93.867,59.608 C92.252,59.606 90.678,59.661 89.126,59.753 C91.766,53.544 92.937,46.708 92.695,39.324 C92.583,35.943 89.745,33.293 86.356,33.403 C82.963,33.513 80.305,36.346 80.416,39.729 C80.736,49.397 80.374,58.03 73.171,62.581 C71.123,63.874 68.742,64.996 66.484,64.996 C68.237,60.228 69.561,55.195 70.103,49.77 C70.449,46.308 70.486,42.195 70.091,39 C69.478,34.05 68.738,28.436 70.617,24.207 C72.305,20.565 76.087,19.04 81.64,19.04 C85.029,19.037 87.775,16.296 87.776,12.917 C87.778,9.534 85.031,6.79 81.64,6.787 C73.388,6.787 67.133,11.13 63.587,16.377 C61.733,12.417 59.475,8.336 56.747,4.112 C55.866,2.747 54.478,1.788 52.887,1.443 C52.099,1.272 51.285,1.257 50.491,1.399 C49.697,1.542 48.939,1.839 48.26,2.274 z" fill="url(#Gradient_1)" id="path6008"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="209.998" y1="224.042" x2="287.332" y2="298.658" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#FFA348"/>
<stop offset="1" stop-color="#C64600"/>
</linearGradient>
</defs>
<g id="Layer_1">
<g id="path6008">
<path d="M48.608,11.819 C46.325,13.284 45.666,16.318 47.138,18.594 C55.225,31.118 57.134,40.564 56.306,48.842 C52.958,64.695 45.682,67.911 39.324,67.911 C33.116,67.911 34.778,57.694 39.445,54.704 C42.23,52.965 45.798,51.834 48.537,51.834 C51.25,51.834 53.45,49.642 53.45,46.936 C53.45,44.23 51.25,42.037 48.537,42.037 C45.338,42.037 42.201,42.709 39.272,43.853 C39.87,41.03 40.091,37.978 39.318,34.735 C38.143,29.81 34.762,25.106 28.892,20.546 C27.864,19.746 26.56,19.387 25.266,19.547 C23.973,19.707 22.796,20.373 21.995,21.398 C20.33,23.534 20.715,26.613 22.858,28.274 C27.64,31.989 29.219,34.738 29.759,37.002 C30.299,39.265 29.865,41.693 28.78,45.029 C27.394,49.525 25.784,53.538 25.078,57.387 C24.731,59.282 24.702,61.343 24.612,62.99 C21.168,59.634 19.82,55.202 19.82,48.726 C19.819,46.02 17.619,43.826 14.906,43.827 C12.195,43.83 9.998,46.022 9.998,48.726 C9.998,57.57 12.584,65.986 19.516,71.601 C25.791,77.579 41.749,75.37 41.749,84.967 C41.749,87.676 45.714,88.994 48.426,88.994 C51.209,88.994 54.71,87.134 54.71,84.967 C54.71,74.078 66.186,67.459 85.078,67.488 C87.792,67.492 89.994,65.301 89.998,62.595 C90.002,59.889 87.807,57.691 85.094,57.686 C83.802,57.685 82.542,57.729 81.301,57.802 C83.413,52.835 84.35,47.366 84.156,41.459 C84.066,38.754 81.796,36.634 79.085,36.722 C76.37,36.81 74.244,39.077 74.333,41.783 C74.589,49.518 74.299,56.424 68.537,60.065 C66.898,61.099 64.994,61.997 63.187,61.997 C64.59,58.182 65.649,54.156 66.082,49.816 C66.359,47.046 66.389,43.756 66.073,41.2 C65.582,37.24 64.99,32.749 66.494,29.366 C67.844,26.452 70.87,25.232 75.312,25.232 C78.023,25.23 80.22,23.037 80.221,20.334 C80.222,17.627 78.025,15.432 75.312,15.43 C68.71,15.43 63.706,18.904 60.87,23.102 C59.386,19.934 57.58,16.669 55.398,13.29 C54.693,12.198 53.582,11.43 52.31,11.154 C51.679,11.018 51.028,11.006 50.393,11.119 C49.758,11.234 49.151,11.471 48.608,11.819 z" fill="url(#Gradient_1)"/>
<path d="M50.239,3.082 C53.179,3.136 51.93,2.991 54.005,3.336 C57.346,4.061 60.265,6.078 62.118,8.949 L63.123,10.561 C66.826,8.362 71.068,7.561 75.319,7.43 C82.445,7.436 88.225,13.21 88.221,20.336 C88.238,24.02 86.639,27.172 84.086,29.721 C88.987,31.499 91.733,36.199 92.152,41.197 C92.18,44.58 92.249,44.83 91.827,48.956 C91.745,49.763 91.546,50.554 91.405,51.353 C95.577,53.799 97.765,57.84 97.997,62.607 C97.987,69.735 92.194,75.498 85.066,75.488 C70.02,75.465 62.71,79.675 62.71,84.967 C62.71,92.511 55.258,96.994 48.426,96.994 C45.777,96.994 42.898,96.36 40.479,95.145 C36.759,93.25 34.123,89.987 33.806,85.737 C32.068,84.879 30.15,84.434 28.286,83.932 C27.813,83.807 27.57,83.743 27.327,83.678 C22.661,82.517 18.074,80.985 14.415,77.761 C5.537,70.611 2.229,59.744 1.998,48.723 C2,41.6 7.778,35.834 14.904,35.827 C17.181,35.748 18.943,36.49 20.983,37.35 C20.117,36.294 19.008,35.452 17.955,34.596 C12.316,30.222 11.298,22.107 15.69,16.475 C17.796,13.777 20.888,12.028 24.284,11.608 C27.68,11.188 31.105,12.131 33.799,14.229 C37.211,17.046 35.576,15.553 38.702,18.711 C37.495,13.28 39.864,8.25 44.288,5.086 L44.292,5.083 C45.718,4.17 47.309,3.546 48.984,3.244 L50.239,3.082 z M51.353,11.043 L50.393,11.119 C49.758,11.234 49.151,11.471 48.608,11.819 C46.325,13.284 45.666,16.318 47.138,18.594 C55.225,31.118 57.134,40.564 56.306,48.842 C52.958,64.695 45.682,67.911 39.324,67.911 C33.116,67.911 34.778,57.694 39.445,54.704 C42.23,52.965 45.798,51.834 48.537,51.834 C51.25,51.834 53.45,49.642 53.45,46.936 C53.45,44.23 51.25,42.037 48.537,42.037 C45.338,42.037 42.201,42.709 39.272,43.853 C39.87,41.03 40.091,37.978 39.318,34.735 C38.143,29.81 34.762,25.106 28.892,20.546 C27.864,19.746 26.56,19.387 25.266,19.547 C23.973,19.707 22.796,20.373 21.995,21.398 C20.33,23.534 20.715,26.613 22.858,28.274 C27.64,31.989 29.219,34.738 29.759,37.002 C30.299,39.265 29.865,41.693 28.78,45.029 C27.394,49.525 25.784,53.538 25.078,57.387 C24.731,59.282 24.702,61.343 24.612,62.99 C21.168,59.634 19.82,55.202 19.82,48.726 C19.819,46.02 17.619,43.826 14.906,43.827 C12.195,43.83 9.998,46.022 9.998,48.726 C9.998,57.57 12.584,65.986 19.516,71.601 C25.791,77.579 41.749,75.37 41.749,84.967 C41.749,87.676 45.714,88.994 48.426,88.994 C51.209,88.994 54.71,87.134 54.71,84.967 C54.71,74.078 66.186,67.459 85.078,67.488 C87.792,67.492 89.994,65.301 89.998,62.595 C90.002,59.889 87.807,57.691 85.094,57.686 C83.802,57.685 82.542,57.729 81.301,57.802 C83.413,52.835 84.35,47.366 84.156,41.459 C84.066,38.754 81.796,36.634 79.085,36.722 C76.37,36.81 74.244,39.077 74.333,41.783 C74.589,49.518 74.299,56.424 68.537,60.065 C66.898,61.099 64.994,61.997 63.187,61.997 C64.59,58.182 65.649,54.156 66.082,49.816 C66.359,47.046 66.389,43.756 66.073,41.2 C65.582,37.24 64.99,32.749 66.494,29.366 C67.844,26.452 70.87,25.232 75.312,25.232 C78.023,25.23 80.22,23.037 80.221,20.334 C80.222,17.627 78.025,15.432 75.312,15.43 C68.71,15.43 63.706,18.904 60.87,23.102 C59.386,19.934 57.58,16.669 55.398,13.29 C54.693,12.198 53.582,11.43 52.31,11.154 L51.353,11.043 z" fill="#FFFFFF"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="199.997" y1="214.302" x2="296.665" y2="307.573" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#78AEED"/>
<stop offset="1" stop-color="#1D6BCA"/>
</linearGradient>
</defs>
<g id="Layer_1">
<path d="M48.26,2.274 C45.406,4.105 44.583,7.898 46.422,10.742 C56.531,26.397 58.917,38.205 57.882,48.553 C53.698,68.369 44.603,72.389 36.655,72.389 C28.895,72.389 30.973,59.618 36.806,55.88 C40.288,53.706 44.748,52.293 48.171,52.293 C51.563,52.293 54.313,49.552 54.313,46.17 C54.313,42.787 51.563,40.046 48.171,40.046 C44.173,40.046 40.251,40.886 36.59,42.316 C37.338,38.787 37.614,34.973 36.647,30.919 C35.179,24.763 30.953,18.883 23.615,13.183 C22.33,12.183 20.7,11.734 19.083,11.934 C17.466,12.134 15.995,12.966 14.994,14.248 C12.912,16.918 13.394,20.766 16.072,22.843 C22.05,27.486 24.024,30.923 24.699,33.752 C25.374,36.581 24.831,39.616 23.475,43.786 C21.742,49.406 19.73,54.423 18.848,59.234 C18.414,61.602 18.377,64.179 18.265,66.238 C13.96,62.042 12.275,56.502 12.275,48.407 C12.274,45.025 9.524,42.283 6.133,42.284 C2.744,42.287 -0.002,45.027 -0.003,48.407 C-0.003,59.463 3.23,69.983 11.895,77.001 C19.739,84.474 39.686,81.712 39.686,93.709 C39.686,97.095 44.642,98.743 48.033,98.743 C51.511,98.743 55.888,96.418 55.888,93.709 C55.888,80.097 70.233,71.824 93.848,71.86 C97.24,71.865 99.992,69.126 99.997,65.744 C100.003,62.361 97.259,59.614 93.867,59.608 C92.252,59.606 90.678,59.661 89.126,59.753 C91.766,53.544 92.937,46.708 92.695,39.324 C92.583,35.943 89.745,33.293 86.356,33.403 C82.963,33.513 80.305,36.346 80.416,39.729 C80.736,49.397 80.374,58.03 73.171,62.581 C71.123,63.874 68.742,64.996 66.484,64.996 C68.237,60.228 69.561,55.195 70.103,49.77 C70.449,46.308 70.486,42.195 70.091,39 C69.478,34.05 68.738,28.436 70.617,24.207 C72.305,20.565 76.087,19.04 81.64,19.04 C85.029,19.037 87.775,16.296 87.776,12.917 C87.778,9.534 85.031,6.79 81.64,6.787 C73.388,6.787 67.133,11.13 63.587,16.377 C61.733,12.417 59.475,8.336 56.747,4.112 C55.866,2.747 54.478,1.788 52.887,1.443 C52.099,1.272 51.285,1.257 50.491,1.399 C49.697,1.542 48.939,1.839 48.26,2.274 z" fill="url(#Gradient_1)" id="path6008"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="199.997" y1="214.302" x2="296.665" y2="307.573" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#62A0EA"/>
<stop offset="1" stop-color="#1A5FB4"/>
</linearGradient>
</defs>
<g id="Layer_1">
<path d="M48.26,2.274 C45.406,4.105 44.583,7.898 46.422,10.742 C56.531,26.397 58.917,38.205 57.882,48.553 C53.698,68.369 44.603,72.389 36.655,72.389 C28.895,72.389 30.973,59.618 36.806,55.88 C40.288,53.706 44.748,52.293 48.171,52.293 C51.563,52.293 54.313,49.552 54.313,46.17 C54.313,42.787 51.563,40.046 48.171,40.046 C44.173,40.046 40.251,40.886 36.59,42.316 C37.338,38.787 37.614,34.973 36.647,30.919 C35.179,24.763 30.953,18.883 23.615,13.183 C22.33,12.183 20.7,11.734 19.083,11.934 C17.466,12.134 15.995,12.966 14.994,14.248 C12.912,16.918 13.394,20.766 16.072,22.843 C22.05,27.486 24.024,30.923 24.699,33.752 C25.374,36.581 24.831,39.616 23.475,43.786 C21.742,49.406 19.73,54.423 18.848,59.234 C18.414,61.602 18.377,64.179 18.265,66.238 C13.96,62.042 12.275,56.502 12.275,48.407 C12.274,45.025 9.524,42.283 6.133,42.284 C2.744,42.287 -0.002,45.027 -0.003,48.407 C-0.003,59.463 3.23,69.983 11.895,77.001 C19.739,84.474 39.686,81.712 39.686,93.709 C39.686,97.095 44.642,98.743 48.033,98.743 C51.511,98.743 55.888,96.418 55.888,93.709 C55.888,80.097 70.233,71.824 93.848,71.86 C97.24,71.865 99.992,69.126 99.997,65.744 C100.003,62.361 97.259,59.614 93.867,59.608 C92.252,59.606 90.678,59.661 89.126,59.753 C91.766,53.544 92.937,46.708 92.695,39.324 C92.583,35.943 89.745,33.293 86.356,33.403 C82.963,33.513 80.305,36.346 80.416,39.729 C80.736,49.397 80.374,58.03 73.171,62.581 C71.123,63.874 68.742,64.996 66.484,64.996 C68.237,60.228 69.561,55.195 70.103,49.77 C70.449,46.308 70.486,42.195 70.091,39 C69.478,34.05 68.738,28.436 70.617,24.207 C72.305,20.565 76.087,19.04 81.64,19.04 C85.029,19.037 87.775,16.296 87.776,12.917 C87.778,9.534 85.031,6.79 81.64,6.787 C73.388,6.787 67.133,11.13 63.587,16.377 C61.733,12.417 59.475,8.336 56.747,4.112 C55.866,2.747 54.478,1.788 52.887,1.443 C52.099,1.272 51.285,1.257 50.491,1.399 C49.697,1.542 48.939,1.839 48.26,2.274 z" fill="url(#Gradient_1)" id="path6008"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" width="100" height="100" viewBox="0, 0, 100, 100">
<defs>
<linearGradient id="Gradient_1" gradientUnits="userSpaceOnUse" x1="209.998" y1="224.042" x2="287.332" y2="298.658" gradientTransform="matrix(1, 0, 0, 1, -200, -213)">
<stop offset="0" stop-color="#62A0EA"/>
<stop offset="1" stop-color="#1A5FB4"/>
</linearGradient>
</defs>
<g id="Layer_1">
<g id="path6008">
<path d="M48.608,11.819 C46.325,13.284 45.666,16.318 47.138,18.594 C55.225,31.118 57.134,40.564 56.306,48.842 C52.958,64.695 45.682,67.911 39.324,67.911 C33.116,67.911 34.778,57.694 39.445,54.704 C42.23,52.965 45.798,51.834 48.537,51.834 C51.25,51.834 53.45,49.642 53.45,46.936 C53.45,44.23 51.25,42.037 48.537,42.037 C45.338,42.037 42.201,42.709 39.272,43.853 C39.87,41.03 40.091,37.978 39.318,34.735 C38.143,29.81 34.762,25.106 28.892,20.546 C27.864,19.746 26.56,19.387 25.266,19.547 C23.973,19.707 22.796,20.373 21.995,21.398 C20.33,23.534 20.715,26.613 22.858,28.274 C27.64,31.989 29.219,34.738 29.759,37.002 C30.299,39.265 29.865,41.693 28.78,45.029 C27.394,49.525 25.784,53.538 25.078,57.387 C24.731,59.282 24.702,61.343 24.612,62.99 C21.168,59.634 19.82,55.202 19.82,48.726 C19.819,46.02 17.619,43.826 14.906,43.827 C12.195,43.83 9.998,46.022 9.998,48.726 C9.998,57.57 12.584,65.986 19.516,71.601 C25.791,77.579 41.749,75.37 41.749,84.967 C41.749,87.676 45.714,88.994 48.426,88.994 C51.209,88.994 54.71,87.134 54.71,84.967 C54.71,74.078 66.186,67.459 85.078,67.488 C87.792,67.492 89.994,65.301 89.998,62.595 C90.002,59.889 87.807,57.691 85.094,57.686 C83.802,57.685 82.542,57.729 81.301,57.802 C83.413,52.835 84.35,47.366 84.156,41.459 C84.066,38.754 81.796,36.634 79.085,36.722 C76.37,36.81 74.244,39.077 74.333,41.783 C74.589,49.518 74.299,56.424 68.537,60.065 C66.898,61.099 64.994,61.997 63.187,61.997 C64.59,58.182 65.649,54.156 66.082,49.816 C66.359,47.046 66.389,43.756 66.073,41.2 C65.582,37.24 64.99,32.749 66.494,29.366 C67.844,26.452 70.87,25.232 75.312,25.232 C78.023,25.23 80.22,23.037 80.221,20.334 C80.222,17.627 78.025,15.432 75.312,15.43 C68.71,15.43 63.706,18.904 60.87,23.102 C59.386,19.934 57.58,16.669 55.398,13.29 C54.693,12.198 53.582,11.43 52.31,11.154 C51.679,11.018 51.028,11.006 50.393,11.119 C49.758,11.234 49.151,11.471 48.608,11.819 z" fill="url(#Gradient_1)"/>
<path d="M50.239,3.082 C53.179,3.136 51.93,2.991 54.005,3.336 C57.346,4.061 60.265,6.078 62.118,8.949 L63.123,10.561 C66.826,8.362 71.068,7.561 75.319,7.43 C82.445,7.436 88.225,13.21 88.221,20.336 C88.238,24.02 86.639,27.172 84.086,29.721 C88.987,31.499 91.733,36.199 92.152,41.197 C92.18,44.58 92.249,44.83 91.827,48.956 C91.745,49.763 91.546,50.554 91.405,51.353 C95.577,53.799 97.765,57.84 97.997,62.607 C97.987,69.735 92.194,75.498 85.066,75.488 C70.02,75.465 62.71,79.675 62.71,84.967 C62.71,92.511 55.258,96.994 48.426,96.994 C45.777,96.994 42.898,96.36 40.479,95.145 C36.759,93.25 34.123,89.987 33.806,85.737 C32.068,84.879 30.15,84.434 28.286,83.932 C27.813,83.807 27.57,83.743 27.327,83.678 C22.661,82.517 18.074,80.985 14.415,77.761 C5.537,70.611 2.229,59.744 1.998,48.723 C2,41.6 7.778,35.834 14.904,35.827 C17.181,35.748 18.943,36.49 20.983,37.35 C20.117,36.294 19.008,35.452 17.955,34.596 C12.316,30.222 11.298,22.107 15.69,16.475 C17.796,13.777 20.888,12.028 24.284,11.608 C27.68,11.188 31.105,12.131 33.799,14.229 C37.211,17.046 35.576,15.553 38.702,18.711 C37.495,13.28 39.864,8.25 44.288,5.086 L44.292,5.083 C45.718,4.17 47.309,3.546 48.984,3.244 L50.239,3.082 z M51.353,11.043 L50.393,11.119 C49.758,11.234 49.151,11.471 48.608,11.819 C46.325,13.284 45.666,16.318 47.138,18.594 C55.225,31.118 57.134,40.564 56.306,48.842 C52.958,64.695 45.682,67.911 39.324,67.911 C33.116,67.911 34.778,57.694 39.445,54.704 C42.23,52.965 45.798,51.834 48.537,51.834 C51.25,51.834 53.45,49.642 53.45,46.936 C53.45,44.23 51.25,42.037 48.537,42.037 C45.338,42.037 42.201,42.709 39.272,43.853 C39.87,41.03 40.091,37.978 39.318,34.735 C38.143,29.81 34.762,25.106 28.892,20.546 C27.864,19.746 26.56,19.387 25.266,19.547 C23.973,19.707 22.796,20.373 21.995,21.398 C20.33,23.534 20.715,26.613 22.858,28.274 C27.64,31.989 29.219,34.738 29.759,37.002 C30.299,39.265 29.865,41.693 28.78,45.029 C27.394,49.525 25.784,53.538 25.078,57.387 C24.731,59.282 24.702,61.343 24.612,62.99 C21.168,59.634 19.82,55.202 19.82,48.726 C19.819,46.02 17.619,43.826 14.906,43.827 C12.195,43.83 9.998,46.022 9.998,48.726 C9.998,57.57 12.584,65.986 19.516,71.601 C25.791,77.579 41.749,75.37 41.749,84.967 C41.749,87.676 45.714,88.994 48.426,88.994 C51.209,88.994 54.71,87.134 54.71,84.967 C54.71,74.078 66.186,67.459 85.078,67.488 C87.792,67.492 89.994,65.301 89.998,62.595 C90.002,59.889 87.807,57.691 85.094,57.686 C83.802,57.685 82.542,57.729 81.301,57.802 C83.413,52.835 84.35,47.366 84.156,41.459 C84.066,38.754 81.796,36.634 79.085,36.722 C76.37,36.81 74.244,39.077 74.333,41.783 C74.589,49.518 74.299,56.424 68.537,60.065 C66.898,61.099 64.994,61.997 63.187,61.997 C64.59,58.182 65.649,54.156 66.082,49.816 C66.359,47.046 66.389,43.756 66.073,41.2 C65.582,37.24 64.99,32.749 66.494,29.366 C67.844,26.452 70.87,25.232 75.312,25.232 C78.023,25.23 80.22,23.037 80.221,20.334 C80.222,17.627 78.025,15.432 75.312,15.43 C68.71,15.43 63.706,18.904 60.87,23.102 C59.386,19.934 57.58,16.669 55.398,13.29 C54.693,12.198 53.582,11.43 52.31,11.154 L51.353,11.043 z" fill="#FFFFFF"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

BIN
icons/template_macos.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

4
insider.json Normal file
View File

@@ -0,0 +1,4 @@
{
"tag": "1.84.0",
"commit": "60182c7e1a666961ded4d0319c154f52d85daf30"
}

15
install_gh.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
set -ex
GH_ARCH="amd64"
VERSION=$( curl --retry 12 --retry-delay 30 "https://api.github.com/repos/cli/cli/releases/latest" | grep '"tag_name"' | sed -E 's/.*"([^"]+)".*/\1/' | cut -c2- )
curl --retry 12 --retry-delay 120 -sSL "https://github.com/cli/cli/releases/download/v${VERSION}/gh_${VERSION}_linux_${GH_ARCH}.tar.gz" -o "gh_${VERSION}_linux_${GH_ARCH}.tar.gz"
tar xf "gh_${VERSION}_linux_${GH_ARCH}.tar.gz"
cp "gh_${VERSION}_linux_${GH_ARCH}/bin/gh" /usr/local/bin/
gh --version

11
install_remote_dependencies.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/usr/bin/env bash
set -e
cd vscode || { echo "'vscode' dir not found"; exit 1; }
yarn --cwd remote --frozen-lockfile --check-files
cd ..
tar -cf remote-dependencies.tar ./vscode/remote/node_modules

29
patch.sh Executable file
View File

@@ -0,0 +1,29 @@
#!/usr/bin/env bash
if [[ "${1}" == *patch ]]; then
FILE="../patches/${1}"
else
FILE="../patches/${1}.patch"
fi
cd vscode || { echo "'vscode' dir not found"; exit 1; }
git add .
git reset -q --hard HEAD
if [[ -f "${FILE}" ]]; then
git apply --reject "${FILE}"
fi
git apply --reject "../patches/helper/settings.patch"
read -rp "Press any key when the conflict have been resolved..." -n1 -s
git restore .vscode/settings.json
git add .
git diff --staged -U1 > "${FILE}"
cd ..
echo "The patch has been generated."

35
patches/binary-name.patch Normal file
View File

@@ -0,0 +1,35 @@
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
index 2686509..4fedec2 100644
--- a/build/gulpfile.vscode.js
+++ b/build/gulpfile.vscode.js
@@ -289,7 +289,7 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
} else if (platform === 'darwin') {
const shortcut = gulp.src('resources/darwin/bin/code.sh')
.pipe(replace('@@APPNAME@@', product.applicationName))
- .pipe(rename('bin/code'));
+ .pipe(rename('bin/' + product.applicationName));
all = es.merge(all, shortcut);
}
diff --git a/src/vs/platform/native/electron-main/nativeHostMainService.ts b/src/vs/platform/native/electron-main/nativeHostMainService.ts
index f7bd477..a489ae4 100644
--- a/src/vs/platform/native/electron-main/nativeHostMainService.ts
+++ b/src/vs/platform/native/electron-main/nativeHostMainService.ts
@@ -351,7 +351,7 @@ export class NativeHostMainService extends Disposable implements INativeHostMain
}
private async getShellCommandLink(): Promise<{ readonly source: string; readonly target: string }> {
- const target = resolve(this.environmentMainService.appRoot, 'bin', 'code');
+ const target = resolve(this.environmentMainService.appRoot, 'bin', this.productService.applicationName);
const source = `/usr/local/bin/${this.productService.applicationName}`;
// Ensure source exists
@@ -545,7 +545,7 @@ export class NativeHostMainService extends Disposable implements INativeHostMain
// macOS
if (this.environmentMainService.isBuilt) {
- return join(this.environmentMainService.appRoot, 'bin', 'code');
+ return join(this.environmentMainService.appRoot, 'bin', `${this.productService.applicationName}`);
}
return join(this.environmentMainService.appRoot, 'scripts', 'code-cli.sh');

1284
patches/brand.patch Normal file

File diff suppressed because it is too large Load Diff

167
patches/build-version.patch Normal file
View File

@@ -0,0 +1,167 @@
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
index 2a0c236..9fea722 100644
--- a/build/gulpfile.reh.js
+++ b/build/gulpfile.reh.js
@@ -250,4 +250,5 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
const name = product.nameShort;
+ const release = packageJson.release;
const packageJsonStream = gulp.src(['remote/package.json'], { base: 'remote' })
- .pipe(json({ name, version, dependencies: undefined, optionalDependencies: undefined }));
+ .pipe(json({ name, version, release, dependencies: undefined, optionalDependencies: undefined }));
@@ -256,3 +257,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
const productJsonStream = gulp.src(['product.json'], { base: '.' })
- .pipe(json({ commit, date, version }));
+ .pipe(json({ commit, date, version, release }));
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
index 0ca2cfd..3fb21d5 100644
--- a/build/gulpfile.vscode.js
+++ b/build/gulpfile.vscode.js
@@ -225,3 +225,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
- let version = packageJson.version;
+ let version = packageJson.version
const quality = product.quality;
@@ -233,3 +233,4 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
const name = product.nameShort;
- const packageJsonUpdates = { name, version };
+ const release = packageJson.release;
+ const packageJsonUpdates = { name, version, release };
@@ -244,3 +245,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
const date = new Date().toISOString();
- const productJsonUpdate = { commit, date, checksums, version };
+ const productJsonUpdate = { commit, date, checksums, version, release };
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
index 90f75cc..275c958 100644
--- a/build/gulpfile.vscode.linux.js
+++ b/build/gulpfile.vscode.linux.js
@@ -25,4 +25,2 @@ const commit = getVersion(root);
-const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
-
/**
@@ -88,3 +86,3 @@ function prepareDebPackage(arch) {
.pipe(replace('@@NAME@@', product.applicationName))
- .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
.pipe(replace('@@ARCHITECTURE@@', debArch))
@@ -193,4 +191,3 @@ function prepareRpmPackage(arch) {
.pipe(replace('@@ICON@@', product.linuxIconName))
- .pipe(replace('@@VERSION@@', packageJson.version))
- .pipe(replace('@@RELEASE@@', linuxPackageRevision))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
.pipe(replace('@@ARCHITECTURE@@', rpmArch))
@@ -267,3 +264,3 @@ function prepareSnapPackage(arch) {
.pipe(replace('@@NAME@@', product.applicationName))
- .pipe(replace('@@VERSION@@', commit.substr(0, 8)))
+ .pipe(replace('@@VERSION@@', `${packageJson.version}.${packageJson.release}`))
// Possible run-on values https://snapcraft.io/docs/architectures
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
index 6e9a6f3..9d80b6b 100644
--- a/build/gulpfile.vscode.win32.js
+++ b/build/gulpfile.vscode.win32.js
@@ -94,4 +94,4 @@ function buildWin32Setup(arch, target) {
DirName: product.win32DirName,
- Version: pkg.version,
- RawVersion: pkg.version.replace(/-\w+$/, ''),
+ Version: `${pkg.version}.${pkg.release}`,
+ RawVersion: `${pkg.version.replace(/-\w+$/, '')}.${pkg.release}`,
NameVersion: product.win32NameVersion + (target === 'user' ? ' (User)' : ''),
diff --git a/resources/linux/rpm/code.spec.template b/resources/linux/rpm/code.spec.template
index 06b8549..3af1f45 100644
--- a/resources/linux/rpm/code.spec.template
+++ b/resources/linux/rpm/code.spec.template
@@ -2,3 +2,3 @@ Name: @@NAME@@
Version: @@VERSION@@
-Release: @@RELEASE@@.el7
+Release: el7
Summary: Code editing. Redefined.
diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts
index ac9cd5d..87b6105 100644
--- a/src/vs/base/common/product.ts
+++ b/src/vs/base/common/product.ts
@@ -58,2 +58,3 @@ export interface IProductConfiguration {
readonly version: string;
+ readonly release: string;
readonly date?: string;
diff --git a/src/vs/platform/diagnostics/node/diagnosticsService.ts b/src/vs/platform/diagnostics/node/diagnosticsService.ts
index 0be311f..d6c4a18 100644
--- a/src/vs/platform/diagnostics/node/diagnosticsService.ts
+++ b/src/vs/platform/diagnostics/node/diagnosticsService.ts
@@ -224,3 +224,3 @@ export class DiagnosticsService implements IDiagnosticsService {
const output: string[] = [];
- output.push(`Version: ${this.productService.nameShort} ${this.productService.version} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
+ output.push(`Version: ${this.productService.nameShort} ${this.productService.version} ${this.productService.release || 'Release unknown'} (${this.productService.commit || 'Commit unknown'}, ${this.productService.date || 'Date unknown'})`);
output.push(`OS Version: ${osLib.type()} ${osLib.arch()} ${osLib.release()}`);
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
index 51a55e1..26dfe7b 100644
--- a/src/vs/platform/product/common/product.ts
+++ b/src/vs/platform/product/common/product.ts
@@ -43,6 +43,7 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
if (!product.version) {
- const pkg = globalThis._VSCODE_PACKAGE_JSON as { version: string };
+ const pkg = globalThis._VSCODE_PACKAGE_JSON as { version: string, release: string };
Object.assign(product, {
- version: pkg.version
+ version: pkg.version,
+ release: pkg.release
});
diff --git a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
index 4b320bb..6619c75 100644
--- a/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
+++ b/src/vs/workbench/browser/parts/dialogs/dialogHandler.ts
@@ -22,2 +22,3 @@ import { defaultButtonStyles, defaultCheckboxStyles, defaultDialogStyles, defaul
import { ResultKind } from 'vs/platform/keybinding/common/keybindingResolver';
+import { getReleaseString } from 'vs/workbench/common/release';
@@ -79,2 +80,4 @@ export class BrowserDialogHandler extends AbstractDialogHandler {
const detailString = (useAgo: boolean): string => {
+ const releaseString = getReleaseString();
+
return localize('aboutDetail',
@@ -85,3 +88,3 @@ export class BrowserDialogHandler extends AbstractDialogHandler {
navigator.userAgent
- );
+ ).replace('\n', `\n${releaseString} ${this.productService.release || 'Unknown'}\n`);
};
diff --git a/src/vs/workbench/common/release.ts b/src/vs/workbench/common/release.ts
new file mode 100644
index 0000000..2a8ea57
--- /dev/null
+++ b/src/vs/workbench/common/release.ts
@@ -0,0 +1,14 @@
+import { language } from 'vs/base/common/platform';
+
+const DEFAULT_LABEL = 'Release:';
+const LABELS: { [key: string]: string } = {
+ 'en': DEFAULT_LABEL,
+ 'fr': 'Révision :',
+ 'ru': 'Релиз:',
+ 'zh-hans': '发布版本:',
+ 'zh-hant': '發布版本:',
+};
+
+export function getReleaseString(): string {
+ return LABELS[language] ?? DEFAULT_LABEL;
+}
diff --git a/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts b/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
index 575bde3..f427833 100644
--- a/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
+++ b/src/vs/workbench/electron-sandbox/parts/dialogs/dialogHandler.ts
@@ -14,2 +14,3 @@ import { IProductService } from 'vs/platform/product/common/productService';
import { process } from 'vs/base/parts/sandbox/electron-sandbox/globals';
+import { getReleaseString } from 'vs/workbench/common/release';
@@ -77,2 +78,3 @@ export class NativeDialogHandler extends AbstractDialogHandler {
const osProps = await this.nativeHostService.getOSProperties();
+ const releaseString = getReleaseString();
@@ -89,3 +91,3 @@ export class NativeDialogHandler extends AbstractDialogHandler {
`${osProps.type} ${osProps.arch} ${osProps.release}${isLinuxSnap ? ' snap' : ''}`
- );
+ ).replace('\n', `\n${releaseString} ${this.productService.release || 'Unknown'}\n`);
};

View File

@@ -0,0 +1,13 @@
diff --git a/src/main.js b/src/main.js
index 19dde20..d9611f2 100644
--- a/src/main.js
+++ b/src/main.js
@@ -409,6 +409,8 @@ function configureCrashReporter() {
argv.splice(endOfArgsMarkerIndex, 0, '--crash-reporter-id', crashReporterId);
}
}
+ } else {
+ return;
}
}

View File

@@ -0,0 +1,58 @@
diff --git a/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.ts b/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.ts
index 00914aa..d5cfc18 100644
--- a/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.ts
+++ b/src/vs/workbench/contrib/editSessions/browser/editSessionsStorageService.ts
@@ -7,3 +7,3 @@ import { Disposable, DisposableStore } from 'vs/base/common/lifecycle';
import { localize } from 'vs/nls';
-import { Action2, MenuId, MenuRegistry, registerAction2 } from 'vs/platform/actions/common/actions';
+import { Action2, MenuId, registerAction2 } from 'vs/platform/actions/common/actions';
import { ContextKeyExpr, IContextKey, IContextKeyService } from 'vs/platform/contextkey/common/contextkey';
@@ -17,3 +17,3 @@ import { AuthenticationSession, AuthenticationSessionsChangeEvent, IAuthenticati
import { IExtensionService } from 'vs/workbench/services/extensions/common/extensions';
-import { EDIT_SESSIONS_SIGNED_IN, EditSession, EDIT_SESSION_SYNC_CATEGORY, IEditSessionsStorageService, EDIT_SESSIONS_SIGNED_IN_KEY, IEditSessionsLogService, SyncResource, EDIT_SESSIONS_PENDING_KEY } from 'vs/workbench/contrib/editSessions/common/editSessions';
+import { EDIT_SESSIONS_SIGNED_IN, EditSession, EDIT_SESSION_SYNC_CATEGORY, IEditSessionsStorageService, EDIT_SESSIONS_SIGNED_IN_KEY, IEditSessionsLogService, SyncResource } from 'vs/workbench/contrib/editSessions/common/editSessions';
import { IDialogService } from 'vs/platform/dialogs/common/dialogs';
@@ -93,3 +93,2 @@ export class EditSessionsWorkbenchService extends Disposable implements IEditSes
- this.registerSignInAction();
this.registerResetAuthenticationAction();
@@ -455,39 +454,2 @@ export class EditSessionsWorkbenchService extends Disposable implements IEditSes
- private registerSignInAction() {
- const that = this;
- const id = 'workbench.editSessions.actions.signIn';
- const when = ContextKeyExpr.and(ContextKeyExpr.equals(EDIT_SESSIONS_PENDING_KEY, false), ContextKeyExpr.equals(EDIT_SESSIONS_SIGNED_IN_KEY, false));
- this._register(registerAction2(class ResetEditSessionAuthenticationAction extends Action2 {
- constructor() {
- super({
- id,
- title: localize('sign in', 'Turn on Cloud Changes...'),
- category: EDIT_SESSION_SYNC_CATEGORY,
- precondition: when,
- menu: [{
- id: MenuId.CommandPalette,
- },
- {
- id: MenuId.AccountsContext,
- group: '2_editSessions',
- when,
- }]
- });
- }
-
- async run() {
- return await that.initialize('write', false);
- }
- }));
-
- this._register(MenuRegistry.appendMenuItem(MenuId.AccountsContext, {
- group: '2_editSessions',
- command: {
- id,
- title: localize('sign in badge', 'Turn on Cloud Changes... (1)'),
- },
- when: ContextKeyExpr.and(ContextKeyExpr.equals(EDIT_SESSIONS_PENDING_KEY, true), ContextKeyExpr.equals(EDIT_SESSIONS_SIGNED_IN_KEY, false))
- }));
- }
-
private registerResetAuthenticationAction() {

22
patches/ext-from-gh.patch Normal file
View File

@@ -0,0 +1,22 @@
diff --git a/build/lib/builtInExtensions.js b/build/lib/builtInExtensions.js
index 1b0adc4..b595123 100644
--- a/build/lib/builtInExtensions.js
+++ b/build/lib/builtInExtensions.js
@@ -47,5 +47,3 @@ function isUpToDate(extension) {
function getExtensionDownloadStream(extension) {
- const galleryServiceUrl = productjson.extensionsGallery?.serviceUrl;
- return (galleryServiceUrl ? ext.fromMarketplace(galleryServiceUrl, extension) : ext.fromGithub(extension))
- .pipe(rename(p => p.dirname = `${extension.name}/${p.dirname}`));
+ return ext.fromGithub(extension).pipe(rename(p => p.dirname = `${extension.name}/${p.dirname}`));
}
diff --git a/build/lib/builtInExtensions.ts b/build/lib/builtInExtensions.ts
index fefed43..4ae553e 100644
--- a/build/lib/builtInExtensions.ts
+++ b/build/lib/builtInExtensions.ts
@@ -72,5 +72,3 @@ function isUpToDate(extension: IExtensionDefinition): boolean {
function getExtensionDownloadStream(extension: IExtensionDefinition) {
- const galleryServiceUrl = productjson.extensionsGallery?.serviceUrl;
- return (galleryServiceUrl ? ext.fromMarketplace(galleryServiceUrl, extension) : ext.fromGithub(extension))
- .pipe(rename(p => p.dirname = `${extension.name}/${p.dirname}`));
+ return ext.fromGithub(extension).pipe(rename(p => p.dirname = `${extension.name}/${p.dirname}`));
}

View File

@@ -0,0 +1,101 @@
diff --git a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts
index 8c2aa42..18b0975 100644
--- a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts
+++ b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.contribution.ts
@@ -300,2 +300,8 @@ configurationRegistry.registerConfiguration({
},
+ 'workbench.welcomePage.extraAnnouncements': {
+ scope: ConfigurationScope.MACHINE,
+ type: 'boolean',
+ default: true,
+ description: localize('workbench.welcomePage.extraAnnouncements', "When enabled, the get started page loads additional announcements from VSCodium's repository.")
+ },
'workbench.startupEditor': {
diff --git a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts
index 9dd5330..9e2b6a2 100644
--- a/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts
+++ b/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStarted.ts
@@ -117,4 +117,8 @@ type GettingStartedActionEvent = {
type RecentEntry = (IRecentFolder | IRecentWorkspace) & { id: string };
+type AnnouncementEntry = { id: string, title: string, url: string };
const REDUCED_MOTION_KEY = 'workbench.welcomePage.preferReducedMotion';
+
+const BUILTIN_ANNOUNCEMENTS: AnnouncementEntry[] = [/* BUILTIN_ANNOUNCEMENTS */];
+
export class GettingStartedPage extends EditorPane {
@@ -153,2 +157,4 @@ export class GettingStartedPage extends EditorPane {
private gettingStartedList?: GettingStartedIndexList<IResolvedWalkthrough>;
+ private announcementList?: GettingStartedIndexList<AnnouncementEntry>;
+ private announcementData?: AnnouncementEntry[];
private featuredExtensionsList?: GettingStartedIndexList<IFeaturedExtension>;
@@ -774,2 +780,3 @@ export class GettingStartedPage extends EditorPane {
const gettingStartedList = this.buildGettingStartedWalkthroughsList();
+ const announcementList = await this.buildAnnouncementList();
@@ -784,3 +791,3 @@ export class GettingStartedPage extends EditorPane {
this.container.classList.remove('noWalkthroughs');
- reset(rightColumn, featuredExtensionList.getDomElement(), gettingStartedList.getDomElement());
+ reset(rightColumn, featuredExtensionList.getDomElement(), gettingStartedList.getDomElement(), announcementList.getDomElement());
}
@@ -788,3 +795,3 @@ export class GettingStartedPage extends EditorPane {
this.container.classList.add('noWalkthroughs');
- reset(rightColumn, featuredExtensionList.getDomElement());
+ reset(rightColumn, featuredExtensionList.getDomElement(), announcementList.getDomElement());
}
@@ -946,2 +953,55 @@ export class GettingStartedPage extends EditorPane {
+ private async buildAnnouncementList(): Promise<GettingStartedIndexList<AnnouncementEntry>> {
+ const renderAnnouncement = (announcement: AnnouncementEntry) => {
+ const { title, url } = announcement;
+ const li = $('li');
+
+ const anchor: HTMLLinkElement = $('a');
+ anchor.href = url;
+ anchor.innerText = title;
+ anchor.target = '_blank';
+ li.appendChild(anchor);
+
+ return li;
+ };
+
+ if (this.announcementList) { this.announcementList.dispose(); }
+
+ const announcementList = this.announcementList = new GettingStartedIndexList({
+ title: localize('announcements', "VSCodium Announcements"),
+ klass: 'announcements',
+ limit: 5,
+ empty: $('.empty-recent', {}, localize('noAnnouncements', "There are no current announcements.")),
+ renderElement: renderAnnouncement,
+ contextService: this.contextService
+ });
+
+ if (!this.announcementData) {
+ const showExtras = this.configurationService.getValue<boolean>('workbench.welcomePage.extraAnnouncements');
+
+ if (showExtras) {
+ const branch = this.productService.quality === 'insider' ? 'insider' : 'master';
+ await fetch(`https://raw.githubusercontent.com/VSCodium/vscodium/${branch}/announcements-extra.json`)
+ .then(async res => {
+ if (res.ok) {
+ var extraAnnouncements = await res.json() as AnnouncementEntry[];
+
+ this.announcementData = [...extraAnnouncements, ...BUILTIN_ANNOUNCEMENTS];
+ } else {
+ this.announcementData = BUILTIN_ANNOUNCEMENTS;
+ }
+ })
+ .catch(err => {
+ this.announcementData = BUILTIN_ANNOUNCEMENTS;
+ });
+ } else {
+ this.announcementData = BUILTIN_ANNOUNCEMENTS;
+ }
+ }
+
+ announcementList.setEntries(this.announcementData);
+
+ return announcementList;
+ }
+
private buildStartList(): GettingStartedIndexList<IWelcomePageStartEntry> {

View File

@@ -0,0 +1,43 @@
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
index 0d7d3c5..90f75cc 100644
--- a/build/gulpfile.vscode.linux.js
+++ b/build/gulpfile.vscode.linux.js
@@ -299,4 +299,3 @@ BUILD_TARGETS.forEach(({ arch }) => {
const prepareDebTask = task.define(`vscode-linux-${arch}-prepare-deb`, task.series(util.rimraf(`.build/linux/deb/${debArch}`), prepareDebPackage(arch)));
- gulp.task(prepareDebTask);
- const buildDebTask = task.define(`vscode-linux-${arch}-build-deb`, buildDebPackage(arch));
+ const buildDebTask = task.define(`vscode-linux-${arch}-build-deb`, task.series(prepareDebTask, buildDebPackage(arch)));
gulp.task(buildDebTask);
@@ -305,4 +304,3 @@ BUILD_TARGETS.forEach(({ arch }) => {
const prepareRpmTask = task.define(`vscode-linux-${arch}-prepare-rpm`, task.series(util.rimraf(`.build/linux/rpm/${rpmArch}`), prepareRpmPackage(arch)));
- gulp.task(prepareRpmTask);
- const buildRpmTask = task.define(`vscode-linux-${arch}-build-rpm`, buildRpmPackage(arch));
+ const buildRpmTask = task.define(`vscode-linux-${arch}-build-rpm`, task.series(prepareRpmTask, buildRpmPackage(arch)));
gulp.task(buildRpmTask);
diff --git a/build/linux/dependencies-generator.js b/build/linux/dependencies-generator.js
index 381539d..0f26614 100644
--- a/build/linux/dependencies-generator.js
+++ b/build/linux/dependencies-generator.js
@@ -22,3 +22,3 @@ const types_2 = require("./rpm/types");
// are valid, are in dep-lists.ts
-const FAIL_BUILD_FOR_NEW_DEPENDENCIES = true;
+const FAIL_BUILD_FOR_NEW_DEPENDENCIES = false;
// Based on https://source.chromium.org/chromium/chromium/src/+/refs/tags/114.0.5735.199:chrome/installer/linux/BUILD.gn;l=64-80
diff --git a/build/linux/dependencies-generator.ts b/build/linux/dependencies-generator.ts
index 5c4b9d2..a2c629a 100644
--- a/build/linux/dependencies-generator.ts
+++ b/build/linux/dependencies-generator.ts
@@ -23,3 +23,3 @@ import { isRpmArchString, RpmArchString } from './rpm/types';
// are valid, are in dep-lists.ts
-const FAIL_BUILD_FOR_NEW_DEPENDENCIES: boolean = true;
+const FAIL_BUILD_FOR_NEW_DEPENDENCIES: boolean = false;
diff --git a/resources/linux/rpm/code.spec.template b/resources/linux/rpm/code.spec.template
index 06b8549..a7e3dfb 100644
--- a/resources/linux/rpm/code.spec.template
+++ b/resources/linux/rpm/code.spec.template
@@ -81 +81,3 @@ update-mime-database %{_datadir}/mime &> /dev/null || :
%{_datadir}/zsh/site-functions/_%{name}
+
+%config(noreplace) /usr/share/%{name}/resources/app/product.json
\ No newline at end of file

View File

@@ -0,0 +1,61 @@
diff --git a/src/vs/workbench/browser/parts/banner/bannerPart.ts b/src/vs/workbench/browser/parts/banner/bannerPart.ts
index b120c94..1bb2b88 100644
--- a/src/vs/workbench/browser/parts/banner/bannerPart.ts
+++ b/src/vs/workbench/browser/parts/banner/bannerPart.ts
@@ -11,3 +11,3 @@ import { InstantiationType, registerSingleton } from 'vs/platform/instantiation/
import { IInstantiationService, ServicesAccessor } from 'vs/platform/instantiation/common/instantiation';
-import { IStorageService } from 'vs/platform/storage/common/storage';
+import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage';
import { IThemeService } from 'vs/platform/theme/common/themeService';
@@ -30,2 +30,3 @@ import { widgetClose } from 'vs/platform/theme/common/iconRegistry';
import { BannerFocused } from 'vs/workbench/common/contextkeys';
+import { INeverShowAgainOptions, NeverShowAgainScope } from 'vs/platform/notification/common/notification';
@@ -67,3 +68,3 @@ export class BannerPart extends Part implements IBannerService {
@IWorkbenchLayoutService layoutService: IWorkbenchLayoutService,
- @IStorageService storageService: IStorageService,
+ @IStorageService private readonly storageService: IStorageService,
@IContextKeyService private readonly contextKeyService: IContextKeyService,
@@ -187,2 +188,14 @@ export class BannerPart extends Part implements IBannerService {
+ if (item.neverShowAgain) {
+ const scope = this.toStorageScope(item.neverShowAgain);
+ const id = item.neverShowAgain.id;
+
+ // If the user already picked to not show the notification
+ // again, we return with a no-op notification here
+ if (this.storageService.getBoolean(id, scope)) {
+ this.close(item);
+ return;
+ }
+ }
+
// Clear previous item
@@ -234,2 +247,15 @@ export class BannerPart extends Part implements IBannerService {
+ private toStorageScope(options: INeverShowAgainOptions): StorageScope {
+ switch (options.scope) {
+ case NeverShowAgainScope.APPLICATION:
+ return StorageScope.APPLICATION;
+ case NeverShowAgainScope.PROFILE:
+ return StorageScope.PROFILE;
+ case NeverShowAgainScope.WORKSPACE:
+ return StorageScope.WORKSPACE;
+ default:
+ return StorageScope.APPLICATION;
+ }
+ }
+
toJSON(): object {
diff --git a/src/vs/workbench/services/banner/browser/bannerService.ts b/src/vs/workbench/services/banner/browser/bannerService.ts
index 639b1b2..70e8847 100644
--- a/src/vs/workbench/services/banner/browser/bannerService.ts
+++ b/src/vs/workbench/services/banner/browser/bannerService.ts
@@ -10,2 +10,3 @@ import { ILinkDescriptor } from 'vs/platform/opener/browser/link';
import { ThemeIcon } from 'vs/base/common/themables';
+import { INeverShowAgainOptions } from 'vs/platform/notification/common/notification';
@@ -18,2 +19,3 @@ export interface IBannerItem {
readonly onClose?: () => void;
+ readonly neverShowAgain?: INeverShowAgainOptions;
}

View File

@@ -0,0 +1,24 @@
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 7ae8bce..724b9ad 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -9,5 +9,5 @@
"cli/target": true,
- "build/**/*.js": {
- "when": "$(basename).ts"
- }
+ // "build/**/*.js": {
+ // "when": "$(basename).ts"
+ // }
},
@@ -81,3 +81,3 @@
"gulp.autoDetect": "off",
- "files.insertFinalNewline": true,
+ // "files.insertFinalNewline": true,
"[plaintext]": {
@@ -91,4 +91,4 @@
"[javascript]": {
"editor.defaultFormatter": "vscode.typescript-language-features",
- "editor.formatOnSave": true
+ // "editor.formatOnSave": true
},

View File

@@ -0,0 +1,18 @@
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
index 2a0c236..0f10f17 100644
--- a/build/gulpfile.reh.js
+++ b/build/gulpfile.reh.js
@@ -256,3 +256,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
const productJsonStream = gulp.src(['product.json'], { base: '.' })
- .pipe(json({ commit, date, version, release }));
+ .pipe(json({ commit, date, version, release, serverDownloadUrlTemplate: 'https://github.com/VSCodium/vscodium-insiders/releases/download/${version}.${release}-insider/vscodium-reh-${os}-${arch}-${version}.${release}-insider.tar.gz' }));
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
index 0ca2cfd..9bf83a7 100644
--- a/build/gulpfile.vscode.js
+++ b/build/gulpfile.vscode.js
@@ -244,3 +244,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
const date = new Date().toISOString();
- const productJsonUpdate = { commit, date, checksums, version, release };
+ const productJsonUpdate = { commit, date, checksums, version, release, serverDownloadUrlTemplate: 'https://github.com/VSCodium/vscodium-insiders/releases/download/${version}.${release}-insider/vscodium-reh-${os}-${arch}-${version}.${release}-insider.tar.gz' };

View File

@@ -0,0 +1,15 @@
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
index 5adfdfb..dfdb2af 100644
--- a/build/gulpfile.vscode.win32.js
+++ b/build/gulpfile.vscode.win32.js
@@ -115,6 +115,6 @@ function buildWin32Setup(arch, target) {
- if (quality === 'insider') {
- definitions['AppxPackage'] = `code_insiders_explorer_${arch}.appx`;
- definitions['AppxPackageFullname'] = `Microsoft.${product.win32RegValueName}_1.0.0.0_neutral__8wekyb3d8bbwe`;
- }
+ // if (quality === 'insider') {
+ // definitions['AppxPackage'] = `code_insiders_explorer_${arch}.appx`;
+ // definitions['AppxPackageFullname'] = `Microsoft.${product.win32RegValueName}_1.0.0.0_neutral__8wekyb3d8bbwe`;
+ // }

View File

@@ -0,0 +1,13 @@
diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts
index 81bf4b2..5a88688 100644
--- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts
+++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts
@@ -233,7 +233,7 @@ export class Extension implements IExtension {
return false;
}
// Do not allow updating system extensions in stable
- if (this.type === ExtensionType.System && this.productService.quality === 'stable') {
+ if (this.type === ExtensionType.System) {
return false;
}
if (!this.local.preRelease && this.gallery.properties.isPreReleaseVersion) {

View File

@@ -0,0 +1,68 @@
diff --git a/src/main.js b/src/main.js
index d986fee..1ad0ef0 100644
--- a/src/main.js
+++ b/src/main.js
@@ -18,2 +18,3 @@ perf.mark('code/didStartMain');
const path = require('path');
+const { fileURLToPath } = require('url');
const fs = require('fs');
@@ -149,2 +150,14 @@ app.once('ready', function () {
+function resolveUserProduct() {
+ const userDataPath = getUserDataPath({}, product.nameShort ?? 'code-oss-dev');
+ const userProductPath = `file:///${userDataPath}/product.json`;
+
+ try {
+ // Assign the product configuration to the global scope
+ const productPath = require(fileURLToPath(userProductPath));
+ global["_VSCODE_USER_PRODUCT_JSON"] = productPath;
+ } catch (ex) {
+ }
+}
+
/**
@@ -160,2 +173,3 @@ function startup(codeCachePath, nlsConfig) {
process.env['VSCODE_CODE_CACHE_PATH'] = codeCachePath || '';
+ resolveUserProduct();
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
index 51a55e1..e2af375 100644
--- a/src/vs/platform/product/common/product.ts
+++ b/src/vs/platform/product/common/product.ts
@@ -29,2 +29,36 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
+ const { serviceUrl, searchUrl, itemUrl, controlUrl } = product.extensionsGallery || {};
+
+ Object.assign(product, {
+ extensionsGallery: {
+ serviceUrl: env['VSCODE_GALLERY_SERVICE_URL'] || serviceUrl,
+ searchUrl: env['VSCODE_GALLERY_SEARCH_URL'] || searchUrl,
+ itemUrl: env['VSCODE_GALLERY_ITEM_URL'] || itemUrl,
+ controlUrl: env['VSCODE_GALLERY_CONTROL_URL'] || controlUrl,
+ }
+ });
+
+ // Merge user-customized product.json
+ try {
+ const merge = (...objects: any[]) =>
+ objects.reduce((result, current) => {
+ Object.keys(current).forEach((key) => {
+ if (Array.isArray(result[key]) && Array.isArray(current[key])) {
+ result[key] = current[key];
+ } else if (typeof result[key] === 'object' && typeof current[key] === 'object') {
+ result[key] = merge(result[key], current[key]);
+ } else {
+ result[key] = current[key];
+ }
+ });
+
+ return result;
+ }, {}) as any;
+
+ const userProduct = (globalThis as Record<string, any>)._VSCODE_USER_PRODUCT_JSON || {};
+
+ product = merge(product, userProduct);
+ } catch (ex) {
+ }
+
// Running out of sources

View File

@@ -1,8 +0,0 @@
--- vscode/resources/linux/rpm/code.spec.template 2020-11-15 15:28:20.179070106 +0800
+++ vscode/resources/linux/rpm/code.spec.template.new 2020-11-15 15:25:39.269000000 +0800
@@ -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,264 @@
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
index 2a0c236eaf0..be2528c5c48 100644
--- a/build/gulpfile.reh.js
+++ b/build/gulpfile.reh.js
@@ -46,6 +46,7 @@ const BUILD_TARGETS = [
{ platform: 'linux', arch: 'x64' },
{ platform: 'linux', arch: 'armhf' },
{ platform: 'linux', arch: 'arm64' },
+ { platform: 'linux', arch: 'ppc64le' },
{ platform: 'alpine', arch: 'arm64' },
// legacy: we use to ship only one alpine so it was put in the arch, but now we ship
// multiple alpine images and moved to a better model (alpine as the platform)
diff --git a/build/gulpfile.scan.js b/build/gulpfile.scan.js
index 62691fcc8cf..dbefb8549f1 100644
--- a/build/gulpfile.scan.js
+++ b/build/gulpfile.scan.js
@@ -24,6 +24,7 @@ const BUILD_TARGETS = [
{ platform: 'linux', arch: 'x64' },
{ platform: 'linux', arch: 'armhf' },
{ platform: 'linux', arch: 'arm64' },
+ { platform: 'linux', arch: 'ppc64le' },
];
BUILD_TARGETS.forEach(buildTarget => {
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
index 0ca2cfd60a9..18a60efc405 100644
--- a/build/gulpfile.vscode.js
+++ b/build/gulpfile.vscode.js
@@ -426,6 +426,7 @@ const BUILD_TARGETS = [
{ platform: 'linux', arch: 'x64' },
{ platform: 'linux', arch: 'armhf' },
{ platform: 'linux', arch: 'arm64' },
+ { platform: 'linux', arch: 'ppc64le' },
];
BUILD_TARGETS.forEach(buildTarget => {
const dashed = (str) => (str ? `-${str}` : ``);
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
index 90f75ccfabd..a9fe7715da9 100644
--- a/build/gulpfile.vscode.linux.js
+++ b/build/gulpfile.vscode.linux.js
@@ -29,7 +29,7 @@ const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
* @param {string} arch
*/
function getDebPackageArch(arch) {
- return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64' }[arch];
+ return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64le' }[arch];
}
function prepareDebPackage(arch) {
@@ -136,7 +136,7 @@ function getRpmBuildPath(rpmArch) {
* @param {string} arch
*/
function getRpmPackageArch(arch) {
- return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64' }[arch];
+ return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le' }[arch];
}
/**
@@ -292,6 +292,7 @@ const BUILD_TARGETS = [
{ arch: 'x64' },
{ arch: 'armhf' },
{ arch: 'arm64' },
+ { arch: 'ppc64le' },
];
BUILD_TARGETS.forEach(({ arch }) => {
diff --git a/build/linux/debian/calculate-deps.ts b/build/linux/debian/calculate-deps.ts
index b13d3cdfaaf..650e4de3894 100644
--- a/build/linux/debian/calculate-deps.ts
+++ b/build/linux/debian/calculate-deps.ts
@@ -52,6 +52,9 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, sysroo
case 'arm64':
cmd.push(`-l${sysroot}/usr/lib/aarch64-linux-gnu`,
`-l${sysroot}/lib/aarch64-linux-gnu`);
+ case 'ppc64le':
+ cmd.push(`-l${sysroot}/usr/lib/ppc64le-linux-gnu`,
+ `-l${sysroot}/lib/ppc64le-linux-gnu`);
break;
}
cmd.push(`-l${sysroot}/usr/lib`);
diff --git a/build/linux/debian/dep-lists.ts b/build/linux/debian/dep-lists.ts
index 52aa56d960b..857589ec9ff 100644
--- a/build/linux/debian/dep-lists.ts
+++ b/build/linux/debian/dep-lists.ts
@@ -136,5 +136,44 @@ export const referenceGeneratedDepsByArch = {
'libxkbfile1',
'libxrandr2',
'xdg-utils (>= 1.0.2)'
+ ],
+ 'ppc64le': [
+ 'ca-certificates',
+ 'libasound2 (>= 1.0.17)',
+ 'libatk-bridge2.0-0 (>= 2.5.3)',
+ 'libatk1.0-0 (>= 2.2.0)',
+ 'libatspi2.0-0 (>= 2.9.90)',
+ 'libc6 (>= 2.17)',
+ 'libc6 (>= 2.28)',
+ 'libcairo2 (>= 1.6.0)',
+ 'libcurl3-gnutls | libcurl3-nss | libcurl4 | libcurl3',
+ 'libdbus-1-3 (>= 1.0.2)',
+ 'libdrm2 (>= 2.4.60)',
+ 'libexpat1 (>= 2.0.1)',
+ 'libgbm1 (>= 17.1.0~rc2)',
+ 'libglib2.0-0 (>= 2.16.0)',
+ 'libglib2.0-0 (>= 2.39.4)',
+ 'libgtk-3-0 (>= 3.9.10)',
+ 'libgtk-3-0 (>= 3.9.10) | libgtk-4-1',
+ 'libnspr4 (>= 2:4.9-2~)',
+ 'libnss3 (>= 2:3.22)',
+ 'libnss3 (>= 3.26)',
+ 'libpango-1.0-0 (>= 1.14.0)',
+ 'libsecret-1-0 (>= 0.18)',
+ 'libstdc++6 (>= 4.1.1)',
+ 'libstdc++6 (>= 5)',
+ 'libstdc++6 (>= 5.2)',
+ 'libstdc++6 (>= 6)',
+ 'libx11-6',
+ 'libx11-6 (>= 2:1.4.99.1)',
+ 'libxcb1 (>= 1.9.2)',
+ 'libxcomposite1 (>= 1:0.4.4-1)',
+ 'libxdamage1 (>= 1:1.1)',
+ 'libxext6',
+ 'libxfixes3',
+ 'libxkbcommon0 (>= 0.4.1)',
+ 'libxkbfile1',
+ 'libxrandr2',
+ 'xdg-utils (>= 1.0.2)'
]
};
diff --git a/build/linux/debian/types.ts b/build/linux/debian/types.ts
index e97485ef128..356027a648b 100644
--- a/build/linux/debian/types.ts
+++ b/build/linux/debian/types.ts
@@ -3,8 +3,8 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64';
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64le';
export function isDebianArchString(s: string): s is DebianArchString {
- return ['amd64', 'armhf', 'arm64'].includes(s);
+ return ['amd64', 'armhf', 'arm64', 'ppc64le'].includes(s);
}
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
index b03d8ea5963..2beceeac640 100644
--- a/cli/src/update_service.rs
+++ b/cli/src/update_service.rs
@@ -209,6 +209,7 @@ pub enum Platform {
LinuxX64,
LinuxARM64,
LinuxARM32,
+ LinuxPPC64LE,
DarwinX64,
DarwinARM64,
WindowsX64,
@@ -222,6 +223,7 @@ impl Platform {
Platform::LinuxX64 => Some("linux-x64".to_owned()),
Platform::LinuxARM64 => Some("linux-arm64".to_owned()),
Platform::LinuxARM32 => Some("linux-armhf".to_owned()),
+ Platform::LinuxPPC64LE => Some("linux-ppc64le".to_owned()),
Platform::DarwinX64 => Some("darwin".to_owned()),
Platform::DarwinARM64 => Some("darwin-arm64".to_owned()),
Platform::WindowsX64 => Some("win32-x64-archive".to_owned()),
@@ -237,6 +239,7 @@ impl Platform {
Platform::LinuxX64 => "server-linux-x64",
Platform::LinuxARM64 => "server-linux-arm64",
Platform::LinuxARM32 => "server-linux-armhf",
+ Platform::LinuxPPC64LE => "server-linux-ppc64le",
Platform::DarwinX64 => "server-darwin",
Platform::DarwinARM64 => "server-darwin-arm64",
Platform::WindowsX64 => "server-win32-x64",
@@ -253,6 +256,7 @@ impl Platform {
Platform::LinuxX64 => "cli-linux-x64",
Platform::LinuxARM64 => "cli-linux-arm64",
Platform::LinuxARM32 => "cli-linux-armhf",
+ Platform::LinuxPPC64LE => "cli-linux-ppc64le",
Platform::DarwinX64 => "cli-darwin-x64",
Platform::DarwinARM64 => "cli-darwin-arm64",
Platform::WindowsARM64 => "cli-win32-arm64",
@@ -285,6 +289,8 @@ impl Platform {
Some(Platform::LinuxARM32)
} else if cfg!(all(target_os = "linux", target_arch = "aarch64")) {
Some(Platform::LinuxARM64)
+ } else if cfg!(all(target_os = "linux", target_arch = "ppc64le")) {
+ Some(Platform::LinuxPPC64LE)
} else if cfg!(all(target_os = "macos", target_arch = "x86_64")) {
Some(Platform::DarwinX64)
} else if cfg!(all(target_os = "macos", target_arch = "aarch64")) {
@@ -309,6 +315,7 @@ impl fmt::Display for Platform {
Platform::LinuxX64 => "LinuxX64",
Platform::LinuxARM64 => "LinuxARM64",
Platform::LinuxARM32 => "LinuxARM32",
+ Platform::LinuxPPC64LE => "LinuxPPC64LE",
Platform::DarwinX64 => "DarwinX64",
Platform::DarwinARM64 => "DarwinARM64",
Platform::WindowsX64 => "WindowsX64",
diff --git a/cli/src/util/prereqs.rs b/cli/src/util/prereqs.rs
index d8cbd1b91dd..191d312e994 100644
--- a/cli/src/util/prereqs.rs
+++ b/cli/src/util/prereqs.rs
@@ -64,6 +64,8 @@ impl PreReqChecker {
Platform::LinuxX64
} else if cfg!(target_arch = "arm") {
Platform::LinuxARM32
+ } else if cfg!(target_arch = "ppc64le") {
+ Platform::LinuxPPC64LE
} else {
Platform::LinuxARM64
});
diff --git a/src/main.js b/src/main.js
index d986fee6f6d..02cd26a4d93 100644
--- a/src/main.js
+++ b/src/main.js
@@ -405,6 +405,7 @@ function configureCrashReporter() {
}
}
} else if (isLinux) {
+
submitURL = appCenter['linux-x64'];
}
submitURL = submitURL.concat('&uid=', crashReporterId, '&iid=', crashReporterId, '&sid=', crashReporterId);
diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts
index d407374f6ee..636da84fd62 100644
--- a/src/vs/platform/extensionManagement/common/extensionManagement.ts
+++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts
@@ -28,6 +28,7 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
case TargetPlatform.LINUX_X64: return 'Linux 64 bit';
case TargetPlatform.LINUX_ARM64: return 'Linux ARM 64';
case TargetPlatform.LINUX_ARMHF: return 'Linux ARM';
+ case TargetPlatform.LINUX_PPC64LE: return 'Linux PPC64LE';
case TargetPlatform.ALPINE_X64: return 'Alpine Linux 64 bit';
case TargetPlatform.ALPINE_ARM64: return 'Alpine ARM 64';
@@ -52,6 +53,7 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
case TargetPlatform.LINUX_X64: return TargetPlatform.LINUX_X64;
case TargetPlatform.LINUX_ARM64: return TargetPlatform.LINUX_ARM64;
case TargetPlatform.LINUX_ARMHF: return TargetPlatform.LINUX_ARMHF;
+ case TargetPlatform.LINUX_PPC64LE: return TargetPlatform.LINUX_PPC64LE;
case TargetPlatform.ALPINE_X64: return TargetPlatform.ALPINE_X64;
case TargetPlatform.ALPINE_ARM64: return TargetPlatform.ALPINE_ARM64;
@@ -90,6 +92,9 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
if (arch === 'arm') {
return TargetPlatform.LINUX_ARMHF;
}
+ if (arch === 'ppc64le') {
+ return TargetPlatform.LINUX_PPC64LE;
+ }
return TargetPlatform.UNKNOWN;
case 'alpine':
diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts
index cfa0e3296f0..d38a82114e3 100644
--- a/src/vs/platform/extensions/common/extensions.ts
+++ b/src/vs/platform/extensions/common/extensions.ts
@@ -296,6 +296,7 @@ export const enum TargetPlatform {
LINUX_X64 = 'linux-x64',
LINUX_ARM64 = 'linux-arm64',
LINUX_ARMHF = 'linux-armhf',
+ LINUX_PPC64LE = 'linux-ppc64le',
ALPINE_X64 = 'alpine-x64',
ALPINE_ARM64 = 'alpine-arm64',

View File

@@ -0,0 +1,61 @@
diff --git a/build/lib/compilation.js b/build/lib/compilation.js
index 2270e05..1bd7b90 100644
--- a/build/lib/compilation.js
+++ b/build/lib/compilation.js
@@ -104,24 +104,3 @@ function compileTask(src, out, build, options = {}) {
}
- // mangle: TypeScript to TypeScript
- let mangleStream = es.through();
- if (build && !options.disableMangle) {
- let ts2tsMangler = new index_1.Mangler(compile.projectPath, (...data) => fancyLog(ansiColors.blue('[mangler]'), ...data), { mangleExports: true, manglePrivateFields: true });
- const newContentsByFileName = ts2tsMangler.computeNewFileContents(new Set(['saveState']));
- mangleStream = es.through(async function write(data) {
- const tsNormalPath = ts.normalizePath(data.path);
- const newContents = (await newContentsByFileName).get(tsNormalPath);
- if (newContents !== undefined) {
- data.contents = Buffer.from(newContents.out);
- data.sourceMap = newContents.sourceMap && JSON.parse(newContents.sourceMap);
- }
- this.push(data);
- }, async function end() {
- // free resources
- (await newContentsByFileName).clear();
- this.push(null);
- ts2tsMangler = undefined;
- });
- }
return srcPipe
- .pipe(mangleStream)
.pipe(generator.stream)
diff --git a/build/lib/compilation.ts b/build/lib/compilation.ts
index d5da3f1..fa46962 100644
--- a/build/lib/compilation.ts
+++ b/build/lib/compilation.ts
@@ -123,27 +123,3 @@ export function compileTask(src: string, out: string, build: boolean, options: {
- // mangle: TypeScript to TypeScript
- let mangleStream = es.through();
- if (build && !options.disableMangle) {
- let ts2tsMangler = new Mangler(compile.projectPath, (...data) => fancyLog(ansiColors.blue('[mangler]'), ...data), { mangleExports: true, manglePrivateFields: true });
- const newContentsByFileName = ts2tsMangler.computeNewFileContents(new Set(['saveState']));
- mangleStream = es.through(async function write(data: File & { sourceMap?: RawSourceMap }) {
- type TypeScriptExt = typeof ts & { normalizePath(path: string): string };
- const tsNormalPath = (<TypeScriptExt>ts).normalizePath(data.path);
- const newContents = (await newContentsByFileName).get(tsNormalPath);
- if (newContents !== undefined) {
- data.contents = Buffer.from(newContents.out);
- data.sourceMap = newContents.sourceMap && JSON.parse(newContents.sourceMap);
- }
- this.push(data);
- }, async function end() {
- // free resources
- (await newContentsByFileName).clear();
-
- this.push(null);
- (<any>ts2tsMangler) = undefined;
- });
- }
-
return srcPipe
- .pipe(mangleStream)
.pipe(generator.stream)

View File

@@ -0,0 +1,83 @@
diff --git a/src/vs/code/electron-sandbox/issue/issueReporterModel.ts b/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
index 74f9939..341ef06 100644
--- a/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
+++ b/src/vs/code/electron-sandbox/issue/issueReporterModel.ts
@@ -79,3 +79,3 @@ ${this._data.issueDescription}
${this.getExtensionVersion()}
-VS Code version: ${this._data.versionInfo && this._data.versionInfo.vscodeVersion}
+VSCodium version: ${this._data.versionInfo && this._data.versionInfo.vscodeVersion}
OS version: ${this._data.versionInfo && this._data.versionInfo.os}
diff --git a/src/vs/code/electron-sandbox/issue/issueReporterPage.ts b/src/vs/code/electron-sandbox/issue/issueReporterPage.ts
index 96ec5f7..5c091d9 100644
--- a/src/vs/code/electron-sandbox/issue/issueReporterPage.ts
+++ b/src/vs/code/electron-sandbox/issue/issueReporterPage.ts
@@ -18,3 +18,3 @@ const reviewGuidanceLabel = localize( // intentionally not escaped because of it
comment: [
- '{Locked="<a href=\"https://github.com/microsoft/vscode/wiki/Submitting-Bugs-and-Suggestions\" target=\"_blank\">"}',
+ '{Locked="<a href=\"https://github.com/VSCodium/vscodium/wiki/Submitting-Bugs-and-Suggestions\" target=\"_blank\">"}',
'{Locked="</a>"}'
@@ -22,3 +22,3 @@ const reviewGuidanceLabel = localize( // intentionally not escaped because of it
},
- 'Before you report an issue here please <a href="https://github.com/microsoft/vscode/wiki/Submitting-Bugs-and-Suggestions" target="_blank">review the guidance we provide</a>.'
+ 'Before you report an issue here please <a href="https://github.com/VSCodium/vscodium/wiki/Submitting-Bugs-and-Suggestions" target="_blank">review the guidance we provide</a>.'
);
diff --git a/src/vs/code/electron-sandbox/issue/issueReporterService.ts b/src/vs/code/electron-sandbox/issue/issueReporterService.ts
index d7f98f6..ed54042 100644
--- a/src/vs/code/electron-sandbox/issue/issueReporterService.ts
+++ b/src/vs/code/electron-sandbox/issue/issueReporterService.ts
@@ -517,5 +517,5 @@ export class IssueReporter extends Disposable {
- private searchVSCodeIssues(title: string, issueDescription?: string): void {
+ private searchVSCodeIssues(title: string, _issueDescription?: string): void {
if (title) {
- this.searchDuplicates(title, issueDescription);
+ this.searchGitHub('VSCodium/vscodium', title);
} else {
@@ -611,33 +611,2 @@ export class IssueReporter extends Disposable {
- @debounce(300)
- private searchDuplicates(title: string, body?: string): void {
- const url = 'https://vscode-probot.westus.cloudapp.azure.com:7890/duplicate_candidates';
- const init = {
- method: 'POST',
- body: JSON.stringify({
- title,
- body
- }),
- headers: new Headers({
- 'Content-Type': 'application/json'
- })
- };
-
- fetch(url, init).then((response) => {
- response.json().then(result => {
- this.clearSearchResults();
-
- if (result && result.candidates) {
- this.displaySearchResults(result.candidates);
- } else {
- throw new Error('Unexpected response, no candidates property');
- }
- }).catch(_ => {
- // Ignore
- });
- }).catch(_ => {
- // Ignore
- });
- }
-
private displaySearchResults(results: SearchResult[]) {
@@ -729,3 +698,3 @@ export class IssueReporter extends Disposable {
sourceSelect.append(this.makeOption('', localize('selectSource', "Select source"), true));
- sourceSelect.append(this.makeOption('vscode', localize('vscode', "Visual Studio Code"), false));
+ sourceSelect.append(this.makeOption('vscode', localize('vscode', "VSCodium"), false));
sourceSelect.append(this.makeOption('extension', localize('extension', "An extension"), false));
diff --git a/src/vs/workbench/contrib/extensions/electron-sandbox/extensionsSlowActions.ts b/src/vs/workbench/contrib/extensions/electron-sandbox/extensionsSlowActions.ts
index 87839a6..49727fc 100644
--- a/src/vs/workbench/contrib/extensions/electron-sandbox/extensionsSlowActions.ts
+++ b/src/vs/workbench/contrib/extensions/electron-sandbox/extensionsSlowActions.ts
@@ -153,3 +153,3 @@ class ReportExtensionSlowAction extends Action {
- OS Version: \`${osVersion}\`
-- VS Code version: \`${this._productService.version}\`\n\n${message}`);
+- VSCodium version: \`${this._productService.version}\`\n\n${message}`);

View File

@@ -1,11 +1,9 @@
--- 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
@@ -55,7 +55,7 @@
@memoize
diff --git a/src/vs/platform/update/electron-main/updateService.win32.ts b/src/vs/platform/update/electron-main/updateService.win32.ts
index d45291e..74d4080 100644
--- a/src/vs/platform/update/electron-main/updateService.win32.ts
+++ b/src/vs/platform/update/electron-main/updateService.win32.ts
@@ -55,3 +55,3 @@ export class Win32UpdateService extends AbstractUpdateService {
get cachePath(): Promise<string> {
- const result = path.join(tmpdir(), `vscode-update-${product.target}-${process.arch}`);
+ const result = path.join(tmpdir(), `vscodium-update-${product.target}-${process.arch}`);
return pfs.mkdirp(result).then(() => result);
}
- const result = path.join(tmpdir(), `vscode-${this.productService.quality}-${this.productService.target}-${process.arch}`);
+ const result = path.join(tmpdir(), `${this.productService.applicationName}-${this.productService.quality}-${this.productService.target}-${process.arch}`);
return pfs.Promises.mkdir(result, { recursive: true }).then(() => result);

9
patches/update-msi.patch Normal file
View File

@@ -0,0 +1,9 @@
diff --git a/src/vs/platform/update/electron-main/updateService.win32.ts b/src/vs/platform/update/electron-main/updateService.win32.ts
index 99bf807..b5b4333 100644
--- a/src/vs/platform/update/electron-main/updateService.win32.ts
+++ b/src/vs/platform/update/electron-main/updateService.win32.ts
@@ -156,3 +156,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
}).then(packagePath => {
- const fastUpdatesEnabled = this.configurationService.getValue('update.enableWindowsBackgroundUpdates');
+ const fastUpdatesEnabled = getUpdateType() == UpdateType.Setup && this.configurationService.getValue('update.enableWindowsBackgroundUpdates');

View File

@@ -0,0 +1,67 @@
diff --git a/src/vs/platform/update/common/update.ts b/src/vs/platform/update/common/update.ts
index 0f79e17..97ea778 100644
--- a/src/vs/platform/update/common/update.ts
+++ b/src/vs/platform/update/common/update.ts
@@ -48,3 +48,4 @@ export const enum UpdateType {
Archive,
- Snap
+ Snap,
+ WindowsInstaller,
}
diff --git a/src/vs/platform/update/electron-main/updateService.win32.ts b/src/vs/platform/update/electron-main/updateService.win32.ts
index 99bf807..27e77f0 100644
--- a/src/vs/platform/update/electron-main/updateService.win32.ts
+++ b/src/vs/platform/update/electron-main/updateService.win32.ts
@@ -41,5 +41,9 @@ function getUpdateType(): UpdateType {
if (typeof _updateType === 'undefined') {
- _updateType = fs.existsSync(path.join(path.dirname(process.execPath), 'unins000.exe'))
- ? UpdateType.Setup
- : UpdateType.Archive;
+ if (fs.existsSync(path.join(path.dirname(process.execPath), 'unins000.exe'))) {
+ _updateType = UpdateType.Setup;
+ } else if (path.basename(path.normalize(path.join(process.execPath, '..', '..'))) === 'Program Files') {
+ _updateType = UpdateType.WindowsInstaller;
+ } else {
+ _updateType = UpdateType.Archive;
+ }
}
@@ -103,6 +107,16 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
- if (getUpdateType() === UpdateType.Archive) {
- platform += '-archive';
- } else if (this.productService.target === 'user') {
- platform += '-user';
+ switch (getUpdateType()) {
+ case UpdateType.Archive:
+ platform += '-archive';
+ break;
+ case UpdateType.WindowsInstaller:
+ platform += '-msi';
+ break;
+ default:
+ if (this.productService.target === 'user') {
+ platform += '-user';
+ }
+ else {
+ platform += '-system';
+ }
}
@@ -257,6 +271,14 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
} else {
- spawn(this.availableUpdate.packagePath, ['/silent', '/log', '/mergetasks=runcode,!desktopicon,!quicklaunchicon'], {
- detached: true,
- stdio: ['ignore', 'ignore', 'ignore']
- });
+ const type = getUpdateType();
+ if (type == UpdateType.WindowsInstaller) {
+ spawn('msiexec.exe', ['/i', this.availableUpdate.packagePath], {
+ detached: true,
+ stdio: ['ignore', 'ignore', 'ignore']
+ });
+ } else {
+ spawn(this.availableUpdate.packagePath, ['/silent', '/log', '/mergetasks=runcode,!desktopicon,!quicklaunchicon'], {
+ detached: true,
+ stdio: ['ignore', 'ignore', 'ignore']
+ });
+ }
}

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