mirror of
https://github.com/VSCodium/vscodium.git
synced 2026-04-16 13:44:30 +10:00
Compare commits
151 Commits
1.103.2561
...
1.109.5124
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
34d6a7b4d5 | ||
|
|
55615878f9 | ||
|
|
22a615e8ff | ||
|
|
399b022266 | ||
|
|
325e7a79e9 | ||
|
|
273901d3c2 | ||
|
|
91d172cd42 | ||
|
|
94f90090cb | ||
|
|
412aa78881 | ||
|
|
a199c0a529 | ||
|
|
cf437da521 | ||
|
|
e8ec5e2452 | ||
|
|
2b2bef0927 | ||
|
|
17b5b6ed50 | ||
|
|
72b795d984 | ||
|
|
71afd18e59 | ||
|
|
7d910f4077 | ||
|
|
fc8f76ad58 | ||
|
|
a5210af800 | ||
|
|
3bf7629f7a | ||
|
|
bfaa0ebd4e | ||
|
|
fe63a5a5d9 | ||
|
|
7224e53e62 | ||
|
|
962f1ac04c | ||
|
|
7656ee4017 | ||
|
|
a053a4a5c2 | ||
|
|
0079f51fe2 | ||
|
|
47c5d7d549 | ||
|
|
26fd8577a7 | ||
|
|
9931513623 | ||
|
|
de5bd6bf1f | ||
|
|
de91c92a23 | ||
|
|
c0d5246c70 | ||
|
|
63fad3ddfa | ||
|
|
d54958e349 | ||
|
|
dc3ffab8bf | ||
|
|
a80048c451 | ||
|
|
26ee7024a2 | ||
|
|
895ada1ac1 | ||
|
|
cc1a3ef5bd | ||
|
|
163fff4742 | ||
|
|
79adc487cb | ||
|
|
b69846f794 | ||
|
|
42ab5a8aa3 | ||
|
|
846096bd53 | ||
|
|
3981f5dcb8 | ||
|
|
4ecf45044e | ||
|
|
cec35aab94 | ||
|
|
6901a0ca2b | ||
|
|
ca9b356c3b | ||
|
|
8d8db1de1b | ||
|
|
53ff95933c | ||
|
|
39be6d3a95 | ||
|
|
f7de31a582 | ||
|
|
ccb2819b25 | ||
|
|
d2cdc6e515 | ||
|
|
b88fdc76f5 | ||
|
|
f2f1594771 | ||
|
|
88f558aafc | ||
|
|
11b807517c | ||
|
|
9664f9e77d | ||
|
|
5993ddb3a5 | ||
|
|
59e21c9cc6 | ||
|
|
2fccc0e2fe | ||
|
|
51ad421762 | ||
|
|
646b42473b | ||
|
|
068f270488 | ||
|
|
4ba37835b2 | ||
|
|
2487cd7ce2 | ||
|
|
75df078e52 | ||
|
|
9061e7e264 | ||
|
|
adef3f0534 | ||
|
|
dab94316d5 | ||
|
|
60b7a4640e | ||
|
|
f81d3d53ad | ||
|
|
a95e1ff14f | ||
|
|
36270ef9c3 | ||
|
|
c0ac4bd72e | ||
|
|
f60f14d085 | ||
|
|
a9167d21e2 | ||
|
|
e1f7642bcb | ||
|
|
94a6ad5495 | ||
|
|
73046b84aa | ||
|
|
22d1929f41 | ||
|
|
6264d064e4 | ||
|
|
578df58363 | ||
|
|
20382726b4 | ||
|
|
b943cab988 | ||
|
|
a69d10fa91 | ||
|
|
ac024726a3 | ||
|
|
e3c3b6fdf7 | ||
|
|
fbdc680c69 | ||
|
|
dd8511cc6b | ||
|
|
f6b143dbd6 | ||
|
|
cde9fd233a | ||
|
|
284d83b24e | ||
|
|
8cc366bb76 | ||
|
|
4c2b2b8a79 | ||
|
|
8e49f5f8b1 | ||
|
|
0ac07d6fcc | ||
|
|
bf53c50a5b | ||
|
|
d0973e3104 | ||
|
|
8e10409b4a | ||
|
|
bcd3d6bffa | ||
|
|
b3c1e8901a | ||
|
|
c2cff308aa | ||
|
|
0d1fecf0d4 | ||
|
|
5bf3fdcc05 | ||
|
|
acf298a9c2 | ||
|
|
2d9bbfb2f3 | ||
|
|
9d798626aa | ||
|
|
f574039dc4 | ||
|
|
e648323548 | ||
|
|
bc2c678d47 | ||
|
|
69fe88f58c | ||
|
|
43d4061cec | ||
|
|
471a81e89f | ||
|
|
0545b56f6f | ||
|
|
914f0da189 | ||
|
|
a3bf4232ba | ||
|
|
23683879d3 | ||
|
|
177bb9032d | ||
|
|
7245ccb8bd | ||
|
|
166e10c23b | ||
|
|
69fee0be29 | ||
|
|
68d5becf4d | ||
|
|
a425c2ca5d | ||
|
|
242a448627 | ||
|
|
e298421027 | ||
|
|
51f1643852 | ||
|
|
279bb37012 | ||
|
|
2af82b8c5b | ||
|
|
930f570146 | ||
|
|
b1ee5b1428 | ||
|
|
23688ef492 | ||
|
|
3f44e3f4a3 | ||
|
|
9ffd0a3632 | ||
|
|
418209fe92 | ||
|
|
96af93b5de | ||
|
|
7bdf2348e1 | ||
|
|
e114e120f3 | ||
|
|
e4091b268c | ||
|
|
ed516ab087 | ||
|
|
4959ac2e25 | ||
|
|
2717404c48 | ||
|
|
ef86a20ce4 | ||
|
|
3c07d343da | ||
|
|
ae7ac2e35c | ||
|
|
067a4d4e7d | ||
|
|
c31bc7e230 | ||
|
|
1d870bf372 |
1
.github/dependabot.yml
vendored
1
.github/dependabot.yml
vendored
@@ -7,5 +7,6 @@ version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
target-branch: insider
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
|
||||
49
.github/workflows/insider-linux.yml
vendored
49
.github/workflows/insider-linux.yml
vendored
@@ -48,7 +48,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -85,7 +85,7 @@ jobs:
|
||||
BUILD_SOURCEVERSION: ${{ env.BUILD_SOURCEVERSION }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -96,19 +96,19 @@ jobs:
|
||||
run: ./get_pr.sh
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -137,7 +137,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload vscode artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: vscode
|
||||
path: ./vscode.tar.gz
|
||||
@@ -172,7 +172,7 @@ jobs:
|
||||
- slug: LOONG64
|
||||
vscode_arch: loong64
|
||||
npm_arch: loong64
|
||||
image: vscodium/vscodium-linux-build-agent:beige-loong64
|
||||
image: vscodium/vscodium-linux-build-agent:crimson-loong64
|
||||
- slug: PPC64
|
||||
vscode_arch: ppc64le
|
||||
npm_arch: ppc64
|
||||
@@ -194,7 +194,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
@@ -225,7 +225,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
@@ -260,7 +260,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -309,7 +309,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_BUILD == 'yes' || github.event.inputs.generate_assets == 'true'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.DISABLED != 'yes'
|
||||
@@ -321,20 +321,20 @@ jobs:
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.DISABLED != 'yes'
|
||||
@@ -355,7 +355,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true')
|
||||
@@ -375,7 +375,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_DEPLOY == 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no')
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: reh-linux-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -410,7 +410,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_BUILD == 'yes' || github.event.inputs.generate_assets == 'true'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -420,11 +420,16 @@ jobs:
|
||||
run: ./get_pr.sh
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install GH
|
||||
run: ./build/linux/install_gh.sh
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
@@ -440,7 +445,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true')
|
||||
@@ -460,7 +465,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_DEPLOY == 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no')
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: reh-alpine-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -512,7 +517,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_DEPLOY == 'yes' && needs.check.outputs.SHOULD_BUILD_SNAP != 'no' && vars.DISABLE_INSIDER_SNAP != 'yes'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -550,7 +555,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Trigger repository rebuild
|
||||
uses: peter-evans/repository-dispatch@v3
|
||||
uses: peter-evans/repository-dispatch@v4
|
||||
with:
|
||||
token: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
repository: VSCodium/repositories-linux
|
||||
|
||||
10
.github/workflows/insider-macos.yml
vendored
10
.github/workflows/insider-macos.yml
vendored
@@ -44,13 +44,13 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- runner: macos-13
|
||||
- runner: macos-15-intel
|
||||
vscode_arch: x64
|
||||
- runner: [self-hosted, macOS, ARM64]
|
||||
vscode_arch: arm64
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -60,12 +60,12 @@ jobs:
|
||||
run: . get_pr.sh
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.VSCODE_ARCH == 'x64'
|
||||
@@ -116,7 +116,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
|
||||
14
.github/workflows/insider-spearhead.yml
vendored
14
.github/workflows/insider-spearhead.yml
vendored
@@ -28,18 +28,19 @@ jobs:
|
||||
GH_REPO_PATH: ${{ github.repository }}
|
||||
ORG_NAME: ${{ github.repository_owner }}
|
||||
OS_NAME: osx
|
||||
SOURCEMAPS_REPOSITORY: ${{ github.repository_owner }}/sourcemaps
|
||||
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
|
||||
VSCODE_ARCH: arm64
|
||||
VSCODE_LATEST: ${{ github.event.inputs.dont_update == 'true' && 'no' || 'yes' }}
|
||||
VSCODE_QUALITY: insider
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: insider
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
@@ -76,6 +77,13 @@ jobs:
|
||||
run: ./prepare_src.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload sourcemaps
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
GITHUB_USERNAME: ${{ github.repository_owner }}
|
||||
run: ./upload_sourcemaps.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Release source
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
@@ -84,7 +92,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Dispatch builds
|
||||
uses: peter-evans/repository-dispatch@v3
|
||||
uses: peter-evans/repository-dispatch@v4
|
||||
with:
|
||||
event-type: insider
|
||||
if: github.event.inputs.dont_dispatch != 'true' && (env.SHOULD_BUILD == 'yes' || github.event.inputs.force_dispatch == 'true')
|
||||
|
||||
49
.github/workflows/insider-windows.yml
vendored
49
.github/workflows/insider-windows.yml
vendored
@@ -46,7 +46,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -72,7 +72,10 @@ jobs:
|
||||
compile:
|
||||
needs:
|
||||
- check
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: windows-2022
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
|
||||
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
|
||||
@@ -83,7 +86,7 @@ jobs:
|
||||
BUILD_SOURCEVERSION: ${{ env.BUILD_SOURCEVERSION }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -93,27 +96,27 @@ jobs:
|
||||
PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }}
|
||||
run: ./get_pr.sh
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
# - name: Setup GCC
|
||||
# uses: egor-tensin/setup-gcc@v1
|
||||
# with:
|
||||
# version: 10
|
||||
# platform: x64
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Install libkrb5-dev
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libkrb5-dev
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
# - name: Install libkrb5-dev
|
||||
# run: sudo apt-get update -y && sudo apt-get install -y libkrb5-dev
|
||||
# if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Clone VSCode repo
|
||||
run: ./get_repo.sh
|
||||
@@ -135,7 +138,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload vscode artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: vscode
|
||||
path: ./vscode.tar.gz
|
||||
@@ -169,7 +172,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -181,13 +184,13 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -200,7 +203,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -219,7 +222,7 @@ jobs:
|
||||
|
||||
- name: Upload unsigned artifacts
|
||||
id: upload-unsigned-artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: unsigned-${{ matrix.vscode_arch }}
|
||||
path: |
|
||||
@@ -229,7 +232,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes' && vars.DISABLE_INSIDER_WINDOWS_SIGNING != 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
|
||||
|
||||
- name: Signing
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
uses: signpath/github-action-submit-signing-request@v2
|
||||
with:
|
||||
api-token: ${{ secrets.SIGNPATH_API_TOKEN }}
|
||||
organization-id: ${{ secrets.SIGNPATH_ORGANIZATION_ID }}
|
||||
@@ -263,7 +266,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -272,7 +275,7 @@ jobs:
|
||||
|
||||
winget:
|
||||
needs: build
|
||||
runs-on: windows-latest
|
||||
runs-on: windows-2022
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
@@ -282,7 +285,7 @@ jobs:
|
||||
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
|
||||
5
.github/workflows/lock.yml
vendored
5
.github/workflows/lock.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Lock Issues
|
||||
name: Lock Closed Threads
|
||||
|
||||
on:
|
||||
schedule:
|
||||
@@ -8,9 +8,10 @@ jobs:
|
||||
lock:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: dessant/lock-threads@v5
|
||||
- uses: dessant/lock-threads@v6
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
issue-inactive-days: '90'
|
||||
pr-inactive-days: '90'
|
||||
discussion-inactive-days: '90'
|
||||
log-output: true
|
||||
|
||||
49
.github/workflows/stable-linux.yml
vendored
49
.github/workflows/stable-linux.yml
vendored
@@ -47,7 +47,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -84,7 +84,7 @@ jobs:
|
||||
BUILD_SOURCEVERSION: ${{ env.BUILD_SOURCEVERSION }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -96,20 +96,20 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -138,7 +138,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload vscode artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: vscode
|
||||
path: ./vscode.tar.gz
|
||||
@@ -173,7 +173,7 @@ jobs:
|
||||
- slug: LOONG64
|
||||
vscode_arch: loong64
|
||||
npm_arch: loong64
|
||||
image: vscodium/vscodium-linux-build-agent:beige-loong64
|
||||
image: vscodium/vscodium-linux-build-agent:crimson-loong64
|
||||
- slug: PPC64
|
||||
vscode_arch: ppc64le
|
||||
npm_arch: ppc64
|
||||
@@ -195,7 +195,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
@@ -226,7 +226,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes'
|
||||
@@ -261,7 +261,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -310,7 +310,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_BUILD == 'yes' || github.event.inputs.generate_assets == 'true'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.DISABLED != 'yes'
|
||||
@@ -322,20 +322,20 @@ jobs:
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.DISABLED != 'yes'
|
||||
@@ -356,7 +356,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true')
|
||||
@@ -376,7 +376,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_DEPLOY == 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no')
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: reh-linux-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -411,7 +411,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_BUILD == 'yes' || github.event.inputs.generate_assets == 'true'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -421,11 +421,16 @@ jobs:
|
||||
run: ./get_pr.sh
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
uses: egor-tensin/setup-gcc@v2
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Install GH
|
||||
run: ./build/linux/install_gh.sh
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
@@ -441,7 +446,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.DISABLED != 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no' || github.event.inputs.generate_assets == 'true')
|
||||
@@ -461,7 +466,7 @@ jobs:
|
||||
if: env.DISABLED != 'yes' && env.SHOULD_DEPLOY == 'yes' && (env.SHOULD_BUILD_REH != 'no' || env.SHOULD_BUILD_REH_WEB != 'no')
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: reh-alpine-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -510,7 +515,7 @@ jobs:
|
||||
if: needs.check.outputs.SHOULD_DEPLOY == 'yes' && needs.check.outputs.SHOULD_BUILD_SNAP != 'no' && vars.DISABLE_STABLE_SNAP != 'yes'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -581,7 +586,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Trigger repository rebuild
|
||||
uses: peter-evans/repository-dispatch@v3
|
||||
uses: peter-evans/repository-dispatch@v4
|
||||
with:
|
||||
token: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
repository: VSCodium/repositories-linux
|
||||
|
||||
10
.github/workflows/stable-macos.yml
vendored
10
.github/workflows/stable-macos.yml
vendored
@@ -43,13 +43,13 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- runner: macos-13
|
||||
- runner: macos-15-intel
|
||||
vscode_arch: x64
|
||||
- runner: [self-hosted, macOS, ARM64]
|
||||
vscode_arch: arm64
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -59,12 +59,12 @@ jobs:
|
||||
run: . get_pr.sh
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.VSCODE_ARCH == 'x64'
|
||||
@@ -114,7 +114,7 @@ jobs:
|
||||
if: env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
|
||||
14
.github/workflows/stable-spearhead.yml
vendored
14
.github/workflows/stable-spearhead.yml
vendored
@@ -25,16 +25,17 @@ jobs:
|
||||
GH_REPO_PATH: ${{ github.repository }}
|
||||
ORG_NAME: ${{ github.repository_owner }}
|
||||
OS_NAME: osx
|
||||
SOURCEMAPS_REPOSITORY: ${{ github.repository_owner }}/sourcemaps
|
||||
VERSIONS_REPOSITORY: ${{ github.repository_owner }}/versions
|
||||
VSCODE_ARCH: arm64
|
||||
VSCODE_LATEST: ${{ github.event.inputs.dont_update == 'true' && 'no' || 'yes' }}
|
||||
VSCODE_QUALITY: stable
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
@@ -71,6 +72,13 @@ jobs:
|
||||
run: ./prepare_src.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload sourcemaps
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
GITHUB_USERNAME: ${{ github.repository_owner }}
|
||||
run: ./upload_sourcemaps.sh
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Release source
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.STRONGER_GITHUB_TOKEN }}
|
||||
@@ -79,7 +87,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Dispatch builds
|
||||
uses: peter-evans/repository-dispatch@v3
|
||||
uses: peter-evans/repository-dispatch@v4
|
||||
with:
|
||||
event-type: stable
|
||||
if: env.SHOULD_BUILD == 'yes' || github.event.inputs.force_dispatch == 'true'
|
||||
|
||||
49
.github/workflows/stable-windows.yml
vendored
49
.github/workflows/stable-windows.yml
vendored
@@ -45,7 +45,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
@@ -71,7 +71,10 @@ jobs:
|
||||
compile:
|
||||
needs:
|
||||
- check
|
||||
runs-on: ubuntu-22.04
|
||||
runs-on: windows-2022
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
env:
|
||||
MS_COMMIT: ${{ needs.check.outputs.MS_COMMIT }}
|
||||
MS_TAG: ${{ needs.check.outputs.MS_TAG }}
|
||||
@@ -82,7 +85,7 @@ jobs:
|
||||
BUILD_SOURCEVERSION: ${{ env.BUILD_SOURCEVERSION }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -92,27 +95,27 @@ jobs:
|
||||
PULL_REQUEST_ID: ${{ github.event.inputs.checkout_pr }}
|
||||
run: ./get_pr.sh
|
||||
|
||||
- name: Setup GCC
|
||||
uses: egor-tensin/setup-gcc@v1
|
||||
with:
|
||||
version: 10
|
||||
platform: x64
|
||||
# - name: Setup GCC
|
||||
# uses: egor-tensin/setup-gcc@v1
|
||||
# with:
|
||||
# version: 10
|
||||
# platform: x64
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Install libkrb5-dev
|
||||
run: sudo apt-get update -y && sudo apt-get install -y libkrb5-dev
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
# - name: Install libkrb5-dev
|
||||
# run: sudo apt-get update -y && sudo apt-get install -y libkrb5-dev
|
||||
# if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Clone VSCode repo
|
||||
run: ./get_repo.sh
|
||||
@@ -134,7 +137,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Upload vscode artifact
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: vscode
|
||||
path: ./vscode.tar.gz
|
||||
@@ -168,7 +171,7 @@ jobs:
|
||||
SHOULD_DEPLOY: ${{ env.SHOULD_DEPLOY }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -180,13 +183,13 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Node.js environment
|
||||
uses: actions/setup-node@v4
|
||||
uses: actions/setup-node@v6
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Setup Python 3
|
||||
uses: actions/setup-python@v5
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: '3.11'
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -199,7 +202,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
|
||||
- name: Download vscode artifact
|
||||
uses: actions/download-artifact@v5
|
||||
uses: actions/download-artifact@v7
|
||||
with:
|
||||
name: vscode
|
||||
if: env.SHOULD_BUILD == 'yes'
|
||||
@@ -218,7 +221,7 @@ jobs:
|
||||
|
||||
- name: Upload unsigned artifacts
|
||||
id: upload-unsigned-artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: unsigned-${{ matrix.vscode_arch }}
|
||||
path: |
|
||||
@@ -228,7 +231,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes' && (env.SHOULD_DEPLOY == 'yes' || github.event.inputs.generate_assets == 'true')
|
||||
|
||||
- name: Signing
|
||||
uses: signpath/github-action-submit-signing-request@v1
|
||||
uses: signpath/github-action-submit-signing-request@v2
|
||||
with:
|
||||
api-token: ${{ secrets.SIGNPATH_API_TOKEN }}
|
||||
organization-id: ${{ secrets.SIGNPATH_ORGANIZATION_ID }}
|
||||
@@ -261,7 +264,7 @@ jobs:
|
||||
if: env.SHOULD_BUILD == 'yes' && env.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
- name: Upload assets
|
||||
uses: actions/upload-artifact@v4
|
||||
uses: actions/upload-artifact@v6
|
||||
with:
|
||||
name: bin-${{ matrix.vscode_arch }}
|
||||
path: assets/
|
||||
@@ -270,7 +273,7 @@ jobs:
|
||||
|
||||
winget:
|
||||
needs: build
|
||||
runs-on: windows-latest
|
||||
runs-on: windows-2022
|
||||
defaults:
|
||||
run:
|
||||
shell: bash
|
||||
@@ -279,7 +282,7 @@ jobs:
|
||||
if: needs.build.outputs.SHOULD_DEPLOY == 'yes'
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: actions/checkout@v6
|
||||
with:
|
||||
ref: ${{ env.GITHUB_BRANCH }}
|
||||
|
||||
|
||||
2
.github/workflows/stale.yml
vendored
2
.github/workflows/stale.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/stale@v9
|
||||
- uses: actions/stale@v10
|
||||
with:
|
||||
days-before-stale: 180
|
||||
days-before-close: 30
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -14,5 +14,6 @@ build/linux/appimage/VSCodium
|
||||
build/windows/msi/releasedir
|
||||
build/windows/msi/Files*.wxs
|
||||
build/windows/msi/Files*.wixobj
|
||||
sourcemaps/
|
||||
stores/snapcraft/insider/*.snap
|
||||
stores/snapcraft/stable/*.snap
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
[
|
||||
{
|
||||
"id": "#2358",
|
||||
"title": "Wanted! Feedback for new website :)",
|
||||
"url": "https://github.com/VSCodium/vscodium/discussions/2358"
|
||||
"id": "#2668",
|
||||
"title": "[Windows] broken update on 1.107, need manual update",
|
||||
"url": "https://github.com/VSCodium/vscodium/issues/2668"
|
||||
}
|
||||
]
|
||||
|
||||
14
build.sh
14
build.sh
@@ -27,7 +27,8 @@ if [[ "${SHOULD_BUILD}" == "yes" ]]; then
|
||||
rm -f .build/extensions/ms-vscode.js-debug/src/win32-app-container-tokens.*.node
|
||||
|
||||
# generate Group Policy definitions
|
||||
node build/lib/policies darwin
|
||||
npm run copy-policy-dto --prefix build
|
||||
node build/lib/policies/policyGenerator.ts build/lib/policies/policyData.jsonc darwin
|
||||
|
||||
npm run gulp "vscode-darwin-${VSCODE_ARCH}-min-ci"
|
||||
|
||||
@@ -37,13 +38,14 @@ if [[ "${SHOULD_BUILD}" == "yes" ]]; then
|
||||
|
||||
VSCODE_PLATFORM="darwin"
|
||||
elif [[ "${OS_NAME}" == "windows" ]]; then
|
||||
# generate Group Policy definitions
|
||||
node build/lib/policies win32
|
||||
|
||||
# in CI, packaging will be done by a different job
|
||||
if [[ "${CI_BUILD}" == "no" ]]; then
|
||||
. ../build/windows/rtf/make.sh
|
||||
|
||||
# generate Group Policy definitions
|
||||
npm run copy-policy-dto --prefix build
|
||||
node build/lib/policies/policyGenerator.ts build/lib/policies/policyData.jsonc win32
|
||||
|
||||
npm run gulp "vscode-win32-${VSCODE_ARCH}-min-ci"
|
||||
|
||||
if [[ "${VSCODE_ARCH}" != "x64" ]]; then
|
||||
@@ -61,6 +63,10 @@ if [[ "${SHOULD_BUILD}" == "yes" ]]; then
|
||||
|
||||
# in CI, packaging will be done by a different job
|
||||
if [[ "${CI_BUILD}" == "no" ]]; then
|
||||
# generate Group Policy definitions
|
||||
npm run copy-policy-dto --prefix build
|
||||
node build/lib/policies/policyGenerator.ts build/lib/policies/policyData.jsonc linux
|
||||
|
||||
npm run gulp "vscode-linux-${VSCODE_ARCH}-min-ci"
|
||||
|
||||
find "../VSCode-linux-${VSCODE_ARCH}" -print0 | xargs -0 touch -c
|
||||
|
||||
@@ -41,7 +41,7 @@ for i in {1..5}; do # try 5 times
|
||||
echo "Npm install failed $i, trying again..."
|
||||
done
|
||||
|
||||
node build/azure-pipelines/distro/mixin-npm
|
||||
node build/azure-pipelines/distro/mixin-npm.ts
|
||||
|
||||
if [[ "${VSCODE_ARCH}" == "x64" ]]; then
|
||||
PA_NAME="linux-alpine"
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
|
||||
set -ex
|
||||
|
||||
export ELECTRON_VERSION="37.2.5"
|
||||
export ELECTRON_VERSION="39.2.3"
|
||||
export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}"
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
0bc435a6989f120b1f748cd2f8d3fa7ed731c54a0ad797271e479539dca5c4fe *chromedriver-v37.2.5-linux-loong64.zip
|
||||
6a355cac6c8b02deb413d024ff3224f03717cc0790e3f5a872891ecf79ade20e *electron-v37.2.5-linux-loong64-debug.zip
|
||||
c091db1993b2bda5426a678c428c5ffc71af9228abc4891a493a1d318e250b0a *electron-v37.2.5-linux-loong64-symbols.zip
|
||||
d3f615c3ec265a2adbc0ed9088a65e96aa90b392ecd1ea17e8e4dc82728f4a5d *electron-v37.2.5-linux-loong64.zip
|
||||
17e05db81f5b0cff1327ac153bd20838b3332b78de1b2ffa235e27a30a15024d *ffmpeg-v37.2.5-linux-loong64.zip
|
||||
eaf1efb230cd9bfee7acd8b553c602ff396c2f667837e968b4c1d5542448b0b3 *hunspell-dictionaries.zip
|
||||
3eb8b3199f764c63f82960cb1e1945f70af348873133bf9fd70daeefa3ca1bfb *libcxx-headers.zip
|
||||
2a5ad06e845d59d89b74a97cd2befcfad02f951f8083f02645a9edbb4e7fdcb7 *libcxx-objects-v37.2.5-linux-loong64.zip
|
||||
24eec3c74d5a05eba53524866a009e257e52e65257caa8e6fda07b82321885eb *libcxxabi-headers.zip
|
||||
a4015814d6651cf5511b04307aeef51b739d05eed7ff8ab819739dabd0047309 *mksnapshot-v37.2.5-linux-loong64.zip
|
||||
d1ed2413e007d7adbcd7291158647cfd4908739b034d021c123ca3d11513c31a *node-v37.2.5-headers.tar.gz
|
||||
d26b2189e7466a08c73861d0225c9b28730fdfc30918f3ea70853b43a2581dc4 *chromedriver-v39.2.3-linux-loong64.zip
|
||||
8cc36f7468f5b2d98cde3f73c10c535555754c54be43e45c320a382c35b8e466 *electron-v39.2.3-linux-loong64.zip
|
||||
f6e7462d6fd795ae2b08344ee0fdca817eba148b62a62717b3f512c845d96a64 *ffmpeg-v39.2.3-linux-loong64.zip
|
||||
b122599dc84b81526ba4eecbca4794f3a2d25300242ad3829d1445cb6948f470 *hunspell-dictionaries.zip
|
||||
76ef17d2810df5e77c5071863e2a375df914cfb7a362ad0582ee0eedca2441b9 *libcxx-headers.zip
|
||||
9b61ba9f0780a57ee2749f7963759395784eadcaccc54af313de1a540240298e *libcxx-objects-v39.2.3-linux-loong64.zip
|
||||
9ae64aff9e391eae401142e55654b5b8cf54d0611b1ecb540f2f4e89a2b4f772 *libcxxabi-headers.zip
|
||||
7d7e6e08c84aa38b74037f5910534918bc792ffbe2ca6d667067f587f27f5118 *mksnapshot-v39.2.3-linux-loong64.zip
|
||||
db48f8a9d2271e8b3a1c3f26ea1ae9bd489deb1b464b6ae424a15d5df7529fdc *node-v39.2.3-headers.tar.gz
|
||||
|
||||
@@ -22,7 +22,7 @@ export VSCODE_SYSROOT_PREFIX='-glibc-2.28-gcc-10.5.0'
|
||||
|
||||
if [[ "${VSCODE_ARCH}" == "arm64" || "${VSCODE_ARCH}" == "armhf" ]]; then
|
||||
export VSCODE_SKIP_SYSROOT=1
|
||||
export USE_GNUPP2A=1
|
||||
# export USE_GNUPP2A=1
|
||||
elif [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then
|
||||
export VSCODE_SYSROOT_REPOSITORY='VSCodium/vscode-linux-build-agent'
|
||||
export VSCODE_SYSROOT_VERSION='20240129-253798'
|
||||
@@ -125,7 +125,14 @@ for i in {1..5}; do # try 5 times
|
||||
echo "Npm install failed $i, trying again..."
|
||||
done
|
||||
|
||||
node build/azure-pipelines/distro/mixin-npm
|
||||
node build/azure-pipelines/distro/mixin-npm.ts
|
||||
|
||||
# delete native files built in the `compile` step
|
||||
find .build/extensions -type f -name '*.node' -print -delete
|
||||
|
||||
# generate Group Policy definitions
|
||||
npm run copy-policy-dto --prefix build
|
||||
node build/lib/policies/policyGenerator.ts build/lib/policies/policyData.jsonc linux
|
||||
|
||||
npm run gulp "vscode-linux-${VSCODE_ARCH}-min-ci"
|
||||
|
||||
|
||||
@@ -18,20 +18,14 @@ cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
GLIBC_VERSION="2.28"
|
||||
GLIBCXX_VERSION="3.4.26"
|
||||
NODE_VERSION="22.15.1"
|
||||
NODE_VERSION="22.21.1"
|
||||
|
||||
export VSCODE_NODEJS_URLROOT='/download/release'
|
||||
export VSCODE_NODEJS_URLSUFFIX=''
|
||||
|
||||
if [[ "${VSCODE_ARCH}" == "x64" ]]; then
|
||||
GLIBC_VERSION="2.17"
|
||||
GLIBCXX_VERSION="3.4.22"
|
||||
|
||||
VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:focal-devtoolset-x64"
|
||||
|
||||
export VSCODE_NODEJS_SITE='https://unofficial-builds.nodejs.org'
|
||||
export VSCODE_NODEJS_URLSUFFIX='-glibc-217'
|
||||
|
||||
export VSCODE_SKIP_SETUPENV=1
|
||||
elif [[ "${VSCODE_ARCH}" == "arm64" ]]; then
|
||||
EXPECTED_GLIBC_VERSION="2.30"
|
||||
@@ -48,6 +42,8 @@ elif [[ "${VSCODE_ARCH}" == "armhf" ]]; then
|
||||
export VSCODE_SKIP_SYSROOT=1
|
||||
export USE_GNUPP2A=1
|
||||
elif [[ "${VSCODE_ARCH}" == "ppc64le" ]]; then
|
||||
GLIBC_VERSION="2.28"
|
||||
|
||||
VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:focal-devtoolset-ppc64le"
|
||||
VSCODE_SYSROOT_PREFIX="-glibc-${GLIBC_VERSION}"
|
||||
|
||||
@@ -66,6 +62,8 @@ elif [[ "${VSCODE_ARCH}" == "loong64" ]]; then
|
||||
export VSCODE_SKIP_SETUPENV=1
|
||||
export VSCODE_NODEJS_SITE='https://unofficial-builds.nodejs.org'
|
||||
elif [[ "${VSCODE_ARCH}" == "s390x" ]]; then
|
||||
GLIBC_VERSION="2.28"
|
||||
|
||||
VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME="vscodium/vscodium-linux-build-agent:focal-devtoolset-s390x"
|
||||
VSCODE_SYSROOT_PREFIX="-glibc-${GLIBC_VERSION}"
|
||||
|
||||
@@ -130,9 +128,6 @@ EOF
|
||||
echo "${INCLUDES}" > "${HOME}/.gyp/include.gypi"
|
||||
fi
|
||||
|
||||
mv .npmrc .npmrc.bak
|
||||
cp ../npmrc .npmrc
|
||||
|
||||
for i in {1..5}; do # try 5 times
|
||||
npm ci --prefix build && break
|
||||
if [[ $i == 5 ]]; then
|
||||
@@ -158,6 +153,11 @@ else
|
||||
export VSCODE_SYSROOT_DIR=".build"
|
||||
fi
|
||||
|
||||
node build/npm/preinstall.ts
|
||||
|
||||
mv .npmrc .npmrc.bak
|
||||
cp ../npmrc .npmrc
|
||||
|
||||
for i in {1..5}; do # try 5 times
|
||||
npm ci && break
|
||||
if [[ $i == 5 ]]; then
|
||||
@@ -170,26 +170,26 @@ for i in {1..5}; do # try 5 times
|
||||
rm -rf node_modules/@vscode node_modules/node-pty
|
||||
done
|
||||
|
||||
if [[ "${VSCODE_ARCH}" == "x64" ]]; then
|
||||
pushd "remote"
|
||||
# if [[ "${VSCODE_ARCH}" == "x64" ]]; then
|
||||
# pushd "remote"
|
||||
|
||||
for LIB in @parcel/watcher @vscode/spdlog kerberos node-pty
|
||||
do
|
||||
pushd "node_modules/${LIB}"
|
||||
# for LIB in @parcel/watcher @vscode/spdlog kerberos node-pty
|
||||
# do
|
||||
# pushd "node_modules/${LIB}"
|
||||
|
||||
CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" npx node-gyp rebuild
|
||||
# CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0" npx node-gyp rebuild
|
||||
|
||||
popd
|
||||
done
|
||||
# popd
|
||||
# done
|
||||
|
||||
popd
|
||||
|
||||
VERIFY_CXX11=1
|
||||
fi
|
||||
# popd
|
||||
|
||||
# VERIFY_CXX11=1
|
||||
# fi
|
||||
|
||||
mv .npmrc.bak .npmrc
|
||||
|
||||
node build/azure-pipelines/distro/mixin-npm
|
||||
node build/azure-pipelines/distro/mixin-npm.ts
|
||||
|
||||
export VSCODE_NODE_GLIBC="-glibc-${GLIBC_VERSION}"
|
||||
|
||||
@@ -200,9 +200,9 @@ if [[ "${SHOULD_BUILD_REH}" != "no" ]]; then
|
||||
|
||||
EXPECTED_GLIBC_VERSION="${EXPECTED_GLIBC_VERSION}" EXPECTED_GLIBCXX_VERSION="${GLIBCXX_VERSION}" SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ./build/azure-pipelines/linux/verify-glibc-requirements.sh
|
||||
|
||||
if [[ -n "${VERIFY_CXX11}" ]]; then
|
||||
SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ../build/linux/verify_cxx11_requirements.sh
|
||||
fi
|
||||
# if [[ -n "${VERIFY_CXX11}" ]]; then
|
||||
# SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ../build/linux/verify_cxx11_requirements.sh
|
||||
# fi
|
||||
|
||||
pushd "../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}"
|
||||
|
||||
@@ -223,9 +223,9 @@ if [[ "${SHOULD_BUILD_REH_WEB}" != "no" ]]; then
|
||||
|
||||
EXPECTED_GLIBC_VERSION="${EXPECTED_GLIBC_VERSION}" EXPECTED_GLIBCXX_VERSION="${GLIBCXX_VERSION}" SEARCH_PATH="../vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ./build/azure-pipelines/linux/verify-glibc-requirements.sh
|
||||
|
||||
if [[ -n "${VERIFY_CXX11}" ]]; then
|
||||
SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ../build/linux/verify_cxx11_requirements.sh
|
||||
fi
|
||||
# if [[ -n "${VERIFY_CXX11}" ]]; then
|
||||
# SEARCH_PATH="../vscode-reh-${VSCODE_PLATFORM}-${VSCODE_ARCH}" ../build/linux/verify_cxx11_requirements.sh
|
||||
# fi
|
||||
|
||||
pushd "../vscode-reh-web-${VSCODE_PLATFORM}-${VSCODE_ARCH}"
|
||||
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
|
||||
set -ex
|
||||
|
||||
export ELECTRON_VERSION="37.2.3"
|
||||
export ELECTRON_VERSION="39.2.7"
|
||||
export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}"
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
877785ae2383a8a222fa37bda98c148b145931ff8714614aaf330d15d6f92710 *chromedriver-v37.2.3-linux-ppc64le.zip
|
||||
5ce746efac98a0d83699ef0e03497867ed34d936a268551f26eb2e2972c4d5f5 *electron-v37.2.3-linux-ppc64le-debug.zip
|
||||
f0ac8a9a9b6c1e330edd53fedaee29699c540691993ace4bb938cdd369895b89 *electron-v37.2.3-linux-ppc64le-symbols.zip
|
||||
6dc2ac4a8fd4565948ac330be371436d2534aaea633d17ac7743fce8aac42ef0 *electron-v37.2.3-linux-ppc64le.zip
|
||||
6358a83a03a801d6a85559179e4f12307dee693043ffb26fd40585f369f7db76 *electron.d.ts
|
||||
25a5ec559f683df305faa9eb082514a9e6dff9f983b7724ddbd82a34bef4890b *hunspell_dictionaries.zip
|
||||
9da591f8eabbdeba1a51f1b2ec7f2627eaa07d77d0263b6b16abc87a00e2f287 *libcxx-objects-v37.2.3-linux-ppc64le.zip
|
||||
519a41987f56c133b91affbb13f8fa5331eda9da8750325fae84444532177e02 *libcxx_headers.zip
|
||||
8607d01b3c828602b3f359458587d5ffa883695756edebf4547aadb0847fdaa9 *libcxxabi_headers.zip
|
||||
1d40ebef530616b35031333e569247dd265704b496f35ec256220ae081c340c1 *mksnapshot-v37.2.3-linux-ppc64le.zip
|
||||
bacff46523cea806df9788d9e24f7f53fad2317f18afdcbc596b86863dd40805 *chromedriver-v39.2.7-linux-ppc64le.zip
|
||||
b83820b37325c0a6ce0bbb98344b54f70ef7c2a949eea61bcb423b18c623a742 *electron-v39.2.7-linux-ppc64le-debug.zip
|
||||
7d3b4ff4320a54572f9e1e0286702a0bed3e1596a2cb34f8fdc455acf3b9234f *electron-v39.2.7-linux-ppc64le-symbols.zip
|
||||
6974cf1c8a550019b04762222742b8f1d9d76387594a191d3522cd65da075db1 *electron-v39.2.7-linux-ppc64le.zip
|
||||
40c772eb189d100087b75da6c2ad1aeb044f1d661c90543592546a654b0b6d5b *electron.d.ts
|
||||
0c923001d08e474d0dcd3b747b4f9a4bfca685d755ec08de8e44556a63f9ad3a *hunspell_dictionaries.zip
|
||||
ee57f79e88f50f199a6aeb87fa45c83d1bd0f92eb72e00787cfdf4cf11863562 *libcxx-objects-v39.2.7-linux-ppc64le.zip
|
||||
a8709029737d3073758ccb384161a37d91f16e5a3f8110ca8e2c30f83ef8d7e6 *libcxx_headers.zip
|
||||
238dcec817528659a86b0cd3d7dabe301e65b4cab25e45c5bbab7642a8849c02 *libcxxabi_headers.zip
|
||||
be033ed825bd8be92bb6ca86ff81f0907e60aa999aa011f5ddf1360abb19429b *mksnapshot-v39.2.7-linux-ppc64le.zip
|
||||
|
||||
@@ -2,5 +2,5 @@
|
||||
|
||||
set -ex
|
||||
|
||||
export ELECTRON_VERSION="37.2.3"
|
||||
export ELECTRON_VERSION="39.2.7"
|
||||
export VSCODE_ELECTRON_TAG="v${ELECTRON_VERSION}.riscv1"
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
bec3076d684af4ab7700f13861c3257dc17198970eb498ff2e388db71f61898e *chromedriver-v37.2.3-linux-riscv64.zip
|
||||
c670aba1b907ef9cbcdb2dccd742604f897eef4719f7ad46f34925197f7ae208 *electron-v37.2.3-linux-riscv64-debug.tar.zst
|
||||
3ee5a9d29c611a6c685caa291698c3b5f1041bd11b3726137d41931457d6a113 *electron-v37.2.3-linux-riscv64-symbols.tar.zst
|
||||
33f16380975b2087308f096e4329639f839c58aa1b9cccbee0a915bf3ed7b976 *electron-v37.2.3-linux-riscv64.zip
|
||||
0ef484d10dd15bb4b44e5862ff8070ec09d94ca0b7c6b062e88c64fa343e2408 *ffmpeg-v37.2.3-linux-riscv64.zip
|
||||
218a633300feb50ed57ab751374bac8693615ff192c2437067a4bceef84c9cf8 *hunspell-dictionaries.zip
|
||||
abe24654e394d057dc2bdea9533fcd1790becb822b53d543165c74470694e818 *libcxx-headers.zip
|
||||
1e6972b9125d1864f32d0f5d1084cf4ea56f7dd2227505271dde15439942c0e4 *libcxx-objects-v37.2.3-linux-riscv64.zip
|
||||
55fdbc0fc65e176e50c3492dd50a18c9d23e2bd0e45a00a34118d46ed583a8d0 *libcxxabi-headers.zip
|
||||
b017a16c8f0d8c8076ec71fba5a043951dd88e4fc7d8e8720906a0b9b4a141aa *mksnapshot-v37.2.3-linux-riscv64.zip
|
||||
0259b1abf0bc8aedb114bac75aadcbb1860fd13ae32a876702ca8e722581f8b2 *node-v37.2.3-headers.tar.gz
|
||||
6759ef2bd69a2e31a3f0e17c4e4c0bf239b54f08525572201ae7760851168487 *chromedriver-v39.2.7-linux-riscv64.zip
|
||||
89562e30982d8ac71fbc1e0f549a4a6e19abd5cb98ea904d5f3cfceb7c61e582 *electron-v39.2.7-linux-riscv64-debug.tar.zst
|
||||
71c6f265a2ef065f478ef910a06466a21009c02783dcb7053767549a6dbeb80d *electron-v39.2.7-linux-riscv64-symbols.tar.zst
|
||||
136804dbd04f1c6b9a6047c4e7bb648876214ff453b62fb3bdc81505b6f5aab2 *electron-v39.2.7-linux-riscv64.zip
|
||||
1059d6cb97b87464b3bd415bb5f96fceaf91d6e3af1c9733724ab9f2e14e2a08 *ffmpeg-v39.2.7-linux-riscv64.zip
|
||||
224a84d4aaceb5ed8be3c4f65f8404d492dc86ded8ab336c2562dfdd21752068 *hunspell-dictionaries.zip
|
||||
b6cb4f8902aad5de811efd106ddbdbca79e43cb7c8fa67f7eeddaedf2efd82d5 *libcxx-headers.zip
|
||||
0664e200ec1eab1ce1957bc6e17ad89f6c0d4d904a9492d64fcf4175cd81e537 *libcxx-objects-v39.2.7-linux-riscv64.zip
|
||||
96f9b66be7ff11e79ec2e781a0025938eb5ef97cbab429c05e9b45d24d421abf *libcxxabi-headers.zip
|
||||
be0774857454f81b9407f6b941200f8843a0b3ecb86e2bb072209ef9f9bfe74a *mksnapshot-v39.2.7-linux-riscv64.zip
|
||||
a8fca541e8f9a18de73c78f6862cbf439723c80c5eb60fe50405dfb751d2ee13 *node-v39.2.7-headers.tar.gz
|
||||
|
||||
@@ -20,10 +20,17 @@ for i in {1..5}; do # try 5 times
|
||||
echo "Npm install failed $i, trying again..."
|
||||
done
|
||||
|
||||
node build/azure-pipelines/distro/mixin-npm
|
||||
node build/azure-pipelines/distro/mixin-npm.ts
|
||||
|
||||
# delete native files built in the `compile` step
|
||||
find .build/extensions -type f -name '*.node' -print -delete
|
||||
|
||||
. ../build/windows/rtf/make.sh
|
||||
|
||||
# generate Group Policy definitions
|
||||
npm run copy-policy-dto --prefix build
|
||||
node build/lib/policies/policyGenerator.ts build/lib/policies/policyData.jsonc win32
|
||||
|
||||
npm run gulp "vscode-win32-${VSCODE_ARCH}-min-ci"
|
||||
|
||||
. ../build_cli.sh
|
||||
|
||||
@@ -32,6 +32,8 @@ if [[ "${OS_NAME}" == "osx" ]]; then
|
||||
export OPENSSL_LIB_DIR="$( pwd )/openssl/out/${VSCODE_ARCH}-osx/lib"
|
||||
export OPENSSL_INCLUDE_DIR="$( pwd )/openssl/out/${VSCODE_ARCH}-osx/include"
|
||||
|
||||
rustup target add "${VSCODE_CLI_TARGET}"
|
||||
|
||||
cargo build --release --target "${VSCODE_CLI_TARGET}" --bin=code
|
||||
|
||||
cp "target/${VSCODE_CLI_TARGET}/release/code" "../../VSCode-darwin-${VSCODE_ARCH}/${NAME_SHORT}.app/Contents/Resources/app/bin/${TUNNEL_APPLICATION_NAME}"
|
||||
|
||||
@@ -112,6 +112,10 @@ if [[ "${SKIP_BUILD}" == "no" ]]; then
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
|
||||
while [[ -n "$( git log -1 | grep "VSCODIUM HELPER" )" ]]; do
|
||||
git reset -q --hard HEAD~
|
||||
done
|
||||
|
||||
rm -rf .build out*
|
||||
|
||||
cd ..
|
||||
|
||||
58
dev/patch.sh
58
dev/patch.sh
@@ -2,7 +2,19 @@
|
||||
|
||||
set -e
|
||||
|
||||
echo "$#"
|
||||
normalize_file() {
|
||||
if [[ "${1}" == *patch ]]; then
|
||||
FILE="${1}"
|
||||
else
|
||||
FILE="${1}.patch"
|
||||
fi
|
||||
|
||||
if [[ "${FILE}" == patches/* ]]; then
|
||||
FILE="../${FILE}"
|
||||
else
|
||||
FILE="../patches/${FILE}"
|
||||
fi
|
||||
}
|
||||
|
||||
cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
@@ -13,30 +25,28 @@ while [[ -n "$( git log -1 | grep "VSCODIUM HELPER" )" ]]; do
|
||||
git reset -q --hard HEAD~
|
||||
done
|
||||
|
||||
git apply --reject "../patches/helper/settings.patch"
|
||||
normalize_file "${1}"
|
||||
|
||||
while [ $# -gt 1 ]; do
|
||||
echo "Parameter: $1"
|
||||
if [[ "${1}" == *patch ]]; then
|
||||
FILE="../patches/${1}"
|
||||
else
|
||||
FILE="../patches/${1}.patch"
|
||||
fi
|
||||
if [[ "${FILE}" != "../patches/helper/settings.patch" ]]; then
|
||||
git apply --reject "../patches/helper/settings.patch"
|
||||
|
||||
git apply --reject "${FILE}"
|
||||
while [ $# -gt 1 ]; do
|
||||
echo "Parameter: $1"
|
||||
normalize_file "${1}"
|
||||
|
||||
shift
|
||||
done
|
||||
git apply --reject "${FILE}"
|
||||
|
||||
git add .
|
||||
git commit --no-verify -q -m "VSCODIUM HELPER"
|
||||
shift
|
||||
done
|
||||
|
||||
if [[ "${1}" == *patch ]]; then
|
||||
FILE="../patches/${1}"
|
||||
else
|
||||
FILE="../patches/${1}.patch"
|
||||
git add .
|
||||
git commit --no-verify -q -m "VSCODIUM HELPER"
|
||||
|
||||
normalize_file "${1}"
|
||||
fi
|
||||
|
||||
echo "FILE: ${FILE}"
|
||||
|
||||
if [[ -f "${FILE}" ]]; then
|
||||
if [[ -f "${FILE}.bak" ]]; then
|
||||
mv -f $FILE{.bak,}
|
||||
@@ -47,8 +57,18 @@ fi
|
||||
|
||||
read -rp "Press any key when the conflict have been resolved..." -n1 -s
|
||||
|
||||
while [[ -n "$( find . -name '*.rej' -print )" ]]; do
|
||||
echo
|
||||
read -rp "Press any key when the conflict have been resolved..." -n1 -s
|
||||
done
|
||||
|
||||
git add .
|
||||
git diff --staged -U1 > "${FILE}"
|
||||
git reset -q --hard HEAD~
|
||||
|
||||
if [[ "${FILE}" != "../patches/helper/settings.patch" ]]; then
|
||||
git reset -q --hard HEAD
|
||||
else
|
||||
git reset -q --hard HEAD~
|
||||
fi
|
||||
|
||||
echo "The patch has been generated."
|
||||
|
||||
@@ -14,7 +14,6 @@ while getopts ":i" opt; do
|
||||
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##*/}"
|
||||
@@ -30,10 +29,17 @@ if [[ ! -d "${DIRECTORY}" ]]; then
|
||||
unzip "${FILE}" -d "${DIRECTORY}"
|
||||
fi
|
||||
|
||||
APIS=$( jq -r '.extensionEnabledApiProposals' "${DIRECTORY}/resources/app/product.json" )
|
||||
BIN_PATH=$(find "${DIRECTORY}/bin" -type f ! -name "*.*")
|
||||
|
||||
LINE="$( grep -E '^[[:space:]]*(export[[:space:]]+)?VERSIONFOLDER[[:space:]]*=' "$BIN_PATH" | tail -n1 )"
|
||||
VERSIONFOLDER="${LINE#*=}"
|
||||
VERSIONFOLDER="${VERSIONFOLDER#\"}"
|
||||
VERSIONFOLDER="${VERSIONFOLDER%\"}"
|
||||
|
||||
APIS=$( jq -r '.extensionEnabledApiProposals' "${DIRECTORY}/${VERSIONFOLDER}/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"]}' )
|
||||
echo "$( jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json )" > product.json
|
||||
|
||||
jsonTmp=$( jq --argjson v "${APIS}" 'setpath(["extensionEnabledApiProposals"]; $v)' product.json )
|
||||
echo "${jsonTmp}" > product.json && unset jsonTmp
|
||||
APIS=$( jq -r '.extensionsEnabledWithApiProposalVersion' "${DIRECTORY}/${VERSIONFOLDER}/resources/app/product.json" )
|
||||
echo "$( jq --argjson v "${APIS}" 'setpath(["extensionsEnabledWithApiProposalVersion"]; $v)' product.json )" > product.json
|
||||
|
||||
@@ -12,6 +12,75 @@ while getopts ":i" opt; do
|
||||
esac
|
||||
done
|
||||
|
||||
generate_rejects() {
|
||||
local PATCH_FILE="$1"
|
||||
|
||||
if ! command -v python3 >/dev/null 2>&1; then
|
||||
echo "python3 not found; cannot create reject files for ${PATCH_FILE}"
|
||||
return 1
|
||||
fi
|
||||
|
||||
PATCH_FOR_REJECT="${PATCH_FILE}" python3 <<'PY'
|
||||
import os
|
||||
import pathlib
|
||||
import re
|
||||
import subprocess
|
||||
|
||||
|
||||
def chunk_needs_reject(raw_chunk: str) -> bool:
|
||||
"""Return True when a patch chunk cannot be applied nor reversed."""
|
||||
|
||||
chunk = raw_chunk if raw_chunk.endswith("\n") else raw_chunk + "\n"
|
||||
|
||||
def _run_git(extra_args):
|
||||
return subprocess.run(
|
||||
["git", "apply", "--check", "--ignore-whitespace", *extra_args],
|
||||
input=chunk,
|
||||
text=True,
|
||||
capture_output=True,
|
||||
)
|
||||
|
||||
forward = _run_git([])
|
||||
if forward.returncode == 0:
|
||||
return False
|
||||
|
||||
reverse = _run_git(["--reverse"])
|
||||
if reverse.returncode == 0:
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
patch_path = os.environ["PATCH_FOR_REJECT"]
|
||||
with open(patch_path, "r", encoding="utf-8", errors="ignore") as src:
|
||||
content = src.read()
|
||||
|
||||
chunks = re.split(r'(?m)^diff --git ', content)
|
||||
for chunk in chunks:
|
||||
chunk = chunk.strip()
|
||||
if not chunk:
|
||||
continue
|
||||
chunk = "diff --git " + chunk
|
||||
match = re.search(r'^diff --git a/(.*?) b/(.*?)$', chunk, re.MULTILINE)
|
||||
if not match:
|
||||
continue
|
||||
a_path, b_path = match.groups()
|
||||
candidate = b_path if b_path != "/dev/null" else a_path
|
||||
if candidate in ("/dev/null", ""):
|
||||
continue
|
||||
if candidate.startswith("../") or candidate.startswith("..\\") or candidate.startswith("/"):
|
||||
continue
|
||||
dest = pathlib.Path(candidate + ".rej")
|
||||
if not chunk_needs_reject(chunk):
|
||||
continue
|
||||
dest.parent.mkdir(parents=True, exist_ok=True)
|
||||
with dest.open("w", encoding="utf-8") as fh:
|
||||
fh.write(chunk)
|
||||
if not chunk.endswith("\n"):
|
||||
fh.write("\n")
|
||||
print(f"generated reject: {dest}")
|
||||
PY
|
||||
}
|
||||
|
||||
check_file() {
|
||||
while [ $# -gt 1 ]; do
|
||||
git apply --reject "${1}"
|
||||
@@ -33,9 +102,26 @@ check_file() {
|
||||
if ! git apply --ignore-whitespace "${1}"; then
|
||||
echo failed to apply patch "${1}"
|
||||
|
||||
git apply --reject "${1}"
|
||||
git apply --reject --verbose "${1}"
|
||||
|
||||
read -rp "Press any key when the conflict have been resolved..." -n1 -s
|
||||
if [[ -z "$( find . -name '*.rej' -print )" ]]; then
|
||||
echo "no .rej generated by git; creating fallback rejects for ${1}"
|
||||
|
||||
if ! generate_rejects "${1}"; then
|
||||
echo "failed to generate reject files for ${1}"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ -z "$( find . -name '*.rej' -print )" ]]; then
|
||||
echo "still no .rej after attempting to create them for ${1}"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
while [[ -n "$( find . -name '*.rej' -print )" ]]; do
|
||||
read -rp "Press any key when the conflict have been resolved..." -n1 -s
|
||||
echo
|
||||
done
|
||||
|
||||
git restore .vscode/settings.json
|
||||
git add .
|
||||
@@ -52,8 +138,16 @@ cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
git add .
|
||||
git reset -q --hard HEAD
|
||||
|
||||
while [[ -n "$( git log -1 | grep "VSCODIUM HELPER" )" ]]; do
|
||||
git reset -q --hard HEAD~
|
||||
done
|
||||
|
||||
for FILE in ../patches/*.patch; do
|
||||
check_file "${FILE}"
|
||||
if [[ "${FILE}" == *"/fix-policies.patch" ]]; then
|
||||
check_file "../patches/fix-keymap.patch" "../patches/fix-policies.patch"
|
||||
else
|
||||
check_file "${FILE}"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
@@ -64,7 +158,7 @@ fi
|
||||
|
||||
for ARCH in alpine linux osx windows; do
|
||||
for FILE in "../patches/${ARCH}/"*.patch; do
|
||||
if [[ "${ARCH}" == "linux" && "${FILE}" == *"/arch-"* ]] || [[ "${ARCH}" == "windows" && "${FILE}" == *"/cli"* ]]; then
|
||||
if [[ "${ARCH}" == "linux" && "${FILE}" == *"/arch-"* ]] || [[ "${ARCH}" == "linux" && "${FILE}" == *"/fix-dependencies.patch" ]] || [[ "${ARCH}" == "windows" && "${FILE}" == *"/cli"* ]]; then
|
||||
echo "skip ${FILE}"
|
||||
else
|
||||
check_file "${FILE}"
|
||||
@@ -72,6 +166,8 @@ for ARCH in alpine linux osx windows; do
|
||||
done
|
||||
|
||||
if [[ "${ARCH}" == "linux" ]]; then
|
||||
check_file "../patches/optional-tree-sitter.patch" "../patches/linux/fix-dependencies.patch"
|
||||
|
||||
check_file "../patches/cli.patch" "../patches/linux/arch-0-support.patch"
|
||||
check_file "../patches/cli.patch" "../patches/linux/arch-0-support.patch" "../patches/linux/arch-1-ppc64le.patch"
|
||||
check_file "../patches/cli.patch" "../patches/linux/arch-0-support.patch" "../patches/linux/arch-1-ppc64le.patch" "../patches/linux/arch-2-riscv64.patch"
|
||||
|
||||
22
docs/ext-github-copilot.md
Normal file
22
docs/ext-github-copilot.md
Normal file
@@ -0,0 +1,22 @@
|
||||
<!-- order: 16 -->
|
||||
|
||||
# Extension: GitHub Copilot
|
||||
|
||||
Unlike Visual Studio Code, in VSCodium, Copilot features are disabled and not configured.
|
||||
|
||||
## Update your settings
|
||||
|
||||
In your settings, sets:
|
||||
```
|
||||
"chat.disableAIFeatures": false,
|
||||
```
|
||||
|
||||
## Configure product.json
|
||||
|
||||
You need to create 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`
|
||||
|
||||
Then you will need to follow the guide [Running with Code OSS](https://github.com/microsoft/vscode-copilot-chat/blob/main/CONTRIBUTING.md#running-with-code-oss) with the `product.json` file created previously.
|
||||
You will need to add the properties: `trustedExtensionAuthAccess` and `defaultChatAgent`.
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
## <a id="dependencies"></a>Dependencies
|
||||
|
||||
- node 20.18
|
||||
- node (check [.nvmrc](../.nvmrc) for version)
|
||||
- jq
|
||||
- git
|
||||
- python3 3.11
|
||||
|
||||
@@ -25,6 +25,7 @@
|
||||
- [Proprietary Extensions](https://github.com/VSCodium/vscodium/blob/master/docs/extensions.md#proprietary-extensions)
|
||||
- [Using the "VSIX Manager" Extension](https://github.com/VSCodium/vscodium/blob/master/docs/extensions.md#vsix-manager)
|
||||
- [Extensions compatibility](https://github.com/VSCodium/vscodium/blob/master/docs/extensions-compatibility.md)
|
||||
- [Ext: GitHub Copilot](https://github.com/VSCodium/vscodium/blob/master/docs/ext-github-copilot.md)
|
||||
- [Migration](https://github.com/VSCodium/vscodium/blob/master/docs/migration.md)
|
||||
- [Manual Migration from Visual Studio Code to VSCodium](https://github.com/VSCodium/vscodium/blob/master/docs/migration.md#manual-migration)
|
||||
- [Semi-Automatic Migration with "Sync Settings" Extension](https://github.com/VSCodium/vscodium/blob/master/docs/migration.md#semi-automatic-migration)
|
||||
|
||||
@@ -1,41 +1,62 @@
|
||||
<!-- order: 10 -->
|
||||
|
||||
# Getting all the Telemetry Out
|
||||
# Getting all telemetry out
|
||||
|
||||
This page explains how VSCodium handles telemetry and how to ensure your privacy.
|
||||
This page explains how VSCodium handles telemetry and how it enhances your privacy.
|
||||
|
||||
## Table of Contents
|
||||
## Table of contents
|
||||
|
||||
- [Telemetry in VSCodium](#telemetry)
|
||||
- [Replacements to Microsoft Online Services](#replacements)
|
||||
- [Checking for Telemetry](#checking)
|
||||
- [Additional Privacy Settings](#additional-settings)
|
||||
- [VSCodium Announcements](#announcements)
|
||||
- [Malicious & Deprecated Extensions](#malicious-extensions)
|
||||
- [Checking for telemetry](#checking)
|
||||
- [VSCodium announcements](#announcements)
|
||||
- [Malicious & deprecated extensions](#malicious-extensions)
|
||||
|
||||
## <a id="telemetry"></a>Telemetry in VSCodium
|
||||
|
||||
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.
|
||||
Even though we do not pass the telemetry build flags and go out of our way to cripple the baked-in telemetry, Microsoft still can track usage by default depending on your settings.
|
||||
|
||||
We do however set the default `telemetry.enableTelemetry` and `telemetry.enableCrashReporter` values to `false`. You can see those by viewing your VSCodium `settings.json` and searching for `telemetry`.
|
||||
We disable all the following telemetry-related settings by default to enhance your privacy:
|
||||
```
|
||||
telemetry.telemetryLevel
|
||||
telemetry.enableCrashReporter
|
||||
telemetry.enableTelemetry
|
||||
telemetry.editStats.enabled
|
||||
workbench.enableExperiments
|
||||
workbench.settings.enableNaturalLanguageSearch
|
||||
workbench.commandPalette.experimental.enableNaturalLanguageSearch
|
||||
```
|
||||
It is also 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). You can use the search filter `@tag:usesOnlineServices` to show such settings and review what to change.
|
||||
|
||||
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:
|
||||
__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. Be sure to check each extension's settings page to disable their telemetry if applicable.
|
||||
|
||||
- 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
|
||||
### Update services
|
||||
By default, the app periodically fetches connections to check for the latest version available to download and install.
|
||||
Extensions are also checked for updates automatically from time to time.
|
||||
|
||||
These can all be disabled.
|
||||
If you want to prevent such behaviors, modify the following preferences:
|
||||
|
||||
__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.)_
|
||||
For the app itself:
|
||||
- `update.mode` -> `manual` (or `none`)
|
||||
- `update.enableWindowsBackgroundUpdates` -> `false` (only applicable for Microsoft Windows)
|
||||
|
||||
For extensions:
|
||||
- `extensions.autoUpdate` -> `false`
|
||||
- `extensions.autoCheckUpdates` -> `false`
|
||||
|
||||
*Note: on Linux, the app update service is disabled completely at build-time even if the `update.mode` preference is configured. This is because users will more likely use their package managers to update the app rather than updating via the app itself.*
|
||||
|
||||
### Feedback telemetry
|
||||
By default, we keep the preference `telemetry.feedback.enabled` enabled. It's used to allow the button `Report Issue...` to be used on the app depending on the context. It does not send any data by having it enabled (other options already cover it). If you want, you can disable this behavior by toggling the preference value.
|
||||
|
||||
## <a id="replacements"></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#L135) in `product.json` directly to the GitHub page, so enabling that setting won't actually result in any calls to Microsoft online service.
|
||||
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/8cc366bb76d6c0ddb64374f9530b42094646a660/prepare_vscode.sh#L132-L133) in `product.json` directly to the GitHub page, so enabling that setting won't actually result in any calls to the Microsoft online service.
|
||||
|
||||
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#L121) the Visual Studio Marketplace with Open VSX, so these settings won't call Microsoft, either.
|
||||
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/8cc366bb76d6c0ddb64374f9530b42094646a660/prepare_vscode.sh#L119) the Visual Studio Marketplace with Open VSX, so these settings won't call Microsoft either.
|
||||
|
||||
## <a id="checking"></a>Checking for Telemetry
|
||||
## <a id="checking"></a>Checking for telemetry
|
||||
|
||||
If you want to verify that no telemetry is being sent, you can use network monitoring tools like:
|
||||
|
||||
@@ -45,34 +66,16 @@ If you want to verify that no telemetry is being sent, you can use network monit
|
||||
|
||||
Look for connections to Microsoft domains and telemetry endpoints.
|
||||
|
||||
## <a id="additional-settings"></a>Additional Privacy Settings
|
||||
## <a id="announcements"></a>VSCodium anouncements
|
||||
|
||||
For maximum privacy, you can add these settings to your `settings.json`:
|
||||
The welcome page in VSCodium displays announcements that are fetched via the internet from the project's GitHub repository.
|
||||
|
||||
```json
|
||||
{
|
||||
"telemetry.enableTelemetry": false,
|
||||
"telemetry.enableCrashReporter": false,
|
||||
"telemetry.feedback.enabled": false,
|
||||
"update.enableWindowsBackgroundUpdates": false,
|
||||
"update.mode": "manual",
|
||||
"workbench.enableExperiments": false,
|
||||
"workbench.settings.enableNaturalLanguageSearch": false
|
||||
}
|
||||
```
|
||||
If you prefer to disable this feature, you can disable the preference `workbench.welcomePage.extraAnnouncements`.
|
||||
|
||||
These settings will disable various telemetry and tracking features.
|
||||
|
||||
## <a id="announcements"></a>VSCodium Announcements
|
||||
|
||||
The Welcome page in VSCodium displays announcements that are fetched from the project's GitHub repository.
|
||||
|
||||
If you prefer to disable this feature, you can set the `workbench.welcomePage.extraAnnouncements` setting to `false` in your `settings.json`.
|
||||
|
||||
## <a id="malicious-extensions"></a>Malicious & Deprecated Extensions
|
||||
## <a id="malicious-extensions"></a>Malicious & deprecated extensions
|
||||
|
||||
The definitions for malicious and deprecated extensions are dynamically loaded from the following URL:
|
||||
https://raw.githubusercontent.com/EclipseFdn/publish-extensions/refs/heads/master/extension-control/extensions.json.
|
||||
https://raw.githubusercontent.com/EclipseFdn/publish-extensions/refs/heads/master/extension-control/extensions.json
|
||||
|
||||
If you prefer to avoid any external connections, you can set the`extensions.excludeUnsafes` setting to `false` in your `settings.json`.
|
||||
If you prefer to avoid any external connections, you can disable the preference `extensions.excludeUnsafes`.
|
||||
However, this is not recommended as it may reduce the safety of your environment.
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
- [Global menu workaround for KDE](#linux-kde-global-menu)
|
||||
- [Flatpak most common issues](#linux-flatpak-most-common-issues)
|
||||
- [Remote SSH doesn't work](#linux-remote-ssh)
|
||||
- [The window doesn't show up](#linux-no-window)
|
||||
|
||||
## <a id="linux"></a>Linux
|
||||
|
||||
@@ -70,3 +71,10 @@ Use the VSCodium's compatible extension [Open Remote - SSH](https://open-vsx.org
|
||||
On the server, in the `sshd` config, `AllowTcpForwarding` need to be set to `yes`.
|
||||
|
||||
It might requires additional dependencies due to the OS/distro (alpine).
|
||||
|
||||
### <a id="linux-no-window"></a>*The window doesn't show up*
|
||||
|
||||
If you are under Wayland:
|
||||
- try the command `codium --verbose`
|
||||
- if you see an error like `:ERROR:ui/gl/egl_util.cc:92] EGL Driver message (Error) eglCreateContext: Requested version is not supported`
|
||||
- try `codium --ozone-platform=x11`
|
||||
|
||||
@@ -6,20 +6,22 @@ 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"
|
||||
QUALITY="insider"
|
||||
[[ -z "${COLOR}" ]] && COLOR="orange1"
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
[[ -z "${COLOR}" ]] && COLOR="blue1"
|
||||
[[ -z "${QUALITY}" ]] && QUALITY="stable"
|
||||
[[ -z "${SRC_PREFIX}" ]] && SRC_PREFIX=""
|
||||
[[ -z "${VSCODE_PREFIX}" ]] && VSCODE_PREFIX=""
|
||||
|
||||
check_programs() { # {{{
|
||||
for arg in "$@"; do
|
||||
if ! command -v "${arg}" &> /dev/null; then
|
||||
@@ -31,27 +33,47 @@ check_programs() { # {{{
|
||||
|
||||
check_programs "icns2png" "composite" "convert" "png2icns" "icotool" "rsvg-convert" "sed"
|
||||
|
||||
. ./utils.sh
|
||||
. "./${VSCODE_PREFIX}utils.sh"
|
||||
|
||||
SRC_PREFIX=""
|
||||
VSCODE_PREFIX=""
|
||||
if ! declare -F load_linux_png &>/dev/null; then
|
||||
load_linux_png() {
|
||||
wget "https://raw.githubusercontent.com/VSCodium/icons/main/icons/linux/circle1/${COLOR}/paulo22s.png" -O "$1"
|
||||
}
|
||||
fi
|
||||
|
||||
if ! declare -F load_windows_ico &>/dev/null; then
|
||||
load_windows_ico() {
|
||||
wget "https://raw.githubusercontent.com/VSCodium/icons/main/icons/win32/nobg/${COLOR}/paulo22s.ico" -O "$1"
|
||||
}
|
||||
fi
|
||||
|
||||
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"
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/darwin"
|
||||
|
||||
if [[ "$1" == "no-template" ]]; then
|
||||
rsvg-convert -w 1024 -h 1024 "icons/${QUALITY}/codium_cnl.svg" -o "code_1024.png"
|
||||
else
|
||||
rsvg-convert -w 655 -h 655 "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
|
||||
composite "code_logo.png" -gravity center "${VSCODE_PREFIX}icons/template_macos.png" "code_1024.png"
|
||||
fi
|
||||
|
||||
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
|
||||
png2icns "${SRC_PREFIX}src/${QUALITY}/resources/darwin/code.icns" code_1024.png 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
|
||||
rm -f 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"
|
||||
if [[ "$1" == "no-border" ]]; then
|
||||
rsvg-convert -w 128 -h 128 "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
|
||||
else
|
||||
rsvg-convert -w 128 -h 128 "icons/${QUALITY}/codium_cnl_w80_b8.svg" -o "code_logo.png"
|
||||
fi
|
||||
|
||||
for file in "${VSCODE_PREFIX}"vscode/resources/darwin/*; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
@@ -60,7 +82,7 @@ build_darwin_types() { # {{{
|
||||
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 -blend 100% -geometry +323+365 "${VSCODE_PREFIX}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"
|
||||
@@ -77,26 +99,32 @@ build_darwin_types() { # {{{
|
||||
|
||||
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"
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/linux"
|
||||
|
||||
load_linux_png "${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
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/linux/rpm"
|
||||
|
||||
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
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/src/vs/workbench/browser/media"
|
||||
|
||||
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_server() { # {{{
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/server"
|
||||
|
||||
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/server/favicon.ico" ]]; then
|
||||
wget "https://raw.githubusercontent.com/VSCodium/icons/main/icons/win32/nobg/${COLOR}/paulo22s.ico" -O "${SRC_PREFIX}src/${QUALITY}/resources/server/favicon.ico"
|
||||
load_windows_ico "${SRC_PREFIX}src/${QUALITY}/resources/server/favicon.ico"
|
||||
fi
|
||||
|
||||
if [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/server/code-192.png" ]]; then
|
||||
@@ -110,7 +138,9 @@ build_server() { # {{{
|
||||
|
||||
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"
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/win32"
|
||||
|
||||
load_windows_ico "${SRC_PREFIX}src/${QUALITY}/resources/win32/code.ico"
|
||||
fi
|
||||
} # }}}
|
||||
|
||||
@@ -132,12 +162,16 @@ build_windows_type() { # {{{
|
||||
|
||||
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}"
|
||||
if [[ "${GRAVITY}" == "center" ]]; then
|
||||
composite -gravity "${GRAVITY}" "code_logo.png" "${FILE_PATH}" "${FILE_PATH}"
|
||||
else
|
||||
composite -gravity NorthWest -geometry "${GRAVITY}" "code_logo.png" "${FILE_PATH}" "${FILE_PATH}"
|
||||
fi
|
||||
fi
|
||||
} # }}}
|
||||
|
||||
build_windows_types() { # {{{
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/win32"
|
||||
mkdir -p "${SRC_PREFIX}src/${QUALITY}/resources/win32" "${SRC_PREFIX}build/windows/msi/resources/${QUALITY}"
|
||||
|
||||
rsvg-convert -b "#F5F6F7" -w 64 -h 64 "icons/${QUALITY}/codium_cnl.svg" -o "code_logo.png"
|
||||
|
||||
@@ -148,11 +182,11 @@ build_windows_types() { # {{{
|
||||
if [[ "${name}" != 'code' ]] && [[ ! -f "${SRC_PREFIX}src/${QUALITY}/resources/win32/${name}.ico" ]]; then
|
||||
icotool -x -w 256 "${file}"
|
||||
|
||||
composite -geometry +150+185 "code_logo.png" "${name}_9_256x256x32.png" "${name}.png"
|
||||
composite -geometry +150+185 "code_logo.png" "${name}_1_256x256x32.png" "${name}.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}_9_256x256x32.png" "${name}.png"
|
||||
rm "${name}_1_256x256x32.png" "${name}.png"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
@@ -1,18 +1,18 @@
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index c1d64c0..3e60e80 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -321,3 +321,3 @@ function packageTask(type, platform, arch, sourceFolderName, destinationFolderNa
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index cb1a0a5..dacedc3 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -323,3 +323,3 @@ function packageTask(type: string, platform: string, arch: string, sourceFolderN
|
||||
const productJsonStream = gulp.src(['product.json'], { base: '.' })
|
||||
- .pipe(json({ commit, date: readISODate('out-build'), version }))
|
||||
+ .pipe(json({ commit, date: readISODate('out-build'), version, serverDownloadUrlTemplate: 'https://github.com/!!ASSETS_REPOSITORY!!/releases/download/!!RELEASE_VERSION!!/!!APP_NAME_LC!!-reh-${os}-${arch}-!!RELEASE_VERSION!!.tar.gz' }))
|
||||
- .pipe(jsonEditor({ commit, date: readISODate('out-build'), version }))
|
||||
+ .pipe(jsonEditor({ commit, date: readISODate('out-build'), version, serverDownloadUrlTemplate: 'https://github.com/!!ASSETS_REPOSITORY!!/releases/download/!!RELEASE_VERSION!!/!!APP_NAME_LC!!-reh-${os}-${arch}-!!RELEASE_VERSION!!.tar.gz' }))
|
||||
.pipe(es.through(function (file) {
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 7046ee0..9aa7bb0 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -288,3 +288,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index d3ab651..1000abc 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -272,3 +272,3 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
|
||||
const productJsonStream = gulp.src(['product.json'], { base: '.' })
|
||||
- .pipe(json({ commit, date: readISODate('out-build'), checksums, version }))
|
||||
+ .pipe(json({ commit, date: readISODate('out-build'), checksums, version, serverDownloadUrlTemplate: 'https://github.com/!!ASSETS_REPOSITORY!!/releases/download/!!RELEASE_VERSION!!/!!APP_NAME_LC!!-reh-${os}-${arch}-!!RELEASE_VERSION!!.tar.gz' }))
|
||||
- .pipe(jsonEditor({ commit, date: readISODate('out-build'), checksums, version }))
|
||||
+ .pipe(jsonEditor({ commit, date: readISODate('out-build'), checksums, version, serverDownloadUrlTemplate: 'https://github.com/!!ASSETS_REPOSITORY!!/releases/download/!!RELEASE_VERSION!!/!!APP_NAME_LC!!-reh-${os}-${arch}-!!RELEASE_VERSION!!.tar.gz' }))
|
||||
.pipe(es.through(function (file) {
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index e12a33e..9300d62 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -188,5 +188,16 @@ function getNodeChecksum(expectedName) {
|
||||
function extractAlpinefromDocker(nodeVersion, platform, arch) {
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index cb1a0a5..375851e 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -159,5 +159,16 @@ function getNodeChecksum(expectedName: string): string | undefined {
|
||||
function extractAlpinefromDocker(nodeVersion: string, platform: string, arch: string) {
|
||||
- const imageName = arch === 'arm64' ? 'arm64v8/node' : 'node';
|
||||
+ let imageName = 'node';
|
||||
+ let dockerPlatform = '';
|
||||
@@ -20,4 +20,4 @@ index e12a33e..9300d62 100644
|
||||
log(`Downloading node.js ${nodeVersion} ${platform} ${arch} from docker image ${imageName}`);
|
||||
- const contents = cp.execSync(`docker run --rm ${imageName}:${nodeVersion}-alpine /bin/sh -c 'cat \`which node\`'`, { maxBuffer: 100 * 1024 * 1024, encoding: 'buffer' });
|
||||
+ const contents = cp.execSync(`docker run --rm ${dockerPlatform} ${imageName}:${nodeVersion}-alpine /bin/sh -c 'cat \`which node\`'`, { maxBuffer: 200 * 1024 * 1024, encoding: 'buffer' });
|
||||
return es.readArray([new File({ path: 'node', contents, stat: { mode: parseInt('755', 8) } })]);
|
||||
// eslint-disable-next-line local/code-no-dangerous-type-assertions
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 7046ee0..faca888 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -376,3 +376,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index d3ab651..63cd71f 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -369,3 +369,3 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
|
||||
.pipe(replace('@@APPNAME@@', product.applicationName))
|
||||
- .pipe(rename('bin/code'));
|
||||
+ .pipe(rename('bin/' + product.applicationName));
|
||||
const policyDest = gulp.src('.build/policies/darwin/**', { base: '.build/policies/darwin' })
|
||||
diff --git a/src/vs/platform/native/electron-main/nativeHostMainService.ts b/src/vs/platform/native/electron-main/nativeHostMainService.ts
|
||||
index 6324e98..3d2fba3 100644
|
||||
index 2c3b710..8041f08 100644
|
||||
--- a/src/vs/platform/native/electron-main/nativeHostMainService.ts
|
||||
+++ b/src/vs/platform/native/electron-main/nativeHostMainService.ts
|
||||
@@ -445,3 +445,3 @@ export class NativeHostMainService extends Disposable implements INativeHostMain
|
||||
@@ -503,3 +503,3 @@ 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}`;
|
||||
@@ -680,3 +680,3 @@ export class NativeHostMainService extends Disposable implements INativeHostMain
|
||||
@@ -772,3 +772,3 @@ export class NativeHostMainService extends Disposable implements INativeHostMain
|
||||
if (this.environmentMainService.isBuilt) {
|
||||
- return join(this.environmentMainService.appRoot, 'bin', 'code');
|
||||
+ return join(this.environmentMainService.appRoot, 'bin', `${this.productService.applicationName}`);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,9 +0,0 @@
|
||||
diff --git a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
index 56220de..68d708f 100644
|
||||
--- a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
@@ -142,3 +142,3 @@ configurationRegistry.registerConfiguration({
|
||||
markdownDescription: nls.localize('chat.commandCenter.enabled', "Controls whether the command center shows a menu for actions to control Copilot (requires {0}).", '`#window.commandCenter#`'),
|
||||
- default: true
|
||||
+ default: false
|
||||
},
|
||||
@@ -1,13 +1,13 @@
|
||||
diff --git a/cli/src/commands/serve_web.rs b/cli/src/commands/serve_web.rs
|
||||
index 2ddefe1..ab9c658 100644
|
||||
index d3f7db8..988024b 100644
|
||||
--- a/cli/src/commands/serve_web.rs
|
||||
+++ b/cli/src/commands/serve_web.rs
|
||||
@@ -730,3 +730,3 @@ impl ConnectionManager {
|
||||
@@ -756,3 +756,3 @@ impl ConnectionManager {
|
||||
let dir_fut = cache.create(&args.release.commit, |target_dir| async move {
|
||||
- info!(log_for_fut, "Downloading server {}", release_for_fut.commit);
|
||||
+ info!(log_for_fut, "Downloading server {}/{}", release_for_fut.commit, release_for_fut.name);
|
||||
let tmpdir = tempfile::tempdir().unwrap();
|
||||
@@ -758,3 +758,3 @@ impl ConnectionManager {
|
||||
@@ -784,3 +784,3 @@ impl ConnectionManager {
|
||||
.join("bin")
|
||||
- .join(args.release.quality.server_entrypoint());
|
||||
+ .join(args.release.quality.server_entrypoint().unwrap());
|
||||
@@ -58,10 +58,10 @@ index 7d152c0..c0f2fb2 100644
|
||||
+ Ok(server_name)
|
||||
}
|
||||
diff --git a/cli/src/tunnels/code_server.rs b/cli/src/tunnels/code_server.rs
|
||||
index cf00bc4..b564330 100644
|
||||
index bbabadc..b454d0e 100644
|
||||
--- a/cli/src/tunnels/code_server.rs
|
||||
+++ b/cli/src/tunnels/code_server.rs
|
||||
@@ -457,3 +457,3 @@ impl<'a> ServerBuilder<'a> {
|
||||
@@ -462,3 +462,3 @@ impl<'a> ServerBuilder<'a> {
|
||||
.join("bin")
|
||||
- .join(self.server_params.release.quality.server_entrypoint()),
|
||||
+ .join(self.server_params.release.quality.server_entrypoint().unwrap()),
|
||||
@@ -76,7 +76,7 @@ index 3d7d718..98529bc 100644
|
||||
+ .join(self.quality.server_entrypoint().unwrap())
|
||||
},
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index 9033914..a39bbf7 100644
|
||||
index 55f1dad..3b7ef5c 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -10,3 +10,3 @@ use serde::{Deserialize, Serialize};
|
||||
@@ -89,7 +89,7 @@ index 9033914..a39bbf7 100644
|
||||
- },
|
||||
+ }
|
||||
};
|
||||
@@ -58,4 +58,12 @@ fn quality_download_segment(quality: options::Quality) -> &'static str {
|
||||
@@ -58,2 +58,10 @@ fn quality_download_segment(quality: options::Quality) -> &'static str {
|
||||
|
||||
+fn get_app_name() -> Result<&'static str, CodeError> {
|
||||
+ VSCODE_CLI_APP_NAME.ok_or_else(|| CodeError::UpdatesNotConfigured("no app name"))
|
||||
@@ -99,17 +99,19 @@ index 9033914..a39bbf7 100644
|
||||
+ VSCODE_CLI_DOWNLOAD_ENDPOINT.ok_or_else(|| CodeError::UpdatesNotConfigured("no download url"))
|
||||
+}
|
||||
+
|
||||
fn get_update_endpoint() -> Result<&'static str, CodeError> {
|
||||
- VSCODE_CLI_UPDATE_ENDPOINT.ok_or_else(|| CodeError::UpdatesNotConfigured("no service url"))
|
||||
+ VSCODE_CLI_UPDATE_ENDPOINT.ok_or_else(|| CodeError::UpdatesNotConfigured("no update url"))
|
||||
fn get_update_endpoint() -> Result<String, CodeError> {
|
||||
@@ -66,3 +74,3 @@ fn get_update_endpoint() -> Result<String, CodeError> {
|
||||
.map(|s| s.to_string())
|
||||
- .ok_or_else(|| CodeError::UpdatesNotConfigured("no service url"))
|
||||
+ .ok_or_else(|| CodeError::UpdatesNotConfigured("no update url"))
|
||||
}
|
||||
@@ -67,3 +75,4 @@ impl UpdateService {
|
||||
@@ -74,3 +82,4 @@ impl UpdateService {
|
||||
|
||||
- pub async fn get_release_by_semver_version(
|
||||
+ /// Gets the latest commit for the target of the given quality.
|
||||
+ pub async fn get_latest_commit(
|
||||
&self,
|
||||
@@ -72,14 +81,10 @@ impl UpdateService {
|
||||
@@ -79,14 +88,10 @@ impl UpdateService {
|
||||
quality: options::Quality,
|
||||
- version: &str,
|
||||
) -> Result<Release, AnyError> {
|
||||
@@ -120,19 +122,19 @@ index 9033914..a39bbf7 100644
|
||||
let download_url = format!(
|
||||
- "{}/api/versions/{}/{}/{}",
|
||||
+ "{}/{}/{}/{}/latest.json",
|
||||
update_endpoint,
|
||||
&update_endpoint,
|
||||
- version,
|
||||
- download_segment,
|
||||
quality_download_segment(quality),
|
||||
+ platform.os(),
|
||||
+ platform.arch(),
|
||||
);
|
||||
@@ -97,3 +102,3 @@ impl UpdateService {
|
||||
@@ -104,3 +109,3 @@ impl UpdateService {
|
||||
let res = response.json::<UpdateServerVersion>().await?;
|
||||
- debug!(self.log, "Resolved version {} to {}", version, res.version);
|
||||
+ debug!(self.log, "Resolved quality {} to {}", quality, res.version);
|
||||
|
||||
@@ -108,40 +113,17 @@ impl UpdateService {
|
||||
@@ -115,40 +120,17 @@ impl UpdateService {
|
||||
|
||||
- /// Gets the latest commit for the target of the given quality.
|
||||
- pub async fn get_latest_commit(
|
||||
@@ -151,7 +153,7 @@ index 9033914..a39bbf7 100644
|
||||
+
|
||||
let download_url = format!(
|
||||
- "{}/api/latest/{}/{}",
|
||||
- update_endpoint,
|
||||
- &update_endpoint,
|
||||
- download_segment,
|
||||
- quality_download_segment(quality),
|
||||
+ "{}/download/{}/{}-reh-web-{}-{}-{}.tar.gz",
|
||||
@@ -185,7 +187,7 @@ index 9033914..a39bbf7 100644
|
||||
- })
|
||||
+ Ok(download_url)
|
||||
}
|
||||
@@ -150,15 +132,3 @@ impl UpdateService {
|
||||
@@ -157,15 +139,3 @@ impl UpdateService {
|
||||
pub async fn get_download_stream(&self, release: &Release) -> Result<SimpleResponse, AnyError> {
|
||||
- let update_endpoint = get_update_endpoint()?;
|
||||
- let download_segment = release
|
||||
@@ -195,14 +197,14 @@ index 9033914..a39bbf7 100644
|
||||
-
|
||||
- let download_url = format!(
|
||||
- "{}/commit:{}/{}/{}",
|
||||
- update_endpoint,
|
||||
- &update_endpoint,
|
||||
- release.commit,
|
||||
- download_segment,
|
||||
- quality_download_segment(release.quality),
|
||||
- );
|
||||
+ let download_url = self.get_download_url(release)?;
|
||||
|
||||
@@ -196,13 +166,2 @@ pub enum TargetKind {
|
||||
@@ -203,13 +173,2 @@ pub enum TargetKind {
|
||||
|
||||
-impl TargetKind {
|
||||
- fn download_segment(&self, platform: Platform) -> Option<String> {
|
||||
@@ -216,7 +218,7 @@ index 9033914..a39bbf7 100644
|
||||
-}
|
||||
-
|
||||
#[derive(Debug, Copy, Clone, Eq, PartialEq, Serialize, Deserialize)]
|
||||
@@ -225,30 +184,17 @@ pub enum Platform {
|
||||
@@ -232,30 +191,17 @@ pub enum Platform {
|
||||
impl Platform {
|
||||
- pub fn archive(&self) -> Option<String> {
|
||||
- match self {
|
||||
@@ -261,7 +263,7 @@ index 9033914..a39bbf7 100644
|
||||
+ Platform::WindowsX86 => "ia42",
|
||||
+ Platform::WindowsARM64 => "arm64",
|
||||
}
|
||||
@@ -257,17 +203,17 @@ impl Platform {
|
||||
@@ -264,17 +210,17 @@ impl Platform {
|
||||
|
||||
- pub fn cli(&self) -> String {
|
||||
+ pub fn os(&self) -> String {
|
||||
@@ -293,10 +295,19 @@ index 9033914..a39bbf7 100644
|
||||
+ Platform::WindowsX86 => "win32",
|
||||
+ Platform::WindowsARM64 => "win32",
|
||||
}
|
||||
@@ -276,6 +222,2 @@ impl Platform {
|
||||
@@ -283,6 +229,2 @@ impl Platform {
|
||||
|
||||
- pub fn web(&self) -> String {
|
||||
- format!("{}-web", self.headless())
|
||||
- }
|
||||
-
|
||||
pub fn env_default() -> Option<Platform> {
|
||||
diff --git a/extensions/tunnel-forwarding/src/extension.ts b/extensions/tunnel-forwarding/src/extension.ts
|
||||
index 2f71999..e689f62 100644
|
||||
--- a/extensions/tunnel-forwarding/src/extension.ts
|
||||
+++ b/extensions/tunnel-forwarding/src/extension.ts
|
||||
@@ -37,3 +37,3 @@ if (process.env.VSCODE_FORWARDING_IS_DEV) {
|
||||
|
||||
- const cliName = vscode.env.appQuality === 'stable' ? 'code-tunnel' : 'code-tunnel-insiders';
|
||||
+ const cliName = '!!TUNNEL_APP_NAME!!';
|
||||
const extension = process.platform === 'win32' ? '.exe' : '';
|
||||
|
||||
93
patches/disable-copilot.patch
Normal file
93
patches/disable-copilot.patch
Normal file
@@ -0,0 +1,93 @@
|
||||
diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts b/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts
|
||||
index 7b64c28..bea3a3f 100644
|
||||
--- a/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts
|
||||
+++ b/src/vs/workbench/contrib/chat/browser/actions/chatActions.ts
|
||||
@@ -192,3 +192,4 @@ abstract class OpenChatGlobalAction extends Action2 {
|
||||
ChatContextKeys.Setup.hidden.negate(),
|
||||
- ChatContextKeys.Setup.disabled.negate()
|
||||
+ ChatContextKeys.Setup.disabled.negate(),
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate()
|
||||
)
|
||||
@@ -806,3 +807,3 @@ export function registerChatActions() {
|
||||
precondition: ContextKeyExpr.and(
|
||||
- ChatContextKeys.Setup.installed,
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate(),
|
||||
ChatContextKeys.Setup.disabled.negate(),
|
||||
@@ -1232,3 +1233,4 @@ MenuRegistry.appendMenuItem(MenuId.EditorContext, {
|
||||
ChatContextKeys.Setup.hidden.negate(),
|
||||
- ChatContextKeys.Setup.disabled.negate()
|
||||
+ ChatContextKeys.Setup.disabled.negate(),
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate()
|
||||
)
|
||||
diff --git a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
index d211a1d..cfbcdf5 100644
|
||||
--- a/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/chat/browser/chat.contribution.ts
|
||||
@@ -969,3 +969,3 @@ configurationRegistry.registerConfiguration({
|
||||
description: nls.localize('chat.disableAIFeatures', "Disable and hide built-in AI features provided by GitHub Copilot, including chat and inline suggestions."),
|
||||
- default: false,
|
||||
+ default: true,
|
||||
scope: ConfigurationScope.WINDOW
|
||||
diff --git a/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts b/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts
|
||||
index ddb5df4..7831288 100644
|
||||
--- a/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.ts
|
||||
@@ -70,10 +70,9 @@ const chatViewDescriptor: IViewDescriptor = {
|
||||
ctorDescriptor: new SyncDescriptor(ChatViewPane),
|
||||
- when: ContextKeyExpr.or(
|
||||
- ContextKeyExpr.or(
|
||||
- ChatContextKeys.Setup.hidden,
|
||||
- ChatContextKeys.Setup.disabled
|
||||
- )?.negate(),
|
||||
- ChatContextKeys.panelParticipantRegistered,
|
||||
- ChatContextKeys.extensionInvalid
|
||||
- )
|
||||
+ when: ContextKeyExpr.and(
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate(),
|
||||
+ ChatContextKeys.Setup.disabled.negate(),
|
||||
+ ChatContextKeys.Setup.hidden.negate(),
|
||||
+ ChatContextKeys.panelParticipantRegistered,
|
||||
+ ChatContextKeys.extensionInvalid.negate()
|
||||
+ )
|
||||
};
|
||||
diff --git a/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts b/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts
|
||||
index 9085864..4331066 100644
|
||||
--- a/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts
|
||||
+++ b/src/vs/workbench/contrib/chat/common/actions/chatContextKeys.ts
|
||||
@@ -126,3 +126,3 @@ export namespace ChatContextKeyExprs {
|
||||
export const chatSetupTriggerContext = ContextKeyExpr.or(
|
||||
- ChatContextKeys.Setup.installed.negate(),
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate(),
|
||||
ChatContextKeys.Entitlement.canSignUp
|
||||
diff --git a/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts b/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts
|
||||
index 7f4dfea..5957267 100644
|
||||
--- a/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts
|
||||
+++ b/src/vs/workbench/contrib/mcp/browser/mcpServersView.ts
|
||||
@@ -540,3 +540,3 @@ export class McpServersViewsContribution extends Disposable implements IWorkbenc
|
||||
ctorDescriptor: new SyncDescriptor(DefaultBrowseMcpServersView, [{}]),
|
||||
- when: ContextKeyExpr.and(DefaultViewsContext, HasInstalledMcpServersContext.toNegated(), ChatContextKeys.Setup.hidden.negate(), McpServersGalleryStatusContext.isEqualTo(McpGalleryManifestStatus.Available), ContextKeyExpr.or(ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceUrlConfig}`), ProductQualityContext.notEqualsTo('stable'), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceEnablementConfig}`))),
|
||||
+ when: ContextKeyExpr.and(DefaultViewsContext, HasInstalledMcpServersContext.toNegated(), ContextKeyExpr.has('config.chat.disableAIFeatures').negate(), ChatContextKeys.Setup.hidden.negate(), McpServersGalleryStatusContext.isEqualTo(McpGalleryManifestStatus.Available), ContextKeyExpr.or(ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceUrlConfig}`), ProductQualityContext.notEqualsTo('stable'), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceEnablementConfig}`))),
|
||||
weight: 40,
|
||||
@@ -555,3 +555,3 @@ export class McpServersViewsContribution extends Disposable implements IWorkbenc
|
||||
ctorDescriptor: new SyncDescriptor(DefaultBrowseMcpServersView, [{ showWelcome: true }]),
|
||||
- when: ContextKeyExpr.and(DefaultViewsContext, HasInstalledMcpServersContext.toNegated(), ChatContextKeys.Setup.hidden.negate(), McpServersGalleryStatusContext.isEqualTo(McpGalleryManifestStatus.Available), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceUrlConfig}`).negate(), ProductQualityContext.isEqualTo('stable'), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceEnablementConfig}`).negate()),
|
||||
+ when: ContextKeyExpr.and(DefaultViewsContext, HasInstalledMcpServersContext.toNegated(), ContextKeyExpr.has('config.chat.disableAIFeatures').negate(), ChatContextKeys.Setup.hidden.negate(), McpServersGalleryStatusContext.isEqualTo(McpGalleryManifestStatus.Available), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceUrlConfig}`).negate(), ProductQualityContext.isEqualTo('stable'), ContextKeyDefinedExpr.create(`config.${mcpGalleryServiceEnablementConfig}`).negate()),
|
||||
weight: 40,
|
||||
diff --git a/src/vs/workbench/contrib/scm/browser/scm.contribution.ts b/src/vs/workbench/contrib/scm/browser/scm.contribution.ts
|
||||
index c38dc40..a3e398c 100644
|
||||
--- a/src/vs/workbench/contrib/scm/browser/scm.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/scm/browser/scm.contribution.ts
|
||||
@@ -704,3 +704,3 @@ registerAction2(class extends Action2 {
|
||||
ChatContextKeys.Setup.disabled.negate(),
|
||||
- ChatContextKeys.Setup.installed.negate(),
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate(),
|
||||
ContextKeyExpr.in(ResourceContextKey.Resource.key, 'git.mergeChanges'),
|
||||
diff --git a/src/vs/workbench/contrib/scm/browser/scmViewPane.ts b/src/vs/workbench/contrib/scm/browser/scmViewPane.ts
|
||||
index 012d3c5..2f53955 100644
|
||||
--- a/src/vs/workbench/contrib/scm/browser/scmViewPane.ts
|
||||
+++ b/src/vs/workbench/contrib/scm/browser/scmViewPane.ts
|
||||
@@ -1417,3 +1417,3 @@ registerAction2(class extends Action2 {
|
||||
ChatContextKeys.Setup.disabled.negate(),
|
||||
- ChatContextKeys.Setup.installed.negate(),
|
||||
+ ContextKeyExpr.has('config.chat.disableAIFeatures').negate(),
|
||||
ContextKeyExpr.equals('scmProvider', 'git')
|
||||
128
patches/disable-missing-vsda.patch
Normal file
128
patches/disable-missing-vsda.patch
Normal file
@@ -0,0 +1,128 @@
|
||||
diff --git a/src/vs/platform/sign/browser/signService.ts b/src/vs/platform/sign/browser/signService.ts
|
||||
index c288b2e..8303040 100644
|
||||
--- a/src/vs/platform/sign/browser/signService.ts
|
||||
+++ b/src/vs/platform/sign/browser/signService.ts
|
||||
@@ -5,6 +5,2 @@
|
||||
|
||||
-import { importAMDNodeModule, resolveAmdNodeModulePath } from '../../../amdX.js';
|
||||
-import { WindowIntervalTimer } from '../../../base/browser/dom.js';
|
||||
-import { mainWindow } from '../../../base/browser/window.js';
|
||||
-import { memoize } from '../../../base/common/decorators.js';
|
||||
import { IProductService } from '../../product/common/productService.js';
|
||||
@@ -13,30 +9,4 @@ import { ISignService } from '../common/sign.js';
|
||||
|
||||
-declare namespace vsdaWeb {
|
||||
- export function sign(salted_message: string): string;
|
||||
-
|
||||
- // eslint-disable-next-line @typescript-eslint/naming-convention
|
||||
- export class validator {
|
||||
- free(): void;
|
||||
- constructor();
|
||||
- createNewMessage(original: string): string;
|
||||
- validate(signed_message: string): 'ok' | 'error';
|
||||
- }
|
||||
-
|
||||
- export type InitInput = RequestInfo | URL | Response | BufferSource | WebAssembly.Module;
|
||||
- export function init(module_or_path?: InitInput | Promise<InitInput>): Promise<unknown>;
|
||||
-}
|
||||
-
|
||||
-// Initialized if/when vsda is loaded
|
||||
-declare const vsda_web: {
|
||||
- default: typeof vsdaWeb.init;
|
||||
- sign: typeof vsdaWeb.sign;
|
||||
- validator: typeof vsdaWeb.validator;
|
||||
-};
|
||||
-
|
||||
-const KEY_SIZE = 32;
|
||||
-const IV_SIZE = 16;
|
||||
-const STEP_SIZE = KEY_SIZE + IV_SIZE;
|
||||
-
|
||||
export class SignService extends AbstractSignService implements ISignService {
|
||||
- constructor(@IProductService private readonly productService: IProductService) {
|
||||
+ constructor(@IProductService _productService: IProductService) {
|
||||
super();
|
||||
@@ -44,53 +14,7 @@ export class SignService extends AbstractSignService implements ISignService {
|
||||
protected override getValidator(): Promise<IVsdaValidator> {
|
||||
- return this.vsda().then(vsda => {
|
||||
- const v = new vsda.validator();
|
||||
- return {
|
||||
- createNewMessage: arg => v.createNewMessage(arg),
|
||||
- validate: arg => v.validate(arg),
|
||||
- dispose: () => v.free(),
|
||||
- };
|
||||
- });
|
||||
- }
|
||||
-
|
||||
- protected override signValue(arg: string): Promise<string> {
|
||||
- return this.vsda().then(vsda => vsda.sign(arg));
|
||||
- }
|
||||
-
|
||||
- @memoize
|
||||
- private async vsda(): Promise<typeof vsda_web> {
|
||||
- const checkInterval = new WindowIntervalTimer();
|
||||
- let [wasm] = await Promise.all([
|
||||
- this.getWasmBytes(),
|
||||
- new Promise<void>((resolve, reject) => {
|
||||
- importAMDNodeModule('vsda', 'rust/web/vsda.js').then(() => resolve(), reject);
|
||||
-
|
||||
- // todo@connor4312: there seems to be a bug(?) in vscode-loader with
|
||||
- // require() not resolving in web once the script loads, so check manually
|
||||
- checkInterval.cancelAndSet(() => {
|
||||
- if (typeof vsda_web !== 'undefined') {
|
||||
- resolve();
|
||||
- }
|
||||
- }, 50, mainWindow);
|
||||
- }).finally(() => checkInterval.dispose()),
|
||||
- ]);
|
||||
-
|
||||
- const keyBytes = new TextEncoder().encode(this.productService.serverLicense?.join('\n') || '');
|
||||
- for (let i = 0; i + STEP_SIZE < keyBytes.length; i += STEP_SIZE) {
|
||||
- const key = await crypto.subtle.importKey('raw', keyBytes.slice(i + IV_SIZE, i + IV_SIZE + KEY_SIZE), { name: 'AES-CBC' }, false, ['decrypt']);
|
||||
- wasm = await crypto.subtle.decrypt({ name: 'AES-CBC', iv: keyBytes.slice(i, i + IV_SIZE) }, key, wasm);
|
||||
- }
|
||||
-
|
||||
- await vsda_web.default(wasm);
|
||||
-
|
||||
- return vsda_web;
|
||||
+ throw new Error('error loading vsda');
|
||||
}
|
||||
|
||||
- private async getWasmBytes(): Promise<ArrayBuffer> {
|
||||
- const url = resolveAmdNodeModulePath('vsda', 'rust/web/vsda_bg.wasm');
|
||||
- const response = await fetch(url);
|
||||
- if (!response.ok) {
|
||||
- throw new Error('error loading vsda');
|
||||
- }
|
||||
-
|
||||
- return response.arrayBuffer();
|
||||
+ protected override signValue(_arg: string): Promise<string> {
|
||||
+ throw new Error('error loading vsda');
|
||||
}
|
||||
diff --git a/src/vs/server/node/remoteExtensionHostAgentServer.ts b/src/vs/server/node/remoteExtensionHostAgentServer.ts
|
||||
index 269cc38..a53fca9 100644
|
||||
--- a/src/vs/server/node/remoteExtensionHostAgentServer.ts
|
||||
+++ b/src/vs/server/node/remoteExtensionHostAgentServer.ts
|
||||
@@ -8,3 +8,2 @@ import type * as http from 'http';
|
||||
import * as net from 'net';
|
||||
-import { createRequire } from 'node:module';
|
||||
import { performance } from 'perf_hooks';
|
||||
@@ -41,3 +40,2 @@ import { setupServerServices, SocketServer } from './serverServices.js';
|
||||
import { CacheControl, serveError, serveFile, WebClientServer } from './webClientServer.js';
|
||||
-const require = createRequire(import.meta.url);
|
||||
|
||||
@@ -736,14 +734,3 @@ export async function createServer(address: string | net.AddressInfo | null, arg
|
||||
|
||||
- const vsdaMod = instantiationService.invokeFunction((accessor) => {
|
||||
- const logService = accessor.get(ILogService);
|
||||
- const hasVSDA = fs.existsSync(join(FileAccess.asFileUri('').fsPath, '../node_modules/vsda'));
|
||||
- if (hasVSDA) {
|
||||
- try {
|
||||
- return require('vsda');
|
||||
- } catch (err) {
|
||||
- logService.error(err);
|
||||
- }
|
||||
- }
|
||||
- return null;
|
||||
- });
|
||||
+ const vsdaMod = instantiationService.invokeFunction(() => null);
|
||||
|
||||
9
patches/disable-update.patch.yet
Normal file
9
patches/disable-update.patch.yet
Normal file
@@ -0,0 +1,9 @@
|
||||
diff --git a/src/vs/platform/update/common/update.config.contribution.ts b/src/vs/platform/update/common/update.config.contribution.ts
|
||||
index d96926b..43f5d90 100644
|
||||
--- a/src/vs/platform/update/common/update.config.contribution.ts
|
||||
+++ b/src/vs/platform/update/common/update.config.contribution.ts
|
||||
@@ -20,3 +20,3 @@ configurationRegistry.registerConfiguration({
|
||||
enum: ['none', 'manual', 'start', 'default'],
|
||||
- default: 'default',
|
||||
+ default: 'none',
|
||||
scope: ConfigurationScope.APPLICATION,
|
||||
185
patches/disable-vscodedev.patch
Normal file
185
patches/disable-vscodedev.patch
Normal file
@@ -0,0 +1,185 @@
|
||||
diff --git a/extensions/github/package.json b/extensions/github/package.json
|
||||
index 726a882..b9a4969 100644
|
||||
--- a/extensions/github/package.json
|
||||
+++ b/extensions/github/package.json
|
||||
@@ -44,19 +44,2 @@
|
||||
},
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLink",
|
||||
- "title": "%command.copyVscodeDevLink%"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkFile",
|
||||
- "title": "%command.copyVscodeDevLink%"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkWithoutRange",
|
||||
- "title": "%command.copyVscodeDevLink%"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.openOnVscodeDev",
|
||||
- "title": "%command.openOnVscodeDev%",
|
||||
- "icon": "$(globe)"
|
||||
- },
|
||||
{
|
||||
@@ -72,11 +55,2 @@
|
||||
],
|
||||
- "continueEditSession": [
|
||||
- {
|
||||
- "command": "github.openOnVscodeDev",
|
||||
- "when": "github.hasGitHubRepo",
|
||||
- "qualifiedName": "Continue Working in vscode.dev",
|
||||
- "category": "Remote Repositories",
|
||||
- "remoteGroup": "virtualfs_44_vscode-vfs_2_web@2"
|
||||
- }
|
||||
- ],
|
||||
"menus": {
|
||||
@@ -91,18 +65,2 @@
|
||||
},
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLink",
|
||||
- "when": "false"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkFile",
|
||||
- "when": "false"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkWithoutRange",
|
||||
- "when": "false"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.openOnVscodeDev",
|
||||
- "when": "false"
|
||||
- },
|
||||
{
|
||||
@@ -112,42 +70,2 @@
|
||||
],
|
||||
- "file/share": [
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkFile",
|
||||
- "when": "github.hasGitHubRepo && remoteName != 'codespaces'",
|
||||
- "group": "0_vscode@0"
|
||||
- }
|
||||
- ],
|
||||
- "editor/context/share": [
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLink",
|
||||
- "when": "github.hasGitHubRepo && resourceScheme != untitled && !isInEmbeddedEditor && remoteName != 'codespaces'",
|
||||
- "group": "0_vscode@0"
|
||||
- }
|
||||
- ],
|
||||
- "explorer/context/share": [
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkWithoutRange",
|
||||
- "when": "github.hasGitHubRepo && resourceScheme != untitled && !isInEmbeddedEditor && remoteName != 'codespaces'",
|
||||
- "group": "0_vscode@0"
|
||||
- }
|
||||
- ],
|
||||
- "editor/lineNumber/context": [
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLink",
|
||||
- "when": "github.hasGitHubRepo && resourceScheme != untitled && activeEditor == workbench.editors.files.textFileEditor && config.editor.lineNumbers == on && remoteName != 'codespaces'",
|
||||
- "group": "1_cutcopypaste@2"
|
||||
- },
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLink",
|
||||
- "when": "github.hasGitHubRepo && resourceScheme != untitled && activeEditor == workbench.editor.notebook && remoteName != 'codespaces'",
|
||||
- "group": "1_cutcopypaste@2"
|
||||
- }
|
||||
- ],
|
||||
- "editor/title/context/share": [
|
||||
- {
|
||||
- "command": "github.copyVscodeDevLinkWithoutRange",
|
||||
- "when": "github.hasGitHubRepo && resourceScheme != untitled && remoteName != 'codespaces'",
|
||||
- "group": "0_vscode@0"
|
||||
- }
|
||||
- ],
|
||||
"scm/historyItem/context": [
|
||||
diff --git a/extensions/github/src/commands.ts b/extensions/github/src/commands.ts
|
||||
index 48e9574..aa853a5 100644
|
||||
--- a/extensions/github/src/commands.ts
|
||||
+++ b/extensions/github/src/commands.ts
|
||||
@@ -9,28 +9,3 @@ import { publishRepository } from './publish.js';
|
||||
import { DisposableStore, getRepositoryFromUrl } from './util.js';
|
||||
-import { LinkContext, getCommitLink, getLink, getVscodeDevHost } from './links.js';
|
||||
-
|
||||
-async function copyVscodeDevLink(gitAPI: GitAPI, useSelection: boolean, context: LinkContext, includeRange = true) {
|
||||
- try {
|
||||
- const permalink = await getLink(gitAPI, useSelection, true, getVscodeDevHost(), 'headlink', context, includeRange);
|
||||
- if (permalink) {
|
||||
- return vscode.env.clipboard.writeText(permalink);
|
||||
- }
|
||||
- } catch (err) {
|
||||
- if (!(err instanceof vscode.CancellationError)) {
|
||||
- vscode.window.showErrorMessage(err.message);
|
||||
- }
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-async function openVscodeDevLink(gitAPI: GitAPI): Promise<vscode.Uri | undefined> {
|
||||
- try {
|
||||
- const headlink = await getLink(gitAPI, true, false, getVscodeDevHost(), 'headlink');
|
||||
- return headlink ? vscode.Uri.parse(headlink) : undefined;
|
||||
- } catch (err) {
|
||||
- if (!(err instanceof vscode.CancellationError)) {
|
||||
- vscode.window.showErrorMessage(err.message);
|
||||
- }
|
||||
- return undefined;
|
||||
- }
|
||||
-}
|
||||
+import { getCommitLink } from './links.js';
|
||||
|
||||
@@ -70,14 +45,2 @@ export function registerCommands(gitAPI: GitAPI): vscode.Disposable {
|
||||
|
||||
- disposables.add(vscode.commands.registerCommand('github.copyVscodeDevLink', async (context: LinkContext) => {
|
||||
- return copyVscodeDevLink(gitAPI, true, context);
|
||||
- }));
|
||||
-
|
||||
- disposables.add(vscode.commands.registerCommand('github.copyVscodeDevLinkFile', async (context: LinkContext) => {
|
||||
- return copyVscodeDevLink(gitAPI, false, context);
|
||||
- }));
|
||||
-
|
||||
- disposables.add(vscode.commands.registerCommand('github.copyVscodeDevLinkWithoutRange', async (context: LinkContext) => {
|
||||
- return copyVscodeDevLink(gitAPI, true, context, false);
|
||||
- }));
|
||||
-
|
||||
disposables.add(vscode.commands.registerCommand('github.openOnGitHub', async (url: string, historyItemId: string) => {
|
||||
@@ -113,6 +76,2 @@ export function registerCommands(gitAPI: GitAPI): vscode.Disposable {
|
||||
|
||||
- disposables.add(vscode.commands.registerCommand('github.openOnVscodeDev', async () => {
|
||||
- return openVscodeDevLink(gitAPI);
|
||||
- }));
|
||||
-
|
||||
return disposables;
|
||||
diff --git a/extensions/github/src/extension.ts b/extensions/github/src/extension.ts
|
||||
index 17906c5..86a0ca8 100644
|
||||
--- a/extensions/github/src/extension.ts
|
||||
+++ b/extensions/github/src/extension.ts
|
||||
@@ -17,3 +17,2 @@ import { GitHubBranchProtectionProviderManager } from './branchProtection.js';
|
||||
import { GitHubCanonicalUriProvider } from './canonicalUriProvider.js';
|
||||
-import { VscodeDevShareProvider } from './shareProviders.js';
|
||||
import { GitHubSourceControlHistoryItemDetailsProvider } from './historyItemDetailsProvider.js';
|
||||
@@ -109,3 +108,2 @@ function initializeGitExtension(context: ExtensionContext, octokitService: Octok
|
||||
disposables.add(new GitHubCanonicalUriProvider(gitAPI));
|
||||
- disposables.add(new VscodeDevShareProvider(gitAPI));
|
||||
setGitHubContext(gitAPI, disposables);
|
||||
diff --git a/extensions/github/src/remoteSourceProvider.ts b/extensions/github/src/remoteSourceProvider.ts
|
||||
index 291a3f1..6304ed8 100644
|
||||
--- a/extensions/github/src/remoteSourceProvider.ts
|
||||
+++ b/extensions/github/src/remoteSourceProvider.ts
|
||||
@@ -10,3 +10,3 @@ import { Octokit } from '@octokit/rest';
|
||||
import { getRepositoryFromQuery, getRepositoryFromUrl } from './util.js';
|
||||
-import { getBranchLink, getVscodeDevHost } from './links.js';
|
||||
+import { getBranchLink } from './links.js';
|
||||
|
||||
@@ -129,9 +129,2 @@ export class GithubRemoteSourceProvider implements RemoteSourceProvider {
|
||||
}
|
||||
- }, {
|
||||
- label: l10n.t('Checkout on vscode.dev'),
|
||||
- icon: 'globe',
|
||||
- run(branch: string) {
|
||||
- const link = getBranchLink(url, branch, getVscodeDevHost());
|
||||
- env.openExternal(Uri.parse(link));
|
||||
- }
|
||||
}];
|
||||
@@ -1,15 +1,5 @@
|
||||
diff --git a/build/lib/builtInExtensions.js b/build/lib/builtInExtensions.js
|
||||
index 249777c..129af8a 100644
|
||||
--- a/build/lib/builtInExtensions.js
|
||||
+++ b/build/lib/builtInExtensions.js
|
||||
@@ -87,5 +87,2 @@ function getExtensionDownloadStream(extension) {
|
||||
}
|
||||
- else if (productjson.extensionsGallery?.serviceUrl) {
|
||||
- input = ext.fromMarketplace(productjson.extensionsGallery.serviceUrl, extension);
|
||||
- }
|
||||
else {
|
||||
diff --git a/build/lib/builtInExtensions.ts b/build/lib/builtInExtensions.ts
|
||||
index e9a1180..b8348e3 100644
|
||||
index d52567b..fe5b988 100644
|
||||
--- a/build/lib/builtInExtensions.ts
|
||||
+++ b/build/lib/builtInExtensions.ts
|
||||
@@ -75,4 +75,2 @@ function getExtensionDownloadStream(extension: IExtensionDefinition) {
|
||||
|
||||
167
patches/feat-command-filter.patch
Normal file
167
patches/feat-command-filter.patch
Normal file
@@ -0,0 +1,167 @@
|
||||
diff --git a/src/vs/workbench/contrib/commands/common/commands.contribution.ts b/src/vs/workbench/contrib/commands/common/commands.contribution.ts
|
||||
index 3fd6b59..97a0e04 100644
|
||||
--- a/src/vs/workbench/contrib/commands/common/commands.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/commands/common/commands.contribution.ts
|
||||
@@ -9,2 +9,3 @@ import { Action2, registerAction2 } from '../../../../platform/actions/common/ac
|
||||
import { ICommandService } from '../../../../platform/commands/common/commands.js';
|
||||
+import { ConfigurationScope, IConfigurationRegistry } from '../../../../platform/configuration/common/configurationRegistry.js';
|
||||
import { ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js';
|
||||
@@ -12,2 +13,3 @@ import { ILogService } from '../../../../platform/log/common/log.js';
|
||||
import { INotificationService } from '../../../../platform/notification/common/notification.js';
|
||||
+import { Registry } from '../../../../platform/registry/common/platform.js';
|
||||
|
||||
@@ -156,2 +158,30 @@ class RunCommands extends Action2 {
|
||||
|
||||
+Registry.as<IConfigurationRegistry>('base.contributions.configuration')
|
||||
+ .registerConfiguration({
|
||||
+ id: 'commands',
|
||||
+ order: 30,
|
||||
+ title: nls.localize('commandsConfigurationTitle', "Commands"),
|
||||
+ type: 'object',
|
||||
+ properties: {
|
||||
+ 'commands.filters': {
|
||||
+ additionalProperties: {
|
||||
+ type: 'string',
|
||||
+ enum: ['ask', 'off', 'on'],
|
||||
+ enumDescriptions: [
|
||||
+ nls.localize('commands.filters.ask', 'Ask the user before executing the command.'),
|
||||
+ nls.localize('commands.filters.off', 'The command is never authorized.'),
|
||||
+ nls.localize('commands.filters.on', 'The command is always authorized.'),
|
||||
+ ],
|
||||
+ description: nls.localize('commands.filters.value', "Authorization for the command."),
|
||||
+ },
|
||||
+ description: nls.localize('commands.filters', "Controls which commands are authorized to be executed."),
|
||||
+ default: {
|
||||
+ 'workbench.action.terminal.newLocal': 'off'
|
||||
+ },
|
||||
+ scope: ConfigurationScope.APPLICATION,
|
||||
+ tags: []
|
||||
+ },
|
||||
+ }
|
||||
+ });
|
||||
+
|
||||
registerAction2(RunCommands);
|
||||
diff --git a/src/vs/workbench/services/commands/common/commandService.ts b/src/vs/workbench/services/commands/common/commandService.ts
|
||||
index 93d1631..0533cf0 100644
|
||||
--- a/src/vs/workbench/services/commands/common/commandService.ts
|
||||
+++ b/src/vs/workbench/services/commands/common/commandService.ts
|
||||
@@ -8,3 +8,6 @@ import { Emitter, Event } from '../../../../base/common/event.js';
|
||||
import { Disposable } from '../../../../base/common/lifecycle.js';
|
||||
+import Severity from '../../../../base/common/severity.js';
|
||||
import { CommandsRegistry, ICommandEvent, ICommandService } from '../../../../platform/commands/common/commands.js';
|
||||
+import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
|
||||
+import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js';
|
||||
import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js';
|
||||
@@ -20,2 +23,3 @@ export class CommandService extends Disposable implements ICommandService {
|
||||
private _starActivation: CancelablePromise<void> | null;
|
||||
+ private _commandFilters: Record<string, "ask" | "off" | "on">
|
||||
|
||||
@@ -30,3 +34,5 @@ export class CommandService extends Disposable implements ICommandService {
|
||||
@IExtensionService private readonly _extensionService: IExtensionService,
|
||||
- @ILogService private readonly _logService: ILogService
|
||||
+ @ILogService private readonly _logService: ILogService,
|
||||
+ @IConfigurationService private readonly _configurationService: IConfigurationService,
|
||||
+ @IDialogService private readonly _dialogService: IDialogService
|
||||
) {
|
||||
@@ -35,2 +41,9 @@ export class CommandService extends Disposable implements ICommandService {
|
||||
this._starActivation = null;
|
||||
+ this._commandFilters = this._configurationService.getValue('commands.filters') ?? { 'workbench.action.terminal.newLocal': 'off' };
|
||||
+
|
||||
+ this._configurationService.onDidChangeConfiguration(async (event) => {
|
||||
+ if (event.affectsConfiguration('commands.filters')) {
|
||||
+ this._commandFilters = this._configurationService.getValue('commands.filters') ?? { 'workbench.action.terminal.newLocal': 'off' };
|
||||
+ }
|
||||
+ })
|
||||
}
|
||||
@@ -57,2 +70,27 @@ export class CommandService extends Disposable implements ICommandService {
|
||||
|
||||
+ const filter = this._commandFilters[id];
|
||||
+ if (filter === 'off') {
|
||||
+ return Promise.reject(new Error(`command '${id}' not authorized`));
|
||||
+ }
|
||||
+ else if (filter === 'ask') {
|
||||
+ const { result } = await this._dialogService.prompt({
|
||||
+ type: Severity.Error,
|
||||
+ message: `Are you sure you want to execute the command "${id}"?`,
|
||||
+ buttons: [
|
||||
+ {
|
||||
+ label: 'Yes',
|
||||
+ run: () => true
|
||||
+ },
|
||||
+ {
|
||||
+ label: 'No',
|
||||
+ run: () => false
|
||||
+ }
|
||||
+ ],
|
||||
+ });
|
||||
+
|
||||
+ if (!result) {
|
||||
+ return Promise.reject(new Error(`command '${id}' not authorized`));
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
if (commandIsRegistered) {
|
||||
diff --git a/src/vs/workbench/services/commands/test/common/commandService.test.ts b/src/vs/workbench/services/commands/test/common/commandService.test.ts
|
||||
index ca3be11..fb456a3 100644
|
||||
--- a/src/vs/workbench/services/commands/test/common/commandService.test.ts
|
||||
+++ b/src/vs/workbench/services/commands/test/common/commandService.test.ts
|
||||
@@ -12,2 +12,7 @@ import { NullExtensionService } from '../../../extensions/common/extensions.js';
|
||||
import { CommandService } from '../../common/commandService.js';
|
||||
+import { NullPolicyService } from '../../../../../platform/policy/common/policy.js';
|
||||
+import { FileService } from '../../../../../platform/files/common/fileService.js';
|
||||
+import { URI } from '../../../../../base/common/uri.js';
|
||||
+import { ConfigurationService } from '../../../../../platform/configuration/common/configurationService.js';
|
||||
+import { TestDialogService } from '../../../../../platform/dialogs/test/common/testDialogService.js';
|
||||
|
||||
@@ -16,4 +21,16 @@ suite('CommandService', function () {
|
||||
const store = ensureNoDisposablesAreLeakedInTestSuite();
|
||||
+ const testDisposables = ensureNoDisposablesAreLeakedInTestSuite();
|
||||
+ let nullConfigService: ConfigurationService
|
||||
|
||||
setup(function () {
|
||||
+ const nullPolicyService = new NullPolicyService();
|
||||
+ const nullLogService = testDisposables.add(new NullLogService());
|
||||
+ const nullFileService = testDisposables.add(new FileService(nullLogService));
|
||||
+ nullConfigService = testDisposables.add(new ConfigurationService(
|
||||
+ URI.file('/config.json'),
|
||||
+ nullFileService,
|
||||
+ nullPolicyService,
|
||||
+ nullLogService,
|
||||
+ ));
|
||||
+
|
||||
store.add(CommandsRegistry.registerCommand('foo', function () { }));
|
||||
@@ -30,3 +47,3 @@ suite('CommandService', function () {
|
||||
}
|
||||
- }, new NullLogService()));
|
||||
+ }, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -50,3 +67,3 @@ suite('CommandService', function () {
|
||||
|
||||
- const service = store.add(new CommandService(new InstantiationService(), extensionService, new NullLogService()));
|
||||
+ const service = store.add(new CommandService(new InstantiationService(), extensionService, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -68,3 +85,3 @@ suite('CommandService', function () {
|
||||
}
|
||||
- }, new NullLogService()));
|
||||
+ }, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -85,3 +102,3 @@ suite('CommandService', function () {
|
||||
}
|
||||
- }, new NullLogService()));
|
||||
+ }, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -125,3 +142,3 @@ suite('CommandService', function () {
|
||||
|
||||
- }, new NullLogService()));
|
||||
+ }, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -166,3 +183,3 @@ suite('CommandService', function () {
|
||||
|
||||
- }, new NullLogService()));
|
||||
+ }, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
@@ -187,3 +204,3 @@ suite('CommandService', function () {
|
||||
};
|
||||
- const service = store.add(new CommandService(new InstantiationService(), extensionService, new NullLogService()));
|
||||
+ const service = store.add(new CommandService(new InstantiationService(), extensionService, new NullLogService(), nullConfigService, new TestDialogService()));
|
||||
|
||||
107
patches/feat-user-product.patch
Normal file
107
patches/feat-user-product.patch
Normal file
@@ -0,0 +1,107 @@
|
||||
diff --git a/src/cli.ts b/src/cli.ts
|
||||
index b643e34..2f228ef 100644
|
||||
--- a/src/cli.ts
|
||||
+++ b/src/cli.ts
|
||||
@@ -5,2 +5,4 @@
|
||||
|
||||
+import * as path from 'node:path';
|
||||
+import { createRequire } from 'node:module';
|
||||
import './bootstrap-cli.js'; // this MUST come before other imports as it changes global state
|
||||
@@ -10,3 +12,5 @@ import { resolveNLSConfiguration } from './vs/base/node/nls.js';
|
||||
import { product } from './bootstrap-meta.js';
|
||||
+import { getUserDataPath } from './vs/platform/environment/node/userDataPath.js';
|
||||
|
||||
+const require = createRequire(import.meta.url);
|
||||
// NLS
|
||||
@@ -21,2 +25,4 @@ process.env['VSCODE_CLI'] = '1';
|
||||
|
||||
+resolveUserProduct();
|
||||
+
|
||||
// Bootstrap ESM
|
||||
@@ -26 +32,14 @@ await bootstrapESM();
|
||||
await import('./vs/code/node/cli.js');
|
||||
+
|
||||
+function resolveUserProduct() {
|
||||
+ const userDataPath = getUserDataPath({_:[]}, product.nameShort ?? 'code-oss-dev');
|
||||
+ const userProductPath = path.join(userDataPath, 'product.json');
|
||||
+
|
||||
+ try {
|
||||
+ // Assign the product configuration to the global scope
|
||||
+ const productJson = require(userProductPath);
|
||||
+
|
||||
+ globalThis._VSCODE_USER_PRODUCT_JSON = productJson;
|
||||
+ } catch (ex) {
|
||||
+ }
|
||||
+}
|
||||
\ No newline at end of file
|
||||
diff --git a/src/main.ts b/src/main.ts
|
||||
index ec188d0..0160be6 100644
|
||||
--- a/src/main.ts
|
||||
+++ b/src/main.ts
|
||||
@@ -8,2 +8,3 @@ import * as fs from 'original-fs';
|
||||
import * as os from 'node:os';
|
||||
+import { createRequire } from 'node:module';
|
||||
import { performance } from 'node:perf_hooks';
|
||||
@@ -22,2 +23,4 @@ import { NativeParsedArgs } from './vs/platform/environment/common/argv.js';
|
||||
|
||||
+const require = createRequire(import.meta.url);
|
||||
+
|
||||
perf.mark('code/didStartMain');
|
||||
@@ -109,2 +112,14 @@ registerListeners();
|
||||
|
||||
+function resolveUserProduct() {
|
||||
+ const userProductPath = path.join(userDataPath, 'product.json');
|
||||
+
|
||||
+ try {
|
||||
+ // Assign the product configuration to the global scope
|
||||
+ const productJson = require(userProductPath);
|
||||
+
|
||||
+ globalThis._VSCODE_USER_PRODUCT_JSON = productJson;
|
||||
+ } catch (ex) {
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
/**
|
||||
@@ -205,2 +220,3 @@ async function startup(codeCachePath: string | undefined, nlsConfig: INLSConfigu
|
||||
process.env['VSCODE_CODE_CACHE_PATH'] = codeCachePath || '';
|
||||
+ resolveUserProduct();
|
||||
|
||||
diff --git a/src/typings/vscode-globals-product.d.ts b/src/typings/vscode-globals-product.d.ts
|
||||
index ab169bd..2155f5c 100644
|
||||
--- a/src/typings/vscode-globals-product.d.ts
|
||||
+++ b/src/typings/vscode-globals-product.d.ts
|
||||
@@ -43,2 +43,4 @@ declare global {
|
||||
var _VSCODE_USE_RELATIVE_IMPORTS: boolean | undefined;
|
||||
+
|
||||
+ var _VSCODE_USER_PRODUCT_JSON: Record<string, any>;
|
||||
}
|
||||
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
|
||||
index 6f093e9..b63af55 100644
|
||||
--- a/src/vs/platform/product/common/product.ts
|
||||
+++ b/src/vs/platform/product/common/product.ts
|
||||
@@ -31,2 +31,25 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
|
||||
|
||||
+ // 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._VSCODE_USER_PRODUCT_JSON || {};
|
||||
+
|
||||
+ product = merge(product, userProduct);
|
||||
+ } catch (ex) {
|
||||
+ }
|
||||
+
|
||||
// Running out of sources
|
||||
280
patches/fix-build-vsce.patch
Normal file
280
patches/fix-build-vsce.patch
Normal file
@@ -0,0 +1,280 @@
|
||||
diff --git a/build/lib/extensions.ts b/build/lib/extensions.ts
|
||||
index 24462a3..ecb43fd 100644
|
||||
--- a/build/lib/extensions.ts
|
||||
+++ b/build/lib/extensions.ts
|
||||
@@ -94,3 +94,3 @@ function fromLocal(extensionPath: string, forWeb: boolean, disableMangle: boolea
|
||||
function fromLocalWebpack(extensionPath: string, webpackConfigFileName: string, disableMangle: boolean): Stream {
|
||||
- const vsce = require('@vscode/vsce') as typeof import('@vscode/vsce');
|
||||
+ const vsce = require('@vscodium/vsce') as typeof import('@vscodium/vsce');
|
||||
const webpack = require('webpack');
|
||||
@@ -208,3 +208,3 @@ function fromLocalWebpack(extensionPath: string, webpackConfigFileName: string,
|
||||
function fromLocalNormal(extensionPath: string): Stream {
|
||||
- const vsce = require('@vscode/vsce') as typeof import('@vscode/vsce');
|
||||
+ const vsce = require('@vscodium/vsce') as typeof import('@vscodium/vsce');
|
||||
const result = es.through();
|
||||
diff --git a/build/package-lock.json b/build/package-lock.json
|
||||
index fe9be0c..9747dca 100644
|
||||
--- a/build/package-lock.json
|
||||
+++ b/build/package-lock.json
|
||||
@@ -51,3 +51,3 @@
|
||||
"@vscode/ripgrep": "^1.15.13",
|
||||
- "@vscode/vsce": "3.6.1",
|
||||
+ "@vscodium/vsce": "3.6.1-258428",
|
||||
"ansi-colors": "^3.2.3",
|
||||
@@ -1944,6 +1944,6 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce": {
|
||||
- "version": "3.6.1",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce/-/vsce-3.6.1.tgz",
|
||||
- "integrity": "sha512-UXtMgeCBl/t5zjn1TX1v1sl5L/oIv3Xc3pkKPGzaqeFCIkp5+wfFFDBXTWDt3d5uUulHnZKORHkMIsKNe9+k5A==",
|
||||
+ "node_modules/@vscodium/vsce": {
|
||||
+ "version": "3.6.1-258428",
|
||||
+ "resolved": "https://registry.npmjs.org/@vscodium/vsce/-/vsce-3.6.1-258428.tgz",
|
||||
+ "integrity": "sha512-B2uys5YU5MGNmzQPHsMsRXxzlQvZanhxE8Sfkd4Sr/LBN9BaV5yhMCppV7jyLUOQajj9K3YZThLqUYm4CCBy3A==",
|
||||
"dev": true,
|
||||
@@ -1956,3 +1956,2 @@
|
||||
"@secretlint/secretlint-rule-preset-recommend": "^10.1.2",
|
||||
- "@vscode/vsce-sign": "^2.0.0",
|
||||
"azure-devops-node-api": "^12.5.0",
|
||||
@@ -1991,148 +1990,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce-sign": {
|
||||
- "version": "2.0.7",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign/-/vsce-sign-2.0.7.tgz",
|
||||
- "integrity": "sha512-cz0GFW8qCxpypOy3y509u26K1FIPMlDIHBwGmDyvEbgoma2v3y5YIHHuijr8zCYBp9kzCCOJd28s/0PG7cA7ew==",
|
||||
- "dev": true,
|
||||
- "hasInstallScript": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optionalDependencies": {
|
||||
- "@vscode/vsce-sign-alpine-arm64": "2.0.6",
|
||||
- "@vscode/vsce-sign-alpine-x64": "2.0.6",
|
||||
- "@vscode/vsce-sign-darwin-arm64": "2.0.6",
|
||||
- "@vscode/vsce-sign-darwin-x64": "2.0.6",
|
||||
- "@vscode/vsce-sign-linux-arm": "2.0.6",
|
||||
- "@vscode/vsce-sign-linux-arm64": "2.0.6",
|
||||
- "@vscode/vsce-sign-linux-x64": "2.0.6",
|
||||
- "@vscode/vsce-sign-win32-arm64": "2.0.6",
|
||||
- "@vscode/vsce-sign-win32-x64": "2.0.6"
|
||||
- }
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-alpine-arm64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-alpine-arm64/-/vsce-sign-alpine-arm64-2.0.6.tgz",
|
||||
- "integrity": "sha512-wKkJBsvKF+f0GfsUuGT0tSW0kZL87QggEiqNqK6/8hvqsXvpx8OsTEc3mnE1kejkh5r+qUyQ7PtF8jZYN0mo8Q==",
|
||||
- "cpu": [
|
||||
- "arm64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "alpine"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-alpine-x64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-alpine-x64/-/vsce-sign-alpine-x64-2.0.6.tgz",
|
||||
- "integrity": "sha512-YoAGlmdK39vKi9jA18i4ufBbd95OqGJxRvF3n6ZbCyziwy3O+JgOpIUPxv5tjeO6gQfx29qBivQ8ZZTUF2Ba0w==",
|
||||
- "cpu": [
|
||||
- "x64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "alpine"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-darwin-arm64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-darwin-arm64/-/vsce-sign-darwin-arm64-2.0.6.tgz",
|
||||
- "integrity": "sha512-5HMHaJRIQuozm/XQIiJiA0W9uhdblwwl2ZNDSSAeXGO9YhB9MH5C4KIHOmvyjUnKy4UCuiP43VKpIxW1VWP4tQ==",
|
||||
- "cpu": [
|
||||
- "arm64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "darwin"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-darwin-x64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-darwin-x64/-/vsce-sign-darwin-x64-2.0.6.tgz",
|
||||
- "integrity": "sha512-25GsUbTAiNfHSuRItoQafXOIpxlYj+IXb4/qarrXu7kmbH94jlm5sdWSCKrrREs8+GsXF1b+l3OB7VJy5jsykw==",
|
||||
- "cpu": [
|
||||
- "x64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "darwin"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-linux-arm": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-linux-arm/-/vsce-sign-linux-arm-2.0.6.tgz",
|
||||
- "integrity": "sha512-UndEc2Xlq4HsuMPnwu7420uqceXjs4yb5W8E2/UkaHBB9OWCwMd3/bRe/1eLe3D8kPpxzcaeTyXiK3RdzS/1CA==",
|
||||
- "cpu": [
|
||||
- "arm"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "linux"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-linux-arm64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-linux-arm64/-/vsce-sign-linux-arm64-2.0.6.tgz",
|
||||
- "integrity": "sha512-cfb1qK7lygtMa4NUl2582nP7aliLYuDEVpAbXJMkDq1qE+olIw/es+C8j1LJwvcRq1I2yWGtSn3EkDp9Dq5FdA==",
|
||||
- "cpu": [
|
||||
- "arm64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "linux"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-linux-x64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-linux-x64/-/vsce-sign-linux-x64-2.0.6.tgz",
|
||||
- "integrity": "sha512-/olerl1A4sOqdP+hjvJ1sbQjKN07Y3DVnxO4gnbn/ahtQvFrdhUi0G1VsZXDNjfqmXw57DmPi5ASnj/8PGZhAA==",
|
||||
- "cpu": [
|
||||
- "x64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "linux"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-win32-arm64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-win32-arm64/-/vsce-sign-win32-arm64-2.0.6.tgz",
|
||||
- "integrity": "sha512-ivM/MiGIY0PJNZBoGtlRBM/xDpwbdlCWomUWuLmIxbi1Cxe/1nooYrEQoaHD8ojVRgzdQEUzMsRbyF5cJJgYOg==",
|
||||
- "cpu": [
|
||||
- "arm64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "win32"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce-sign-win32-x64": {
|
||||
- "version": "2.0.6",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/vsce-sign-win32-x64/-/vsce-sign-win32-x64-2.0.6.tgz",
|
||||
- "integrity": "sha512-mgth9Kvze+u8CruYMmhHw6Zgy3GRX2S+Ed5oSokDEK5vPEwGGKnmuXua9tmFhomeAnhgJnL4DCna3TiNuGrBTQ==",
|
||||
- "cpu": [
|
||||
- "x64"
|
||||
- ],
|
||||
- "dev": true,
|
||||
- "license": "SEE LICENSE IN LICENSE.txt",
|
||||
- "optional": true,
|
||||
- "os": [
|
||||
- "win32"
|
||||
- ]
|
||||
- },
|
||||
- "node_modules/@vscode/vsce/node_modules/ansi-styles": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/ansi-styles": {
|
||||
"version": "4.3.0",
|
||||
@@ -2152,3 +2006,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/chalk": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/chalk": {
|
||||
"version": "4.1.2",
|
||||
@@ -2169,3 +2023,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/color-convert": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/color-convert": {
|
||||
"version": "2.0.1",
|
||||
@@ -2182,3 +2036,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/color-name": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/color-name": {
|
||||
"version": "1.1.4",
|
||||
@@ -2189,3 +2043,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/glob": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/glob": {
|
||||
"version": "11.1.0",
|
||||
@@ -2213,3 +2067,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/glob/node_modules/minimatch": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/glob/node_modules/minimatch": {
|
||||
"version": "10.1.1",
|
||||
@@ -2229,3 +2083,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/has-flag": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/has-flag": {
|
||||
"version": "4.0.0",
|
||||
@@ -2239,3 +2093,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/jsonc-parser": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/jsonc-parser": {
|
||||
"version": "3.3.1",
|
||||
@@ -2243,9 +2097,11 @@
|
||||
"integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==",
|
||||
- "dev": true
|
||||
+ "dev": true,
|
||||
+ "license": "MIT"
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/semver": {
|
||||
- "version": "7.6.3",
|
||||
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
|
||||
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
|
||||
+ "node_modules/@vscodium/vsce/node_modules/semver": {
|
||||
+ "version": "7.7.3",
|
||||
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz",
|
||||
+ "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==",
|
||||
"dev": true,
|
||||
+ "license": "ISC",
|
||||
"bin": {
|
||||
@@ -2257,3 +2113,3 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/supports-color": {
|
||||
+ "node_modules/@vscodium/vsce/node_modules/supports-color": {
|
||||
"version": "7.2.0",
|
||||
@@ -2270,12 +2126,2 @@
|
||||
},
|
||||
- "node_modules/@vscode/vsce/node_modules/yazl": {
|
||||
- "version": "2.5.1",
|
||||
- "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz",
|
||||
- "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==",
|
||||
- "dev": true,
|
||||
- "license": "MIT",
|
||||
- "dependencies": {
|
||||
- "buffer-crc32": "~0.2.3"
|
||||
- }
|
||||
- },
|
||||
"node_modules/@xmldom/xmldom": {
|
||||
@@ -6955,2 +6801,12 @@
|
||||
},
|
||||
+ "node_modules/yazl": {
|
||||
+ "version": "2.5.1",
|
||||
+ "resolved": "https://registry.npmjs.org/yazl/-/yazl-2.5.1.tgz",
|
||||
+ "integrity": "sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw==",
|
||||
+ "dev": true,
|
||||
+ "license": "MIT",
|
||||
+ "dependencies": {
|
||||
+ "buffer-crc32": "~0.2.3"
|
||||
+ }
|
||||
+ },
|
||||
"node_modules/yocto-queue": {
|
||||
diff --git a/build/package.json b/build/package.json
|
||||
index 39db6b7..55beb4a 100644
|
||||
--- a/build/package.json
|
||||
+++ b/build/package.json
|
||||
@@ -45,3 +45,3 @@
|
||||
"@vscode/ripgrep": "^1.15.13",
|
||||
- "@vscode/vsce": "3.6.1",
|
||||
+ "@vscodium/vsce": "3.6.1-258428",
|
||||
"ansi-colors": "^3.2.3",
|
||||
20
patches/fix-extensions-control-connection.patch
Normal file
20
patches/fix-extensions-control-connection.patch
Normal file
@@ -0,0 +1,20 @@
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionGalleryService.ts b/src/vs/platform/extensionManagement/common/extensionGalleryService.ts
|
||||
index 594412f..52de11c 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionGalleryService.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionGalleryService.ts
|
||||
@@ -1814,3 +1814,3 @@ export abstract class AbstractExtensionGalleryService implements IExtensionGalle
|
||||
|
||||
- const context = await this.requestService.request({
|
||||
+ const requestOptions: IRequestOptions = {
|
||||
type: 'GET',
|
||||
@@ -1818,3 +1818,9 @@ export abstract class AbstractExtensionGalleryService implements IExtensionGalle
|
||||
timeout: this.getRequestTimeout()
|
||||
- }, CancellationToken.None);
|
||||
+ };
|
||||
+
|
||||
+ if (!isWeb) {
|
||||
+ requestOptions.headers = { Connection: 'close' };
|
||||
+ }
|
||||
+
|
||||
+ const context = await this.requestService.request(requestOptions, CancellationToken.None);
|
||||
|
||||
42
patches/fix-gallery.patch
Normal file
42
patches/fix-gallery.patch
Normal file
@@ -0,0 +1,42 @@
|
||||
diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts
|
||||
index 3954823..f8026cd 100644
|
||||
--- a/src/vs/base/common/product.ts
|
||||
+++ b/src/vs/base/common/product.ts
|
||||
@@ -112,2 +112,4 @@ export interface IProductConfiguration {
|
||||
readonly accessSKUs?: string[];
|
||||
+ readonly itemUrl: string;
|
||||
+ readonly latestUrlTemplate?: string;
|
||||
};
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionGalleryManifestService.ts b/src/vs/platform/extensionManagement/common/extensionGalleryManifestService.ts
|
||||
index 658219e..d1bf7a9 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionGalleryManifestService.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionGalleryManifestService.ts
|
||||
@@ -19,2 +19,3 @@ type ExtensionGalleryConfig = {
|
||||
readonly nlsBaseUrl: string;
|
||||
+ readonly latestUrlTemplate?: string;
|
||||
};
|
||||
@@ -49,3 +50,3 @@ export class ExtensionGalleryManifestService extends Disposable implements IExte
|
||||
{
|
||||
- id: `${extensionsGallery.serviceUrl}/vscode/{publisher}/{name}/latest`,
|
||||
+ id: extensionsGallery.latestUrlTemplate ?? `${extensionsGallery.serviceUrl}/vscode/{publisher}/{name}/latest`,
|
||||
type: ExtensionGalleryResourceType.ExtensionLatestVersionUri
|
||||
diff --git a/src/vs/platform/product/common/product.ts b/src/vs/platform/product/common/product.ts
|
||||
index 5a6c171..112b31b 100644
|
||||
--- a/src/vs/platform/product/common/product.ts
|
||||
+++ b/src/vs/platform/product/common/product.ts
|
||||
@@ -31,2 +31,15 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
|
||||
|
||||
+ const { serviceUrl, controlUrl, itemUrl, latestUrlTemplate, extensionUrlTemplate, resourceUrlTemplate } = product.extensionsGallery || {};
|
||||
+
|
||||
+ Object.assign(product, {
|
||||
+ extensionsGallery: {
|
||||
+ serviceUrl: env['VSCODE_GALLERY_SERVICE_URL'] || serviceUrl,
|
||||
+ controlUrl: env['VSCODE_GALLERY_CONTROL_URL'] || controlUrl,
|
||||
+ itemUrl: env['VSCODE_GALLERY_ITEM_URL'] || itemUrl,
|
||||
+ latestUrlTemplate: env['VSCODE_GALLERY_LATEST_URL_TEMPLATE'] || latestUrlTemplate,
|
||||
+ extensionUrlTemplate: env['VSCODE_GALLERY_EXTENSION_URL_TEMPLATE'] || extensionUrlTemplate,
|
||||
+ resourceUrlTemplate: env['VSCODE_GALLERY_RESOURCE_URL_TEMPLATE'] || resourceUrlTemplate,
|
||||
+ }
|
||||
+ });
|
||||
+
|
||||
// Running out of sources
|
||||
131
patches/fix-keymap.patch
Normal file
131
patches/fix-keymap.patch
Normal file
@@ -0,0 +1,131 @@
|
||||
diff --git a/.npmrc b/.npmrc
|
||||
index 50d910c..472b622 100644
|
||||
--- a/.npmrc
|
||||
+++ b/.npmrc
|
||||
@@ -5,2 +5,3 @@ runtime="electron"
|
||||
build_from_source="true"
|
||||
+build_from_source_native_keymap="no"
|
||||
legacy-peer-deps="true"
|
||||
diff --git a/build/.moduleignore b/build/.moduleignore
|
||||
index ed36151..5b040cc 100644
|
||||
--- a/build/.moduleignore
|
||||
+++ b/build/.moduleignore
|
||||
@@ -65,7 +65,7 @@ fsevents/test/**
|
||||
|
||||
-native-keymap/binding.gyp
|
||||
-native-keymap/build/**
|
||||
-native-keymap/src/**
|
||||
-native-keymap/deps/**
|
||||
-!native-keymap/build/Release/*.node
|
||||
+@vscodium/native-keymap/binding.gyp
|
||||
+@vscodium/native-keymap/build/**
|
||||
+@vscodium/native-keymap/src/**
|
||||
+@vscodium/native-keymap/deps/**
|
||||
+!@vscodium/native-keymap/build/Release/*.node
|
||||
|
||||
diff --git a/eslint.config.js b/eslint.config.js
|
||||
index 47eeebf..f8077c2 100644
|
||||
--- a/eslint.config.js
|
||||
+++ b/eslint.config.js
|
||||
@@ -1465,3 +1465,3 @@ export default tseslint.config(
|
||||
'node:module',
|
||||
- 'native-keymap',
|
||||
+ '@vscodium/native-keymap',
|
||||
'net',
|
||||
diff --git a/package-lock.json b/package-lock.json
|
||||
index 801e87b..a991591 100644
|
||||
--- a/package-lock.json
|
||||
+++ b/package-lock.json
|
||||
@@ -32,2 +32,3 @@
|
||||
"@vscode/windows-registry": "^1.1.0",
|
||||
+ "@vscodium/native-keymap": "3.3.7-258424",
|
||||
"@xterm/addon-clipboard": "^0.3.0-beta.109",
|
||||
@@ -49,3 +50,2 @@
|
||||
"native-is-elevated": "0.9.0",
|
||||
- "native-keymap": "^3.3.5",
|
||||
"node-pty": "^1.2.0-beta.10",
|
||||
@@ -3674,2 +3674,9 @@
|
||||
},
|
||||
+ "node_modules/@vscodium/native-keymap": {
|
||||
+ "version": "3.3.7-258424",
|
||||
+ "resolved": "https://registry.npmjs.org/@vscodium/native-keymap/-/native-keymap-3.3.7-258424.tgz",
|
||||
+ "integrity": "sha512-HZ20QfExV0kE2l939yE3wn0LezSV7BcpxOFmlUMUHBQbdANMSLkwzo6Zw1xOEZDoYm3VTDHt8/+WwLBR2MpA3A==",
|
||||
+ "hasInstallScript": true,
|
||||
+ "license": "MIT"
|
||||
+ },
|
||||
"node_modules/@webassemblyjs/ast": {
|
||||
@@ -12741,5 +12748,6 @@
|
||||
"node_modules/napi-build-utils": {
|
||||
- "version": "1.0.2",
|
||||
- "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz",
|
||||
- "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg=="
|
||||
+ "version": "2.0.0",
|
||||
+ "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-2.0.0.tgz",
|
||||
+ "integrity": "sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA==",
|
||||
+ "license": "MIT"
|
||||
},
|
||||
@@ -12752,9 +12760,2 @@
|
||||
},
|
||||
- "node_modules/native-keymap": {
|
||||
- "version": "3.3.9",
|
||||
- "resolved": "https://registry.npmjs.org/native-keymap/-/native-keymap-3.3.9.tgz",
|
||||
- "integrity": "sha512-d/ydQ5x+GM5W0dyAjFPwexhtc9CDH1g/xWZESS5CXk16ThyFzSBLvlBJq1+FyzUIFf/F2g1MaHdOpa6G9150YQ==",
|
||||
- "hasInstallScript": true,
|
||||
- "license": "MIT"
|
||||
- },
|
||||
"node_modules/natural-compare": {
|
||||
@@ -14142,5 +14143,6 @@
|
||||
"node_modules/prebuild-install": {
|
||||
- "version": "7.1.2",
|
||||
- "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz",
|
||||
- "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==",
|
||||
+ "version": "7.1.3",
|
||||
+ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.3.tgz",
|
||||
+ "integrity": "sha512-8Mf2cbV7x1cXPUILADGI3wuhfqWvtiLA1iclTDbFRZkgRQS0NqsPZphna9V+HyTEadheuPmjaJMsbzKQFOzLug==",
|
||||
+ "license": "MIT",
|
||||
"dependencies": {
|
||||
@@ -14151,3 +14153,3 @@
|
||||
"mkdirp-classic": "^0.5.3",
|
||||
- "napi-build-utils": "^1.0.1",
|
||||
+ "napi-build-utils": "^2.0.0",
|
||||
"node-abi": "^3.3.0",
|
||||
diff --git a/package.json b/package.json
|
||||
index efeaec1..b2a6703 100644
|
||||
--- a/package.json
|
||||
+++ b/package.json
|
||||
@@ -111,3 +111,3 @@
|
||||
"native-is-elevated": "0.9.0",
|
||||
- "native-keymap": "^3.3.5",
|
||||
+ "@vscodium/native-keymap": "3.3.7-258424",
|
||||
"node-pty": "^1.2.0-beta.10",
|
||||
diff --git a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
index c30c6da..ca6cea2 100644
|
||||
--- a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
+++ b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
@@ -44,8 +44,8 @@ flakySuite('Native Modules (all platforms)', () => {
|
||||
test('native-keymap', async () => {
|
||||
- const keyMap = await import('native-keymap');
|
||||
- assert.ok(typeof keyMap.onDidChangeKeyboardLayout === 'function', testErrorMessage('native-keymap'));
|
||||
- assert.ok(typeof keyMap.getCurrentKeyboardLayout === 'function', testErrorMessage('native-keymap'));
|
||||
+ const keyMap = await import('@vscodium/native-keymap');
|
||||
+ assert.ok(typeof keyMap.onDidChangeKeyboardLayout === 'function', testErrorMessage('@vscodium/native-keymap'));
|
||||
+ assert.ok(typeof keyMap.getCurrentKeyboardLayout === 'function', testErrorMessage('@vscodium/native-keymap'));
|
||||
|
||||
const result = keyMap.getCurrentKeyboardLayout();
|
||||
- assert.ok(result, testErrorMessage('native-keymap'));
|
||||
+ assert.ok(result, testErrorMessage('@vscodium/native-keymap'));
|
||||
});
|
||||
diff --git a/src/vs/platform/keyboardLayout/electron-main/keyboardLayoutMainService.ts b/src/vs/platform/keyboardLayout/electron-main/keyboardLayoutMainService.ts
|
||||
index 8950ce2..f31cea6 100644
|
||||
--- a/src/vs/platform/keyboardLayout/electron-main/keyboardLayoutMainService.ts
|
||||
+++ b/src/vs/platform/keyboardLayout/electron-main/keyboardLayoutMainService.ts
|
||||
@@ -5,3 +5,3 @@
|
||||
|
||||
-import type * as nativeKeymap from 'native-keymap';
|
||||
+import type * as nativeKeymap from '@vscodium/native-keymap';
|
||||
import * as platform from '../../../base/common/platform.js';
|
||||
@@ -48,3 +48,3 @@ export class KeyboardLayoutMainService extends Disposable implements INativeKeyb
|
||||
private async _doInitialize(): Promise<void> {
|
||||
- const nativeKeymapMod = await import('native-keymap');
|
||||
+ const nativeKeymapMod = await import('@vscodium/native-keymap');
|
||||
|
||||
14
patches/fix-npm-preinstall.patch
Normal file
14
patches/fix-npm-preinstall.patch
Normal file
@@ -0,0 +1,14 @@
|
||||
diff --git a/build/npm/preinstall.ts b/build/npm/preinstall.ts
|
||||
index 3476fca..e23329f 100644
|
||||
--- a/build/npm/preinstall.ts
|
||||
+++ b/build/npm/preinstall.ts
|
||||
@@ -129,3 +129,3 @@ function installHeaders() {
|
||||
// Refs https://chromium-review.googlesource.com/c/v8/v8/+/6879784
|
||||
- if (process.platform === 'linux') {
|
||||
+ if (process.platform === 'linux' && local) {
|
||||
const homedir = os.homedir();
|
||||
@@ -133,3 +133,3 @@ function installHeaders() {
|
||||
const nodeGypCache = path.join(cachePath, 'node-gyp');
|
||||
- const localHeaderPath = path.join(nodeGypCache, local!.target, 'include', 'node');
|
||||
+ const localHeaderPath = path.join(nodeGypCache, local.target, 'include', 'node');
|
||||
if (fs.existsSync(localHeaderPath)) {
|
||||
@@ -1,8 +1,8 @@
|
||||
diff --git a/build/.moduleignore b/build/.moduleignore
|
||||
index 3e654cf..d9ee9f5 100644
|
||||
index 5b040cc..8d5fd71 100644
|
||||
--- a/build/.moduleignore
|
||||
+++ b/build/.moduleignore
|
||||
@@ -126,9 +126,11 @@ vsda/**
|
||||
@@ -128,9 +128,11 @@ vsda/**
|
||||
|
||||
-@vscode/policy-watcher/build/**
|
||||
-@vscode/policy-watcher/.husky/**
|
||||
@@ -21,61 +21,33 @@ index 3e654cf..d9ee9f5 100644
|
||||
+@vscodium/policy-watcher/index.d.ts
|
||||
+!@vscodium/policy-watcher/build/Release/vscodium-policy-watcher.node
|
||||
|
||||
diff --git a/build/lib/policies.js b/build/lib/policies.js
|
||||
index b6b5200..ae80196 100644
|
||||
--- a/build/lib/policies.js
|
||||
+++ b/build/lib/policies.js
|
||||
@@ -81,3 +81,3 @@ class BasePolicy {
|
||||
return [
|
||||
- `<policy name="${this.name}" class="Both" displayName="$(string.${this.name})" explainText="$(string.${this.name}_${this.description.nlsKey.replace(/\./g, '_')})" key="Software\\Policies\\Microsoft\\${regKey}" presentation="$(presentation.${this.name})">`,
|
||||
+ `<policy name="${this.name}" class="Both" displayName="$(string.${this.name})" explainText="$(string.${this.name}_${this.description.nlsKey.replace(/\./g, '_')})" key="Software\\Policies\\!!ORG_NAME!!\\${regKey}" presentation="$(presentation.${this.name})">`,
|
||||
` <parentCategory ref="${this.category.name.nlsKey}" />`,
|
||||
@@ -501,3 +501,3 @@ function renderADMX(regKey, versions, categories, policies) {
|
||||
<policyNamespaces>
|
||||
- <target prefix="${regKey}" namespace="Microsoft.Policies.${regKey}" />
|
||||
+ <target prefix="${regKey}" namespace="!!ORG_NAME!!.Policies.${regKey}" />
|
||||
</policyNamespaces>
|
||||
diff --git a/build/lib/policies.ts b/build/lib/policies.ts
|
||||
index 381d2f4..9cdec71 100644
|
||||
--- a/build/lib/policies.ts
|
||||
+++ b/build/lib/policies.ts
|
||||
@@ -107,3 +107,3 @@ abstract class BasePolicy implements Policy {
|
||||
return [
|
||||
- `<policy name="${this.name}" class="Both" displayName="$(string.${this.name})" explainText="$(string.${this.name}_${this.description.nlsKey.replace(/\./g, '_')})" key="Software\\Policies\\Microsoft\\${regKey}" presentation="$(presentation.${this.name})">`,
|
||||
+ `<policy name="${this.name}" class="Both" displayName="$(string.${this.name})" explainText="$(string.${this.name}_${this.description.nlsKey.replace(/\./g, '_')})" key="Software\\Policies\\!!ORG_NAME!!\\${regKey}" presentation="$(presentation.${this.name})">`,
|
||||
` <parentCategory ref="${this.category.name.nlsKey}" />`,
|
||||
@@ -703,3 +703,3 @@ function renderADMX(regKey: string, versions: string[], categories: Category[],
|
||||
<policyNamespaces>
|
||||
- <target prefix="${regKey}" namespace="Microsoft.Policies.${regKey}" />
|
||||
+ <target prefix="${regKey}" namespace="!!ORG_NAME!!.Policies.${regKey}" />
|
||||
</policyNamespaces>
|
||||
diff --git a/eslint.config.js b/eslint.config.js
|
||||
index dde2477..3701668 100644
|
||||
index f8077c2..182d6ce 100644
|
||||
--- a/eslint.config.js
|
||||
+++ b/eslint.config.js
|
||||
@@ -788,3 +788,3 @@ export default tseslint.config(
|
||||
'@vscode/iconv-lite-umd',
|
||||
@@ -1448,3 +1448,3 @@ export default tseslint.config(
|
||||
'@vscode/native-watchdog',
|
||||
- '@vscode/policy-watcher',
|
||||
+ '@vscodium/policy-watcher',
|
||||
'@vscode/proxy-agent',
|
||||
diff --git a/package-lock.json b/package-lock.json
|
||||
index f86132d..5f92dd2 100644
|
||||
index a991591..fb05fad 100644
|
||||
--- a/package-lock.json
|
||||
+++ b/package-lock.json
|
||||
@@ -18,3 +18,2 @@
|
||||
"@vscode/iconv-lite-umd": "0.7.0",
|
||||
@@ -21,3 +21,2 @@
|
||||
"@vscode/native-watchdog": "^1.4.6",
|
||||
- "@vscode/policy-watcher": "^1.3.2",
|
||||
"@vscode/proxy-agent": "^0.32.0",
|
||||
@@ -29,2 +28,3 @@
|
||||
"@vscode/windows-registry": "^1.1.0",
|
||||
"@vscode/proxy-agent": "^0.37.0",
|
||||
@@ -33,2 +32,3 @@
|
||||
"@vscodium/native-keymap": "3.3.7-258424",
|
||||
+ "@vscodium/policy-watcher": "^1.3.2-252465",
|
||||
"@xterm/addon-clipboard": "^0.2.0-beta.95",
|
||||
@@ -2943,22 +2943,2 @@
|
||||
"@xterm/addon-clipboard": "^0.3.0-beta.109",
|
||||
@@ -3345,22 +3345,2 @@
|
||||
},
|
||||
- "node_modules/@vscode/policy-watcher": {
|
||||
- "version": "1.3.2",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/policy-watcher/-/policy-watcher-1.3.2.tgz",
|
||||
- "integrity": "sha512-fmNPYysU2ioH99uCaBPiRblEZSnir5cTmc7w91hAxAoYoGpHt2PZPxT5eIOn7FGmPOsjLdQcd6fduFJGYVD4Mw==",
|
||||
- "version": "1.3.7",
|
||||
- "resolved": "https://registry.npmjs.org/@vscode/policy-watcher/-/policy-watcher-1.3.7.tgz",
|
||||
- "integrity": "sha512-OvIczTbtGLZs7YU0ResbjM0KEB2ORBnlJ4ICxaB9fKHNVBwNVp4i2qIkDQGp3UBGtu7P8/+eg4/ZKk2oJGFcug==",
|
||||
- "hasInstallScript": true,
|
||||
- "license": "MIT",
|
||||
- "dependencies": {
|
||||
@@ -93,7 +65,7 @@ index f86132d..5f92dd2 100644
|
||||
- }
|
||||
- },
|
||||
"node_modules/@vscode/proxy-agent": {
|
||||
@@ -3361,2 +3341,22 @@
|
||||
@@ -3681,2 +3661,22 @@
|
||||
},
|
||||
+ "node_modules/@vscodium/policy-watcher": {
|
||||
+ "version": "1.3.2-252465",
|
||||
@@ -117,14 +89,14 @@ index f86132d..5f92dd2 100644
|
||||
+ },
|
||||
"node_modules/@webassemblyjs/ast": {
|
||||
diff --git a/package.json b/package.json
|
||||
index 5501dd8..f3f6b15 100644
|
||||
index b2a6703..3d03e9a 100644
|
||||
--- a/package.json
|
||||
+++ b/package.json
|
||||
@@ -77,3 +77,3 @@
|
||||
"@vscode/iconv-lite-umd": "0.7.0",
|
||||
@@ -83,3 +83,3 @@
|
||||
"@vscode/native-watchdog": "^1.4.6",
|
||||
- "@vscode/policy-watcher": "^1.3.2",
|
||||
+ "@vscodium/policy-watcher": "^1.3.2-252465",
|
||||
"@vscode/proxy-agent": "^0.32.0",
|
||||
"@vscode/proxy-agent": "^0.37.0",
|
||||
diff --git a/src/vs/base/test/node/uri.perf.data.txt b/src/vs/base/test/node/uri.perf.data.txt
|
||||
index ee0a24b..881ce36 100644
|
||||
--- a/src/vs/base/test/node/uri.perf.data.txt
|
||||
@@ -225,7 +197,7 @@ index ee0a24b..881ce36 100644
|
||||
+/Users/example/node_modules/@vscodium/policy-watcher/src/windows/NumberPolicy.hh
|
||||
/Users/example/node_modules/@vscode/vscode-languagedetection/CODE_OF_CONDUCT.md
|
||||
diff --git a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
index 2a6acba..167d759 100644
|
||||
index ca6cea2..32b22fe 100644
|
||||
--- a/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
+++ b/src/vs/platform/environment/test/node/nativeModules.integrationTest.ts
|
||||
@@ -62,5 +62,5 @@ flakySuite('Native Modules (all platforms)', () => {
|
||||
@@ -238,7 +210,7 @@ index 2a6acba..167d759 100644
|
||||
+ assert.ok(typeof watcher.createWatcher === 'function', testErrorMessage('@vscodium/policy-watcher'));
|
||||
});
|
||||
diff --git a/src/vs/platform/policy/node/nativePolicyService.ts b/src/vs/platform/policy/node/nativePolicyService.ts
|
||||
index 67f7892..840d655 100644
|
||||
index 5b08cd9..728d7bd 100644
|
||||
--- a/src/vs/platform/policy/node/nativePolicyService.ts
|
||||
+++ b/src/vs/platform/policy/node/nativePolicyService.ts
|
||||
@@ -8,3 +8,3 @@ import { IStringDictionary } from '../../../base/common/collections.js';
|
||||
@@ -254,5 +226,5 @@ index 67f7892..840d655 100644
|
||||
@@ -31,3 +31,3 @@ export class NativePolicyService extends AbstractPolicyService implements IPolic
|
||||
try {
|
||||
- this.watcher.value = createWatcher(this.productName, policyDefinitions, update => {
|
||||
+ this.watcher.value = createWatcher('!!ORG_NAME!!', this.productName, policyDefinitions, update => {
|
||||
+ this.watcher.value = createWatcher('VSCodium', this.productName, policyDefinitions, update => {
|
||||
this._onDidPolicyChange(update);
|
||||
@@ -1,12 +1,8 @@
|
||||
diff --git a/remote/package-lock.json b/remote/package-lock.json
|
||||
index f0ed1cc..a973af3 100644
|
||||
index 30a7391..94f839a 100644
|
||||
--- a/remote/package-lock.json
|
||||
+++ b/remote/package-lock.json
|
||||
@@ -40,2 +40,3 @@
|
||||
"tas-client-umd": "0.2.0",
|
||||
+ "tslib": "^2.6.3",
|
||||
"vscode-oniguruma": "1.7.0",
|
||||
@@ -1109,2 +1110,8 @@
|
||||
@@ -1155,2 +1155,8 @@
|
||||
},
|
||||
+ "node_modules/tslib": {
|
||||
+ "version": "2.7.0",
|
||||
@@ -16,10 +12,10 @@ index f0ed1cc..a973af3 100644
|
||||
+ },
|
||||
"node_modules/tunnel-agent": {
|
||||
diff --git a/remote/package.json b/remote/package.json
|
||||
index 33afee9..525ed07 100644
|
||||
index 119d62c..9ef9624 100644
|
||||
--- a/remote/package.json
|
||||
+++ b/remote/package.json
|
||||
@@ -35,2 +35,3 @@
|
||||
"tas-client-umd": "0.2.0",
|
||||
@@ -37,2 +37,3 @@
|
||||
"tas-client": "0.3.1",
|
||||
+ "tslib": "^2.6.3",
|
||||
"vscode-oniguruma": "1.7.0",
|
||||
|
||||
10
patches/fix-tunnel-extension-recommendation.patch
Normal file
10
patches/fix-tunnel-extension-recommendation.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
diff --git a/src/vs/workbench/contrib/remoteTunnel/electron-browser/remoteTunnel.contribution.ts b/src/vs/workbench/contrib/remoteTunnel/electron-browser/remoteTunnel.contribution.ts
|
||||
index 0eaa650..43eeee6 100644
|
||||
--- a/src/vs/workbench/contrib/remoteTunnel/electron-browser/remoteTunnel.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/remoteTunnel/electron-browser/remoteTunnel.contribution.ts
|
||||
@@ -152,2 +152,5 @@ export class RemoteTunnelWorkbenchContribution extends Disposable implements IWo
|
||||
const shouldRecommend = async () => {
|
||||
+ if (!Boolean(remoteExtension)) {
|
||||
+ return false;
|
||||
+ }
|
||||
if (this.storageService.getBoolean(REMOTE_TUNNEL_EXTENSION_RECOMMENDED_KEY, StorageScope.APPLICATION)) {
|
||||
@@ -1,39 +1,30 @@
|
||||
diff --git a/.vscode/settings.json b/.vscode/settings.json
|
||||
index 31b1c4a..f808aa6 100644
|
||||
index 514edcd..9aa6920 100644
|
||||
--- a/.vscode/settings.json
|
||||
+++ b/.vscode/settings.json
|
||||
@@ -17,23 +17,23 @@
|
||||
},
|
||||
"[typescript]": {
|
||||
@@ -26,3 +26,3 @@
|
||||
"editor.defaultFormatter": "vscode.typescript-language-features",
|
||||
- "editor.formatOnSave": true
|
||||
+ // "editor.formatOnSave": true
|
||||
},
|
||||
"[javascript]": {
|
||||
@@ -30,3 +30,3 @@
|
||||
"editor.defaultFormatter": "vscode.typescript-language-features",
|
||||
- "editor.formatOnSave": true
|
||||
+ // "editor.formatOnSave": true
|
||||
},
|
||||
"[rust]": {
|
||||
@@ -34,3 +34,3 @@
|
||||
"editor.defaultFormatter": "rust-lang.rust-analyzer",
|
||||
- "editor.formatOnSave": true,
|
||||
+ // "editor.formatOnSave": true,
|
||||
},
|
||||
"[github-issues]": {
|
||||
"editor.wordWrap": "on"
|
||||
},
|
||||
|
||||
@@ -41,4 +41,4 @@
|
||||
// --- Files ---
|
||||
- "files.trimTrailingWhitespace": true,
|
||||
- "files.insertFinalNewline": true,
|
||||
+ // "files.trimTrailingWhitespace": true,
|
||||
+ // "files.insertFinalNewline": true,
|
||||
"files.exclude": {
|
||||
".git": true,
|
||||
".build": true,
|
||||
@@ -42,9 +42,9 @@
|
||||
".vscode-test": true,
|
||||
"cli/target": true,
|
||||
@@ -51,5 +51,5 @@
|
||||
"build/**/*.js.map": true,
|
||||
- "build/**/*.js": {
|
||||
- "when": "$(basename).ts"
|
||||
@@ -42,22 +33,3 @@ index 31b1c4a..f808aa6 100644
|
||||
+ // "when": "$(basename).ts"
|
||||
+ // }
|
||||
},
|
||||
"files.associations": {
|
||||
"cglicenses.json": "jsonc",
|
||||
@@ -55,7 +55,7 @@
|
||||
"**/yarn.lock": true,
|
||||
"**/package-lock.json": true,
|
||||
"**/Cargo.lock": true,
|
||||
- "build/**/*.js": true,
|
||||
+ // "build/**/*.js": true,
|
||||
"out/**": true,
|
||||
"out-build/**": true,
|
||||
"out-vscode/**": true,
|
||||
@@ -71,6 +71,7 @@
|
||||
"build/builtin/*.js": true,
|
||||
"build/monaco/*.js": true,
|
||||
"build/npm/*.js": true,
|
||||
+ "build/**/*.js": true,
|
||||
"build/*.js": true
|
||||
},
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/build/azure-pipelines/linux/setup-env.sh b/build/azure-pipelines/linux/setup-env.sh
|
||||
index 6805633..9d4b59f 100755
|
||||
index f0d5fe6..fdb3707 100755
|
||||
--- a/build/azure-pipelines/linux/setup-env.sh
|
||||
+++ b/build/azure-pipelines/linux/setup-env.sh
|
||||
@@ -2,3 +2,3 @@
|
||||
@@ -9,17 +9,17 @@ index 6805633..9d4b59f 100755
|
||||
|
||||
@@ -22,3 +22,3 @@ else
|
||||
echo "Downloading remote sysroot"
|
||||
- SYSROOT_ARCH="$SYSROOT_ARCH" VSCODE_SYSROOT_DIR="$VSCODE_REMOTE_SYSROOT_DIR" VSCODE_SYSROOT_PREFIX="-glibc-2.28-gcc-8.5.0" node -e '(async () => { const { getVSCodeSysroot } = require("./build/linux/debian/install-sysroot.js"); await getVSCodeSysroot(process.env["SYSROOT_ARCH"]); })()'
|
||||
+ SYSROOT_ARCH="$SYSROOT_ARCH" VSCODE_SYSROOT_DIR="$VSCODE_REMOTE_SYSROOT_DIR" node -e '(async () => { const { getVSCodeSysroot } = require("./build/linux/debian/install-sysroot.js"); await getVSCodeSysroot(process.env["SYSROOT_ARCH"]); })()'
|
||||
- SYSROOT_ARCH="$SYSROOT_ARCH" VSCODE_SYSROOT_DIR="$VSCODE_REMOTE_SYSROOT_DIR" VSCODE_SYSROOT_PREFIX="-glibc-2.28-gcc-8.5.0" node -e 'import { getVSCodeSysroot } from "./build/linux/debian/install-sysroot.ts"; (async () => { await getVSCodeSysroot(process.env["SYSROOT_ARCH"]); })()'
|
||||
+ SYSROOT_ARCH="$SYSROOT_ARCH" VSCODE_SYSROOT_DIR="$VSCODE_REMOTE_SYSROOT_DIR" node -e 'import { getVSCodeSysroot } from "./build/linux/debian/install-sysroot.ts"; (async () => { await getVSCodeSysroot(process.env["SYSROOT_ARCH"]); })()'
|
||||
fi
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index 10b7b44..0ad7550 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -233,9 +233,23 @@ function nodejs(platform, arch) {
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index 2714933..36396dc 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -235,9 +235,23 @@ function nodejs(platform: string, arch: string): NodeJS.ReadWriteStream | undefi
|
||||
case 'linux':
|
||||
- return (product.nodejsRepository !== 'https://nodejs.org' ?
|
||||
- fetchGithub(product.nodejsRepository, { version: `${nodeVersion}-${internalNodeVersion}`, name: expectedName, checksumSha256 }) :
|
||||
- fetchGithub(product.nodejsRepository, { version: `${nodeVersion}-${internalNodeVersion}`, name: expectedName!, checksumSha256 }) :
|
||||
- fetchUrls(`/dist/v${nodeVersion}/node-v${nodeVersion}-${platform}-${arch}.tar.gz`, { base: 'https://nodejs.org', checksumSha256 })
|
||||
- ).pipe(flatmap(stream => stream.pipe(gunzip()).pipe(untar())))
|
||||
- .pipe(filter('**/node'))
|
||||
@@ -33,7 +33,7 @@ index 10b7b44..0ad7550 100644
|
||||
+ .pipe(rename('node'));
|
||||
+ }
|
||||
+ if (product.nodejsRepository !== 'https://nodejs.org') {
|
||||
+ return fetchGithub(product.nodejsRepository, { version: `${nodeVersion}-${internalNodeVersion}`, name: expectedName, checksumSha256 })
|
||||
+ return fetchGithub(product.nodejsRepository, { version: `${nodeVersion}-${internalNodeVersion}`, name: expectedName!, checksumSha256 })
|
||||
+ .pipe(flatmap(stream => stream.pipe(gunzip()).pipe(untar())))
|
||||
+ .pipe(filter('**/node'))
|
||||
+ .pipe(util.setExecutableBit('**'))
|
||||
@@ -47,13 +47,13 @@ index 10b7b44..0ad7550 100644
|
||||
+ .pipe(rename('node'));
|
||||
+ }
|
||||
case 'alpine':
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 25d8916..250ba7c 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -366,2 +366,12 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index 358bb3a..2cc6d9a 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -372,2 +372,12 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
|
||||
|
||||
+ const electronOverride = {};
|
||||
+ const electronOverride: { repo?: string; tag?: string } = {};
|
||||
+ if (process.env.VSCODE_ELECTRON_REPOSITORY) {
|
||||
+ // official electron doesn't support all arch, override the repo with `VSCODE_ELECTRON_REPOSITORY`.
|
||||
+ electronOverride.repo = process.env.VSCODE_ELECTRON_REPOSITORY;
|
||||
@@ -63,48 +63,23 @@ index 25d8916..250ba7c 100644
|
||||
+ electronOverride.tag = process.env.VSCODE_ELECTRON_TAG;
|
||||
+ }
|
||||
+
|
||||
let result = all
|
||||
@@ -370,3 +380,3 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
let result: NodeJS.ReadWriteStream = all
|
||||
@@ -376,3 +386,3 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
|
||||
.pipe(filter(['**', '!**/.github/**'], { dot: true })) // https://github.com/microsoft/vscode/issues/116523
|
||||
- .pipe(electron({ ...config, platform, arch: arch === 'armhf' ? 'arm' : arch, ffmpegChromium: false }))
|
||||
+ .pipe(electron({ ...config, ...electronOverride, platform, arch: arch === 'armhf' ? 'arm' : arch, ffmpegChromium: false }))
|
||||
.pipe(filter(['**', '!LICENSE', '!version'], { dot: true }));
|
||||
diff --git a/build/linux/debian/dep-lists.js b/build/linux/debian/dep-lists.js
|
||||
index f58d0f8..4edb371 100644
|
||||
--- a/build/linux/debian/dep-lists.js
|
||||
+++ b/build/linux/debian/dep-lists.js
|
||||
@@ -140,3 +140,3 @@ exports.referenceGeneratedDepsByArch = {
|
||||
'xdg-utils (>= 1.0.2)'
|
||||
- ]
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/dep-lists.ts b/build/linux/debian/dep-lists.ts
|
||||
index 5b7ccd5..707129f 100644
|
||||
index 46c257d..78bfb66 100644
|
||||
--- a/build/linux/debian/dep-lists.ts
|
||||
+++ b/build/linux/debian/dep-lists.ts
|
||||
@@ -140,3 +140,3 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -141,3 +141,3 @@ export const referenceGeneratedDepsByArch = {
|
||||
'xdg-utils (>= 1.0.2)'
|
||||
- ]
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/install-sysroot.js b/build/linux/debian/install-sysroot.js
|
||||
index d16e13b..18e409a 100644
|
||||
--- a/build/linux/debian/install-sysroot.js
|
||||
+++ b/build/linux/debian/install-sysroot.js
|
||||
@@ -73,3 +73,5 @@ async function fetchUrl(options, retries = 10, retryDelay = 1000) {
|
||||
try {
|
||||
- const response = await fetch(`https://api.github.com/repos/Microsoft/vscode-linux-build-agent/releases/tags/v${version}`, {
|
||||
+ const repository = process.env['VSCODE_SYSROOT_REPOSITORY'] ?? 'Microsoft/vscode-linux-build-agent';
|
||||
+ const actualVersion = process.env['VSCODE_SYSROOT_VERSION'] ?? version;
|
||||
+ const response = await fetch(`https://api.github.com/repos/${repository}/releases/tags/v${actualVersion}`, {
|
||||
headers: ghApiHeaders,
|
||||
@@ -82,3 +84,3 @@ async function fetchUrl(options, retries = 10, retryDelay = 1000) {
|
||||
if (!asset) {
|
||||
- throw new Error(`Could not find asset in release of Microsoft/vscode-linux-build-agent @ ${version}`);
|
||||
+ throw new Error(`Could not find asset in release of ${repository} @ ${actualVersion}`);
|
||||
}
|
||||
diff --git a/build/linux/debian/install-sysroot.ts b/build/linux/debian/install-sysroot.ts
|
||||
index 670fb68..092fc68 100644
|
||||
index 2cab657..0d9dc55 100644
|
||||
--- a/build/linux/debian/install-sysroot.ts
|
||||
+++ b/build/linux/debian/install-sysroot.ts
|
||||
@@ -82,3 +82,5 @@ async function fetchUrl(options: IFetchOptions, retries = 10, retryDelay = 1000)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/build/azure-pipelines/linux/setup-env.sh b/build/azure-pipelines/linux/setup-env.sh
|
||||
index c27358a..3e33f75 100755
|
||||
index 2c98e50..6ff90d4 100755
|
||||
--- a/build/azure-pipelines/linux/setup-env.sh
|
||||
+++ b/build/azure-pipelines/linux/setup-env.sh
|
||||
@@ -76,2 +76,14 @@ elif [ "$npm_config_arch" == "arm" ]; then
|
||||
@@ -18,7 +18,7 @@ index c27358a..3e33f75 100755
|
||||
+ export VSCODE_REMOTE_LDFLAGS="--sysroot=$VSCODE_REMOTE_SYSROOT_DIR/powerpc64le-linux-gnu/powerpc64le-linux-gnu/sysroot -L$VSCODE_REMOTE_SYSROOT_DIR/powerpc64le-linux-gnu/powerpc64le-linux-gnu/sysroot/usr/lib/powerpc64le-linux-gnu -L$VSCODE_REMOTE_SYSROOT_DIR/powerpc64le-linux-gnu/powerpc64le-linux-gnu/sysroot/lib/powerpc64le-linux-gnu"
|
||||
fi
|
||||
diff --git a/build/azure-pipelines/linux/verify-glibc-requirements.sh b/build/azure-pipelines/linux/verify-glibc-requirements.sh
|
||||
index 5294177..1e33aeb 100755
|
||||
index 3db9047..1418fee 100755
|
||||
--- a/build/azure-pipelines/linux/verify-glibc-requirements.sh
|
||||
+++ b/build/azure-pipelines/linux/verify-glibc-requirements.sh
|
||||
@@ -9,2 +9,4 @@ elif [ "$VSCODE_ARCH" == "armhf" ]; then
|
||||
@@ -33,122 +33,65 @@ index 5744a5f..3fedbe9 100644
|
||||
@@ -7 +7,2 @@ f82c8dacbb9dd85819e4801909eb4e842ac12c899632aa75b4839383a18c7501 arm-rpi-linux-
|
||||
84acc5a15566c98ddf80631731d672e0ce9febcf3f2e969101e0dfd7ef2405e3 x86_64-linux-gnu-glibc-2.28-gcc-8.5.0.tar.gz
|
||||
+fa8176d27be18bb0eeb7f55b0fa22255050b430ef68c29136599f02976eb0b1b powerpc64le-linux-gnu-glibc-2.28.tar.gz
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index 5ac9f95..cd04bdf 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -50,2 +50,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index 6c21dd2..f986b4e 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -52,2 +52,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'arm64' },
|
||||
+ { platform: 'linux', arch: 'ppc64le' },
|
||||
{ platform: 'alpine', arch: 'arm64' },
|
||||
diff --git a/build/gulpfile.scan.js b/build/gulpfile.scan.js
|
||||
index aafc64e..484d5f4 100644
|
||||
--- a/build/gulpfile.scan.js
|
||||
+++ b/build/gulpfile.scan.js
|
||||
@@ -26,2 +26,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.scan.ts b/build/gulpfile.scan.ts
|
||||
index 19e50c0..47b25cf 100644
|
||||
--- a/build/gulpfile.scan.ts
|
||||
+++ b/build/gulpfile.scan.ts
|
||||
@@ -24,2 +24,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'arm64' },
|
||||
+ { platform: 'linux', arch: 'ppc64le' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 004417f..c38fc1a 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -475,2 +475,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'arm64' },
|
||||
+ { platform: 'linux', arch: 'ppc64le' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
|
||||
index cd8610d..707581d 100644
|
||||
--- a/build/gulpfile.vscode.linux.js
|
||||
+++ b/build/gulpfile.vscode.linux.js
|
||||
@@ -33,3 +33,3 @@ const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
|
||||
function getDebPackageArch(arch) {
|
||||
- return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64' }[arch];
|
||||
+ return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64el' }[arch];
|
||||
}
|
||||
@@ -146,3 +146,3 @@ function getRpmBuildPath(rpmArch) {
|
||||
function getRpmPackageArch(arch) {
|
||||
- return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64' }[arch];
|
||||
+ return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le' }[arch];
|
||||
}
|
||||
@@ -304,2 +304,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts
|
||||
index c5d2163..da4fc1f 100644
|
||||
--- a/build/gulpfile.vscode.linux.ts
|
||||
+++ b/build/gulpfile.vscode.linux.ts
|
||||
@@ -32,2 +32,3 @@ function getDebPackageArch(arch: string): string {
|
||||
case 'arm64': return 'arm64';
|
||||
+ case 'ppc64le': return 'ppc64el';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -142,2 +143,3 @@ function getRpmPackageArch(arch: string): string {
|
||||
case 'arm64': return 'aarch64';
|
||||
+ case 'ppc64le': return 'ppc64le';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -286,2 +288,3 @@ const BUILD_TARGETS = [
|
||||
{ arch: 'arm64' },
|
||||
+ { arch: 'ppc64le' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.js b/build/linux/debian/calculate-deps.js
|
||||
index 34276ce..fdae163 100644
|
||||
--- a/build/linux/debian/calculate-deps.js
|
||||
+++ b/build/linux/debian/calculate-deps.js
|
||||
@@ -54,2 +54,5 @@ function calculatePackageDeps(binaryPath, arch, chromiumSysroot, vscodeSysroot)
|
||||
break;
|
||||
+ case 'ppc64el':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/powerpc64le-linux-gnu`, `-l${chromiumSysroot}/lib/powerpc64le-linux-gnu`, `-l${vscodeSysroot}/usr/lib/powerpc64le-linux-gnu`, `-l${vscodeSysroot}/lib/powerpc64le-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index d5efbdb..1d7e9d5 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -517,2 +517,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'arm64' },
|
||||
+ { platform: 'linux', arch: 'ppc64le' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.ts b/build/linux/debian/calculate-deps.ts
|
||||
index addc386..423c415 100644
|
||||
index 98a9630..6c6bbf5 100644
|
||||
--- a/build/linux/debian/calculate-deps.ts
|
||||
+++ b/build/linux/debian/calculate-deps.ts
|
||||
@@ -61,2 +61,8 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
@@ -61,2 +61,9 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
break;
|
||||
+ case 'ppc64el':
|
||||
+ case 'ppc64le':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/powerpc64le-linux-gnu`,
|
||||
+ `-l${chromiumSysroot}/lib/powerpc64le-linux-gnu`,
|
||||
+ `-l${vscodeSysroot}/usr/lib/powerpc64le-linux-gnu`,
|
||||
+ `-l${vscodeSysroot}/lib/powerpc64le-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/dep-lists.js b/build/linux/debian/dep-lists.js
|
||||
index 057961c..ed10661 100644
|
||||
--- a/build/linux/debian/dep-lists.js
|
||||
+++ b/build/linux/debian/dep-lists.js
|
||||
@@ -141,2 +141,41 @@ exports.referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 'ppc64el': [
|
||||
+ '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.9.14)',
|
||||
+ 'libdrm2 (>= 2.4.75)',
|
||||
+ 'libexpat1 (>= 2.1~beta3)',
|
||||
+ 'libgbm1 (>= 17.1.0~rc2)',
|
||||
+ 'libglib2.0-0 (>= 2.37.3)',
|
||||
+ 'libgssapi-krb5-2 (>= 1.17)',
|
||||
+ 'libgtk-3-0 (>= 3.9.10)',
|
||||
+ 'libgtk-3-0 (>= 3.9.10) | libgtk-4-1',
|
||||
+ 'libkrb5-3 (>= 1.6.dfsg.2)',
|
||||
+ 'libnspr4 (>= 2:4.9-2~)',
|
||||
+ 'libnss3 (>= 2:3.30)',
|
||||
+ 'libnss3 (>= 3.26)',
|
||||
+ 'libpango-1.0-0 (>= 1.14.0)',
|
||||
+ '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.5.0)',
|
||||
+ 'libxkbfile1 (>= 1:1.1.0)',
|
||||
+ 'libxrandr2',
|
||||
+ 'xdg-utils (>= 1.0.2)'
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/dep-lists.ts b/build/linux/debian/dep-lists.ts
|
||||
index 707129f..7fe60be 100644
|
||||
index 34ecdf1..73d451f 100644
|
||||
--- a/build/linux/debian/dep-lists.ts
|
||||
+++ b/build/linux/debian/dep-lists.ts
|
||||
@@ -141,2 +141,41 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -142,2 +142,41 @@ export const referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 'ppc64el': [
|
||||
+ 'ca-certificates',
|
||||
@@ -190,162 +133,35 @@ index 707129f..7fe60be 100644
|
||||
+ 'xdg-utils (>= 1.0.2)'
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/install-sysroot.js b/build/linux/debian/install-sysroot.js
|
||||
index 8fbdf3d..011b36f 100644
|
||||
--- a/build/linux/debian/install-sysroot.js
|
||||
+++ b/build/linux/debian/install-sysroot.js
|
||||
@@ -146,2 +146,6 @@ async function getVSCodeSysroot(arch, isMusl = false) {
|
||||
break;
|
||||
+ case 'ppc64le':
|
||||
+ expectedName = `powerpc64le-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = `powerpc64le-linux-gnu`;
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/install-sysroot.ts b/build/linux/debian/install-sysroot.ts
|
||||
index 9f3fd15..756b7fd 100644
|
||||
index 0d9dc55..3086928 100644
|
||||
--- a/build/linux/debian/install-sysroot.ts
|
||||
+++ b/build/linux/debian/install-sysroot.ts
|
||||
@@ -159,2 +159,6 @@ export async function getVSCodeSysroot(arch: DebianArchString, isMusl: boolean =
|
||||
@@ -158,2 +158,6 @@ export async function getVSCodeSysroot(arch: DebianArchString, isMusl: boolean =
|
||||
break;
|
||||
+ case 'ppc64le':
|
||||
+ expectedName = `powerpc64le-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = `powerpc64le-linux-gnu`;
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/types.js b/build/linux/debian/types.js
|
||||
index ce21d50..2c56b9c 100644
|
||||
--- a/build/linux/debian/types.js
|
||||
+++ b/build/linux/debian/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isDebianArchString = isDebianArchString;
|
||||
function isDebianArchString(s) {
|
||||
- return ['amd64', 'armhf', 'arm64'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/debian/types.ts b/build/linux/debian/types.ts
|
||||
index e97485e..43f2434 100644
|
||||
index e97485e..c56d067 100644
|
||||
--- a/build/linux/debian/types.ts
|
||||
+++ b/build/linux/debian/types.ts
|
||||
@@ -5,6 +5,6 @@
|
||||
|
||||
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'ppc64le';
|
||||
|
||||
export function isDebianArchString(s: string): s is DebianArchString {
|
||||
- return ['amd64', 'armhf', 'arm64'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'ppc64le'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/dep-lists.js b/build/linux/rpm/dep-lists.js
|
||||
index 1f19c85..43ac5a0 100644
|
||||
--- a/build/linux/rpm/dep-lists.js
|
||||
+++ b/build/linux/rpm/dep-lists.js
|
||||
@@ -316,2 +316,102 @@ exports.referenceGeneratedDepsByArch = {
|
||||
'xdg-utils'
|
||||
+ ],
|
||||
+ "ppc64le": [
|
||||
+ 'ca-certificates',
|
||||
+ 'ld-linux-x86-64.so.2()(64bit)',
|
||||
+ 'ld-linux-x86-64.so.2(GLIBC_2.3)(64bit)',
|
||||
+ 'ld64.so.2()(64bit)',
|
||||
+ 'ld64.so.2(GLIBC_2.17)(64bit)',
|
||||
+ 'libX11.so.6()(64bit)',
|
||||
+ 'libXcomposite.so.1()(64bit)',
|
||||
+ 'libXdamage.so.1()(64bit)',
|
||||
+ 'libXext.so.6()(64bit)',
|
||||
+ 'libXfixes.so.3()(64bit)',
|
||||
+ 'libXrandr.so.2()(64bit)',
|
||||
+ 'libasound.so.2()(64bit)',
|
||||
+ 'libasound.so.2(ALSA_0.9)(64bit)',
|
||||
+ 'libasound.so.2(ALSA_0.9.0rc4)(64bit)',
|
||||
+ 'libatk-1.0.so.0()(64bit)',
|
||||
+ 'libatk-bridge-2.0.so.0()(64bit)',
|
||||
+ 'libatspi.so.0()(64bit)',
|
||||
+ 'libc.so.6()(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.14)(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.17)(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.2.5)(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.28)(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.4)(64bit)',
|
||||
+ 'libc.so.6(GLIBC_2.9)(64bit)',
|
||||
+ 'libcairo.so.2()(64bit)',
|
||||
+ 'libcups.so.2()(64bit)',
|
||||
+ 'libcurl.so.4()(64bit)',
|
||||
+ 'libdbus-1.so.3()(64bit)',
|
||||
+ 'libdbus-1.so.3(LIBDBUS_1_3)(64bit)',
|
||||
+ 'libdl.so.2()(64bit)',
|
||||
+ 'libdl.so.2(GLIBC_2.17)(64bit)',
|
||||
+ 'libdrm.so.2()(64bit)',
|
||||
+ 'libexpat.so.1()(64bit)',
|
||||
+ 'libgbm.so.1()(64bit)',
|
||||
+ 'libgcc_s.so.1()(64bit)',
|
||||
+ 'libgcc_s.so.1(GCC_3.0)(64bit)',
|
||||
+ 'libgcc_s.so.1(GCC_3.4.4)(64bit)',
|
||||
+ 'libgio-2.0.so.0()(64bit)',
|
||||
+ 'libglib-2.0.so.0()(64bit)',
|
||||
+ 'libgobject-2.0.so.0()(64bit)',
|
||||
+ 'libgssapi_krb5.so.2()(64bit)',
|
||||
+ 'libgssapi_krb5.so.2(gssapi_krb5_2_MIT)(64bit)',
|
||||
+ 'libgtk-3.so.0()(64bit)',
|
||||
+ 'libkrb5.so.3()(64bit)',
|
||||
+ 'libkrb5.so.3(krb5_3_MIT)(64bit)',
|
||||
+ 'libm.so.6()(64bit)',
|
||||
+ 'libm.so.6(GLIBC_2.17)(64bit)',
|
||||
+ 'libm.so.6(GLIBC_2.2.5)(64bit)',
|
||||
+ 'libm.so.6(GLIBC_2.27)(64bit)',
|
||||
+ 'libnspr4.so()(64bit)',
|
||||
+ 'libnss3.so()(64bit)',
|
||||
+ 'libnss3.so(NSS_3.11)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.12)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.12.1)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.2)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.22)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.3)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.30)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.4)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.5)(64bit)',
|
||||
+ 'libnss3.so(NSS_3.9.2)(64bit)',
|
||||
+ 'libnssutil3.so()(64bit)',
|
||||
+ 'libnssutil3.so(NSSUTIL_3.12.3)(64bit)',
|
||||
+ 'libpango-1.0.so.0()(64bit)',
|
||||
+ 'libpthread.so.0()(64bit)',
|
||||
+ 'libpthread.so.0(GLIBC_2.17)(64bit)',
|
||||
+ 'libpthread.so.0(GLIBC_2.2.5)(64bit)',
|
||||
+ 'libpthread.so.0(GLIBC_2.3.2)(64bit)',
|
||||
+ 'libpthread.so.0(GLIBC_2.3.3)(64bit)',
|
||||
+ 'libsmime3.so()(64bit)',
|
||||
+ 'libsmime3.so(NSS_3.10)(64bit)',
|
||||
+ 'libsmime3.so(NSS_3.2)(64bit)',
|
||||
+ 'libssl3.so(NSS_3.28)(64bit)',
|
||||
+ 'libstdc++.so.6()(64bit)',
|
||||
+ 'libstdc++.so.6(CXXABI_1.3)(64bit)',
|
||||
+ 'libstdc++.so.6(CXXABI_1.3.5)(64bit)',
|
||||
+ 'libstdc++.so.6(CXXABI_1.3.8)(64bit)',
|
||||
+ 'libstdc++.so.6(CXXABI_1.3.9)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.11)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.14)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.15)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.18)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.19)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.20)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.21)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.22)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.5)(64bit)',
|
||||
+ 'libstdc++.so.6(GLIBCXX_3.4.9)(64bit)',
|
||||
+ 'libutil.so.1()(64bit)',
|
||||
+ 'libutil.so.1(GLIBC_2.2.5)(64bit)',
|
||||
+ 'libxcb.so.1()(64bit)',
|
||||
+ 'libxkbcommon.so.0()(64bit)',
|
||||
+ 'libxkbcommon.so.0(V_0.5.0)(64bit)',
|
||||
+ 'libxkbfile.so.1()(64bit)',
|
||||
+ 'rpmlib(FileDigests) <= 4.6.0-1',
|
||||
+ 'rtld(GNU_HASH)',
|
||||
+ 'xdg-utils'
|
||||
]
|
||||
diff --git a/build/linux/rpm/dep-lists.ts b/build/linux/rpm/dep-lists.ts
|
||||
index db52338..4231f09 100644
|
||||
index 783923f..fba6ee4 100644
|
||||
--- a/build/linux/rpm/dep-lists.ts
|
||||
+++ b/build/linux/rpm/dep-lists.ts
|
||||
@@ -315,2 +315,102 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -316,2 +316,102 @@ export const referenceGeneratedDepsByArch = {
|
||||
'xdg-utils'
|
||||
+ ],
|
||||
+ "ppc64le": [
|
||||
@@ -448,15 +264,6 @@ index db52338..4231f09 100644
|
||||
+ 'rtld(GNU_HASH)',
|
||||
+ 'xdg-utils'
|
||||
]
|
||||
diff --git a/build/linux/rpm/types.js b/build/linux/rpm/types.js
|
||||
index a20b9c2..7b58961 100644
|
||||
--- a/build/linux/rpm/types.js
|
||||
+++ b/build/linux/rpm/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isRpmArchString = isRpmArchString;
|
||||
function isRpmArchString(s) {
|
||||
- return ['x86_64', 'armv7hl', 'aarch64'].includes(s);
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/types.ts b/build/linux/rpm/types.ts
|
||||
index c6a01da..3f3c3f5 100644
|
||||
--- a/build/linux/rpm/types.ts
|
||||
@@ -471,27 +278,27 @@ index c6a01da..3f3c3f5 100644
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le'].includes(s);
|
||||
}
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index a39bbf7..84d3efe 100644
|
||||
index 3b7ef5c..ec97760 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -176,2 +176,3 @@ pub enum Platform {
|
||||
@@ -183,2 +183,3 @@ pub enum Platform {
|
||||
LinuxARM32Legacy,
|
||||
+ LinuxPPC64LE,
|
||||
DarwinX64,
|
||||
@@ -194,2 +195,3 @@ impl Platform {
|
||||
@@ -201,2 +202,3 @@ impl Platform {
|
||||
Platform::LinuxARM32Legacy => "armhf",
|
||||
+ Platform::LinuxPPC64LE => "ppc64le",
|
||||
Platform::DarwinX64 => "x64",
|
||||
@@ -213,2 +215,3 @@ impl Platform {
|
||||
@@ -220,2 +222,3 @@ impl Platform {
|
||||
Platform::LinuxARM32Legacy => "linux",
|
||||
+ Platform::LinuxPPC64LE => "linux",
|
||||
Platform::DarwinX64 => "darwin",
|
||||
@@ -241,2 +244,4 @@ impl Platform {
|
||||
@@ -248,2 +251,4 @@ impl Platform {
|
||||
Some(Platform::LinuxARM64)
|
||||
+ } else if cfg!(all(target_os = "linux", target_arch = "powerpc64")) {
|
||||
+ Some(Platform::LinuxPPC64LE)
|
||||
} else if cfg!(all(target_os = "macos", target_arch = "x86_64")) {
|
||||
@@ -268,2 +273,3 @@ impl fmt::Display for Platform {
|
||||
@@ -275,2 +280,3 @@ impl fmt::Display for Platform {
|
||||
Platform::LinuxARM32Legacy => "LinuxARM32Legacy",
|
||||
+ Platform::LinuxPPC64LE => "LinuxPPC64LE",
|
||||
Platform::DarwinX64 => "DarwinX64",
|
||||
@@ -505,36 +312,36 @@ index 44c8597..679aacb 100644
|
||||
+ Platform::LinuxPPC64LE
|
||||
} else {
|
||||
diff --git a/resources/server/bin/helpers/check-requirements-linux.sh b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
index 8ea4c0b..b9d3b47 100644
|
||||
index 8ea4c0b..94028e3 100644
|
||||
--- a/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
+++ b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
@@ -55,2 +55,3 @@ case $ARCH in
|
||||
;;
|
||||
+ ppc64el) LDCONFIG_ARCH="64bit";;
|
||||
+ ppc64le) LDCONFIG_ARCH="64bit";;
|
||||
esac
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
index e91310f..a28beef 100644
|
||||
index 34eaca0..a754ff3 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
@@ -47,2 +47,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
@@ -48,2 +48,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
case TargetPlatform.LINUX_ARMHF: return 'Linux ARM';
|
||||
+ case TargetPlatform.LINUX_PPC64LE: return 'Linux PowerPC64';
|
||||
|
||||
@@ -70,2 +71,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
@@ -71,2 +72,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
case TargetPlatform.LINUX_ARMHF: return TargetPlatform.LINUX_ARMHF;
|
||||
+ case TargetPlatform.LINUX_PPC64LE: return TargetPlatform.LINUX_PPC64LE;
|
||||
|
||||
@@ -105,2 +107,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
@@ -106,2 +108,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
}
|
||||
+ if (arch === 'ppc64le') {
|
||||
+ return TargetPlatform.LINUX_PPC64LE;
|
||||
+ }
|
||||
return TargetPlatform.UNKNOWN;
|
||||
diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts
|
||||
index 0b42527..69d6eb3 100644
|
||||
index 8961b90..b605be0 100644
|
||||
--- a/src/vs/platform/extensions/common/extensions.ts
|
||||
+++ b/src/vs/platform/extensions/common/extensions.ts
|
||||
@@ -329,2 +329,3 @@ export const enum TargetPlatform {
|
||||
@@ -331,2 +331,3 @@ export const enum TargetPlatform {
|
||||
LINUX_ARMHF = 'linux-armhf',
|
||||
+ LINUX_PPC64LE = 'linux-ppc64le',
|
||||
|
||||
|
||||
@@ -1,60 +1,48 @@
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index cd04bdf..e284026 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -51,2 +51,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index f986b4e..557990e 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -53,2 +53,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'ppc64le' },
|
||||
+ { platform: 'linux', arch: 'riscv64' },
|
||||
{ platform: 'alpine', arch: 'arm64' },
|
||||
diff --git a/build/gulpfile.scan.js b/build/gulpfile.scan.js
|
||||
index 484d5f4..66c8e1f 100644
|
||||
--- a/build/gulpfile.scan.js
|
||||
+++ b/build/gulpfile.scan.js
|
||||
@@ -27,2 +27,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.scan.ts b/build/gulpfile.scan.ts
|
||||
index 47b25cf..dd5bb56 100644
|
||||
--- a/build/gulpfile.scan.ts
|
||||
+++ b/build/gulpfile.scan.ts
|
||||
@@ -25,2 +25,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'ppc64le' },
|
||||
+ { platform: 'linux', arch: 'riscv64' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 3ed2182..f0614d0 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -492,2 +492,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'ppc64le' },
|
||||
+ { platform: 'linux', arch: 'riscv64' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
|
||||
index 707581d..298181d 100644
|
||||
--- a/build/gulpfile.vscode.linux.js
|
||||
+++ b/build/gulpfile.vscode.linux.js
|
||||
@@ -33,3 +33,3 @@ const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
|
||||
function getDebPackageArch(arch) {
|
||||
- return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64el' }[arch];
|
||||
+ return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64el', riscv64: 'riscv64' }[arch];
|
||||
}
|
||||
@@ -146,3 +146,3 @@ function getRpmBuildPath(rpmArch) {
|
||||
function getRpmPackageArch(arch) {
|
||||
- return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le' }[arch];
|
||||
+ return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le', riscv64: 'riscv64' }[arch];
|
||||
}
|
||||
@@ -305,2 +305,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts
|
||||
index da4fc1f..b64dd9a 100644
|
||||
--- a/build/gulpfile.vscode.linux.ts
|
||||
+++ b/build/gulpfile.vscode.linux.ts
|
||||
@@ -33,2 +33,3 @@ function getDebPackageArch(arch: string): string {
|
||||
case 'ppc64le': return 'ppc64el';
|
||||
+ case 'riscv64': return 'riscv64';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -144,2 +145,3 @@ function getRpmPackageArch(arch: string): string {
|
||||
case 'ppc64le': return 'ppc64le';
|
||||
+ case 'riscv64': return 'riscv64';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -289,2 +291,3 @@ const BUILD_TARGETS = [
|
||||
{ arch: 'ppc64le' },
|
||||
+ { arch: 'riscv64' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.js b/build/linux/debian/calculate-deps.js
|
||||
index fdae163..a08ebda 100644
|
||||
--- a/build/linux/debian/calculate-deps.js
|
||||
+++ b/build/linux/debian/calculate-deps.js
|
||||
@@ -57,2 +57,5 @@ function calculatePackageDeps(binaryPath, arch, chromiumSysroot, vscodeSysroot)
|
||||
break;
|
||||
+ case 'riscv64':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/riscv64-linux-gnu`, `-l${chromiumSysroot}/lib/riscv64-linux-gnu`, `-l${vscodeSysroot}/usr/lib/riscv64-linux-gnu`, `-l${vscodeSysroot}/lib/riscv64-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index 1d7e9d5..3a5a9ca 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -518,2 +518,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'ppc64le' },
|
||||
+ { platform: 'linux', arch: 'riscv64' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.ts b/build/linux/debian/calculate-deps.ts
|
||||
index 423c415..88ee2f0 100644
|
||||
index 6c6bbf5..5ee005e 100644
|
||||
--- a/build/linux/debian/calculate-deps.ts
|
||||
+++ b/build/linux/debian/calculate-deps.ts
|
||||
@@ -67,2 +67,8 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
@@ -68,2 +68,8 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
break;
|
||||
+ case 'riscv64':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/riscv64-linux-gnu`,
|
||||
@@ -63,58 +51,11 @@ index 423c415..88ee2f0 100644
|
||||
+ `-l${vscodeSysroot}/lib/riscv64-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/dep-lists.js b/build/linux/debian/dep-lists.js
|
||||
index a85352e..4ccdcd9 100644
|
||||
--- a/build/linux/debian/dep-lists.js
|
||||
+++ b/build/linux/debian/dep-lists.js
|
||||
@@ -178,2 +178,42 @@ exports.referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 'riscv64': [
|
||||
+ 'ca-certificates',
|
||||
+ 'libatomic1',
|
||||
+ '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/dep-lists.ts b/build/linux/debian/dep-lists.ts
|
||||
index 0d0f11b..b765492 100644
|
||||
index 73d451f..7ea5910 100644
|
||||
--- a/build/linux/debian/dep-lists.ts
|
||||
+++ b/build/linux/debian/dep-lists.ts
|
||||
@@ -178,2 +178,42 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -181,2 +181,42 @@ export const referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 'riscv64': [
|
||||
+ 'ca-certificates',
|
||||
@@ -157,58 +98,29 @@ index 0d0f11b..b765492 100644
|
||||
+ 'xdg-utils (>= 1.0.2)'
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/install-sysroot.js b/build/linux/debian/install-sysroot.js
|
||||
index ab6b826..fc2817a 100644
|
||||
--- a/build/linux/debian/install-sysroot.js
|
||||
+++ b/build/linux/debian/install-sysroot.js
|
||||
@@ -144,2 +144,6 @@ async function getVSCodeSysroot(arch) {
|
||||
break;
|
||||
+ case 'riscv64':
|
||||
+ expectedName = `riscv64-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = 'riscv64-linux-gnu';
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/install-sysroot.ts b/build/linux/debian/install-sysroot.ts
|
||||
index c23db0f..50c28b2 100644
|
||||
index 3086928..6e5246c 100644
|
||||
--- a/build/linux/debian/install-sysroot.ts
|
||||
+++ b/build/linux/debian/install-sysroot.ts
|
||||
@@ -158,2 +158,6 @@ export async function getVSCodeSysroot(arch: DebianArchString): Promise<string>
|
||||
@@ -162,2 +162,6 @@ export async function getVSCodeSysroot(arch: DebianArchString, isMusl: boolean =
|
||||
break;
|
||||
+ case 'riscv64':
|
||||
+ expectedName = `riscv64-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = 'riscv64-linux-gnu';
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/types.js b/build/linux/debian/types.js
|
||||
index 2c56b9c..cadefc2 100644
|
||||
--- a/build/linux/debian/types.js
|
||||
+++ b/build/linux/debian/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isDebianArchString = isDebianArchString;
|
||||
function isDebianArchString(s) {
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/debian/types.ts b/build/linux/debian/types.ts
|
||||
index 43f2434..24fe452 100644
|
||||
index c56d067..5d63ed2 100644
|
||||
--- a/build/linux/debian/types.ts
|
||||
+++ b/build/linux/debian/types.ts
|
||||
@@ -5,6 +5,6 @@
|
||||
|
||||
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'riscv64';
|
||||
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'ppc64le';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'ppc64le' | 'riscv64';
|
||||
|
||||
export function isDebianArchString(s: string): s is DebianArchString {
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/types.js b/build/linux/rpm/types.js
|
||||
index 7b58961..99a8cff 100644
|
||||
--- a/build/linux/rpm/types.js
|
||||
+++ b/build/linux/rpm/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isRpmArchString = isRpmArchString;
|
||||
function isRpmArchString(s) {
|
||||
- return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le'].includes(s);
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le', 'riscv64'].includes(s);
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el', 'ppc64le'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'ppc64le', 'riscv64'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/types.ts b/build/linux/rpm/types.ts
|
||||
index 3f3c3f5..d94537e 100644
|
||||
@@ -224,27 +136,27 @@ index 3f3c3f5..d94537e 100644
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le', 'riscv64'].includes(s);
|
||||
}
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index 84d3efe..4f2c8c2 100644
|
||||
index ec97760..de9ca72 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -177,2 +177,3 @@ pub enum Platform {
|
||||
@@ -184,2 +184,3 @@ pub enum Platform {
|
||||
LinuxPPC64LE,
|
||||
+ LinuxRISCV64,
|
||||
DarwinX64,
|
||||
@@ -196,2 +197,3 @@ impl Platform {
|
||||
@@ -203,2 +204,3 @@ impl Platform {
|
||||
Platform::LinuxPPC64LE => "ppc64le",
|
||||
+ Platform::LinuxRISCV64 => "riscv64",
|
||||
Platform::DarwinX64 => "x64",
|
||||
@@ -216,2 +218,3 @@ impl Platform {
|
||||
@@ -223,2 +225,3 @@ impl Platform {
|
||||
Platform::LinuxPPC64LE => "linux",
|
||||
+ Platform::LinuxRISCV64 => "linux",
|
||||
Platform::DarwinX64 => "darwin",
|
||||
@@ -246,2 +249,4 @@ impl Platform {
|
||||
@@ -253,2 +256,4 @@ impl Platform {
|
||||
Some(Platform::LinuxPPC64LE)
|
||||
+ } else if cfg!(all(target_os = "linux", target_arch = "riscv64")) {
|
||||
+ Some(Platform::LinuxRISCV64)
|
||||
} else if cfg!(all(target_os = "macos", target_arch = "x86_64")) {
|
||||
@@ -274,2 +279,3 @@ impl fmt::Display for Platform {
|
||||
@@ -281,2 +286,3 @@ impl fmt::Display for Platform {
|
||||
Platform::LinuxPPC64LE => "LinuxPPC64LE",
|
||||
+ Platform::LinuxRISCV64 => "LinuxRISCV64",
|
||||
Platform::DarwinX64 => "DarwinX64",
|
||||
@@ -258,36 +170,36 @@ index 679aacb..1a37552 100644
|
||||
+ Platform::LinuxRISCV64
|
||||
} else {
|
||||
diff --git a/resources/server/bin/helpers/check-requirements-linux.sh b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
index b9d3b47..b18e402 100644
|
||||
index 94028e3..c41cce7 100644
|
||||
--- a/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
+++ b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
@@ -56,2 +56,3 @@ case $ARCH in
|
||||
ppc64el) LDCONFIG_ARCH="64bit";;
|
||||
ppc64le) LDCONFIG_ARCH="64bit";;
|
||||
+ riscv64) LDCONFIG_ARCH="RISC-V";;
|
||||
esac
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
index 5400065..be95b04 100644
|
||||
index a754ff3..b607327 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
@@ -45,2 +45,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
@@ -49,2 +49,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
case TargetPlatform.LINUX_PPC64LE: return 'Linux PowerPC64';
|
||||
+ case TargetPlatform.LINUX_RISCV64: return 'Linux RISC-V 64';
|
||||
|
||||
@@ -69,2 +70,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
@@ -73,2 +74,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
case TargetPlatform.LINUX_PPC64LE: return TargetPlatform.LINUX_PPC64LE;
|
||||
+ case TargetPlatform.LINUX_RISCV64: return TargetPlatform.LINUX_RISCV64;
|
||||
|
||||
@@ -107,2 +109,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
@@ -111,2 +113,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
}
|
||||
+ if (arch === 'riscv64') {
|
||||
+ return TargetPlatform.LINUX_RISCV64;
|
||||
+ }
|
||||
return TargetPlatform.UNKNOWN;
|
||||
diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts
|
||||
index 23f1bea..10152de 100644
|
||||
index b605be0..22d2206 100644
|
||||
--- a/src/vs/platform/extensions/common/extensions.ts
|
||||
+++ b/src/vs/platform/extensions/common/extensions.ts
|
||||
@@ -320,2 +320,3 @@ export const enum TargetPlatform {
|
||||
@@ -332,2 +332,3 @@ export const enum TargetPlatform {
|
||||
LINUX_PPC64LE = 'linux-ppc64le',
|
||||
+ LINUX_RISCV64 = 'linux-riscv64',
|
||||
|
||||
|
||||
@@ -1,49 +1,65 @@
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index e284026..52f9a12 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -52,2 +52,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index ff202a7..74bd1bc 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -54,2 +54,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'riscv64' },
|
||||
+ { platform: 'linux', arch: 'loong64' },
|
||||
{ platform: 'alpine', arch: 'arm64' },
|
||||
diff --git a/build/gulpfile.scan.js b/build/gulpfile.scan.js
|
||||
index 66c8e1f..8a8c1eb 100644
|
||||
--- a/build/gulpfile.scan.js
|
||||
+++ b/build/gulpfile.scan.js
|
||||
@@ -28,2 +28,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.scan.ts b/build/gulpfile.scan.ts
|
||||
index dd5bb56..e7881de 100644
|
||||
--- a/build/gulpfile.scan.ts
|
||||
+++ b/build/gulpfile.scan.ts
|
||||
@@ -26,2 +26,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'riscv64' },
|
||||
+ { platform: 'linux', arch: 'loong64' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index f0614d0..1438867 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -493,2 +493,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts
|
||||
index b64dd9a..e146586 100644
|
||||
--- a/build/gulpfile.vscode.linux.ts
|
||||
+++ b/build/gulpfile.vscode.linux.ts
|
||||
@@ -34,2 +34,3 @@ function getDebPackageArch(arch: string): string {
|
||||
case 'riscv64': return 'riscv64';
|
||||
+ case 'loong64': return 'loong64';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -146,2 +147,3 @@ function getRpmPackageArch(arch: string): string {
|
||||
case 'riscv64': return 'riscv64';
|
||||
+ case 'loong64': return 'loong64';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -292,2 +294,3 @@ const BUILD_TARGETS = [
|
||||
{ arch: 'riscv64' },
|
||||
+ { arch: 'loong64' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index 15bd141..cabe16f 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -509,2 +509,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'riscv64' },
|
||||
+ { platform: 'linux', arch: 'loong64' },
|
||||
];
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index 4f2c8c2..4ea1bd2 100644
|
||||
index f1afd87..0a5e6df 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -178,2 +178,3 @@ pub enum Platform {
|
||||
@@ -188,2 +188,3 @@ pub enum Platform {
|
||||
LinuxRISCV64,
|
||||
+ LinuxLoong64,
|
||||
DarwinX64,
|
||||
@@ -198,2 +199,3 @@ impl Platform {
|
||||
@@ -208,2 +209,3 @@ impl Platform {
|
||||
Platform::LinuxRISCV64 => "riscv64",
|
||||
+ Platform::LinuxLoong64 => "loong64",
|
||||
Platform::DarwinX64 => "x64",
|
||||
@@ -219,2 +221,3 @@ impl Platform {
|
||||
@@ -229,2 +231,3 @@ impl Platform {
|
||||
Platform::LinuxRISCV64 => "linux",
|
||||
+ Platform::LinuxLoong64 => "linux",
|
||||
Platform::DarwinX64 => "darwin",
|
||||
@@ -251,2 +254,4 @@ impl Platform {
|
||||
@@ -261,2 +264,4 @@ impl Platform {
|
||||
Some(Platform::LinuxRISCV64)
|
||||
+ } else if cfg!(all(target_os = "linux", target_arch = "loongarch64")) {
|
||||
+ Some(Platform::LinuxLoong64)
|
||||
} else if cfg!(all(target_os = "macos", target_arch = "x86_64")) {
|
||||
@@ -280,2 +285,3 @@ impl fmt::Display for Platform {
|
||||
@@ -290,2 +295,3 @@ impl fmt::Display for Platform {
|
||||
Platform::LinuxRISCV64 => "LinuxRISCV64",
|
||||
+ Platform::LinuxLoong64 => "LinuxLoong64",
|
||||
Platform::DarwinX64 => "DarwinX64",
|
||||
@@ -65,28 +81,28 @@ index b18e402..0b7aa4e 100644
|
||||
+ loongarch64) LDCONFIG_ARCH="double-float";;
|
||||
esac
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
index be95b04..1a0decd 100644
|
||||
index b607327..7162d83 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
@@ -46,2 +46,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
@@ -50,2 +50,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
case TargetPlatform.LINUX_RISCV64: return 'Linux RISC-V 64';
|
||||
+ case TargetPlatform.LINUX_LOONG64: return 'Linux Loong64';
|
||||
|
||||
@@ -71,2 +72,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
@@ -75,2 +76,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
case TargetPlatform.LINUX_RISCV64: return TargetPlatform.LINUX_RISCV64;
|
||||
+ case TargetPlatform.LINUX_LOONG64: return TargetPlatform.LINUX_LOONG64;
|
||||
|
||||
@@ -112,2 +114,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
@@ -116,2 +118,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
}
|
||||
+ if (arch === 'loong64') {
|
||||
+ return TargetPlatform.LINUX_LOONG64;
|
||||
+ }
|
||||
return TargetPlatform.UNKNOWN;
|
||||
diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts
|
||||
index 10152de..3eb0412 100644
|
||||
index 96d08cb..51e67ea 100644
|
||||
--- a/src/vs/platform/extensions/common/extensions.ts
|
||||
+++ b/src/vs/platform/extensions/common/extensions.ts
|
||||
@@ -321,2 +321,3 @@ export const enum TargetPlatform {
|
||||
@@ -332,2 +332,3 @@ export const enum TargetPlatform {
|
||||
LINUX_RISCV64 = 'linux-riscv64',
|
||||
+ LINUX_LOONG64 = 'linux-loong64',
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
diff --git a/build/azure-pipelines/linux/setup-env.sh b/build/azure-pipelines/linux/setup-env.sh
|
||||
index 3e33f75..052b38f 100755
|
||||
index 6ff90d4..381150d 100755
|
||||
--- a/build/azure-pipelines/linux/setup-env.sh
|
||||
+++ b/build/azure-pipelines/linux/setup-env.sh
|
||||
@@ -88,2 +88,14 @@ elif [ "$npm_config_arch" == "ppc64" ]; then
|
||||
@@ -24,63 +24,51 @@ index 3fedbe9..3c4e291 100644
|
||||
@@ -8 +8,2 @@ f82c8dacbb9dd85819e4801909eb4e842ac12c899632aa75b4839383a18c7501 arm-rpi-linux-
|
||||
fa8176d27be18bb0eeb7f55b0fa22255050b430ef68c29136599f02976eb0b1b powerpc64le-linux-gnu-glibc-2.28.tar.gz
|
||||
+7055f3d40e7195fb1e13f0fbaf5ffadf781bddaca5fd5e0d9972f4157a203fb5 s390x-linux-gnu-glibc-2.28.tar.gz
|
||||
diff --git a/build/gulpfile.reh.js b/build/gulpfile.reh.js
|
||||
index 52f9a12..4b890f4 100644
|
||||
--- a/build/gulpfile.reh.js
|
||||
+++ b/build/gulpfile.reh.js
|
||||
@@ -53,2 +53,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.reh.ts b/build/gulpfile.reh.ts
|
||||
index af8403a..a697f8c 100644
|
||||
--- a/build/gulpfile.reh.ts
|
||||
+++ b/build/gulpfile.reh.ts
|
||||
@@ -55,2 +55,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'loong64' },
|
||||
+ { platform: 'linux', arch: 's390x' },
|
||||
{ platform: 'alpine', arch: 'arm64' },
|
||||
diff --git a/build/gulpfile.scan.js b/build/gulpfile.scan.js
|
||||
index 8a8c1eb..1ef390b 100644
|
||||
--- a/build/gulpfile.scan.js
|
||||
+++ b/build/gulpfile.scan.js
|
||||
@@ -29,2 +29,3 @@ const BUILD_TARGETS = [
|
||||
diff --git a/build/gulpfile.scan.ts b/build/gulpfile.scan.ts
|
||||
index e7881de..affa8df 100644
|
||||
--- a/build/gulpfile.scan.ts
|
||||
+++ b/build/gulpfile.scan.ts
|
||||
@@ -27,2 +27,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'loong64' },
|
||||
+ { platform: 'linux', arch: 's390x' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index ee66585..c9f9ceb 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -478,2 +478,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'loong64' },
|
||||
+ { platform: 'linux', arch: 's390x' },
|
||||
];
|
||||
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
|
||||
index 298181d..dcc42a8 100644
|
||||
--- a/build/gulpfile.vscode.linux.js
|
||||
+++ b/build/gulpfile.vscode.linux.js
|
||||
@@ -33,3 +33,3 @@ const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
|
||||
function getDebPackageArch(arch) {
|
||||
- return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64el', riscv64: 'riscv64' }[arch];
|
||||
+ return { x64: 'amd64', armhf: 'armhf', arm64: 'arm64', ppc64le: 'ppc64el', riscv64: 'riscv64', s390x: 's390x' }[arch];
|
||||
}
|
||||
@@ -146,3 +146,3 @@ function getRpmBuildPath(rpmArch) {
|
||||
function getRpmPackageArch(arch) {
|
||||
- return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le', riscv64: 'riscv64' }[arch];
|
||||
+ return { x64: 'x86_64', armhf: 'armv7hl', arm64: 'aarch64', ppc64le: 'ppc64le', riscv64: 'riscv64', s390x: 's390x' }[arch];
|
||||
}
|
||||
@@ -306,2 +306,3 @@ const BUILD_TARGETS = [
|
||||
{ arch: 'riscv64' },
|
||||
diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts
|
||||
index e146586..ca18865 100644
|
||||
--- a/build/gulpfile.vscode.linux.ts
|
||||
+++ b/build/gulpfile.vscode.linux.ts
|
||||
@@ -35,2 +35,3 @@ function getDebPackageArch(arch: string): string {
|
||||
case 'loong64': return 'loong64';
|
||||
+ case 's390x': return 's390x';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -148,2 +149,3 @@ function getRpmPackageArch(arch: string): string {
|
||||
case 'loong64': return 'loong64';
|
||||
+ case 's390x': return 's390x';
|
||||
default: throw new Error(`Unknown arch: ${arch}`);
|
||||
@@ -295,2 +297,3 @@ const BUILD_TARGETS = [
|
||||
{ arch: 'loong64' },
|
||||
+ { arch: 's390x' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.js b/build/linux/debian/calculate-deps.js
|
||||
index a08ebda..9527119 100644
|
||||
--- a/build/linux/debian/calculate-deps.js
|
||||
+++ b/build/linux/debian/calculate-deps.js
|
||||
@@ -60,2 +60,5 @@ function calculatePackageDeps(binaryPath, arch, chromiumSysroot, vscodeSysroot)
|
||||
break;
|
||||
+ case 's390x':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/s390x-linux-gnu`, `-l${chromiumSysroot}/lib/s390x-linux-gnu`, `-l${vscodeSysroot}/usr/lib/s390x-linux-gnu`, `-l${vscodeSysroot}/lib/s390x-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index d5f3ed8..ac87a54 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -520,2 +520,3 @@ const BUILD_TARGETS = [
|
||||
{ platform: 'linux', arch: 'loong64' },
|
||||
+ { platform: 'linux', arch: 's390x' },
|
||||
];
|
||||
diff --git a/build/linux/debian/calculate-deps.ts b/build/linux/debian/calculate-deps.ts
|
||||
index 88ee2f0..8037cf2 100644
|
||||
index 5ee005e..71fb92e 100644
|
||||
--- a/build/linux/debian/calculate-deps.ts
|
||||
+++ b/build/linux/debian/calculate-deps.ts
|
||||
@@ -73,2 +73,8 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
@@ -74,2 +74,8 @@ function calculatePackageDeps(binaryPath: string, arch: DebianArchString, chromi
|
||||
break;
|
||||
+ case 's390x':
|
||||
+ cmd.push(`-l${chromiumSysroot}/usr/lib/s390x-linux-gnu`,
|
||||
@@ -89,58 +77,11 @@ index 88ee2f0..8037cf2 100644
|
||||
+ `-l${vscodeSysroot}/lib/s390x-linux-gnu`);
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/dep-lists.js b/build/linux/debian/dep-lists.js
|
||||
index 13cf8f0..9ffd805 100644
|
||||
--- a/build/linux/debian/dep-lists.js
|
||||
+++ b/build/linux/debian/dep-lists.js
|
||||
@@ -220,2 +220,42 @@ exports.referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 's390x': [
|
||||
+ 'ca-certificates',
|
||||
+ 'libatomic1',
|
||||
+ '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/dep-lists.ts b/build/linux/debian/dep-lists.ts
|
||||
index 7e6938a..8a314ec 100644
|
||||
index 7ea5910..9498993 100644
|
||||
--- a/build/linux/debian/dep-lists.ts
|
||||
+++ b/build/linux/debian/dep-lists.ts
|
||||
@@ -220,2 +220,42 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -221,2 +221,42 @@ export const referenceGeneratedDepsByArch = {
|
||||
],
|
||||
+ 's390x': [
|
||||
+ 'ca-certificates',
|
||||
@@ -183,55 +124,35 @@ index 7e6938a..8a314ec 100644
|
||||
+ 'xdg-utils (>= 1.0.2)'
|
||||
+ ],
|
||||
};
|
||||
diff --git a/build/linux/debian/install-sysroot.js b/build/linux/debian/install-sysroot.js
|
||||
index e510426..ce7c75b 100644
|
||||
--- a/build/linux/debian/install-sysroot.js
|
||||
+++ b/build/linux/debian/install-sysroot.js
|
||||
@@ -154,2 +154,6 @@ async function getVSCodeSysroot(arch, isMusl = false) {
|
||||
break;
|
||||
+ case 's390x':
|
||||
+ expectedName = `s390x-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = 's390x-linux-gnu';
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/install-sysroot.ts b/build/linux/debian/install-sysroot.ts
|
||||
index 42841f6..cffae59 100644
|
||||
index 6e5246c..89fac34 100644
|
||||
--- a/build/linux/debian/install-sysroot.ts
|
||||
+++ b/build/linux/debian/install-sysroot.ts
|
||||
@@ -167,2 +167,6 @@ export async function getVSCodeSysroot(arch: DebianArchString, isMusl: boolean =
|
||||
@@ -166,2 +166,6 @@ export async function getVSCodeSysroot(arch: DebianArchString, isMusl: boolean =
|
||||
break;
|
||||
+ case 's390x':
|
||||
+ expectedName = `s390x-linux-gnu${prefix}.tar.gz`;
|
||||
+ triple = 's390x-linux-gnu';
|
||||
+ break;
|
||||
}
|
||||
diff --git a/build/linux/debian/types.js b/build/linux/debian/types.js
|
||||
index cadefc2..8132812 100644
|
||||
--- a/build/linux/debian/types.js
|
||||
+++ b/build/linux/debian/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isDebianArchString = isDebianArchString;
|
||||
function isDebianArchString(s) {
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64', 's390x'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/debian/types.ts b/build/linux/debian/types.ts
|
||||
index 24fe452..9efba5b 100644
|
||||
index 5d63ed2..5f793e2 100644
|
||||
--- a/build/linux/debian/types.ts
|
||||
+++ b/build/linux/debian/types.ts
|
||||
@@ -5,6 +5,6 @@
|
||||
|
||||
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'riscv64';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'riscv64' | 's390x';
|
||||
-export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'ppc64le' | 'riscv64';
|
||||
+export type DebianArchString = 'amd64' | 'armhf' | 'arm64' | 'ppc64el' | 'ppc64le' | 'riscv64' | 's390x';
|
||||
|
||||
export function isDebianArchString(s: string): s is DebianArchString {
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'riscv64', 's390x'].includes(s);
|
||||
- return ['amd64', 'armhf', 'arm64', 'ppc64el', 'ppc64le', 'riscv64'].includes(s);
|
||||
+ return ['amd64', 'armhf', 'arm64', 'ppc64el', 'ppc64le', 'riscv64', 's390x'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/dep-lists.ts b/build/linux/rpm/dep-lists.ts
|
||||
index 4231f09..fc70433 100644
|
||||
index fba6ee4..33efc80 100644
|
||||
--- a/build/linux/rpm/dep-lists.ts
|
||||
+++ b/build/linux/rpm/dep-lists.ts
|
||||
@@ -415,2 +415,102 @@ export const referenceGeneratedDepsByArch = {
|
||||
@@ -416,2 +416,102 @@ export const referenceGeneratedDepsByArch = {
|
||||
'xdg-utils'
|
||||
+ ],
|
||||
+ "s390x": [
|
||||
@@ -334,15 +255,6 @@ index 4231f09..fc70433 100644
|
||||
+ 'rtld(GNU_HASH)',
|
||||
+ 'xdg-utils'
|
||||
]
|
||||
diff --git a/build/linux/rpm/types.js b/build/linux/rpm/types.js
|
||||
index 99a8cff..e2f3548 100644
|
||||
--- a/build/linux/rpm/types.js
|
||||
+++ b/build/linux/rpm/types.js
|
||||
@@ -8,3 +8,3 @@ exports.isRpmArchString = isRpmArchString;
|
||||
function isRpmArchString(s) {
|
||||
- return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le', 'riscv64'].includes(s);
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le', 'riscv64', 's390x'].includes(s);
|
||||
}
|
||||
diff --git a/build/linux/rpm/types.ts b/build/linux/rpm/types.ts
|
||||
index d94537e..3834b94 100644
|
||||
--- a/build/linux/rpm/types.ts
|
||||
@@ -357,7 +269,7 @@ index d94537e..3834b94 100644
|
||||
+ return ['x86_64', 'armv7hl', 'aarch64', 'ppc64le', 'riscv64', 's390x'].includes(s);
|
||||
}
|
||||
diff --git a/resources/server/bin/helpers/check-requirements-linux.sh b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
index 0b7aa4e..e8b7ce0 100644
|
||||
index dc9faac..9078cc9 100644
|
||||
--- a/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
+++ b/resources/server/bin/helpers/check-requirements-linux.sh
|
||||
@@ -58,2 +58,3 @@ case $ARCH in
|
||||
@@ -365,28 +277,28 @@ index 0b7aa4e..e8b7ce0 100644
|
||||
+ s390x) LDCONFIG_ARCH="64bit";;
|
||||
esac
|
||||
diff --git a/src/vs/platform/extensionManagement/common/extensionManagement.ts b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
index dedea4c..1043fe4 100644
|
||||
index 7162d83..f6bb8fd 100644
|
||||
--- a/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
+++ b/src/vs/platform/extensionManagement/common/extensionManagement.ts
|
||||
@@ -50,2 +50,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
@@ -51,2 +51,3 @@ export function TargetPlatformToString(targetPlatform: TargetPlatform) {
|
||||
case TargetPlatform.LINUX_LOONG64: return 'Linux Loong64';
|
||||
+ case TargetPlatform.LINUX_S390X: return 'Linux S390X';
|
||||
|
||||
@@ -76,2 +77,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
@@ -77,2 +78,3 @@ export function toTargetPlatform(targetPlatform: string): TargetPlatform {
|
||||
case TargetPlatform.LINUX_LOONG64: return TargetPlatform.LINUX_LOONG64;
|
||||
+ case TargetPlatform.LINUX_S390X: return TargetPlatform.LINUX_S390X;
|
||||
|
||||
@@ -120,2 +122,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
@@ -121,2 +123,5 @@ export function getTargetPlatform(platform: Platform | 'alpine', arch: string |
|
||||
}
|
||||
+ if (arch === 's390x') {
|
||||
+ return TargetPlatform.LINUX_S390X;
|
||||
+ }
|
||||
return TargetPlatform.UNKNOWN;
|
||||
diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts
|
||||
index 6d554ce..51d23fa 100644
|
||||
index f93e0ca..c4cc8c9 100644
|
||||
--- a/src/vs/platform/extensions/common/extensions.ts
|
||||
+++ b/src/vs/platform/extensions/common/extensions.ts
|
||||
@@ -332,2 +332,3 @@ export const enum TargetPlatform {
|
||||
@@ -334,2 +334,3 @@ export const enum TargetPlatform {
|
||||
LINUX_LOONG64 = 'linux-loong64',
|
||||
+ LINUX_S390X = 'linux-s390x',
|
||||
|
||||
|
||||
26
patches/linux/cli.patch
Normal file
26
patches/linux/cli.patch
Normal file
@@ -0,0 +1,26 @@
|
||||
diff --git a/cli/src/tunnels/code_server.rs b/cli/src/tunnels/code_server.rs
|
||||
index bbabadc..08af0df 100644
|
||||
--- a/cli/src/tunnels/code_server.rs
|
||||
+++ b/cli/src/tunnels/code_server.rs
|
||||
@@ -4,2 +4,4 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
+#![allow(unused_imports)]
|
||||
+
|
||||
use super::paths::{InstalledServer, ServerPaths};
|
||||
diff --git a/cli/src/tunnels/dev_tunnels.rs b/cli/src/tunnels/dev_tunnels.rs
|
||||
index 0168ee6..5d0d8d4 100644
|
||||
--- a/cli/src/tunnels/dev_tunnels.rs
|
||||
+++ b/cli/src/tunnels/dev_tunnels.rs
|
||||
@@ -4,2 +4,4 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
+#![allow(unused_imports)]
|
||||
+
|
||||
use super::protocol::{self, PortPrivacy, PortProtocol};
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index 55f1dad..f22a83c 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -4,2 +4,3 @@
|
||||
*--------------------------------------------------------------------------------------------*/
|
||||
+#![allow(unused_imports)]
|
||||
|
||||
@@ -1,13 +1,13 @@
|
||||
diff --git a/build/npm/dirs.js b/build/npm/dirs.js
|
||||
index b9645e6..22f3450 100644
|
||||
--- a/build/npm/dirs.js
|
||||
+++ b/build/npm/dirs.js
|
||||
@@ -47,4 +47,2 @@ const dirs = [
|
||||
diff --git a/build/npm/dirs.ts b/build/npm/dirs.ts
|
||||
index 48d76e2..270b078 100644
|
||||
--- a/build/npm/dirs.ts
|
||||
+++ b/build/npm/dirs.ts
|
||||
@@ -53,4 +53,2 @@ export const dirs = [
|
||||
'extensions/vscode-test-resolver',
|
||||
- 'remote',
|
||||
- 'remote/web',
|
||||
'test/automation',
|
||||
@@ -59,4 +57,2 @@ if (fs.existsSync(`${__dirname}/../../.build/distro/npm`)) {
|
||||
@@ -66,4 +64,2 @@ if (existsSync(`${import.meta.dirname}/../../.build/distro/npm`)) {
|
||||
dirs.push('.build/distro/npm');
|
||||
- dirs.push('.build/distro/npm/remote');
|
||||
- dirs.push('.build/distro/npm/remote/web');
|
||||
|
||||
123
patches/linux/feat-logs-home.patch
Normal file
123
patches/linux/feat-logs-home.patch
Normal file
@@ -0,0 +1,123 @@
|
||||
diff --git a/src/vs/platform/environment/common/environment.ts b/src/vs/platform/environment/common/environment.ts
|
||||
index 4a14c83..59c963b 100644
|
||||
--- a/src/vs/platform/environment/common/environment.ts
|
||||
+++ b/src/vs/platform/environment/common/environment.ts
|
||||
@@ -137,2 +137,3 @@ export interface INativeEnvironmentService extends IEnvironmentService {
|
||||
userDataPath: string;
|
||||
+ userStatePath: string;
|
||||
|
||||
diff --git a/src/vs/platform/environment/common/environmentService.ts b/src/vs/platform/environment/common/environmentService.ts
|
||||
index 535132f..edd76bc 100644
|
||||
--- a/src/vs/platform/environment/common/environmentService.ts
|
||||
+++ b/src/vs/platform/environment/common/environmentService.ts
|
||||
@@ -28,2 +28,4 @@ export interface INativeEnvironmentPaths {
|
||||
|
||||
+ userStateDir: string;
|
||||
+
|
||||
/**
|
||||
@@ -54,2 +56,5 @@ export abstract class AbstractNativeEnvironmentService implements INativeEnviron
|
||||
|
||||
+ @memoize
|
||||
+ get userStatePath(): string { return this.paths.userStateDir; }
|
||||
+
|
||||
@memoize
|
||||
@@ -75,3 +80,3 @@ export abstract class AbstractNativeEnvironmentService implements INativeEnviron
|
||||
const key = toLocalISOString(new Date()).replace(/-|:|\.\d+Z$/g, '');
|
||||
- this.args.logsPath = join(this.userDataPath, 'logs', key);
|
||||
+ this.args.logsPath = join(this.userStatePath, key);
|
||||
}
|
||||
diff --git a/src/vs/platform/environment/node/environmentService.ts b/src/vs/platform/environment/node/environmentService.ts
|
||||
index ae9e7e1..3c6c6c5 100644
|
||||
--- a/src/vs/platform/environment/node/environmentService.ts
|
||||
+++ b/src/vs/platform/environment/node/environmentService.ts
|
||||
@@ -11,2 +11,3 @@ import { getUserDataPath } from './userDataPath.js';
|
||||
import { IProductService } from '../../product/common/productService.js';
|
||||
+import { getUserStatePath } from './userStatePath.js';
|
||||
|
||||
@@ -18,3 +19,4 @@ export class NativeEnvironmentService extends AbstractNativeEnvironmentService {
|
||||
tmpDir: tmpdir(),
|
||||
- userDataDir: getUserDataPath(args, productService.nameShort)
|
||||
+ userDataDir: getUserDataPath(args, productService.nameShort),
|
||||
+ userStateDir: getUserStatePath(args, productService.nameShort)
|
||||
}, productService);
|
||||
diff --git a/src/vs/platform/environment/node/userStatePath.ts b/src/vs/platform/environment/node/userStatePath.ts
|
||||
new file mode 100644
|
||||
index 0000000..53f9e2f
|
||||
--- /dev/null
|
||||
+++ b/src/vs/platform/environment/node/userStatePath.ts
|
||||
@@ -0,0 +1,42 @@
|
||||
+import { homedir } from 'os';
|
||||
+import { NativeParsedArgs } from '../common/argv.js';
|
||||
+
|
||||
+import { resolve, isAbsolute, join } from 'path';
|
||||
+
|
||||
+const cwd = process.env['VSCODE_CWD'] || process.cwd();
|
||||
+
|
||||
+export function getUserStatePath(cliArgs: NativeParsedArgs, productName: string): string {
|
||||
+ const userStatePath = doGetUserStatePath(cliArgs, productName);
|
||||
+ const pathsToResolve = [userStatePath];
|
||||
+
|
||||
+ if (!isAbsolute(userStatePath)) {
|
||||
+ pathsToResolve.unshift(cwd);
|
||||
+ }
|
||||
+
|
||||
+ return resolve(...pathsToResolve);
|
||||
+}
|
||||
+
|
||||
+function doGetUserStatePath(cliArgs: NativeParsedArgs, productName: string): string {
|
||||
+
|
||||
+ // 0. Running out of sources has a fixed productName
|
||||
+ if (process.env['VSCODE_DEV']) {
|
||||
+ productName = 'code-oss-dev';
|
||||
+ }
|
||||
+
|
||||
+ // 1. Support portable mode
|
||||
+ const portablePath = process.env['VSCODE_PORTABLE'];
|
||||
+ if (portablePath) {
|
||||
+ return join(portablePath, 'user-state');
|
||||
+ }
|
||||
+
|
||||
+ // 2. Support global VSCODE_APPSTATE environment variable
|
||||
+ let appStatePath = process.env['VSCODE_APPSTATE'];
|
||||
+ if (appStatePath) {
|
||||
+ return join(appStatePath, productName);
|
||||
+ }
|
||||
+
|
||||
+ // 4. Otherwise
|
||||
+ appStatePath = process.env['XDG_STATE_HOME'] || join(homedir(), '.local', 'state');
|
||||
+
|
||||
+ return join(appStatePath, productName);
|
||||
+}
|
||||
diff --git a/src/vs/platform/window/common/window.ts b/src/vs/platform/window/common/window.ts
|
||||
index fa297d1..839fd60 100644
|
||||
--- a/src/vs/platform/window/common/window.ts
|
||||
+++ b/src/vs/platform/window/common/window.ts
|
||||
@@ -443,2 +443,3 @@ export interface INativeWindowConfiguration extends IWindowConfiguration, Native
|
||||
userDataDir: string;
|
||||
+ userStateDir: string;
|
||||
|
||||
diff --git a/src/vs/platform/windows/electron-main/windowsMainService.ts b/src/vs/platform/windows/electron-main/windowsMainService.ts
|
||||
index 117dfd2..6b0458b 100644
|
||||
--- a/src/vs/platform/windows/electron-main/windowsMainService.ts
|
||||
+++ b/src/vs/platform/windows/electron-main/windowsMainService.ts
|
||||
@@ -1511,2 +1511,3 @@ export class WindowsMainService extends Disposable implements IWindowsMainServic
|
||||
userDataDir: this.environmentMainService.userDataPath,
|
||||
+ userStateDir: this.environmentMainService.userStatePath,
|
||||
|
||||
diff --git a/src/vs/workbench/services/environment/electron-browser/environmentService.ts b/src/vs/workbench/services/environment/electron-browser/environmentService.ts
|
||||
index 6cfa517..46286c6 100644
|
||||
--- a/src/vs/workbench/services/environment/electron-browser/environmentService.ts
|
||||
+++ b/src/vs/workbench/services/environment/electron-browser/environmentService.ts
|
||||
@@ -153,3 +153,3 @@ export class NativeWorkbenchEnvironmentService extends AbstractNativeEnvironment
|
||||
) {
|
||||
- super(configuration, { homeDir: configuration.homeDir, tmpDir: configuration.tmpDir, userDataDir: configuration.userDataDir }, productService);
|
||||
+ super(configuration, { homeDir: configuration.homeDir, tmpDir: configuration.tmpDir, userDataDir: configuration.userDataDir, userStateDir: configuration.userStateDir }, productService);
|
||||
}
|
||||
diff --git a/src/vs/workbench/services/workingCopy/test/electron-browser/workingCopyBackupService.test.ts b/src/vs/workbench/services/workingCopy/test/electron-browser/workingCopyBackupService.test.ts
|
||||
index 6b7307e..c74476a 100644
|
||||
--- a/src/vs/workbench/services/workingCopy/test/electron-browser/workingCopyBackupService.test.ts
|
||||
+++ b/src/vs/workbench/services/workingCopy/test/electron-browser/workingCopyBackupService.test.ts
|
||||
@@ -74,2 +74,3 @@ const TestNativeWindowConfiguration: INativeWindowConfiguration = {
|
||||
userDataDir: joinPath(homeDir, product.nameShort).fsPath,
|
||||
+ userStateDir: joinPath(homeDir, product.nameShort).fsPath,
|
||||
profiles: { profile: NULL_PROFILE, all: [NULL_PROFILE], home: homeDir },
|
||||
File diff suppressed because it is too large
Load Diff
9
patches/linux/fix-global-policy.patch
Normal file
9
patches/linux/fix-global-policy.patch
Normal file
@@ -0,0 +1,9 @@
|
||||
diff --git a/src/vs/base/common/policy.ts b/src/vs/base/common/policy.ts
|
||||
index 8141b0f..33599d9 100644
|
||||
--- a/src/vs/base/common/policy.ts
|
||||
+++ b/src/vs/base/common/policy.ts
|
||||
@@ -11,3 +11,3 @@ import { IDefaultAccount } from './defaultAccount.js';
|
||||
*/
|
||||
-export const LINUX_SYSTEM_POLICY_FILE_PATH = '/etc/vscode/policy.json';
|
||||
+export const LINUX_SYSTEM_POLICY_FILE_PATH = '/etc/!!GLOBAL_DIRNAME!!/policy.json';
|
||||
|
||||
14
patches/linux/fix-npm-postinstall.patch
Normal file
14
patches/linux/fix-npm-postinstall.patch
Normal file
@@ -0,0 +1,14 @@
|
||||
diff --git a/build/npm/postinstall.ts b/build/npm/postinstall.ts
|
||||
index c4bbbf5..2a1c6c5 100644
|
||||
--- a/build/npm/postinstall.ts
|
||||
+++ b/build/npm/postinstall.ts
|
||||
@@ -52,5 +52,6 @@ function npmInstall(dir: string, opts?: child_process.SpawnSyncOptions) {
|
||||
opts.cwd = root;
|
||||
- if (process.env['npm_config_arch'] === 'arm64') {
|
||||
- run('sudo', ['docker', 'run', '--rm', '--privileged', 'multiarch/qemu-user-static', '--reset', '-p', 'yes'], opts);
|
||||
- }
|
||||
+ const emulateArchList = ['arm64', 'arm', 'ppc64', 'riscv64', 's390x', 'loong64'];
|
||||
+ if (process.env['DISABLE_QEMU'] !== 'true' && !!process.env['npm_config_arch'] && emulateArchList.includes(process.env['npm_config_arch'])) {
|
||||
+ run('sudo', ['docker', 'run', '--rm', '--privileged', 'tonistiigi/binfmt:latest', '--install', 'all'], opts);
|
||||
+ }
|
||||
run('sudo', [
|
||||
@@ -1,25 +1,18 @@
|
||||
diff --git a/src/bootstrap-esm.ts b/src/bootstrap-esm.ts
|
||||
index f2cf101..d974f65 100644
|
||||
index 54681a2..39f72ad 100644
|
||||
--- a/src/bootstrap-esm.ts
|
||||
+++ b/src/bootstrap-esm.ts
|
||||
@@ -8,3 +8,3 @@ import * as fs from 'fs';
|
||||
import { fileURLToPath } from 'url';
|
||||
-import { createRequire, register } from 'node:module';
|
||||
@@ -6,3 +6,3 @@
|
||||
import * as fs from 'node:fs';
|
||||
-import { register } from 'node:module';
|
||||
+import * as Module from 'node:module';
|
||||
import { product, pkg } from './bootstrap-meta.js';
|
||||
@@ -14,3 +14,4 @@ import { INLSConfiguration } from './vs/nls.js';
|
||||
|
||||
-const require = createRequire(import.meta.url);
|
||||
+// @ts-ignore
|
||||
+const require = Module.createRequire(import.meta.url);
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
@@ -18,3 +19,4 @@ const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
@@ -13,3 +13,3 @@ import { INLSConfiguration } from './vs/nls.js';
|
||||
// Install a hook to module resolution to map 'fs' to 'original-fs'
|
||||
-if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) {
|
||||
+// @ts-ignore
|
||||
+if (Module.register && (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron'])) {
|
||||
const jsCode = `
|
||||
@@ -33,3 +35,4 @@ if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) {
|
||||
@@ -28,3 +28,4 @@ if (process.env['ELECTRON_RUN_AS_NODE'] || process.versions['electron']) {
|
||||
}`;
|
||||
- register(`data:text/javascript;base64,${Buffer.from(jsCode).toString('base64')}`, import.meta.url);
|
||||
+ // @ts-ignore
|
||||
|
||||
@@ -12,11 +12,11 @@ index a7142fe..526ca17 100644
|
||||
+ }
|
||||
}
|
||||
diff --git a/src/vs/base/parts/ipc/node/ipc.net.ts b/src/vs/base/parts/ipc/node/ipc.net.ts
|
||||
index 629f2c4..ec1acba 100644
|
||||
index e58f678..add8048 100644
|
||||
--- a/src/vs/base/parts/ipc/node/ipc.net.ts
|
||||
+++ b/src/vs/base/parts/ipc/node/ipc.net.ts
|
||||
@@ -774,3 +774,3 @@ function unmask(buffer: VSBuffer, mask: number): void {
|
||||
@@ -839,3 +839,3 @@ function unmask(buffer: VSBuffer, mask: number): void {
|
||||
// Related to https://github.com/microsoft/vscode/issues/30624
|
||||
-export const XDG_RUNTIME_DIR = <string | undefined>process.env['XDG_RUNTIME_DIR'];
|
||||
+export const XDG_RUNTIME_DIR = <string | undefined>(!!process.env.FLATPAK_ID ? join(process.env['XDG_RUNTIME_DIR'] as string, 'app', process.env.FLATPAK_ID) : process.env['XDG_RUNTIME_DIR']);
|
||||
-export const XDG_RUNTIME_DIR = process.env['XDG_RUNTIME_DIR'];
|
||||
+export const XDG_RUNTIME_DIR = !!process.env.FLATPAK_ID ? join(process.env['XDG_RUNTIME_DIR'] as string, 'app', process.env.FLATPAK_ID) : process.env['XDG_RUNTIME_DIR'];
|
||||
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
diff --git a/build/npm/postinstall.js b/build/npm/postinstall.js
|
||||
index c1f22aa5002..a6fb2728b1f 100644
|
||||
--- a/build/npm/postinstall.js
|
||||
+++ b/build/npm/postinstall.js
|
||||
@@ -53,8 +53,10 @@ function npmInstall(dir, opts) {
|
||||
log(dir, `Installing dependencies inside container ${process.env['VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME']}...`);
|
||||
|
||||
opts.cwd = root;
|
||||
- if (process.env['npm_config_arch'] === 'arm64') {
|
||||
- run('sudo', ['docker', 'run', '--rm', '--privileged', 'multiarch/qemu-user-static', '--reset', '-p', 'yes'], opts);
|
||||
+ if ((process.env['npm_config_arch'] === 'arm64' || process.env['npm_config_arch'] === 'arm' || process.env['npm_config_arch'] === 'ppc64' || process.env['npm_config_arch'] === 'riscv64' || process.env['npm_config_arch'] === 's390x') && process.env['DISABLE_QEMU'] !== 'true') {
|
||||
+ run('sudo', ['docker', 'run', '--rm', '--privileged', 'tonistiigi/binfmt:latest', '--install', 'all'], opts);
|
||||
+ } else if (process.env['npm_config_arch'] === 'loong64') {
|
||||
+ run('sudo', ['docker', 'run', '--rm', '--privileged', 'loongcr.lcpu.dev/multiarch/archlinux', '--reset', '-p', 'yes'], opts);
|
||||
}
|
||||
run('sudo', ['docker', 'run', '-e', 'GITHUB_TOKEN', '-v', `${process.env['VSCODE_HOST_MOUNT']}:/root/vscode`, '-v', `${process.env['VSCODE_HOST_MOUNT']}/.build/.netrc:/root/.netrc`, '-w', path.resolve('/root/vscode', dir), process.env['VSCODE_REMOTE_DEPENDENCIES_CONTAINER_NAME'], 'sh', '-c', `\"chown -R root:root ${path.resolve('/root/vscode', dir)} && npm i -g node-gyp-build && npm ci\"`], opts);
|
||||
run('sudo', ['chown', '-R', `${userinfo.uid}:${userinfo.gid}`, `${path.resolve(root, dir)}`], opts);
|
||||
@@ -1,72 +0,0 @@
|
||||
diff --git a/src/main.ts b/src/main.ts
|
||||
index fdc424e..46b014b 100644
|
||||
--- a/src/main.ts
|
||||
+++ b/src/main.ts
|
||||
@@ -8,2 +8,3 @@ import * as fs from 'original-fs';
|
||||
import * as os from 'os';
|
||||
+import { createRequire } from 'node:module';
|
||||
import { performance } from 'perf_hooks';
|
||||
@@ -24,2 +25,3 @@ import { NativeParsedArgs } from './vs/platform/environment/common/argv.js';
|
||||
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
||||
+const require = createRequire(import.meta.url);
|
||||
|
||||
@@ -112,2 +114,14 @@ registerListeners();
|
||||
|
||||
+function resolveUserProduct() {
|
||||
+ const userProductPath = path.join(userDataPath, 'product.json');
|
||||
+
|
||||
+ try {
|
||||
+ // Assign the product configuration to the global scope
|
||||
+ const productJson = require(userProductPath);
|
||||
+ // @ts-expect-error
|
||||
+ globalThis._VSCODE_USER_PRODUCT_JSON = productJson;
|
||||
+ } catch (ex) {
|
||||
+ }
|
||||
+}
|
||||
+
|
||||
/**
|
||||
@@ -208,2 +222,3 @@ async function startup(codeCachePath: string | undefined, nlsConfig: INLSConfigu
|
||||
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 d27cdce..d758c5e 100644
|
||||
--- a/src/vs/platform/product/common/product.ts
|
||||
+++ b/src/vs/platform/product/common/product.ts
|
||||
@@ -31,2 +31,36 @@ else if (globalThis._VSCODE_PRODUCT_JSON && globalThis._VSCODE_PACKAGE_JSON) {
|
||||
|
||||
+ const { serviceUrl, controlUrl, extensionUrlTemplate, resourceUrlTemplate } = product.extensionsGallery || {};
|
||||
+
|
||||
+ Object.assign(product, {
|
||||
+ extensionsGallery: {
|
||||
+ serviceUrl: env['VSCODE_GALLERY_SERVICE_URL'] || serviceUrl,
|
||||
+ controlUrl: env['VSCODE_GALLERY_CONTROL_URL'] || controlUrl,
|
||||
+ extensionUrlTemplate: env['VSCODE_GALLERY_EXTENSION_URL_TEMPLATE'] || extensionUrlTemplate,
|
||||
+ resourceUrlTemplate: env['VSCODE_GALLERY_RESOURCE_URL_TEMPLATE'] || resourceUrlTemplate,
|
||||
+ }
|
||||
+ });
|
||||
+
|
||||
+ // 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
|
||||
@@ -1,51 +1,17 @@
|
||||
diff --git a/build/lib/compilation.js b/build/lib/compilation.js
|
||||
index 61a6d28..831b7c2 100644
|
||||
--- a/build/lib/compilation.js
|
||||
+++ b/build/lib/compilation.js
|
||||
@@ -145,24 +145,3 @@ function compileTask(src, out, build, options = {}) {
|
||||
}
|
||||
- // mangle: TypeScript to TypeScript
|
||||
- let mangleStream = event_stream_1.default.through();
|
||||
- if (build && !options.disableMangle) {
|
||||
- let ts2tsMangler = new index_1.Mangler(compile.projectPath, (...data) => (0, fancy_log_1.default)(ansi_colors_1.default.blue('[mangler]'), ...data), { mangleExports: true, manglePrivateFields: true });
|
||||
- const newContentsByFileName = ts2tsMangler.computeNewFileContents(new Set(['saveState']));
|
||||
- mangleStream = event_stream_1.default.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 a1de9f1..084fd2f 100644
|
||||
index 948c6b4..66ecdd3 100644
|
||||
--- a/build/lib/compilation.ts
|
||||
+++ b/build/lib/compilation.ts
|
||||
@@ -18,4 +18,2 @@ import File from 'vinyl';
|
||||
import * as task from './task';
|
||||
-import { Mangler } from './mangle/index';
|
||||
-import { RawSourceMap } from 'source-map';
|
||||
import ts = require('typescript');
|
||||
@@ -133,27 +131,3 @@ export function compileTask(src: string, out: string, build: boolean, options: {
|
||||
@@ -131,27 +131,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 });
|
||||
- let ts2tsMangler: Mangler | undefined = 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 tsNormalPath = (ts as TypeScriptExt).normalizePath(data.path);
|
||||
- const newContents = (await newContentsByFileName).get(tsNormalPath);
|
||||
- if (newContents !== undefined) {
|
||||
- data.contents = Buffer.from(newContents.out);
|
||||
@@ -57,7 +23,7 @@ index a1de9f1..084fd2f 100644
|
||||
- (await newContentsByFileName).clear();
|
||||
-
|
||||
- this.push(null);
|
||||
- (<any>ts2tsMangler) = undefined;
|
||||
- ts2tsMangler = undefined;
|
||||
- });
|
||||
- }
|
||||
-
|
||||
|
||||
36
patches/sourcemaps.patch
Normal file
36
patches/sourcemaps.patch
Normal file
@@ -0,0 +1,36 @@
|
||||
diff --git a/build/lib/extensions.ts b/build/lib/extensions.ts
|
||||
index 24462a3..1daa855 100644
|
||||
--- a/build/lib/extensions.ts
|
||||
+++ b/build/lib/extensions.ts
|
||||
@@ -33,4 +33,5 @@ const require = createRequire(import.meta.url);
|
||||
const root = path.dirname(path.dirname(import.meta.dirname));
|
||||
+const product = JSON.parse(fs.readFileSync(path.join(root, 'product.json'), 'utf8'));
|
||||
const commit = getVersion(root);
|
||||
-const sourceMappingURLBase = `https://main.vscode-cdn.net/sourcemaps/${commit}`;
|
||||
+const sourceMappingURLBase = `https://github.com/VSCodium/sourcemaps/releases/download/${product.quality}-${commit}`;
|
||||
|
||||
@@ -181,3 +182,3 @@ function fromLocalWebpack(extensionPath: string, webpackConfigFileName: string,
|
||||
data.contents = Buffer.from(contents.replace(/\n\/\/# sourceMappingURL=(.*)$/gm, function (_m, g1) {
|
||||
- return `\n//# sourceMappingURL=${sourceMappingURLBase}/extensions/${path.basename(extensionPath)}/${relativeOutputPath}/${g1}`;
|
||||
+ return `\n//# sourceMappingURL=${sourceMappingURLBase}/extensions-${path.basename(extensionPath).replaceAll('/', '-')}-${relativeOutputPath.replaceAll('/', '-')}-${g1.replaceAll('/', '-')}`;
|
||||
}), 'utf8');
|
||||
diff --git a/build/lib/optimize.ts b/build/lib/optimize.ts
|
||||
index 58b8e07..f452614 100644
|
||||
--- a/build/lib/optimize.ts
|
||||
+++ b/build/lib/optimize.ts
|
||||
@@ -229,3 +229,3 @@ export function bundleTask(opts: IBundleTaskOpts): () => NodeJS.ReadWriteStream
|
||||
export function minifyTask(src: string, sourceMapBaseUrl?: string): (cb: any) => void {
|
||||
- const sourceMappingURL = sourceMapBaseUrl ? ((f: any) => `${sourceMapBaseUrl}/${f.relative}.map`) : undefined;
|
||||
+ const sourceMappingURL = sourceMapBaseUrl ? ((f: any) => `${sourceMapBaseUrl}-${f.relative.replaceAll('/', '-')}.map`) : undefined;
|
||||
const target = getBuildTarget();
|
||||
diff --git a/build/lib/util.ts b/build/lib/util.ts
|
||||
index f1354b8..dda8c37 100644
|
||||
--- a/build/lib/util.ts
|
||||
+++ b/build/lib/util.ts
|
||||
@@ -285,4 +285,4 @@ export function rewriteSourceMappingURL(sourceMappingURLBase: string): NodeJS.Re
|
||||
const contents = (f.contents as Buffer).toString('utf8');
|
||||
- const str = `//# sourceMappingURL=${sourceMappingURLBase}/${path.dirname(f.relative).replace(/\\/g, '/')}/$1`;
|
||||
- f.contents = Buffer.from(contents.replace(/\n\/\/# sourceMappingURL=(.*)$/gm, str));
|
||||
+ const fp = path.dirname(f.relative).replace(/\\/g, '/').replaceAll('/', '-');
|
||||
+ f.contents = Buffer.from(contents.replace(/\n\/\/# sourceMappingURL=(.*)$/gm, (_m, p) => `//# sourceMappingURL=${sourceMappingURLBase}/${fp}-${p.replaceAll('/', '-')}`));
|
||||
return f;
|
||||
59
patches/telemetry.patch
Normal file
59
patches/telemetry.patch
Normal file
@@ -0,0 +1,59 @@
|
||||
diff --git a/src/vs/platform/telemetry/common/telemetryService.ts b/src/vs/platform/telemetry/common/telemetryService.ts
|
||||
index ef676bd..4feb98b 100644
|
||||
--- a/src/vs/platform/telemetry/common/telemetryService.ts
|
||||
+++ b/src/vs/platform/telemetry/common/telemetryService.ts
|
||||
@@ -219,3 +219,3 @@ configurationRegistry.registerConfiguration({
|
||||
'markdownDescription': getTelemetryLevelSettingDescription(),
|
||||
- 'default': TelemetryConfiguration.ON,
|
||||
+ 'default': TelemetryConfiguration.OFF,
|
||||
'restricted': true,
|
||||
@@ -245,3 +245,3 @@ configurationRegistry.registerConfiguration({
|
||||
localize('telemetry.enableTelemetryMd', "Enable diagnostic data to be collected. This helps us to better understand how {0} is performing and where improvements need to be made. [Read more]({1}) about what we collect and our privacy statement.", product.nameLong, product.privacyStatementUrl),
|
||||
- 'default': true,
|
||||
+ 'default': false,
|
||||
'restricted': true,
|
||||
diff --git a/src/vs/workbench/browser/workbench.contribution.ts b/src/vs/workbench/browser/workbench.contribution.ts
|
||||
index d09ab3f..f37edd6 100644
|
||||
--- a/src/vs/workbench/browser/workbench.contribution.ts
|
||||
+++ b/src/vs/workbench/browser/workbench.contribution.ts
|
||||
@@ -496,3 +496,3 @@ const registry = Registry.as<IConfigurationRegistry>(ConfigurationExtensions.Con
|
||||
'description': localize('enableNaturalLanguageSearch', "Controls whether the command palette should include similar commands. You must have an extension installed that provides Natural Language support."),
|
||||
- 'default': true
|
||||
+ 'default': false
|
||||
},
|
||||
diff --git a/src/vs/workbench/contrib/editTelemetry/browser/editTelemetry.contribution.ts b/src/vs/workbench/contrib/editTelemetry/browser/editTelemetry.contribution.ts
|
||||
index 16fd396..587e1e3 100644
|
||||
--- a/src/vs/workbench/contrib/editTelemetry/browser/editTelemetry.contribution.ts
|
||||
+++ b/src/vs/workbench/contrib/editTelemetry/browser/editTelemetry.contribution.ts
|
||||
@@ -28,3 +28,3 @@ configurationRegistry.registerConfiguration({
|
||||
type: 'boolean',
|
||||
- default: true,
|
||||
+ default: false,
|
||||
tags: ['experimental'],
|
||||
diff --git a/src/vs/workbench/contrib/preferences/common/preferencesContribution.ts b/src/vs/workbench/contrib/preferences/common/preferencesContribution.ts
|
||||
index e5cec6f..9c9e169 100644
|
||||
--- a/src/vs/workbench/contrib/preferences/common/preferencesContribution.ts
|
||||
+++ b/src/vs/workbench/contrib/preferences/common/preferencesContribution.ts
|
||||
@@ -113,3 +113,3 @@ registry.registerConfiguration({
|
||||
'description': nls.localize('enableNaturalLanguageSettingsSearch', "Controls whether to enable the natural language search mode for settings. The natural language search is provided by a Microsoft online service."),
|
||||
- 'default': true,
|
||||
+ 'default': false,
|
||||
'scope': ConfigurationScope.WINDOW,
|
||||
diff --git a/src/vs/workbench/electron-browser/desktop.contribution.ts b/src/vs/workbench/electron-browser/desktop.contribution.ts
|
||||
index 3517cc1..7b365fa 100644
|
||||
--- a/src/vs/workbench/electron-browser/desktop.contribution.ts
|
||||
+++ b/src/vs/workbench/electron-browser/desktop.contribution.ts
|
||||
@@ -342,3 +342,3 @@ import { registerWorkbenchContribution2, WorkbenchPhase } from '../common/contri
|
||||
'description': localize('telemetry.enableCrashReporting', "Enable crash reports to be collected. This helps us improve stability. \nThis option requires restart to take effect."),
|
||||
- 'default': true,
|
||||
+ 'default': false,
|
||||
'tags': ['usesOnlineServices', 'telemetry'],
|
||||
diff --git a/src/vs/workbench/services/assignment/common/assignmentService.ts b/src/vs/workbench/services/assignment/common/assignmentService.ts
|
||||
index 4a3d96b..e587d5b 100644
|
||||
--- a/src/vs/workbench/services/assignment/common/assignmentService.ts
|
||||
+++ b/src/vs/workbench/services/assignment/common/assignmentService.ts
|
||||
@@ -277,3 +277,3 @@ registry.registerConfiguration({
|
||||
'description': localize('workbench.enableExperiments', "Fetches experiments to run from a Microsoft online service."),
|
||||
- 'default': true,
|
||||
+ 'default': false,
|
||||
'scope': ConfigurationScope.APPLICATION,
|
||||
@@ -29,16 +29,16 @@ index 0000000..1daa1fe
|
||||
+
|
||||
+export default codiumCompletionSpec;
|
||||
diff --git a/extensions/terminal-suggest/src/terminalSuggestMain.ts b/extensions/terminal-suggest/src/terminalSuggestMain.ts
|
||||
index 863cd21..a33e440 100644
|
||||
index 95654ff..202474b 100644
|
||||
--- a/extensions/terminal-suggest/src/terminalSuggestMain.ts
|
||||
+++ b/extensions/terminal-suggest/src/terminalSuggestMain.ts
|
||||
@@ -30,2 +30,4 @@ import codeTunnelCompletionSpec from './completions/code-tunnel';
|
||||
import codeTunnelInsidersCompletionSpec from './completions/code-tunnel-insiders';
|
||||
@@ -13,2 +13,4 @@ import codeCompletionSpec from './completions/code';
|
||||
import codeInsidersCompletionSpec from './completions/code-insiders';
|
||||
+import codiumCompletionSpec from './completions/codium';
|
||||
+import codiumInsidersCompletionSpec from './completions/codium-insiders';
|
||||
|
||||
@@ -50,2 +52,4 @@ export const availableSpecs: Fig.Spec[] = [
|
||||
import codeTunnelCompletionSpec from './completions/code-tunnel';
|
||||
@@ -76,2 +78,4 @@ export const availableSpecs: Fig.Spec[] = [
|
||||
npxCompletionSpec,
|
||||
+ codiumInsidersCompletionSpec,
|
||||
+ codiumCompletionSpec,
|
||||
setLocationSpec,
|
||||
pnpmCompletionSpec,
|
||||
|
||||
@@ -1,9 +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 a2561be..a50958e 100644
|
||||
index ae4fd9c..3744826 100644
|
||||
--- a/src/vs/platform/update/electron-main/updateService.win32.ts
|
||||
+++ b/src/vs/platform/update/electron-main/updateService.win32.ts
|
||||
@@ -56,3 +56,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -58,3 +58,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
get cachePath(): Promise<string> {
|
||||
- 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 fs.promises.mkdir(result, { recursive: true }).then(() => result);
|
||||
return mkdir(result, { recursive: true }).then(() => result);
|
||||
|
||||
@@ -1,206 +1,203 @@
|
||||
diff --git a/.npmrc b/.npmrc
|
||||
index 05f84f8..62dbfd8 100644
|
||||
index e4a5cc2..e3be238 100644
|
||||
--- a/.npmrc
|
||||
+++ b/.npmrc
|
||||
@@ -1,3 +1,3 @@
|
||||
disturl="https://electronjs.org/headers"
|
||||
-target="34.5.1"
|
||||
+target="34.5.4"
|
||||
ms_build_id="11369351"
|
||||
-target="39.2.3"
|
||||
+target="39.2.7"
|
||||
ms_build_id="12895514"
|
||||
diff --git a/build/checksums/electron.txt b/build/checksums/electron.txt
|
||||
index 9bfbc95..086fa93 100644
|
||||
index ace84ba..5da4475 100644
|
||||
--- a/build/checksums/electron.txt
|
||||
+++ b/build/checksums/electron.txt
|
||||
@@ -1,75 +1,75 @@
|
||||
-249f89d35cb6bd74edc07551b141bffc2045847c4cf9e57e21089d5082bdb4b4 *chromedriver-v34.5.1-darwin-arm64.zip
|
||||
-7ff68fd26f225deaa8c6fbcd76dc80a00f9ef73f9118075f3e2ab54dfb0c810e *chromedriver-v34.5.1-darwin-x64.zip
|
||||
-749f692603527e8743c81d05eb2de2e281e2b03b148ec00379f13e8da17ca7a4 *chromedriver-v34.5.1-linux-arm64.zip
|
||||
-14bcc062457cf31d606451aa7fae1baae720a944dead06231fe2a55f17d39966 *chromedriver-v34.5.1-linux-armv7l.zip
|
||||
-57cf85eb9dafe28ccdd8ba4a095cb1fd5b8c71f0743bf532b132bc45e56630ef *chromedriver-v34.5.1-linux-x64.zip
|
||||
-e90e10cf45f4aaba1d8b763279b7c4b85e1132bdc9faef834ffda41ee1460df8 *chromedriver-v34.5.1-mas-arm64.zip
|
||||
-1206e1c71ec0360be9531e48c0292ffac37e40d8d7a48dd38f1108d3d3ccc0c0 *chromedriver-v34.5.1-mas-x64.zip
|
||||
-1b226994cfa02663f23edfb0c8a4d3e218b7c4d037a90bbb4800a7c396b67d9f *chromedriver-v34.5.1-win32-arm64.zip
|
||||
-dc38291ccad6f715a82cc2ce0cfffe3bb37612fa86013d405e878ea74e4c5fb8 *chromedriver-v34.5.1-win32-ia32.zip
|
||||
-3ccc7e4b65adde12e26b7affeea30b9597b8841fc2a4d3c50c042e80b85853ac *chromedriver-v34.5.1-win32-x64.zip
|
||||
-71fe75d29208ca9e38754d903af4d5d6e80c62b04097605c36ebf722c2447842 *electron-api.json
|
||||
-009c833bd014b6f873974c5d3189905e705ebcb188a90ae05b60ea252319a46e *electron-v34.5.1-darwin-arm64-dsym-snapshot.zip
|
||||
-c5f5722c55e75e9860cb203e03626c04f30f272ef17b735946fd723600ee07ea *electron-v34.5.1-darwin-arm64-dsym.zip
|
||||
-06de49512ac4b0b4e374bdcd296e8c70584fb47207bb6caed9122e3cef5da8f7 *electron-v34.5.1-darwin-arm64-symbols.zip
|
||||
-78411442b5bd2252cf4605b6a44c35ad6a06807d03c63c61726ad7693c6d5893 *electron-v34.5.1-darwin-arm64.zip
|
||||
-e90b292974251336ae8990a74977065ac4dd6388836ccd1cfee3a1599a37bd39 *electron-v34.5.1-darwin-x64-dsym-snapshot.zip
|
||||
-35a0ac52f6036cd0a7d4bc9848477b653095b210497e36797427ff8fe3194c7f *electron-v34.5.1-darwin-x64-dsym.zip
|
||||
-0457bb7413c770245912342a6dd07c3588f586e8d868e0dd534179e22b07898c *electron-v34.5.1-darwin-x64-symbols.zip
|
||||
-8d4bc5f4495ef952589891b6c70a86d8a9d143a1d4d90d15dd81926639822031 *electron-v34.5.1-darwin-x64.zip
|
||||
-73be60acd1f3773f87b283eef8c26e257f16efd46a179c143311b1b9fcb4a61a *electron-v34.5.1-linux-arm64-debug.zip
|
||||
-53677a8f437b36b79481eb6c6f9f7557606af04ef94cce751620e8206dad36a8 *electron-v34.5.1-linux-arm64-symbols.zip
|
||||
-4c0d5833faa01cc3a586087b82f719c2fe331515d26bb3fa098dc79bd3ea153f *electron-v34.5.1-linux-arm64.zip
|
||||
-73be60acd1f3773f87b283eef8c26e257f16efd46a179c143311b1b9fcb4a61a *electron-v34.5.1-linux-armv7l-debug.zip
|
||||
-6eb39e79bd52f566d18a1140242c7484b89d7cd77573b92fc2e2993b51d6fbf1 *electron-v34.5.1-linux-armv7l-symbols.zip
|
||||
-7ed517eeaff56960a01fe53fc445e4118135eeb8267d61c37ef9df943dcc35fb *electron-v34.5.1-linux-armv7l.zip
|
||||
-582a2206cf1e09baa8511ca21b697cc49fddd76ef7723406b449b130b3d21730 *electron-v34.5.1-linux-x64-debug.zip
|
||||
-7b5d60f3d6c4ef84b0855148f14295624527cc27ab395bf54640a06eb3f7a5b0 *electron-v34.5.1-linux-x64-symbols.zip
|
||||
-3ae6f75fa08f5c1bdb7bbcec4dc9cf7d7f53ffcf6a4292e4a482b2ce515505e7 *electron-v34.5.1-linux-x64.zip
|
||||
-e6ff5c411167c0cf8c82cd737f8d0c863f4371e8e1fe213d04b502584411d239 *electron-v34.5.1-mas-arm64-dsym-snapshot.zip
|
||||
-8d1cb700f23d8ac7ec078d4d5d07018dfae594346e7bc5652356a5fe242a2b44 *electron-v34.5.1-mas-arm64-dsym.zip
|
||||
-3b74614ef81382e63f189aceb87f6c3830a23ffed046d06f672d0c1a1b361e96 *electron-v34.5.1-mas-arm64-symbols.zip
|
||||
-eabc29959b914f623f5f2e4011cb4e35182ed9528dc30664e59ca37c806c1d7d *electron-v34.5.1-mas-arm64.zip
|
||||
-ee3de3f5a96efb0197022557ec2de36d92d7423426636577864b1ae744053dea *electron-v34.5.1-mas-x64-dsym-snapshot.zip
|
||||
-a3db9cc489720701e3f35d2f7425c97e24f74fdb78a38bc0950b68b3f82aebb2 *electron-v34.5.1-mas-x64-dsym.zip
|
||||
-a9131003b1ac4a3c3327ff405e1cd8f3e61dc8a73cfae3e05cb5eb0f2d872bee *electron-v34.5.1-mas-x64-symbols.zip
|
||||
-1b44d42dbe9cb6bc5c2fb77f708d639e01f8ec6f74b95710fc6c8dbd70181f3b *electron-v34.5.1-mas-x64.zip
|
||||
-4495d8bf4d3dbb5ebc3ad135f4658e09d706368d002af9f24d236e1a0a28e994 *electron-v34.5.1-win32-arm64-pdb.zip
|
||||
-2c31fa61d24e736f3e327eba4d354c09471fba5aa277e215f7e2ea275b323a80 *electron-v34.5.1-win32-arm64-symbols.zip
|
||||
-c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.1-win32-arm64-toolchain-profile.zip
|
||||
-c0cff1c83094a430f1b202bb5035b51ebcefa54cd53d798bb63de9cb96abf223 *electron-v34.5.1-win32-arm64.zip
|
||||
-d662fb7afc288aa15d929fecbb391c7067448ea86b4bf01e941fa8da744a8167 *electron-v34.5.1-win32-ia32-pdb.zip
|
||||
-2cd1f41a3297fc271e426bd0cc5f8c3474f73438a7a303186701cb7d8b26bdb6 *electron-v34.5.1-win32-ia32-symbols.zip
|
||||
-c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.1-win32-ia32-toolchain-profile.zip
|
||||
-cf86edf6cdb47d5cfb00c4eb68f7a18d70bf9e33f1f6a0481d51673cf6af7050 *electron-v34.5.1-win32-ia32.zip
|
||||
-9dd0e6f6ef53f8bd4d7ecd97a3bfc7e8a98de8771986071692afc57d57d199d6 *electron-v34.5.1-win32-x64-pdb.zip
|
||||
-f50ab96420bddd43bd5dbd56130cfcd69eea2dba18bfd3c8c3b4bb189bb033e6 *electron-v34.5.1-win32-x64-symbols.zip
|
||||
-c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.1-win32-x64-toolchain-profile.zip
|
||||
-da606d1a085a52ddf5592110b58284fc3bf49f273f6f2e7d6a8341c98af8498e *electron-v34.5.1-win32-x64.zip
|
||||
-793ae7822cbdad6270c318f3c93c0e8b4f9276dea6dd87db2d1297cadc7381c6 *electron.d.ts
|
||||
-1d1465b4f6a3919a6e8e2fb8612b29f61b09d80f386a8fa2b806859b9be0d0bf *ffmpeg-v34.5.1-darwin-arm64.zip
|
||||
-e138b6422dd1648cbe817b99f59476c65ed9946d50e50094124eae660b416378 *ffmpeg-v34.5.1-darwin-x64.zip
|
||||
-346101611df565cabcfaa3515b1db3f70d0891ba8f1241074dd09b69e12630d2 *ffmpeg-v34.5.1-linux-arm64.zip
|
||||
-5c77c712ee93bd26706daa78f0651d9b4ba8e4b46a115908f29d2742a2e1b9f0 *ffmpeg-v34.5.1-linux-armv7l.zip
|
||||
-f5ab70d399d528450c9499966e88ce02a368bb8c7dd7ac0676a6628fa29b3f14 *ffmpeg-v34.5.1-linux-x64.zip
|
||||
-10e3424c01b946274fa8c651d4ea79032637feca4c8712ebb1c00f392711594f *ffmpeg-v34.5.1-mas-arm64.zip
|
||||
-4db0373915c2c2a055bd04755acdbcd08e00456f1fb92fefc0e05cd7fb48e4fa *ffmpeg-v34.5.1-mas-x64.zip
|
||||
-c8cca82fc9315f86ffb60b39e824ebec7f98361f8773ea0618d9feea92b88412 *ffmpeg-v34.5.1-win32-arm64.zip
|
||||
-c8cca82fc9315f86ffb60b39e824ebec7f98361f8773ea0618d9feea92b88412 *ffmpeg-v34.5.1-win32-ia32.zip
|
||||
-c8cca82fc9315f86ffb60b39e824ebec7f98361f8773ea0618d9feea92b88412 *ffmpeg-v34.5.1-win32-x64.zip
|
||||
-9ae3a56bf29d9704cd8cf32924aad89414f28d439e61dd54bdd8b4259b8d0b1d *hunspell_dictionaries.zip
|
||||
-691e23913b7dbde1f9c9b6e9f13f06353d5c7927cbab6d48b7de43e76e5eacd8 *libcxx-objects-v34.5.1-linux-arm64.zip
|
||||
-eaaa18779a96873daeece21c7c823d1f5d4759f8eca79dbbbf2055635df6112f *libcxx-objects-v34.5.1-linux-armv7l.zip
|
||||
-6a2e3dfcea9d0582ecbc2a6be124f0e830e2194111bd9aa6a9843cb956c946c4 *libcxx-objects-v34.5.1-linux-x64.zip
|
||||
-d4b70d94523ebd770009dba04c842450539a9bdc856de660a7391620d3bcc1fb *libcxx_headers.zip
|
||||
-0ed01bc1908fd8f7519ccdf636b5732c6fe2c095a6dc35a13eb6c79b9e87d7d1 *libcxxabi_headers.zip
|
||||
-f633cd0df0b08a15938ccdc77480bc28eb96fd85936ef76c343cc3f47fe74f3c *mksnapshot-v34.5.1-darwin-arm64.zip
|
||||
-a8643285a2386960ceb608ff34d6dac33942142e821e2e0c670b282389a87e53 *mksnapshot-v34.5.1-darwin-x64.zip
|
||||
-70863b79d4b7ab75d013a9192f7b23165e3e523b243632c7b55418767527e022 *mksnapshot-v34.5.1-linux-arm64-x64.zip
|
||||
-c30319434ea16416c38bbdf847432fd37fd8e1aa78c1c22b6345d02e3743c016 *mksnapshot-v34.5.1-linux-armv7l-x64.zip
|
||||
-e882e32b67501d36710da396167274158c1940afe67459ffa1d9df534a8f6df1 *mksnapshot-v34.5.1-linux-x64.zip
|
||||
-af1d08dbd3c572ae10db0d24203a28d83c87e92e966064134ec5d7770c74e3ac *mksnapshot-v34.5.1-mas-arm64.zip
|
||||
-238058875abebcb9233e609fadad76e85b79530f1bdfb60498b144fec82ff8fc *mksnapshot-v34.5.1-mas-x64.zip
|
||||
-779e494cf2088ee386bb3ffd68d5efc2de3d43e5a2e6a5a768638799c460fdab *mksnapshot-v34.5.1-win32-arm64-x64.zip
|
||||
-9f9790fab86209ca76ecfae3e20dc028bc0e49574872f6ac17b8856093811357 *mksnapshot-v34.5.1-win32-ia32.zip
|
||||
-5c39077fd59426108f15e4981c7be5ebe56aa706b9d166853225de882fee8d6e *mksnapshot-v34.5.1-win32-x64.zip
|
||||
+f68064647df820d9f207d039850cb055fddb2539a8b01838a5af787d9413dde1 *chromedriver-v34.5.4-darwin-arm64.zip
|
||||
+7bf6fe1aa4be3a9b8a6583667a8c81c1bb7e01ec62a886c2fecd1fac108fa8ab *chromedriver-v34.5.4-darwin-x64.zip
|
||||
+d5eb1a8e1748b74341acab18eb928a5e139f9a530e153c1c59b6e8383ff284bd *chromedriver-v34.5.4-linux-arm64.zip
|
||||
+5d8f205a4b326b65528bf24988457129d40f5c393b0af43410d28e252bc2170d *chromedriver-v34.5.4-linux-armv7l.zip
|
||||
+08d86fb4cd0a2ae190ef43de117fa8a1b02079b302709fc0d3d7df5b60869429 *chromedriver-v34.5.4-linux-x64.zip
|
||||
+8ef6b029dbb939162ef43bfceffd14f36f4674c6ac28daf2be9f29fd58eab343 *chromedriver-v34.5.4-mas-arm64.zip
|
||||
+53318dcb6d29f9e23efe88fda1fc88bc9d22aaa588538bfde42ecbc9f8c61306 *chromedriver-v34.5.4-mas-x64.zip
|
||||
+130d0fc9f96c83486ee8e37121dc1a412bfa71f65aa8ad67f6f4e4ed30cc4d1e *chromedriver-v34.5.4-win32-arm64.zip
|
||||
+00ef5fc423142150758fdb1968f0b0db996ae035c211df164e7af9422743dfae *chromedriver-v34.5.4-win32-ia32.zip
|
||||
+01f6371487d173f0b2d8b41d7aab5affa9ac7f0cc5154f1ee39ba2120e36026d *chromedriver-v34.5.4-win32-x64.zip
|
||||
+7cfbc13990047fe5917ad9cf3269f83c4759551a5c300011bf8eda3af96efabb *electron-api.json
|
||||
+194074a282320343e0997c9071f70f64cafcd6113f7741a628c45249105a0801 *electron-v34.5.4-darwin-arm64-dsym-snapshot.zip
|
||||
+cb2deebc1596cfdea6889f37c7827bcd31af9645209288b3a92d0f25b78761e8 *electron-v34.5.4-darwin-arm64-dsym.zip
|
||||
+f2402094acdc73d8123a8535f623934948662316a340ec767c3ddfd75c73dd9b *electron-v34.5.4-darwin-arm64-symbols.zip
|
||||
+92dc77f80fde9267ce2db8e7094c6e49b1766a19c3da90c25e2b5024b7a4501b *electron-v34.5.4-darwin-arm64.zip
|
||||
+8ef7c227cce20a4da7dbfc85f83f4d1af0a8d698cc9e8cea8487571e412b1591 *electron-v34.5.4-darwin-x64-dsym-snapshot.zip
|
||||
+276dce4418ad0c630c82757a5242575eff67793a10151a65c0ed81965cbf2b1c *electron-v34.5.4-darwin-x64-dsym.zip
|
||||
+a7a57b5e02f86e545dadf479e5c2652760c1cb2f9738e0f75f3d3db06e40ee1d *electron-v34.5.4-darwin-x64-symbols.zip
|
||||
+c631318672a1b6ecc9835ccf1501562380728a044a78de2fa105608a6610fa01 *electron-v34.5.4-darwin-x64.zip
|
||||
+fd49778abd8eb28b00241137db97c5c9eaf27a52aadcbff3b8832d1eedfec954 *electron-v34.5.4-linux-arm64-debug.zip
|
||||
+cef68467ee2d5e4ed0f60c44168b0e1c885582e6ff2dc6773848b6983fee5c08 *electron-v34.5.4-linux-arm64-symbols.zip
|
||||
+f4b4dcc92a0f4bf92c68571868dd13d49b33bca51f7b1352319f55f5abbf3505 *electron-v34.5.4-linux-arm64.zip
|
||||
+fd49778abd8eb28b00241137db97c5c9eaf27a52aadcbff3b8832d1eedfec954 *electron-v34.5.4-linux-armv7l-debug.zip
|
||||
+2a3a78b068ac2cbe223d9aec30012125586ea84e357ba05cab9def032ce649c5 *electron-v34.5.4-linux-armv7l-symbols.zip
|
||||
+048256f513e036df0f056c32b249b0ca48f6c3c0481b1e6bdc686df409289f8d *electron-v34.5.4-linux-armv7l.zip
|
||||
+6e108ee8b073619bf0760947f4a71c0846602aa18820593566362eaadc4f8ff5 *electron-v34.5.4-linux-x64-debug.zip
|
||||
+cc962ac6ec063d6cb222892e0e0dc1d9efdb64ac2086790e35d61f035b6d31fd *electron-v34.5.4-linux-x64-symbols.zip
|
||||
+c8c871ef0cf83e1e937afa620e9eb2fa7fc22f5a1302e9ec666923fc22bc0bd0 *electron-v34.5.4-linux-x64.zip
|
||||
+4131d194d5e7be6e1c2b6e43fd115f679264df397a1bbf653c1bbbbb83109cc0 *electron-v34.5.4-mas-arm64-dsym-snapshot.zip
|
||||
+c252bc1b97bcc50615ac3b1296152481b4deaa7f79f6b0e42a56614991695413 *electron-v34.5.4-mas-arm64-dsym.zip
|
||||
+1a435e5c0db5a52b607b57e5627d2862d67826a732ce4c2db9ecc86ff843ffd0 *electron-v34.5.4-mas-arm64-symbols.zip
|
||||
+a309cc5d77994e27c2bdd2d753642dd217e909ca0d1de336d2f72f4f89bdac6f *electron-v34.5.4-mas-arm64.zip
|
||||
+4388832d22a4f10ced28ed15daa254cb3805dbb0e33f2816a74c7b82dca93926 *electron-v34.5.4-mas-x64-dsym-snapshot.zip
|
||||
+c6d7c1b5c605db62b25bb5ee0bd6159b9e063019d970e418e3c5773c8074e6b6 *electron-v34.5.4-mas-x64-dsym.zip
|
||||
+539cd04e89ad98afa71159ba6e7e001387a5fc22ca9a1421890d8be0e1cbf8bd *electron-v34.5.4-mas-x64-symbols.zip
|
||||
+c8319f49a04c9de7792225847f0f52358c0cdeedbc83dd8edc1949d917d3d377 *electron-v34.5.4-mas-x64.zip
|
||||
+e5331a5cf9d100982ae15dddad4abdaedf5d7976f325af4c39d5bdd094122880 *electron-v34.5.4-win32-arm64-pdb.zip
|
||||
+3e87f89afc24ce72b8dd8b7df56561dd7a5474cfe8df3788a94bbc5cf446fd87 *electron-v34.5.4-win32-arm64-symbols.zip
|
||||
+c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.4-win32-arm64-toolchain-profile.zip
|
||||
+912346508a25c56a0f4a5eeda466bb145cabcbff9e68b0f8759bf8847e01dab3 *electron-v34.5.4-win32-arm64.zip
|
||||
+f98be086997be9534e991a1374755cfcfbbf9f53a95ab17e9291ef224370da79 *electron-v34.5.4-win32-ia32-pdb.zip
|
||||
+aaa12a153b0bb2746cf7acd8f994a2c714d27791393383e1e78403de16388131 *electron-v34.5.4-win32-ia32-symbols.zip
|
||||
+c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.4-win32-ia32-toolchain-profile.zip
|
||||
+19f272b112ad2b2468caa3a01ceaa0f4ab83e100a0decdda36b261c0b584e848 *electron-v34.5.4-win32-ia32.zip
|
||||
+2bac4be5bed9eff8a7adb3732c112beaf06a643f8c8b91c02cf226101bee2ca3 *electron-v34.5.4-win32-x64-pdb.zip
|
||||
+3eb34ea1553ccfbd33a95c65827dac1d07119ede1749b8010a113a1693b80394 *electron-v34.5.4-win32-x64-symbols.zip
|
||||
+c23f84aabb09c24cd2ae759a547fdba4206af19a3bb0f4554a91cd9528648ad0 *electron-v34.5.4-win32-x64-toolchain-profile.zip
|
||||
+42c05407af7584c9b8134647b7f217ae683c3a04991d3de7524094cceff95505 *electron-v34.5.4-win32-x64.zip
|
||||
+9a321b11432efca3d64439b1a398911de27c33fab0d6c3458924f5c71088b046 *electron.d.ts
|
||||
+9483ab113a02e4520c20ea9d1b4464f0f677a4f9a408b0df12632a9e3ef4bade *ffmpeg-v34.5.4-darwin-arm64.zip
|
||||
+c2fb961e4219f41772c796db759703240bfea2251366e6a77580805a70a8ecfe *ffmpeg-v34.5.4-darwin-x64.zip
|
||||
+346101611df565cabcfaa3515b1db3f70d0891ba8f1241074dd09b69e12630d2 *ffmpeg-v34.5.4-linux-arm64.zip
|
||||
+5c77c712ee93bd26706daa78f0651d9b4ba8e4b46a115908f29d2742a2e1b9f0 *ffmpeg-v34.5.4-linux-armv7l.zip
|
||||
+f5ab70d399d528450c9499966e88ce02a368bb8c7dd7ac0676a6628fa29b3f14 *ffmpeg-v34.5.4-linux-x64.zip
|
||||
+c7d14c50640283759e21932d3c478b3bad01e15add490efb3fc18446c32a5fe1 *ffmpeg-v34.5.4-mas-arm64.zip
|
||||
+944918f694a9c37a74faee19feb989c02b78aaf32bfaa945ccce688fa76126ce *ffmpeg-v34.5.4-mas-x64.zip
|
||||
+39d841fb03d07e6831533c29bf55446f16a2116a5f02beb1022b68232bac6a55 *ffmpeg-v34.5.4-win32-arm64.zip
|
||||
+39d841fb03d07e6831533c29bf55446f16a2116a5f02beb1022b68232bac6a55 *ffmpeg-v34.5.4-win32-ia32.zip
|
||||
+39d841fb03d07e6831533c29bf55446f16a2116a5f02beb1022b68232bac6a55 *ffmpeg-v34.5.4-win32-x64.zip
|
||||
+2caad55fb223f7aa9652f9b68ce29440c8c714e9be65ff657682dc4f9a05d67a *hunspell_dictionaries.zip
|
||||
+f584b71abbbb021e1002fdc85d67773898219af2982209abfff4f92f8b255243 *libcxx-objects-v34.5.4-linux-arm64.zip
|
||||
+51e2db3cb02ab656404d7a28beab866d07b59dc2cc3127e5984ec5397f0f43d8 *libcxx-objects-v34.5.4-linux-armv7l.zip
|
||||
+6e6ca30cdedb38b9bfbcf79d8f14f466ab023145c464c1f75d581482e9fe601f *libcxx-objects-v34.5.4-linux-x64.zip
|
||||
+3191ca448f1978a80181ab0e31ecd7c1fbfe9cd409018b82f3879c0b2b299fc7 *libcxx_headers.zip
|
||||
+6afe922a6e3006d40a5342719af3d40de669bb4e03aa938816f3732901677407 *libcxxabi_headers.zip
|
||||
+6d3bed9a1eb9e6692f9c936336d65d4cc1f43401b5570e75b8e2838605057f88 *mksnapshot-v34.5.4-darwin-arm64.zip
|
||||
+8022267c02204f75495a23177a144af4bdce8a56aa89b918df127e4b98cb7e2d *mksnapshot-v34.5.4-darwin-x64.zip
|
||||
+4901999d515c571a9882a50fb6b92e12423c6fe3775d1d7574bdaf8cc9fd32bd *mksnapshot-v34.5.4-linux-arm64-x64.zip
|
||||
+723c47202c2553c930057328be3ddfcef53da9e71140e8ba581295e3000dde00 *mksnapshot-v34.5.4-linux-armv7l-x64.zip
|
||||
+0e8b27412c7a223035d16599134f783e9d77b9372898e64b45401e9c3cace29a *mksnapshot-v34.5.4-linux-x64.zip
|
||||
+2d194587b295c6119b690917c1508d7ed8ee6e2798778afd6de5114cae1bd9b9 *mksnapshot-v34.5.4-mas-arm64.zip
|
||||
+8e3c743227136f327e928bca25d8fe16a8f003feb33bb936dda4fb1f20765a88 *mksnapshot-v34.5.4-mas-x64.zip
|
||||
+669c3375bac1ee3b2c8737432d0d2a6e2dc4d44f0d9fa1aa6a1aaf10b6db8224 *mksnapshot-v34.5.4-win32-arm64-x64.zip
|
||||
+3a54ef58fb4cfc3e2f4b006f96b260e2ac980203a653ad6c1d2bd24d004106dc *mksnapshot-v34.5.4-win32-ia32.zip
|
||||
+20ec7d86c5f42061c544a2461b6a35a2d69a38cbf69418043ed73856c2ac2a95 *mksnapshot-v34.5.4-win32-x64.zip
|
||||
-1e88807c749e69c9a1b2abef105cf30dbec4fddc365afcaa624b1e2df80fe636 *chromedriver-v39.2.3-darwin-arm64.zip
|
||||
-5cadee0db7684ae48a7f9f4f1310c3f6e1518b0fa88cf3efb36f58984763d43d *chromedriver-v39.2.3-darwin-x64.zip
|
||||
-8de5ed25a12029ca999455c1cadf28341ec5e0de87a3a0c27dbb24df99f154b1 *chromedriver-v39.2.3-linux-arm64.zip
|
||||
-766b16d8b1297738a0d1fa7e44d992142558f6e12820197746913385590f033e *chromedriver-v39.2.3-linux-armv7l.zip
|
||||
-f35049fe3d8dbfdb7c541b59bdca6982b571761bb8cb7fc85515ceaea9451de9 *chromedriver-v39.2.3-linux-x64.zip
|
||||
-bffe049ac205d87d14d8d2fb61c8f4dfd72b6d60fcd72ebedf7ef78c90ed52d9 *chromedriver-v39.2.3-mas-arm64.zip
|
||||
-95a7142ba2ba6a418c6d804729dbe4f1fee897cd9ecaf32e554bb9cabff52b9c *chromedriver-v39.2.3-mas-x64.zip
|
||||
-da1a59e49c16f7b0924b8b43847a19c93110f7d3b5d511cc41d7ec43a5d3807a *chromedriver-v39.2.3-win32-arm64.zip
|
||||
-9ba84c1e03e31dd630439d53c975b51c21aa4038526dc01970b94464303db5c7 *chromedriver-v39.2.3-win32-ia32.zip
|
||||
-82d88829e894277d737188afe22a2c82611107f7b31aeb221ae67e56a580dceb *chromedriver-v39.2.3-win32-x64.zip
|
||||
-aca80a76b97d4b0aa3001882bd8cb7a8fb3f1df75cbc4f0d74eaad0c9df53c9b *electron-api.json
|
||||
-0fb6f376da5f1bb06125134cd8e33d79a76c4d47b0bc51d20c3359e092095b98 *electron-v39.2.3-darwin-arm64-dsym-snapshot.zip
|
||||
-6a9e67878637191edcefbd36b070137c3ca4f674307c255864eb9720128905c4 *electron-v39.2.3-darwin-arm64-dsym.zip
|
||||
-30fd6a23a4a70de3882525c1666af98a2cf07e0826c54bef8f466efb25b1d2ec *electron-v39.2.3-darwin-arm64-symbols.zip
|
||||
-2128a27c1b0fd80be9d608fb293639f76611b4108eca1e045c933fd04097a7b1 *electron-v39.2.3-darwin-arm64.zip
|
||||
-68435db35b408d7eb3b9f208f2a7aa803bb8578f409ee99bab435118951a21a5 *electron-v39.2.3-darwin-x64-dsym-snapshot.zip
|
||||
-59e821dbe0083d4e28a77dff5f72fa65c0db7e7966d760ebb5a41af92da43958 *electron-v39.2.3-darwin-x64-dsym.zip
|
||||
-cdbe6988a9c9277d5a1acd2f3aaf08e603050f3dae0c10dee4b10d7a6f7cf818 *electron-v39.2.3-darwin-x64-symbols.zip
|
||||
-f8085a04dc35bfe0c32c36e6feffde07de16459bf36dfab422760181717f5ac0 *electron-v39.2.3-darwin-x64.zip
|
||||
-ce57eb6bd0ddfa1d37d8a35615276aeb60c19ae0636f21da3270cf07844074b4 *electron-v39.2.3-linux-arm64-debug.zip
|
||||
-d2652381b24dc05c57a4ce4835b6efc796e6af14419ec80a9ab31f1c3c53f143 *electron-v39.2.3-linux-arm64-symbols.zip
|
||||
-c58c5904d6015cbbfa5f04fbda5c83b9a276a3565b5f3fa166795c789b055cdd *electron-v39.2.3-linux-arm64.zip
|
||||
-f0f0be5ea43c0fe84b9609dd5d2b98904c2d4bb8ced9c7c72b72cef377f2734a *electron-v39.2.3-linux-armv7l-debug.zip
|
||||
-f08ae5371aca8a9f3775a6855c74da71d8817bd9f135c3ba975d428d14f3c42f *electron-v39.2.3-linux-armv7l-symbols.zip
|
||||
-d7c2f0b5038c49b1e637f8dbda945be4e6f3a6d7ebf802543e6ef5093c9641ff *electron-v39.2.3-linux-armv7l.zip
|
||||
-aa8b9e4b5eed3a0d2271c01d34551d7dc3e9be30a68af06604c1e2cd3cf93223 *electron-v39.2.3-linux-x64-debug.zip
|
||||
-d5ebf9628e055b03c90d2d6d4ed86f443b900e264ff34061c953541e27fad5f9 *electron-v39.2.3-linux-x64-symbols.zip
|
||||
-5eb51ebcb60487c4fc3a5b74ffb57a03eefd48def32200adf310ffaba4153d64 *electron-v39.2.3-linux-x64.zip
|
||||
-f6cc53c0a45c73779c837d71693f54cc18b12b7148c82c689e2b059772182b84 *electron-v39.2.3-mas-arm64-dsym-snapshot.zip
|
||||
-0caf9b7b958a7d2ba7e6f757f885842efda3ebc794a2ac048b90cde2926281ee *electron-v39.2.3-mas-arm64-dsym.zip
|
||||
-c3164da6588c546e728b6fa0754042328cdb43e28dbb0fbcfbda740ed58038fe *electron-v39.2.3-mas-arm64-symbols.zip
|
||||
-36ea0a98a0480096b4bc6e22c194e999cdfd7f1263c51f08d2815985a8a39ef7 *electron-v39.2.3-mas-arm64.zip
|
||||
-73d356aa3b51cb261d30f0c27ce354b904d17c3c05c124a1f41112d085e66852 *electron-v39.2.3-mas-x64-dsym-snapshot.zip
|
||||
-083f53e15a93404b309754df6b5e785785b28e01fdab08a89a45e5024f44e046 *electron-v39.2.3-mas-x64-dsym.zip
|
||||
-cdd8aaf3b90aedc8c09a44efa03ec67e8426102fad7333ff6bfc257dc6fa01b7 *electron-v39.2.3-mas-x64-symbols.zip
|
||||
-517d26f9b76b23976d0fc1dcc366e2b50b782592d9b0fc1d814dd1e7ce66efef *electron-v39.2.3-mas-x64.zip
|
||||
-1a83af2259feb361f7ceb79e047b701ea8297d616487d9d6a79530014d5000c7 *electron-v39.2.3-win32-arm64-pdb.zip
|
||||
-a154f036378a81859804f660773f6d434770fc311af86dfe01ace5346b9dc788 *electron-v39.2.3-win32-arm64-symbols.zip
|
||||
-4aae37230f86b1590f102aa038268299bfb55ce2bf3b76ac4d6159e7b6a69f8e *electron-v39.2.3-win32-arm64-toolchain-profile.zip
|
||||
-b68d623d70c4d0ed76c979027d2a4f6a16bc8dee6f243f5bc2064b4bb52bb34d *electron-v39.2.3-win32-arm64.zip
|
||||
-be73842257d098ac911b3363e0c11b1d51ab8f6ebd641e512a2e15ccbea73193 *electron-v39.2.3-win32-ia32-pdb.zip
|
||||
-5f65391f51b5d46d5e0ec7018f3febc0f5b6f072b57310d6d6c9b014de911ff4 *electron-v39.2.3-win32-ia32-symbols.zip
|
||||
-4aae37230f86b1590f102aa038268299bfb55ce2bf3b76ac4d6159e7b6a69f8e *electron-v39.2.3-win32-ia32-toolchain-profile.zip
|
||||
-6668fadbdd0283225f4bc60c711f8cd8ac316f43f486cd8a1f62a6a35f89cf7a *electron-v39.2.3-win32-ia32.zip
|
||||
-430aa905803772476fc1f943e87e4a319d33880d88e08472504531b96834dff1 *electron-v39.2.3-win32-x64-pdb.zip
|
||||
-9adb254e6ee0d96311cc8056049814436b7e973757d026aac3b533820be027ec *electron-v39.2.3-win32-x64-symbols.zip
|
||||
-4aae37230f86b1590f102aa038268299bfb55ce2bf3b76ac4d6159e7b6a69f8e *electron-v39.2.3-win32-x64-toolchain-profile.zip
|
||||
-d4365ad128bbdcb3df99dc4a0ad9de85c5e920903070a473b55377253b6c3fdd *electron-v39.2.3-win32-x64.zip
|
||||
-feb2f068cd1e2f70bdd7816c13e58dcff9add18fdc8c8e19145a5fd343be541a *electron.d.ts
|
||||
-4fe4db7f974c64497ddc07c3955a7d83dcfeba61bcec704b33638a4848038d49 *ffmpeg-v39.2.3-darwin-arm64.zip
|
||||
-8fa2eb8ce5bdf2ecc4cf1f5ebc0f46a4e466fb4841513d482b99838b265995af *ffmpeg-v39.2.3-darwin-x64.zip
|
||||
-bc72228a7380bc491783602d823bbe2d75e9e417d9b93a40a64be6ff5e3a1bcc *ffmpeg-v39.2.3-linux-arm64.zip
|
||||
-322698b5ebfae62c34e98c2589b0906b99c15a8181ca3b6d1ffe166ec7d99ab1 *ffmpeg-v39.2.3-linux-armv7l.zip
|
||||
-40d23294d7bcc48cb3f647f278672021e969a6332cd3cbb06ee681833759626a *ffmpeg-v39.2.3-linux-x64.zip
|
||||
-4fe4db7f974c64497ddc07c3955a7d83dcfeba61bcec704b33638a4848038d49 *ffmpeg-v39.2.3-mas-arm64.zip
|
||||
-8fa2eb8ce5bdf2ecc4cf1f5ebc0f46a4e466fb4841513d482b99838b265995af *ffmpeg-v39.2.3-mas-x64.zip
|
||||
-d324af171e0ae820ec72075924ace2bda96e837ccc79e22b652dda6f82b673b6 *ffmpeg-v39.2.3-win32-arm64.zip
|
||||
-d982077305d0e4296bed95eb7d2f1048a90b06cfb84d5ddf2a1928e1f07c4dba *ffmpeg-v39.2.3-win32-ia32.zip
|
||||
-fa65c30f970f9724f4353d068a640592b09a15593b943fa7544cd07e9cace90e *ffmpeg-v39.2.3-win32-x64.zip
|
||||
-244cd79cf68540e83449ad7d73183416413b3d603cee4496ec07705cbd9338ee *hunspell_dictionaries.zip
|
||||
-f995e05259eeae64f0e6fbb6d2863aa2fc5846e3ff2dfb3cd22defc3bbbb68d7 *libcxx-objects-v39.2.3-linux-arm64.zip
|
||||
-3607b4a15aa5f2dbd9e2338ca5451ad8ff646bdac415f9845352d53be1c26ddf *libcxx-objects-v39.2.3-linux-armv7l.zip
|
||||
-b5020533566dbf22b0b890caa766eb2f4d11675fb1c79c2f41bc54da45a34fc2 *libcxx-objects-v39.2.3-linux-x64.zip
|
||||
-919a2cc35920b21fbcc5834e858c400f51b607f084c593883c637dba27b9d29a *libcxx_headers.zip
|
||||
-34e4b44f9c5e08b557a2caed55456ce7690abab910196a783a2a47b58d2b9ac9 *libcxxabi_headers.zip
|
||||
-661d3578cabe5c98d806d5eeeaee48ac0c997114b9cd76388581e58f6d1c2ce1 *mksnapshot-v39.2.3-darwin-arm64.zip
|
||||
-c3032c90522e4491e3de641fade3c90be109269108d4ff39b55dbf7331e6eb9a *mksnapshot-v39.2.3-darwin-x64.zip
|
||||
-bcd8fb45f3b093208346dc2dd2e0b5b70d117e26a70b9619921b26a7f99ba310 *mksnapshot-v39.2.3-linux-arm64-x64.zip
|
||||
-647762d3d8b01b5123ec11ea5b6984d7b78a26c79ea4d159a3b9fa780de03321 *mksnapshot-v39.2.3-linux-armv7l-x64.zip
|
||||
-86c0febd8e9ddd8b700c6fb633ec1406bf4fe19ddc2801cb50c01ad345c8ce6e *mksnapshot-v39.2.3-linux-x64.zip
|
||||
-3676ffc5f489b7d7faafe36fdb5f0f4ce98c8d6fcedfacf6feded7f21b2a50ea *mksnapshot-v39.2.3-mas-arm64.zip
|
||||
-728936a18c11727d32730c89060dca2d998e7df9159f12bcba2bdf1b51584aad *mksnapshot-v39.2.3-mas-x64.zip
|
||||
-a3ef9ab1ad5c8172c029dcc36abdc979ecf01f235516120f666595d4d5d02aee *mksnapshot-v39.2.3-win32-arm64-x64.zip
|
||||
-02584df98255591438ffcc6589bd1ee60af8b8897d08079e7a7dd054e09614fe *mksnapshot-v39.2.3-win32-ia32.zip
|
||||
-d4dd9de8637d7d8240b7a0686916c0fe84058ad00db9422f5491fbbd7a53cf4b *mksnapshot-v39.2.3-win32-x64.zip
|
||||
+ab4c5ce64b92082b15f11ed2a89766fa5542b33d656872678ca0aee99e51a7c8 *chromedriver-v39.2.7-darwin-arm64.zip
|
||||
+976f03f6e5e1680e5f8449bd04da531aabec0b664ff462a14f0d41fad0b437af *chromedriver-v39.2.7-darwin-x64.zip
|
||||
+28649b04333820f826ea658d18f8111e0a187b3afc498af05b5c59b27ac00155 *chromedriver-v39.2.7-linux-arm64.zip
|
||||
+149033ccf7f909214c7d69788bdef2e4ce164cae1091a2f8220f62e495576f9b *chromedriver-v39.2.7-linux-armv7l.zip
|
||||
+6a071551518eddc688dd348d3e63b0c55f744589a041943e5706bebfd5337f19 *chromedriver-v39.2.7-linux-x64.zip
|
||||
+824ea4699fd6aa6822e453496ebf576174d04e0f0991843b77eb346a842725bc *chromedriver-v39.2.7-mas-arm64.zip
|
||||
+aa991650a765b2bc168f8b742341048fa030ee9e3bd0d0799e1b1d29a4c55d0b *chromedriver-v39.2.7-mas-x64.zip
|
||||
+a8fc4467bf9be10de3e341648ccd6ad6d618b4456a744137e9f19bd5f9d9bd37 *chromedriver-v39.2.7-win32-arm64.zip
|
||||
+01b247563a054617530e454646b086352bc03e02ad4f18e5b65b4e3dfd276a1e *chromedriver-v39.2.7-win32-ia32.zip
|
||||
+a8bc2b9052ac8dadeaf88ea9cd6e46ec0032eee2345a0548741bfed922520579 *chromedriver-v39.2.7-win32-x64.zip
|
||||
+23486b3effffe5b3bc3ca70261fc9abe2396fd5d018652494f73e3f48cfe57cf *electron-api.json
|
||||
+8bee9e905544e60e08468efca91481ec467ab8f108a81846c365782ba0fc737c *electron-v39.2.7-darwin-arm64-dsym-snapshot.zip
|
||||
+3be97c3152cd4a84a6fe4013f7e4712422015f4beeb13eb35f8b4d223307d39a *electron-v39.2.7-darwin-arm64-dsym.zip
|
||||
+6d5551120d0564fc5596a3b724258da2ce632663d12782c8fdf15a2cc461ed95 *electron-v39.2.7-darwin-arm64-symbols.zip
|
||||
+bda657a77c074ee0c6a0e5d5f6de17918d7cf959306b454f6fadb07a08588883 *electron-v39.2.7-darwin-arm64.zip
|
||||
+39f0aab332506455337edff540d007c509e72d8c419cdc57f88a0312848f51c9 *electron-v39.2.7-darwin-x64-dsym-snapshot.zip
|
||||
+1efed54563ede59d7ae9ba3d548b3e93ede1a4e5dfa510ca22036ea2dd8a2956 *electron-v39.2.7-darwin-x64-dsym.zip
|
||||
+3b9bfe84905870c9c36939ffac545d388213ffbb296b969f35ae2a098f6a32b7 *electron-v39.2.7-darwin-x64-symbols.zip
|
||||
+d7535e64ad54efcf0fae84d7fea4c2ee4727eec99c78d2a5acc695285cb0a9f0 *electron-v39.2.7-darwin-x64.zip
|
||||
+59a3bd71f9c1b355dfbc43f233126cd32b82a53439f0d419e6349044d39e8bbf *electron-v39.2.7-linux-arm64-debug.zip
|
||||
+1b326f1a5bea47d9be742554434ddf4f094d7bcdd256f440b808359dc78fcd33 *electron-v39.2.7-linux-arm64-symbols.zip
|
||||
+445465a43bd2ffaec09877f4ed46385065632a4683c2806cc6211cc73c110024 *electron-v39.2.7-linux-arm64.zip
|
||||
+300c8d11d82cd1257b08e5a08c5e315f758133b627c0271a0f249ba3cb4533d2 *electron-v39.2.7-linux-armv7l-debug.zip
|
||||
+034dca3c137c7bfe0736456c1aa0941721e3a9f3a8a72a2786cb817d4edb0f9d *electron-v39.2.7-linux-armv7l-symbols.zip
|
||||
+5de99e9f4de8c9ac2fb93df725e834e3e93194c08c99968def7f7b78594fc97c *electron-v39.2.7-linux-armv7l.zip
|
||||
+64ef2ae24ae0869ebadb34b178fd7e8375d750d7afe39b42cfa28824f0d11445 *electron-v39.2.7-linux-x64-debug.zip
|
||||
+63466c4b6024ae38fdb38ff116abd561b9e36b8d4cd8f8aefbe41289950dba0c *electron-v39.2.7-linux-x64-symbols.zip
|
||||
+2f5285ef563dca154aa247696dddef545d3d895dd9b227ed423ea0d43737c22c *electron-v39.2.7-linux-x64.zip
|
||||
+ef5a108c1d10148aa031300da10c78feee797afe4ca2a2839819fd8434529860 *electron-v39.2.7-mas-arm64-dsym-snapshot.zip
|
||||
+9dd01dc9071b1db9d8fb5e9c81eaa96f551db0a982994881e5750cde2432b0f0 *electron-v39.2.7-mas-arm64-dsym.zip
|
||||
+2cf34289d79906c81b3dfd043fbe19a9604cecedd9ebda6576fa3c6f27edfe23 *electron-v39.2.7-mas-arm64-symbols.zip
|
||||
+5658d58eacb99fb2a22df0d52ca0507d79f03c85515a123d5e9bee5e0749b93d *electron-v39.2.7-mas-arm64.zip
|
||||
+92cd45c3fa64e2889fd1bc6b165c4d12bea40786ce59d6d204cadec6039a8e2a *electron-v39.2.7-mas-x64-dsym-snapshot.zip
|
||||
+21464abc837aeab1609fbfa33aa82793e9d32a597db28ea4da483a9d6b6c668a *electron-v39.2.7-mas-x64-dsym.zip
|
||||
+8d6e7ffee482514b62465e418049bdf717d308118461e5d97480f5a0eb0b9e20 *electron-v39.2.7-mas-x64-symbols.zip
|
||||
+e3b4169ab7bf3bc35cc720ef99032acd3d0eb1521524b5c4667898758dd4e9a3 *electron-v39.2.7-mas-x64.zip
|
||||
+3f1d549214a2430d57e5ab8d3cc9d89363340b16905014e35417c632a94732f6 *electron-v39.2.7-win32-arm64-pdb.zip
|
||||
+984e1d7718bc920e75a38b114ff73fa52647349763f76e91b64458e5d0fde65f *electron-v39.2.7-win32-arm64-symbols.zip
|
||||
+ed66f333ff7b385b2f40845178dc2dc4f25cc887510d766433392733fdd272a3 *electron-v39.2.7-win32-arm64-toolchain-profile.zip
|
||||
+56c6f8d957239b7e8d5a214255f39007d44abc98f701ab61054afa83ad46e80f *electron-v39.2.7-win32-arm64.zip
|
||||
+c885a8af3226f28081106fa89106f4668b907a53ab3997f3b101b487a76d2878 *electron-v39.2.7-win32-ia32-pdb.zip
|
||||
+34edebab8fb5458d97a23461213b39360b5652f8dd6fe8bf7f9c10a17b25a1d2 *electron-v39.2.7-win32-ia32-symbols.zip
|
||||
+ed66f333ff7b385b2f40845178dc2dc4f25cc887510d766433392733fdd272a3 *electron-v39.2.7-win32-ia32-toolchain-profile.zip
|
||||
+85acd7db5dbb39e16d6c798a649342969569caa2c71d6b5bb1f0c8ae96bca32e *electron-v39.2.7-win32-ia32.zip
|
||||
+e6a8e1164106548a1cdf266c615d259feada249e1449df8af1f7e04252575e86 *electron-v39.2.7-win32-x64-pdb.zip
|
||||
+90e1feeff5968265b68d8343e27b9f329b27882747633dd10555740de67d58cc *electron-v39.2.7-win32-x64-symbols.zip
|
||||
+ed66f333ff7b385b2f40845178dc2dc4f25cc887510d766433392733fdd272a3 *electron-v39.2.7-win32-x64-toolchain-profile.zip
|
||||
+3464537fa4be6b7b073f1c9b694ac2eb1f632d6ec36f6eeac9e00d8a279f188c *electron-v39.2.7-win32-x64.zip
|
||||
+40c772eb189d100087b75da6c2ad1aeb044f1d661c90543592546a654b0b6d5b *electron.d.ts
|
||||
+5a904c2edd12542ce2b6685938cdafe21cf90cd552f2f654058353d1a3d8ee43 *ffmpeg-v39.2.7-darwin-arm64.zip
|
||||
+91fc23e9008f43ad3c46f690186d77b291a803451b6d89ac82aadb8ae2dd7995 *ffmpeg-v39.2.7-darwin-x64.zip
|
||||
+a44607619c6742c1f9d729265a687b467a25ba397081ac12bc2c0d9ab4bea37b *ffmpeg-v39.2.7-linux-arm64.zip
|
||||
+8128ec9be261e2c1017f9b8213f948426119306e5d3acdb59392f32b2c2f0204 *ffmpeg-v39.2.7-linux-armv7l.zip
|
||||
+a201a2a64a49ab39def2d38a73e92358ebb57ecae99b0bbc8058353c4be23ea1 *ffmpeg-v39.2.7-linux-x64.zip
|
||||
+5a904c2edd12542ce2b6685938cdafe21cf90cd552f2f654058353d1a3d8ee43 *ffmpeg-v39.2.7-mas-arm64.zip
|
||||
+91fc23e9008f43ad3c46f690186d77b291a803451b6d89ac82aadb8ae2dd7995 *ffmpeg-v39.2.7-mas-x64.zip
|
||||
+6fa4278a41d9c5d733369aa4cce694ba219eb72f7fd181060547c3a4920b5902 *ffmpeg-v39.2.7-win32-arm64.zip
|
||||
+12b9e02c0fd07e8bc233c7c4ebab5c737eca05c41f1c5178867cad313433561b *ffmpeg-v39.2.7-win32-ia32.zip
|
||||
+caedeb04aa648af14b5a20c9ca902c97eb531a456c7965639465f8764b5d95e0 *ffmpeg-v39.2.7-win32-x64.zip
|
||||
+f1320ff95f2cce0f0f7225b45f2b9340aeb38b341b4090f0e58f58dc2da2f3a9 *hunspell_dictionaries.zip
|
||||
+8f4ffd7534f21e40621c515bacd178b809c2e52d1687867c60dfdb97ed17fecb *libcxx-objects-v39.2.7-linux-arm64.zip
|
||||
+0497730c82e1e76b6a4c22b1af4ebb7821ff6ccb838b78503c0cc93d8a8f03ee *libcxx-objects-v39.2.7-linux-armv7l.zip
|
||||
+271e3538eb241f1bc83a103ea7d4c8408ee6bd38322ed50dca781f54d002a590 *libcxx-objects-v39.2.7-linux-x64.zip
|
||||
+9a243728553395448f783591737fb229a327499d6853b51e201c36e4aaa9796f *libcxx_headers.zip
|
||||
+db3018609bce502c307c59074b3d5273080a68fb50ac1e7fc580994a2e80cc25 *libcxxabi_headers.zip
|
||||
+509d0890d1a524efe2c68aae18d2c8fd6537e788b94c9f63fd9f9ca3be98fdb9 *mksnapshot-v39.2.7-darwin-arm64.zip
|
||||
+f0a98b428a6a1f8dc4a4663e876a3984157ac8757922cde7461f19755942c180 *mksnapshot-v39.2.7-darwin-x64.zip
|
||||
+22fda3b708ab14325b2bfba8e875fbf48b6eacea347ecf1ef41cf24b09b4af8f *mksnapshot-v39.2.7-linux-arm64-x64.zip
|
||||
+e7b89dbab3449c0a1862b4d129b3ee384cb5bcd53e149eae05df14744ee55cb5 *mksnapshot-v39.2.7-linux-armv7l-x64.zip
|
||||
+53b3ed9f3a69444915ef1eef688c8f8168d52c3d5232834b8aa249cf210b41b6 *mksnapshot-v39.2.7-linux-x64.zip
|
||||
+181d962eaa93d8d997b1daf99ae016b3d9d8a5ae037c96a8475490396a8d655f *mksnapshot-v39.2.7-mas-arm64.zip
|
||||
+de005b619da1c1afcd8f8b6c70facb1dc388c46a66f8eff3058c8a08323df173 *mksnapshot-v39.2.7-mas-x64.zip
|
||||
+6eea0bee6097cf2cfe3ae42b35f847304697c4a4eec84f5b60d1cbbe324a8490 *mksnapshot-v39.2.7-win32-arm64-x64.zip
|
||||
+3e769269aa0b51ef9664a982235bc9299fc58743dcf7bce585d49a9f4a074abd *mksnapshot-v39.2.7-win32-ia32.zip
|
||||
+51337124892bf76d214f89975d42ec0474199cdfac2f9e08664d86ae8e6ba43e *mksnapshot-v39.2.7-win32-x64.zip
|
||||
\ No newline at end of file
|
||||
diff --git a/cgmanifest.json b/cgmanifest.json
|
||||
index 6ee72b3..9344b4e 100644
|
||||
index 1148b4e..88150cc 100644
|
||||
--- a/cgmanifest.json
|
||||
+++ b/cgmanifest.json
|
||||
@@ -530,3 +530,3 @@
|
||||
@@ -531,4 +531,4 @@
|
||||
"repositoryUrl": "https://github.com/electron/electron",
|
||||
- "commitHash": "d0594707ded4d564c95badf5322d5893295da4ed"
|
||||
+ "commitHash": "200a6ff5c6be89cb07221fff7025a2f9201bf25b"
|
||||
- "commitHash": "14565211f7fd33f3fe2f75ec1254cfa57d5bc848",
|
||||
- "tag": "39.2.3"
|
||||
+ "commitHash": "4d18062d0f0ca34c455bc7ec032dd7959a0365b6",
|
||||
+ "tag": "39.2.7"
|
||||
}
|
||||
@@ -535,3 +535,3 @@
|
||||
"license": "MIT",
|
||||
- "version": "34.5.1"
|
||||
+ "version": "34.5.4"
|
||||
},
|
||||
diff --git a/package-lock.json b/package-lock.json
|
||||
index beb023f..31df569 100644
|
||||
index 2b1154b..cbe427e 100644
|
||||
--- a/package-lock.json
|
||||
+++ b/package-lock.json
|
||||
@@ -98,3 +98,3 @@
|
||||
"deemon": "^1.13.4",
|
||||
- "electron": "34.5.1",
|
||||
+ "electron": "34.5.4",
|
||||
"eslint": "^9.11.1",
|
||||
@@ -6004,5 +6004,5 @@
|
||||
@@ -100,3 +100,3 @@
|
||||
"deemon": "^1.13.6",
|
||||
- "electron": "39.2.3",
|
||||
+ "electron": "39.2.7",
|
||||
"eslint": "^9.36.0",
|
||||
@@ -6188,5 +6188,5 @@
|
||||
"node_modules/electron": {
|
||||
- "version": "34.5.1",
|
||||
- "resolved": "https://registry.npmjs.org/electron/-/electron-34.5.1.tgz",
|
||||
- "integrity": "sha512-z2Wm7QjhnJ5592fLITynj8UwIk1mBiT402mOakxSYiADrERIci3IOPk7xWHAFOMvt/eoG5RW16PPhgJiedZcGA==",
|
||||
+ "version": "34.5.4",
|
||||
+ "resolved": "https://registry.npmjs.org/electron/-/electron-34.5.4.tgz",
|
||||
+ "integrity": "sha512-WXc3ElYW/1LH50CnpigSeRsK1AfFB/J8hCySFnhXDmz6BBAKhXlJ6bgw1k9ZldR5i+8JqX323773Jn8X3/Wagw==",
|
||||
- "version": "39.2.3",
|
||||
- "resolved": "https://registry.npmjs.org/electron/-/electron-39.2.3.tgz",
|
||||
- "integrity": "sha512-j7k7/bj3cNA29ty54FzEMRUoqirE+RBQPhPFP+XDuM93a1l2WcDPiYumxKWz+iKcXxBJLFdMIAlvtLTB/RfCkg==",
|
||||
+ "version": "39.2.7",
|
||||
+ "resolved": "https://registry.npmjs.org/electron/-/electron-39.2.7.tgz",
|
||||
+ "integrity": "sha512-KU0uFS6LSTh4aOIC3miolcbizOFP7N1M46VTYVfqIgFiuA2ilfNaOHLDS9tCMvwwHRowAsvqBrh9NgMXcTOHCQ==",
|
||||
"dev": true,
|
||||
diff --git a/package.json b/package.json
|
||||
index 4d41ab6..304a0b0 100644
|
||||
index 9ef8381..f732fa8 100644
|
||||
--- a/package.json
|
||||
+++ b/package.json
|
||||
@@ -157,3 +157,3 @@
|
||||
"deemon": "^1.13.4",
|
||||
- "electron": "34.5.1",
|
||||
+ "electron": "34.5.4",
|
||||
"eslint": "^9.11.1",
|
||||
@@ -162,3 +162,3 @@
|
||||
"deemon": "^1.13.6",
|
||||
- "electron": "39.2.3",
|
||||
+ "electron": "39.2.7",
|
||||
"eslint": "^9.36.0",
|
||||
|
||||
@@ -1,31 +1,26 @@
|
||||
diff --git a/build/gulpfile.vscode.linux.js b/build/gulpfile.vscode.linux.js
|
||||
index cd8610d..2d928b1 100644
|
||||
--- a/build/gulpfile.vscode.linux.js
|
||||
+++ b/build/gulpfile.vscode.linux.js
|
||||
@@ -27,4 +27,2 @@ const commit = getVersion(root);
|
||||
|
||||
-const linuxPackageRevision = Math.floor(new Date().getTime() / 1000);
|
||||
-
|
||||
/**
|
||||
@@ -90,3 +88,3 @@ function prepareDebPackage(arch) {
|
||||
diff --git a/build/gulpfile.vscode.linux.ts b/build/gulpfile.vscode.linux.ts
|
||||
index c5d2163..b4768b9 100644
|
||||
--- a/build/gulpfile.vscode.linux.ts
|
||||
+++ b/build/gulpfile.vscode.linux.ts
|
||||
@@ -90,3 +90,3 @@ function prepareDebPackage(arch: string) {
|
||||
.pipe(replace('@@NAME@@', product.applicationName))
|
||||
- .pipe(replace('@@VERSION@@', packageJson.version + '-' + linuxPackageRevision))
|
||||
+ .pipe(replace('@@VERSION@@', packageJson.version))
|
||||
.pipe(replace('@@ARCHITECTURE@@', debArch))
|
||||
@@ -204,3 +202,2 @@ function prepareRpmPackage(arch) {
|
||||
@@ -198,3 +198,2 @@ function prepareRpmPackage(arch: string) {
|
||||
.pipe(replace('@@VERSION@@', packageJson.version))
|
||||
- .pipe(replace('@@RELEASE@@', linuxPackageRevision))
|
||||
- .pipe(replace('@@RELEASE@@', linuxPackageRevision.toString()))
|
||||
.pipe(replace('@@ARCHITECTURE@@', rpmArch))
|
||||
@@ -278,3 +275,3 @@ function prepareSnapPackage(arch) {
|
||||
@@ -263,3 +262,3 @@ function prepareSnapPackage(arch: string) {
|
||||
.pipe(replace('@@NAME@@', product.applicationName))
|
||||
- .pipe(replace('@@VERSION@@', commit.substr(0, 8)))
|
||||
- .pipe(replace('@@VERSION@@', commit!.substr(0, 8)))
|
||||
+ .pipe(replace('@@VERSION@@', packageJson.version))
|
||||
// Possible run-on values https://snapcraft.io/docs/architectures
|
||||
diff --git a/src/vs/workbench/api/common/extHost.api.impl.ts b/src/vs/workbench/api/common/extHost.api.impl.ts
|
||||
index 0db2369..5cac67b 100644
|
||||
index 8838f2f..fb120ae 100644
|
||||
--- a/src/vs/workbench/api/common/extHost.api.impl.ts
|
||||
+++ b/src/vs/workbench/api/common/extHost.api.impl.ts
|
||||
@@ -1537,5 +1537,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
|
||||
@@ -1629,5 +1629,7 @@ export function createApiFactoryAndRegisterActors(accessor: ServicesAccessor): I
|
||||
|
||||
+ const version = initData.version.replace(/^([0-9]+\.[0-9]+\.[0-5]).*$/, '$1');
|
||||
+
|
||||
|
||||
@@ -1,14 +1,27 @@
|
||||
diff --git a/src/vs/code/electron-main/app.ts b/src/vs/code/electron-main/app.ts
|
||||
index a3efce9..be970c6 100644
|
||||
--- a/src/vs/code/electron-main/app.ts
|
||||
+++ b/src/vs/code/electron-main/app.ts
|
||||
@@ -78,3 +78,2 @@ import { DarwinUpdateService } from '../../platform/update/electron-main/updateS
|
||||
import { LinuxUpdateService } from '../../platform/update/electron-main/updateService.linux.js';
|
||||
-import { SnapUpdateService } from '../../platform/update/electron-main/updateService.snap.js';
|
||||
import { Win32UpdateService } from '../../platform/update/electron-main/updateService.win32.js';
|
||||
@@ -997,3 +996,3 @@ export class CodeApplication extends Disposable {
|
||||
if (isLinuxSnap) {
|
||||
- services.set(IUpdateService, new SyncDescriptor(SnapUpdateService, [process.env['SNAP'], process.env['SNAP_REVISION']]));
|
||||
+ // services.set(IUpdateService, new SyncDescriptor(SnapUpdateService, [process.env['SNAP'], process.env['SNAP_REVISION']]));
|
||||
} else {
|
||||
diff --git a/src/vs/platform/update/common/update.ts b/src/vs/platform/update/common/update.ts
|
||||
index 199f433..a6cbb10 100644
|
||||
index b859dfd..75e8987 100644
|
||||
--- a/src/vs/platform/update/common/update.ts
|
||||
+++ b/src/vs/platform/update/common/update.ts
|
||||
@@ -51,3 +51,4 @@ export const enum UpdateType {
|
||||
@@ -54,3 +54,4 @@ export const enum UpdateType {
|
||||
Archive,
|
||||
- Snap
|
||||
+ Snap,
|
||||
+ WindowsInstaller,
|
||||
}
|
||||
@@ -110 +111,38 @@ export interface IUpdateService {
|
||||
@@ -116 +117,38 @@ export interface IUpdateService {
|
||||
}
|
||||
+
|
||||
+export type Architecture =
|
||||
@@ -49,25 +62,37 @@ index 199f433..a6cbb10 100644
|
||||
+ | "user";
|
||||
\ No newline at end of file
|
||||
diff --git a/src/vs/platform/update/electron-main/abstractUpdateService.ts b/src/vs/platform/update/electron-main/abstractUpdateService.ts
|
||||
index 48d0d86..840b9d3 100644
|
||||
index 0e63d40..c8426ea 100644
|
||||
--- a/src/vs/platform/update/electron-main/abstractUpdateService.ts
|
||||
+++ b/src/vs/platform/update/electron-main/abstractUpdateService.ts
|
||||
@@ -14,6 +14,10 @@ import { IProductService } from '../../product/common/productService.js';
|
||||
@@ -14,3 +14,3 @@ import { IProductService } from '../../product/common/productService.js';
|
||||
import { IRequestService } from '../../request/common/request.js';
|
||||
-import { AvailableForDownload, DisablementReason, IUpdateService, State, StateType, UpdateType } from '../common/update.js';
|
||||
+import { Architecture, AvailableForDownload, DisablementReason, IUpdateService, Platform, State, StateType, Target, UpdateType } from '../common/update.js';
|
||||
|
||||
-export function createUpdateURL(platform: string, quality: string, productService: IProductService): string {
|
||||
- return `${productService.updateUrl}/api/update/${platform}/${quality}/${productService.commit}`;
|
||||
@@ -20,10 +20,8 @@ export interface IUpdateURLOptions {
|
||||
|
||||
-export function createUpdateURL(baseUpdateUrl: string, platform: string, quality: string, commit: string, options?: IUpdateURLOptions): string {
|
||||
- const url = new URL(`${baseUpdateUrl}/api/update/${platform}/${quality}/${commit}`);
|
||||
-
|
||||
- if (options?.background) {
|
||||
- url.searchParams.set('bg', 'true');
|
||||
+export function createUpdateURL(productService: IProductService, quality: string, platform: Platform, architecture: Architecture, target?: Target): string {
|
||||
+ if (target) {
|
||||
+ return `${productService.updateUrl}/${quality}/${platform}/${architecture}/${target}/latest.json`;
|
||||
+ } else {
|
||||
+ return `${productService.updateUrl}/${quality}/${platform}/${architecture}/latest.json`;
|
||||
+ }
|
||||
}
|
||||
-
|
||||
- return url.toString();
|
||||
}
|
||||
@@ -265,3 +263,3 @@ export abstract class AbstractUpdateService implements IUpdateService {
|
||||
|
||||
- if (mode === 'none') {
|
||||
+ if (mode === 'none' || mode === 'manual') {
|
||||
return undefined;
|
||||
diff --git a/src/vs/platform/update/electron-main/updateService.darwin.ts b/src/vs/platform/update/electron-main/updateService.darwin.ts
|
||||
index b78ebc5..a4a3b1d 100644
|
||||
index b20673b..af677f6 100644
|
||||
--- a/src/vs/platform/update/electron-main/updateService.darwin.ts
|
||||
+++ b/src/vs/platform/update/electron-main/updateService.darwin.ts
|
||||
@@ -15,3 +15,3 @@ import { ILogService } from '../../log/common/log.js';
|
||||
@@ -76,19 +101,15 @@ index b78ebc5..a4a3b1d 100644
|
||||
+import { IRequestService, asJson } from '../../request/common/request.js';
|
||||
import { ITelemetryService } from '../../telemetry/common/telemetry.js';
|
||||
@@ -19,2 +19,4 @@ import { IUpdate, State, StateType, UpdateType } from '../common/update.js';
|
||||
import { AbstractUpdateService, createUpdateURL, UpdateErrorClassification } from './abstractUpdateService.js';
|
||||
import { AbstractUpdateService, createUpdateURL, IUpdateURLOptions, UpdateErrorClassification } from './abstractUpdateService.js';
|
||||
+import { CancellationToken } from '../../../base/common/cancellation.js';
|
||||
+import * as semver from 'semver';
|
||||
|
||||
@@ -76,17 +78,3 @@ export class DarwinUpdateService extends AbstractUpdateService implements IRelau
|
||||
protected buildUpdateFeedUrl(quality: string): string | undefined {
|
||||
- let assetID: string;
|
||||
- if (!this.productService.darwinUniversalAssetId) {
|
||||
- assetID = process.arch === 'x64' ? 'darwin' : 'darwin-arm64';
|
||||
- } else {
|
||||
- assetID = this.productService.darwinUniversalAssetId;
|
||||
- }
|
||||
- const url = createUpdateURL(assetID, quality, this.productService);
|
||||
@@ -75,13 +77,4 @@ export class DarwinUpdateService extends AbstractUpdateService implements IRelau
|
||||
|
||||
- protected buildUpdateFeedUrl(quality: string, commit: string, options?: IUpdateURLOptions): string | undefined {
|
||||
- const assetID = this.productService.darwinUniversalAssetId ?? (process.arch === 'x64' ? 'darwin' : 'darwin-arm64');
|
||||
- const url = createUpdateURL(this.productService.updateUrl!, assetID, quality, commit, options);
|
||||
- try {
|
||||
- electron.autoUpdater.setFeedURL({ url });
|
||||
- } catch (e) {
|
||||
@@ -97,14 +118,13 @@ index b78ebc5..a4a3b1d 100644
|
||||
- return undefined;
|
||||
- }
|
||||
- return url;
|
||||
+ protected buildUpdateFeedUrl(quality: string, _commit: string, _options?: IUpdateURLOptions): string | undefined {
|
||||
+ return createUpdateURL(this.productService, quality, process.platform, process.arch);
|
||||
}
|
||||
@@ -100,5 +88,30 @@ export class DarwinUpdateService extends AbstractUpdateService implements IRelau
|
||||
@@ -112,3 +105,30 @@ export class DarwinUpdateService extends AbstractUpdateService implements IRelau
|
||||
|
||||
- const url = explicit ? this.url : `${this.url}?bg=true`;
|
||||
- electron.autoUpdater.setFeedURL({ url });
|
||||
- electron.autoUpdater.checkForUpdates();
|
||||
+ this.requestService.request({ url: this.url }, CancellationToken.None)
|
||||
+ this.requestService.request({ url }, CancellationToken.None)
|
||||
+ .then<IUpdate | null>(asJson)
|
||||
+ .then(update => {
|
||||
+ if (!update || !update.url || !update.version || !update.productVersion) {
|
||||
@@ -120,7 +140,7 @@ index b78ebc5..a4a3b1d 100644
|
||||
+ this.setState(State.Idle(UpdateType.Setup));
|
||||
+ }
|
||||
+ else {
|
||||
+ electron.autoUpdater.setFeedURL({ url: this.url! });
|
||||
+ electron.autoUpdater.setFeedURL({ url });
|
||||
+ electron.autoUpdater.checkForUpdates();
|
||||
+ }
|
||||
+
|
||||
@@ -134,27 +154,21 @@ index b78ebc5..a4a3b1d 100644
|
||||
+ });
|
||||
}
|
||||
diff --git a/src/vs/platform/update/electron-main/updateService.linux.ts b/src/vs/platform/update/electron-main/updateService.linux.ts
|
||||
index 8550ace..c2fddcb 100644
|
||||
index 32040dc..59cf109 100644
|
||||
--- a/src/vs/platform/update/electron-main/updateService.linux.ts
|
||||
+++ b/src/vs/platform/update/electron-main/updateService.linux.ts
|
||||
@@ -15,2 +15,3 @@ import { AvailableForDownload, IUpdate, State, UpdateType } from '../common/upda
|
||||
import { AbstractUpdateService, createUpdateURL } from './abstractUpdateService.js';
|
||||
import { AbstractUpdateService, createUpdateURL, IUpdateURLOptions } from './abstractUpdateService.js';
|
||||
+import * as semver from 'semver';
|
||||
|
||||
@@ -31,3 +32,3 @@ export class LinuxUpdateService extends AbstractUpdateService {
|
||||
protected buildUpdateFeedUrl(quality: string): string {
|
||||
- return createUpdateURL(`linux-${process.arch}`, quality, this.productService);
|
||||
@@ -30,4 +31,4 @@ export class LinuxUpdateService extends AbstractUpdateService {
|
||||
|
||||
- protected buildUpdateFeedUrl(quality: string, commit: string, options?: IUpdateURLOptions): string {
|
||||
- return createUpdateURL(this.productService.updateUrl!, `linux-${process.arch}`, quality, commit, options);
|
||||
+ protected buildUpdateFeedUrl(quality: string, _commit: string, _options?: IUpdateURLOptions): string {
|
||||
+ return createUpdateURL(this.productService, quality, process.platform, process.arch);
|
||||
}
|
||||
@@ -39,6 +40,5 @@ export class LinuxUpdateService extends AbstractUpdateService {
|
||||
|
||||
- const url = explicit ? this.url : `${this.url}?bg=true`;
|
||||
this.setState(State.CheckingForUpdates(explicit));
|
||||
|
||||
- this.requestService.request({ url }, CancellationToken.None)
|
||||
+ this.requestService.request({ url: this.url }, CancellationToken.None)
|
||||
.then<IUpdate | null>(asJson)
|
||||
@@ -47,5 +47,17 @@ export class LinuxUpdateService extends AbstractUpdateService {
|
||||
@@ -48,5 +49,17 @@ export class LinuxUpdateService extends AbstractUpdateService {
|
||||
this.setState(State.Idle(UpdateType.Archive));
|
||||
- } else {
|
||||
+
|
||||
@@ -174,27 +188,27 @@ index 8550ace..c2fddcb 100644
|
||||
+ return Promise.resolve(null);
|
||||
})
|
||||
diff --git a/src/vs/platform/update/electron-main/updateService.win32.ts b/src/vs/platform/update/electron-main/updateService.win32.ts
|
||||
index 8f92a3e..020e690 100644
|
||||
index 3edbd9d..6666876 100644
|
||||
--- a/src/vs/platform/update/electron-main/updateService.win32.ts
|
||||
+++ b/src/vs/platform/update/electron-main/updateService.win32.ts
|
||||
@@ -11,3 +11,2 @@ import { CancellationToken } from '../../../base/common/cancellation.js';
|
||||
@@ -13,3 +13,2 @@ import { CancellationToken } from '../../../base/common/cancellation.js';
|
||||
import { memoize } from '../../../base/common/decorators.js';
|
||||
-import { hash } from '../../../base/common/hash.js';
|
||||
import * as path from '../../../base/common/path.js';
|
||||
@@ -25,4 +24,5 @@ import { asJson, IRequestService } from '../../request/common/request.js';
|
||||
@@ -27,4 +26,5 @@ import { asJson, IRequestService } from '../../request/common/request.js';
|
||||
import { ITelemetryService } from '../../telemetry/common/telemetry.js';
|
||||
-import { AvailableForDownload, DisablementReason, IUpdate, State, StateType, UpdateType } from '../common/update.js';
|
||||
-import { AbstractUpdateService, createUpdateURL, UpdateErrorClassification } from './abstractUpdateService.js';
|
||||
-import { AbstractUpdateService, createUpdateURL, IUpdateURLOptions, UpdateErrorClassification } from './abstractUpdateService.js';
|
||||
+import { AvailableForDownload, DisablementReason, IUpdate, State, StateType, Target, UpdateType } from '../common/update.js';
|
||||
+import { AbstractUpdateService, createUpdateURL} from './abstractUpdateService.js';
|
||||
+import { AbstractUpdateService, createUpdateURL, IUpdateURLOptions } from './abstractUpdateService.js';
|
||||
+import * as semver from 'semver';
|
||||
|
||||
@@ -42,5 +42,9 @@ function getUpdateType(): UpdateType {
|
||||
@@ -44,5 +44,9 @@ function getUpdateType(): UpdateType {
|
||||
if (typeof _updateType === 'undefined') {
|
||||
- _updateType = fs.existsSync(path.join(path.dirname(process.execPath), 'unins000.exe'))
|
||||
- _updateType = existsSync(path.join(path.dirname(process.execPath), 'unins000.exe'))
|
||||
- ? UpdateType.Setup
|
||||
- : UpdateType.Archive;
|
||||
+ if (fs.existsSync(path.join(path.dirname(process.execPath), 'unins000.exe'))) {
|
||||
+ if (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;
|
||||
@@ -202,18 +216,21 @@ index 8f92a3e..020e690 100644
|
||||
+ _updateType = UpdateType.Archive;
|
||||
+ }
|
||||
}
|
||||
@@ -63,2 +67,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -65,2 +69,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@IConfigurationService configurationService: IConfigurationService,
|
||||
+ // @ts-expect-error
|
||||
@ITelemetryService private readonly telemetryService: ITelemetryService,
|
||||
@@ -102,11 +107,21 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
protected buildUpdateFeedUrl(quality: string): string | undefined {
|
||||
@@ -154,12 +159,22 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
|
||||
- protected buildUpdateFeedUrl(quality: string, commit: string, options?: IUpdateURLOptions): string | undefined {
|
||||
- let platform = `win32-${process.arch}`;
|
||||
-
|
||||
- if (getUpdateType() === UpdateType.Archive) {
|
||||
- platform += '-archive';
|
||||
- } else if (this.productService.target === 'user') {
|
||||
- platform += '-user';
|
||||
- }
|
||||
+ protected buildUpdateFeedUrl(quality: string, _commit: string, _options?: IUpdateURLOptions): string | undefined {
|
||||
+ let target: Target;
|
||||
+
|
||||
+ switch (getUpdateType()) {
|
||||
@@ -230,12 +247,12 @@ index 8f92a3e..020e690 100644
|
||||
+ else {
|
||||
+ target = "system"
|
||||
+ }
|
||||
}
|
||||
+ }
|
||||
|
||||
- return createUpdateURL(platform, quality, this.productService);
|
||||
- return createUpdateURL(this.productService.updateUrl!, platform, quality, commit, options);
|
||||
+ return createUpdateURL(this.productService, quality, process.platform, process.arch, target);
|
||||
}
|
||||
@@ -131,2 +146,10 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -185,2 +200,10 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
|
||||
+ const fetchedVersion = /\d+\.\d+\.\d+\.\d+/.test(update.productVersion) ? update.productVersion.replace(/(\d+\.\d+\.\d+)\.\d+(\-\w+)?/, '$1$2') : update.productVersion.replace(/(\d+\.\d+\.)0+(\d+)(\-\w+)?/, '$1$2$3')
|
||||
+ const currentVersion = this.productService.version.replace(/(\d+\.\d+\.)0+(\d+)(\-\w+)?/, '$1$2$3')
|
||||
@@ -246,16 +263,16 @@ index 8f92a3e..020e690 100644
|
||||
+ }
|
||||
+
|
||||
if (updateType === UpdateType.Archive) {
|
||||
@@ -157,3 +180,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -211,3 +234,3 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
|
||||
- const fastUpdatesEnabled = this.configurationService.getValue('update.enableWindowsBackgroundUpdates');
|
||||
+ const fastUpdatesEnabled = getUpdateType() == UpdateType.Setup && this.configurationService.getValue('update.enableWindowsBackgroundUpdates');
|
||||
if (fastUpdatesEnabled) {
|
||||
@@ -169,3 +192,2 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -223,3 +246,2 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
.then(undefined, err => {
|
||||
- this.telemetryService.publicLog2<{ messageHash: string }, UpdateErrorClassification>('update:error', { messageHash: String(hash(String(err))) });
|
||||
this.logService.error(err);
|
||||
@@ -253,6 +275,14 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
@@ -309,6 +331,14 @@ export class Win32UpdateService extends AbstractUpdateService implements IRelaun
|
||||
} else {
|
||||
- spawn(this.availableUpdate.packagePath, ['/silent', '/log', '/mergetasks=runcode,!desktopicon,!quicklaunchicon'], {
|
||||
- detached: true,
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
diff --git a/build/gulpfile.vscode.js b/build/gulpfile.vscode.js
|
||||
index 25d8916..95863d2 100644
|
||||
--- a/build/gulpfile.vscode.js
|
||||
+++ b/build/gulpfile.vscode.js
|
||||
@@ -406,18 +406,18 @@ function packageTask(platform, arch, sourceFolderName, destinationFolderName, op
|
||||
|
||||
- if (quality !== 'exploration') {
|
||||
diff --git a/build/gulpfile.vscode.ts b/build/gulpfile.vscode.ts
|
||||
index d3ab651..d067b5b 100644
|
||||
--- a/build/gulpfile.vscode.ts
|
||||
+++ b/build/gulpfile.vscode.ts
|
||||
@@ -432,19 +432,2 @@ function packageTask(platform: string, arch: string, sourceFolderName: string, d
|
||||
.pipe(rename(f => f.dirname = `policies/${f.dirname}`)));
|
||||
-
|
||||
- if (quality === 'stable' || quality === 'insider') {
|
||||
- result = es.merge(result, gulp.src('.build/win32/appx/**', { base: '.build/win32' }));
|
||||
- const rawVersion = version.replace(/-\w+$/, '').split('.');
|
||||
- const appxVersion = `${rawVersion[0]}.0.${rawVersion[1]}.${rawVersion[2]}`;
|
||||
@@ -16,41 +17,21 @@ index 25d8916..95863d2 100644
|
||||
- .pipe(replace('@@ApplicationIdShort@@', product.win32RegValueName))
|
||||
- .pipe(replace('@@ApplicationExe@@', product.nameShort + '.exe'))
|
||||
- .pipe(replace('@@FileExplorerContextMenuID@@', quality === 'stable' ? 'OpenWithCode' : 'OpenWithCodeInsiders'))
|
||||
- .pipe(replace('@@FileExplorerContextMenuCLSID@@', product.win32ContextMenu[arch].clsid))
|
||||
- .pipe(replace('@@FileExplorerContextMenuCLSID@@', (product as { win32ContextMenu?: Record<string, { clsid: string }> }).win32ContextMenu![arch].clsid))
|
||||
- .pipe(replace('@@FileExplorerContextMenuDLL@@', `${quality === 'stable' ? 'code' : 'code_insider'}_explorer_command_${arch}.dll`))
|
||||
- .pipe(rename(f => f.dirname = `appx/manifest`)));
|
||||
- }
|
||||
+ // if (quality !== 'exploration') {
|
||||
+ // result = es.merge(result, gulp.src('.build/win32/appx/**', { base: '.build/win32' }));
|
||||
+ // const rawVersion = version.replace(/-\w+$/, '').split('.');
|
||||
+ // const appxVersion = `${rawVersion[0]}.0.${rawVersion[1]}.${rawVersion[2]}`;
|
||||
+ // result = es.merge(result, gulp.src('resources/win32/appx/AppxManifest.xml', { base: '.' })
|
||||
+ // .pipe(replace('@@AppxPackageName@@', product.win32AppUserModelId))
|
||||
+ // .pipe(replace('@@AppxPackageVersion@@', appxVersion))
|
||||
+ // .pipe(replace('@@AppxPackageDisplayName@@', product.nameLong))
|
||||
+ // .pipe(replace('@@AppxPackageDescription@@', product.win32NameVersion))
|
||||
+ // .pipe(replace('@@ApplicationIdShort@@', product.win32RegValueName))
|
||||
+ // .pipe(replace('@@ApplicationExe@@', product.nameShort + '.exe'))
|
||||
+ // .pipe(replace('@@FileExplorerContextMenuID@@', `OpenWith${product.win32RegValueName}`))
|
||||
+ // .pipe(replace('@@FileExplorerContextMenuCLSID@@', product.win32ContextMenu[arch].clsid))
|
||||
+ // .pipe(replace('@@FileExplorerContextMenuDLL@@', `${product.applicationName.replace(/-/g, '_')}_explorer_command_${arch}.dll`))
|
||||
+ // .pipe(rename(f => f.dirname = `appx/manifest`)));
|
||||
+ // }
|
||||
} else if (platform === 'linux') {
|
||||
diff --git a/build/gulpfile.vscode.win32.js b/build/gulpfile.vscode.win32.js
|
||||
index 0c4dc52..156322b 100644
|
||||
--- a/build/gulpfile.vscode.win32.js
|
||||
+++ b/build/gulpfile.vscode.win32.js
|
||||
@@ -114,7 +114,7 @@ function buildWin32Setup(arch, target) {
|
||||
diff --git a/build/gulpfile.vscode.win32.ts b/build/gulpfile.vscode.win32.ts
|
||||
index a7b01f0..43c93b8 100644
|
||||
--- a/build/gulpfile.vscode.win32.ts
|
||||
+++ b/build/gulpfile.vscode.win32.ts
|
||||
@@ -117,8 +117,2 @@ function buildWin32Setup(arch: string, target: string): task.CallbackTask {
|
||||
|
||||
- if (quality !== 'exploration') {
|
||||
- if (quality === 'stable' || quality === 'insider') {
|
||||
- definitions['AppxPackage'] = `${quality === 'stable' ? 'code' : 'code_insider'}_${arch}.appx`;
|
||||
- definitions['AppxPackageDll'] = `${quality === 'stable' ? 'code' : 'code_insider'}_explorer_command_${arch}.dll`;
|
||||
- definitions['AppxPackageName'] = `${product.win32AppUserModelId}`;
|
||||
- }
|
||||
+ // if (quality !== 'exploration') {
|
||||
+ // definitions['AppxPackage'] = `${product.applicationName.replace(/-/g, '_')}_${arch}.appx`;
|
||||
+ // definitions['AppxPackageDll'] = `${product.applicationName.replace(/-/g, '_')}_explorer_command_${arch}.dll`;
|
||||
+ // definitions['AppxPackageName'] = `${product.win32AppUserModelId}`;
|
||||
+ // }
|
||||
|
||||
-
|
||||
packageInnoSetup(issPath, { definitions }, cb as (err?: Error | null) => void);
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
diff --git a/cli/src/update_service.rs b/cli/src/update_service.rs
|
||||
index a39bbf7..26ad204 100644
|
||||
index 3e0895f..e518ad8 100644
|
||||
--- a/cli/src/update_service.rs
|
||||
+++ b/cli/src/update_service.rs
|
||||
@@ -84,3 +84,3 @@ impl UpdateService {
|
||||
@@ -94,3 +94,3 @@ impl UpdateService {
|
||||
let download_url = format!(
|
||||
- "{}/{}/{}/{}/latest.json",
|
||||
+ "{}/{}/{}/{}/user/latest.json",
|
||||
update_endpoint,
|
||||
&update_endpoint,
|
||||
|
||||
@@ -41,7 +41,7 @@ if [[ "${OS_NAME}" == "osx" ]]; then
|
||||
echo "+ signing"
|
||||
export CODESIGN_IDENTITY AGENT_TEMPDIRECTORY
|
||||
|
||||
DEBUG="electron-osx-sign*" node vscode/build/darwin/sign.js "$( pwd )"
|
||||
DEBUG="electron-osx-sign*" node vscode/build/darwin/sign.ts "$( pwd )"
|
||||
# codesign --display --entitlements :- ""
|
||||
|
||||
echo "+ notarize"
|
||||
|
||||
@@ -18,6 +18,13 @@ mkdir -p assets
|
||||
git archive --format tar.gz --output="./assets/${APP_NAME}-${RELEASE_VERSION}-src.tar.gz" HEAD
|
||||
git archive --format zip --output="./assets/${APP_NAME}-${RELEASE_VERSION}-src.zip" HEAD
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
COMMIT_ID=$( git rev-parse HEAD )
|
||||
|
||||
jsonTmp=$( jq -n --arg 'tag' "${RELEASE_VERSION}" --arg 'id' "${BUILD_SOURCEVERSION}" --arg 'commit' "${COMMIT_ID}" '{ "tag": $tag, "id": $id, "commit": $commit }' )
|
||||
echo "${jsonTmp}" > "./assets/buildinfo.json" && unset jsonTmp
|
||||
fi
|
||||
|
||||
cd assets
|
||||
|
||||
for FILE in *; do
|
||||
|
||||
@@ -3,9 +3,6 @@
|
||||
|
||||
set -e
|
||||
|
||||
# include common functions
|
||||
. ./utils.sh
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
cp -rp src/insider/* vscode/
|
||||
else
|
||||
@@ -16,86 +13,10 @@ cp -f LICENSE vscode/LICENSE.txt
|
||||
|
||||
cd vscode || { echo "'vscode' dir not found"; exit 1; }
|
||||
|
||||
../update_settings.sh
|
||||
|
||||
# apply patches
|
||||
{ set +x; } 2>/dev/null
|
||||
|
||||
echo "APP_NAME=\"${APP_NAME}\""
|
||||
echo "APP_NAME_LC=\"${APP_NAME_LC}\""
|
||||
echo "BINARY_NAME=\"${BINARY_NAME}\""
|
||||
echo "GH_REPO_PATH=\"${GH_REPO_PATH}\""
|
||||
echo "ORG_NAME=\"${ORG_NAME}\""
|
||||
|
||||
for file in ../patches/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
for file in ../patches/insider/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ -d "../patches/${OS_NAME}/" ]]; then
|
||||
for file in "../patches/${OS_NAME}/"*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
for file in ../patches/user/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
|
||||
set -x
|
||||
|
||||
export ELECTRON_SKIP_BINARY_DOWNLOAD=1
|
||||
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
|
||||
|
||||
if [[ "${OS_NAME}" == "linux" ]]; then
|
||||
export VSCODE_SKIP_NODE_VERSION_CHECK=1
|
||||
|
||||
if [[ "${npm_config_arch}" == "arm" ]]; then
|
||||
export npm_config_arm_version=7
|
||||
fi
|
||||
elif [[ "${OS_NAME}" == "windows" ]]; then
|
||||
if [[ "${npm_config_arch}" == "arm" ]]; then
|
||||
export npm_config_arm_version=7
|
||||
fi
|
||||
else
|
||||
if [[ "${CI_BUILD}" != "no" ]]; then
|
||||
clang++ --version
|
||||
fi
|
||||
fi
|
||||
|
||||
mv .npmrc .npmrc.bak
|
||||
cp ../npmrc .npmrc
|
||||
|
||||
for i in {1..5}; do # try 5 times
|
||||
if [[ "${CI_BUILD}" != "no" && "${OS_NAME}" == "osx" ]]; then
|
||||
CXX=clang++ npm ci && break
|
||||
else
|
||||
npm ci && break
|
||||
fi
|
||||
|
||||
if [[ $i == 5 ]]; then
|
||||
echo "Npm install failed too many times" >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "Npm install failed $i, trying again..."
|
||||
|
||||
sleep $(( 15 * (i + 1)))
|
||||
done
|
||||
|
||||
mv .npmrc.bak .npmrc
|
||||
# {{{ product.json
|
||||
cp product.json{,.bak}
|
||||
|
||||
setpath() {
|
||||
local jsonTmp
|
||||
@@ -113,12 +34,10 @@ setpath_json() {
|
||||
set -x
|
||||
}
|
||||
|
||||
# product.json
|
||||
cp product.json{,.bak}
|
||||
|
||||
setpath "product" "checksumFailMoreInfoUrl" "https://go.microsoft.com/fwlink/?LinkId=828886"
|
||||
setpath "product" "documentationUrl" "https://go.microsoft.com/fwlink/?LinkID=533484#vscode"
|
||||
setpath_json "product" "extensionsGallery" '{"serviceUrl": "https://open-vsx.org/vscode/gallery", "itemUrl": "https://open-vsx.org/vscode/item", "extensionUrlTemplate": "https://open-vsx.org/vscode/gallery/{publisher}/{name}/latest", "controlUrl": "https://raw.githubusercontent.com/EclipseFdn/publish-extensions/refs/heads/master/extension-control/extensions.json"}'
|
||||
setpath_json "product" "extensionsGallery" '{"serviceUrl": "https://open-vsx.org/vscode/gallery", "itemUrl": "https://open-vsx.org/vscode/item", "latestUrlTemplate": "https://open-vsx.org/vscode/gallery/{publisher}/{name}/latest", "controlUrl": "https://raw.githubusercontent.com/EclipseFdn/publish-extensions/refs/heads/master/extension-control/extensions.json"}'
|
||||
|
||||
setpath "product" "introductoryVideosUrl" "https://go.microsoft.com/fwlink/?linkid=832146"
|
||||
setpath "product" "keyboardShortcutsUrlLinux" "https://go.microsoft.com/fwlink/?linkid=832144"
|
||||
setpath "product" "keyboardShortcutsUrlMac" "https://go.microsoft.com/fwlink/?linkid=832143"
|
||||
@@ -139,6 +58,10 @@ if [[ "${DISABLE_UPDATE}" != "yes" ]]; then
|
||||
else
|
||||
setpath "product" "downloadUrl" "https://github.com/VSCodium/vscodium/releases"
|
||||
fi
|
||||
|
||||
# if [[ "${OS_NAME}" == "windows" ]]; then
|
||||
# setpath_json "product" "win32VersionedUpdate" "true"
|
||||
# fi
|
||||
fi
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
@@ -164,7 +87,7 @@ if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
setpath "product" "win32UserAppId" "{{ED2E5618-3E7E-4888-BF3C-A6CCC84F586F}"
|
||||
setpath "product" "win32x64UserAppId" "{{20F79D0D-A9AC-4220-9A81-CE675FFB6B41}"
|
||||
setpath "product" "win32arm64UserAppId" "{{2E362F92-14EA-455A-9ABD-3E656BBBFE71}"
|
||||
setpath "product" "tunnelApplicationName" "codium-tunnel-insiders"
|
||||
setpath "product" "tunnelApplicationName" "codium-insiders-tunnel"
|
||||
setpath "product" "win32TunnelServiceMutex" "vscodiuminsiders-tunnelservice"
|
||||
setpath "product" "win32TunnelMutex" "vscodiuminsiders-tunnel"
|
||||
setpath "product" "win32ContextMenu.x64.clsid" "90AAD229-85FD-43A3-B82D-8598A88829CF"
|
||||
@@ -198,10 +121,106 @@ else
|
||||
setpath "product" "win32ContextMenu.arm64.clsid" "4852FC55-4A84-4EA1-9C86-D53BE3DF83C0"
|
||||
fi
|
||||
|
||||
setpath_json "product" "tunnelApplicationConfig" '{}'
|
||||
|
||||
jsonTmp=$( jq -s '.[0] * .[1]' product.json ../product.json )
|
||||
echo "${jsonTmp}" > product.json && unset jsonTmp
|
||||
|
||||
cat product.json
|
||||
# }}}
|
||||
|
||||
# include common functions
|
||||
. ../utils.sh
|
||||
|
||||
# {{{ apply patches
|
||||
|
||||
echo "APP_NAME=\"${APP_NAME}\""
|
||||
echo "APP_NAME_LC=\"${APP_NAME_LC}\""
|
||||
echo "ASSETS_REPOSITORY=\"${ASSETS_REPOSITORY}\""
|
||||
echo "BINARY_NAME=\"${BINARY_NAME}\""
|
||||
echo "GH_REPO_PATH=\"${GH_REPO_PATH}\""
|
||||
echo "GLOBAL_DIRNAME=\"${GLOBAL_DIRNAME}\""
|
||||
echo "ORG_NAME=\"${ORG_NAME}\""
|
||||
echo "TUNNEL_APP_NAME=\"${TUNNEL_APP_NAME}\""
|
||||
|
||||
if [[ "${DISABLE_UPDATE}" == "yes" ]]; then
|
||||
mv ../patches/disable-update.patch.yet ../patches/disable-update.patch
|
||||
fi
|
||||
|
||||
for file in ../patches/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ "${VSCODE_QUALITY}" == "insider" ]]; then
|
||||
for file in ../patches/insider/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
if [[ -d "../patches/${OS_NAME}/" ]]; then
|
||||
for file in "../patches/${OS_NAME}/"*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
for file in ../patches/user/*.patch; do
|
||||
if [[ -f "${file}" ]]; then
|
||||
apply_patch "${file}"
|
||||
fi
|
||||
done
|
||||
# }}}
|
||||
|
||||
set -x
|
||||
|
||||
# {{{ install dependencies
|
||||
export ELECTRON_SKIP_BINARY_DOWNLOAD=1
|
||||
export PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1
|
||||
|
||||
if [[ "${OS_NAME}" == "linux" ]]; then
|
||||
export VSCODE_SKIP_NODE_VERSION_CHECK=1
|
||||
|
||||
if [[ "${npm_config_arch}" == "arm" ]]; then
|
||||
export npm_config_arm_version=7
|
||||
fi
|
||||
elif [[ "${OS_NAME}" == "windows" ]]; then
|
||||
if [[ "${npm_config_arch}" == "arm" ]]; then
|
||||
export npm_config_arm_version=7
|
||||
fi
|
||||
else
|
||||
if [[ "${CI_BUILD}" != "no" ]]; then
|
||||
clang++ --version
|
||||
fi
|
||||
fi
|
||||
|
||||
node build/npm/preinstall.ts
|
||||
|
||||
mv .npmrc .npmrc.bak
|
||||
cp ../npmrc .npmrc
|
||||
|
||||
for i in {1..5}; do # try 5 times
|
||||
if [[ "${CI_BUILD}" != "no" && "${OS_NAME}" == "osx" ]]; then
|
||||
CXX=clang++ npm ci && break
|
||||
else
|
||||
npm ci && break
|
||||
fi
|
||||
|
||||
if [[ $i == 5 ]]; then
|
||||
echo "Npm install failed too many times" >&2
|
||||
exit 1
|
||||
fi
|
||||
echo "Npm install failed $i, trying again..."
|
||||
|
||||
sleep $(( 15 * (i + 1)))
|
||||
done
|
||||
|
||||
mv .npmrc.bak .npmrc
|
||||
# }}}
|
||||
|
||||
# package.json
|
||||
cp package.json{,.bak}
|
||||
@@ -225,9 +244,7 @@ replace "s|\\[\\/\\* BUILTIN_ANNOUNCEMENTS \\*\\/\\]|$( tr -d '\n' < ../announce
|
||||
|
||||
../undo_telemetry.sh
|
||||
|
||||
replace 's|Microsoft Corporation|VSCodium|' build/lib/electron.js
|
||||
replace 's|Microsoft Corporation|VSCodium|' build/lib/electron.ts
|
||||
replace 's|([0-9]) Microsoft|\1 VSCodium|' build/lib/electron.js
|
||||
replace 's|([0-9]) Microsoft|\1 VSCodium|' build/lib/electron.ts
|
||||
|
||||
if [[ "${OS_NAME}" == "linux" ]]; then
|
||||
@@ -262,7 +279,7 @@ if [[ "${OS_NAME}" == "linux" ]]; then
|
||||
sed -i 's|https://code.visualstudio.com|https://vscodium.com|' resources/linux/rpm/code.spec.template
|
||||
|
||||
# snapcraft.yaml
|
||||
sed -i 's|Visual Studio Code|VSCodium|' resources/linux/rpm/code.spec.template
|
||||
sed -i 's|Visual Studio Code|VSCodium|' resources/linux/rpm/code.spec.template
|
||||
elif [[ "${OS_NAME}" == "windows" ]]; then
|
||||
# code.iss
|
||||
sed -i 's|https://code.visualstudio.com|https://vscodium.com|' build/win32/code.iss
|
||||
|
||||
86
product.json
86
product.json
@@ -46,9 +46,34 @@
|
||||
"extensionAllowedBadgeProvidersRegex": [
|
||||
"^https:\\/\\/github\\.com\\/[^/]+\\/[^/]+\\/(actions\\/)?workflows\\/.*badge\\.svg"
|
||||
],
|
||||
"extensionsEnabledWithApiProposalVersion": [
|
||||
"GitHub.copilot-chat",
|
||||
"ms-vscode.vscode-commander",
|
||||
"ms-vscode.vscode-copilot-vision",
|
||||
"GitHub.vscode-pull-request-github"
|
||||
],
|
||||
"extensionEnabledApiProposals": {
|
||||
"mrleemurray.theme-2026": [
|
||||
"css"
|
||||
],
|
||||
"ms-azuretools.vscode-containers": [
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-azuretools.vscode-azureresourcegroups": [
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-azuretools.vscode-azure-github-copilot": [
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-azuretools.vscode-dev-azurecloudshell": [
|
||||
"contribEditSessions"
|
||||
"contribEditSessions",
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-toolsai.vscode-ai": [
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"TeamsDevApp.vscode-ai-foundry": [
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-vscode.vscode-selfhost-test-provider": [
|
||||
"testObserver",
|
||||
@@ -65,7 +90,6 @@
|
||||
"documentFiltersExclusive",
|
||||
"fileSearchProvider",
|
||||
"findTextInFiles",
|
||||
"notebookCellExecutionState",
|
||||
"notebookLiveShare",
|
||||
"terminalDimensions",
|
||||
"terminalDataWriteEvent",
|
||||
@@ -78,7 +102,8 @@
|
||||
"tunnels"
|
||||
],
|
||||
"ms-toolsai.vscode-ai-remote": [
|
||||
"resolvers"
|
||||
"resolvers",
|
||||
"authenticationChallenges"
|
||||
],
|
||||
"ms-python.python": [
|
||||
"codeActionAI",
|
||||
@@ -94,7 +119,8 @@
|
||||
"terminalShellEnv"
|
||||
],
|
||||
"ms-python.vscode-python-envs": [
|
||||
"terminalShellEnv"
|
||||
"terminalShellEnv",
|
||||
"terminalDataWriteEvent"
|
||||
],
|
||||
"ms-dotnettools.dotnet-interactive-vscode": [
|
||||
"notebookMessaging"
|
||||
@@ -184,6 +210,7 @@
|
||||
],
|
||||
"GitHub.vscode-pull-request-github": [
|
||||
"activeComment",
|
||||
"chatContextProvider",
|
||||
"chatParticipantAdditions",
|
||||
"chatParticipantPrivate",
|
||||
"chatSessionsProvider",
|
||||
@@ -192,6 +219,7 @@
|
||||
"commentingRangeHint",
|
||||
"commentReactor",
|
||||
"commentReveal",
|
||||
"commentsDraftState",
|
||||
"commentThreadApplicability",
|
||||
"contribAccessibilityHelpContent",
|
||||
"contribCommentEditorActionsMenu",
|
||||
@@ -202,20 +230,24 @@
|
||||
"contribMultiDiffEditorMenus",
|
||||
"contribShareMenu",
|
||||
"diffCommand",
|
||||
"languageModelDataPart",
|
||||
"languageModelToolResultAudience",
|
||||
"markdownAlertSyntax",
|
||||
"quickDiffProvider",
|
||||
"remoteCodingAgents",
|
||||
"shareProvider",
|
||||
"tabInputMultiDiff",
|
||||
"tabInputTextMerge",
|
||||
"tokenInformation",
|
||||
"treeItemMarkdownLabel",
|
||||
"treeViewMarkdownMessage"
|
||||
],
|
||||
"GitHub.copilot": [
|
||||
"inlineCompletionsAdditions"
|
||||
"inlineCompletionsAdditions",
|
||||
"devDeviceId"
|
||||
],
|
||||
"GitHub.copilot-nightly": [
|
||||
"inlineCompletionsAdditions"
|
||||
"inlineCompletionsAdditions",
|
||||
"devDeviceId"
|
||||
],
|
||||
"GitHub.copilot-chat": [
|
||||
"interactive",
|
||||
@@ -226,7 +258,6 @@
|
||||
"chatParticipantAdditions",
|
||||
"defaultChatParticipant",
|
||||
"embeddings",
|
||||
"chatEditing",
|
||||
"chatProvider",
|
||||
"mappedEditsProvider",
|
||||
"aiRelatedInformation",
|
||||
@@ -242,6 +273,8 @@
|
||||
"contribCommentEditorActionsMenu",
|
||||
"contribCommentThreadAdditionalMenu",
|
||||
"contribCommentsViewThreadMenus",
|
||||
"contribChatEditorInlineGutterMenu",
|
||||
"extensionAffinity",
|
||||
"newSymbolNamesProvider",
|
||||
"findFiles2",
|
||||
"chatReferenceDiagnostic",
|
||||
@@ -256,14 +289,23 @@
|
||||
"chatReferenceBinaryData",
|
||||
"languageModelSystem",
|
||||
"languageModelCapabilities",
|
||||
"languageModelDataPart",
|
||||
"languageModelThinkingPart",
|
||||
"languageModelToolSupportsModel",
|
||||
"chatStatusItem",
|
||||
"taskProblemMatcherStatus",
|
||||
"contribLanguageModelToolSets",
|
||||
"textDocumentChangeReason",
|
||||
"resolvers",
|
||||
"taskExecutionTerminal",
|
||||
"dataChannels"
|
||||
"dataChannels",
|
||||
"chatSessionsProvider",
|
||||
"devDeviceId",
|
||||
"contribEditorContentMenu",
|
||||
"tokenInformation",
|
||||
"chatPromptFiles",
|
||||
"mcpServerDefinitions",
|
||||
"tabInputMultiDiff",
|
||||
"workspaceTrust"
|
||||
],
|
||||
"GitHub.remotehub": [
|
||||
"contribRemoteHelp",
|
||||
@@ -280,12 +322,10 @@
|
||||
"textSearchProvider",
|
||||
"timeline"
|
||||
],
|
||||
"ms-python.gather": [
|
||||
"notebookCellExecutionState"
|
||||
],
|
||||
"ms-python.vscode-pylance": [
|
||||
"mcpConfigurationProvider",
|
||||
"terminalShellEnv"
|
||||
"terminalShellEnv",
|
||||
"portsAttributes",
|
||||
"codeActionAI"
|
||||
],
|
||||
"ms-python.debugpy": [
|
||||
"contribViewsWelcome",
|
||||
@@ -361,7 +401,21 @@
|
||||
"chatParticipantAdditions"
|
||||
],
|
||||
"vscjava.vscode-java-upgrade": [
|
||||
"chatParticipantAdditions"
|
||||
"chatParticipantAdditions",
|
||||
"chatParticipantPrivate"
|
||||
],
|
||||
"FoundryLocal.foundry-local-chat": [
|
||||
"chatProvider"
|
||||
],
|
||||
"Microsoft.foundry-local-chat": [
|
||||
"chatProvider"
|
||||
],
|
||||
"ms-wmcp.windows-mcp-server-extension": [
|
||||
"mcpToolDefinitions"
|
||||
],
|
||||
"openai.chatgpt": [
|
||||
"languageModelProxy",
|
||||
"chatSessionsProvider"
|
||||
],
|
||||
"jeanp413.open-remote-ssh": [
|
||||
"resolvers",
|
||||
|
||||
@@ -75,8 +75,8 @@ update vscode to [@@MS_TAG@@](@@MS_URL@@)
|
||||
<tr>
|
||||
<td>AppImage</td>
|
||||
<td>
|
||||
<a href="https://github.com/@@ASSETS_REPOSITORY@@/releases/download/@@VERSION@@@@QUALITY@@/@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.29-x86_64.AppImage">@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.29-x86_64.AppImage</a><br />
|
||||
<a href="https://github.com/@@ASSETS_REPOSITORY@@/releases/download/@@VERSION@@@@QUALITY@@/@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.29-x86_64.AppImage.zsync">@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.29-x86_64.AppImage.zsync</a>
|
||||
<a href="https://github.com/@@ASSETS_REPOSITORY@@/releases/download/@@VERSION@@@@QUALITY@@/@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.30-x86_64.AppImage">@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.30-x86_64.AppImage</a><br />
|
||||
<a href="https://github.com/@@ASSETS_REPOSITORY@@/releases/download/@@VERSION@@@@QUALITY@@/@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.30-x86_64.AppImage.zsync">@@APP_NAME_QUALITY@@-@@VERSION@@.glibc2.30-x86_64.AppImage.zsync</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -2,6 +2,7 @@
|
||||
Name=@@NAME_LONG@@
|
||||
Comment=Code Editing. Redefined.
|
||||
GenericName=Text Editor
|
||||
GenericName[ar]=محرر نصوص
|
||||
Exec=@@EXEC@@ %F
|
||||
Icon=@@ICON@@
|
||||
Type=Application
|
||||
@@ -14,6 +15,7 @@ Keywords=vscodium;codium;vscode;
|
||||
|
||||
[Desktop Action new-empty-window]
|
||||
Name=New Empty Window
|
||||
Name[ar]=نافذة فارغة جديدة
|
||||
Name[de]=Neues leeres Fenster
|
||||
Name[es]=Nueva ventana vacía
|
||||
Name[fr]=Nouvelle fenêtre vide
|
||||
|
||||
@@ -24,7 +24,7 @@ else
|
||||
if [[ "${VSCODE_QUALITY}" == "stable" ]]; then
|
||||
CHANNEL="${SNAPCRAFT_STORE_CHANNEL:-stable}"
|
||||
|
||||
sudo snap install --channel stable --classic snapcraft
|
||||
sudo snap install --channel "${CHANNEL}" --classic snapcraft
|
||||
|
||||
echo "Architecture: ${ARCHITECTURE}"
|
||||
|
||||
|
||||
@@ -109,7 +109,6 @@ copy_env_variable GDK_BACKEND
|
||||
copy_env_variable GTK_PATH
|
||||
copy_env_variable GTK_EXE_PREFIX
|
||||
copy_env_variable GTK_IM_MODULE_FILE
|
||||
copy_env_variable LIBGL_DRIVERS_PATH
|
||||
|
||||
# XDG Config
|
||||
prepend_dir XDG_CONFIG_DIRS "$SNAP/etc/xdg"
|
||||
@@ -121,16 +120,12 @@ prepend_dir XDG_DATA_DIRS "$SNAP/data-dir"
|
||||
prepend_dir XDG_DATA_DIRS "$SNAP_USER_DATA"
|
||||
|
||||
# Set XDG_DATA_HOME to local path
|
||||
ensure_dir_exists "$SNAP_USER_DATA/.local/share"
|
||||
export XDG_DATA_HOME="$SNAP_USER_DATA/.local/share"
|
||||
ensure_dir_exists "$XDG_DATA_HOME"
|
||||
|
||||
# Workaround for GLib < 2.53.2 not searching for schemas in $XDG_DATA_HOME:
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=741335
|
||||
prepend_dir XDG_DATA_DIRS "$SNAP_USER_DATA/.local/share"
|
||||
|
||||
# Use the snap MESA drivers to launch the snap.
|
||||
# This is required by wayland, but electron will make better use under X11 too
|
||||
prepend_dir LIBGL_DRIVERS_PATH "$SNAP/usr/lib/dri"
|
||||
prepend_dir LIBGL_DRIVERS_PATH "$SNAP/usr/lib/$ARCH/dri"
|
||||
prepend_dir XDG_DATA_DIRS "$XDG_DATA_HOME"
|
||||
|
||||
# Set cache folder to local path
|
||||
if [[ -d "$SNAP_USER_DATA/.cache" && ! -e "$SNAP_USER_COMMON/.cache" ]]; then
|
||||
@@ -158,28 +153,45 @@ if [[ -n "$XDG_RUNTIME_DIR" && -z "$DISABLE_WAYLAND" ]] && \
|
||||
if [ -n "$WAYLAND_DISPLAY" ]; then
|
||||
wdisplay="$WAYLAND_DISPLAY"
|
||||
fi
|
||||
wayland_sockpath="$XDG_RUNTIME_DIR/../$wdisplay"
|
||||
wayland_snappath="$XDG_RUNTIME_DIR/$wdisplay"
|
||||
if [ -S "$wayland_snappath" ]; then
|
||||
if [ -S "$wayland_sockpath" ]; then
|
||||
# if running under wayland, use it
|
||||
#export WAYLAND_DEBUG=1
|
||||
# shellcheck disable=SC2034
|
||||
wayland_available=true
|
||||
# create the compat symlink for now
|
||||
if [ ! -e "$wayland_snappath" ]; then
|
||||
ln -s "$wayland_sockpath" "$wayland_snappath"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Keep an array of data dirs, for looping through them
|
||||
IFS=':' read -r -a data_dirs_array <<< "$XDG_DATA_DIRS"
|
||||
|
||||
# Build mime.cache
|
||||
# needed for gtk and qt icon
|
||||
# Font Config
|
||||
export FONTCONFIG_PATH="/etc/fonts"
|
||||
export FONTCONFIG_FILE="/etc/fonts/fonts.conf"
|
||||
|
||||
if [ "$needs_update" = true ]; then
|
||||
rm -rf "$XDG_DATA_HOME"/fonts
|
||||
|
||||
if [ -d "$SNAP_REAL_HOME/.local/share/fonts" ]; then
|
||||
ln -s "$SNAP_REAL_HOME/.local/share/fonts" "$XDG_DATA_HOME/fonts"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Build mime.cache needed for gtk and qt icon
|
||||
# @TODO: Re-enable this once we move to core22
|
||||
if [ "$needs_update" = true ]; then
|
||||
rm -rf "$SNAP_USER_DATA/.local/share/mime"
|
||||
if [ ! -f "$SNAP/usr/share/mime/mime.cache" ]; then
|
||||
if command -v update-mime-database >/dev/null; then
|
||||
cp --preserve=timestamps -dR "$SNAP/usr/share/mime" "$SNAP_USER_DATA/.local/share"
|
||||
async_exec update-mime-database "$SNAP_USER_DATA/.local/share/mime"
|
||||
fi
|
||||
fi
|
||||
# if [ ! -f "$SNAP/usr/share/mime/mime.cache" ]; then
|
||||
# if command -v update-mime-database >/dev/null; then
|
||||
# cp --preserve=timestamps -dR "$SNAP/usr/share/mime" "$SNAP_USER_DATA/.local/share"
|
||||
# async_exec update-mime-database "$SNAP_USER_DATA/.local/share/mime"
|
||||
# fi
|
||||
# fi
|
||||
fi
|
||||
|
||||
# Gio modules and cache (including gsettings module)
|
||||
|
||||
@@ -59,7 +59,6 @@ parts:
|
||||
- libnss3
|
||||
- libpango-1.0-0
|
||||
- libsecret-1-0
|
||||
- libvulkan1
|
||||
- libwayland-egl1
|
||||
- libxcomposite1
|
||||
- libxdamage1
|
||||
@@ -70,20 +69,14 @@ parts:
|
||||
- libxss1
|
||||
- locales-all
|
||||
- packagekit-gtk3-module
|
||||
- gnome-settings-daemon-common
|
||||
- xdg-utils
|
||||
prime:
|
||||
- -lib/udev
|
||||
- -usr/lib/systemd
|
||||
- -usr/share/doc
|
||||
- -usr/share/fonts
|
||||
- -usr/share/icons
|
||||
- -usr/share/lintian
|
||||
- -usr/share/man
|
||||
- -usr/share/codium/chrome-sandbox
|
||||
- -usr/share/@@NAME@@/libEGL.so*
|
||||
- -usr/share/@@NAME@@/libGLESv2.so*
|
||||
- -usr/share/@@NAME@@/libvulkan.so*
|
||||
- -usr/share/codium-insiders/chrome-sandbox
|
||||
build-attributes:
|
||||
- enable-patchelf
|
||||
override-prime: |
|
||||
|
||||
@@ -109,7 +109,6 @@ copy_env_variable GDK_BACKEND
|
||||
copy_env_variable GTK_PATH
|
||||
copy_env_variable GTK_EXE_PREFIX
|
||||
copy_env_variable GTK_IM_MODULE_FILE
|
||||
copy_env_variable LIBGL_DRIVERS_PATH
|
||||
|
||||
# XDG Config
|
||||
prepend_dir XDG_CONFIG_DIRS "$SNAP/etc/xdg"
|
||||
@@ -121,16 +120,12 @@ prepend_dir XDG_DATA_DIRS "$SNAP/data-dir"
|
||||
prepend_dir XDG_DATA_DIRS "$SNAP_USER_DATA"
|
||||
|
||||
# Set XDG_DATA_HOME to local path
|
||||
ensure_dir_exists "$SNAP_USER_DATA/.local/share"
|
||||
export XDG_DATA_HOME="$SNAP_USER_DATA/.local/share"
|
||||
ensure_dir_exists "$XDG_DATA_HOME"
|
||||
|
||||
# Workaround for GLib < 2.53.2 not searching for schemas in $XDG_DATA_HOME:
|
||||
# https://bugzilla.gnome.org/show_bug.cgi?id=741335
|
||||
prepend_dir XDG_DATA_DIRS "$SNAP_USER_DATA/.local/share"
|
||||
|
||||
# Use the snap MESA drivers to launch the snap.
|
||||
# This is required by wayland, but electron will make better use under X11 too
|
||||
prepend_dir LIBGL_DRIVERS_PATH "$SNAP/usr/lib/dri"
|
||||
prepend_dir LIBGL_DRIVERS_PATH "$SNAP/usr/lib/$ARCH/dri"
|
||||
prepend_dir XDG_DATA_DIRS "$XDG_DATA_HOME"
|
||||
|
||||
# Set cache folder to local path
|
||||
if [[ -d "$SNAP_USER_DATA/.cache" && ! -e "$SNAP_USER_COMMON/.cache" ]]; then
|
||||
@@ -158,28 +153,45 @@ if [[ -n "$XDG_RUNTIME_DIR" && -z "$DISABLE_WAYLAND" ]] && \
|
||||
if [ -n "$WAYLAND_DISPLAY" ]; then
|
||||
wdisplay="$WAYLAND_DISPLAY"
|
||||
fi
|
||||
wayland_sockpath="$XDG_RUNTIME_DIR/../$wdisplay"
|
||||
wayland_snappath="$XDG_RUNTIME_DIR/$wdisplay"
|
||||
if [ -S "$wayland_snappath" ]; then
|
||||
if [ -S "$wayland_sockpath" ]; then
|
||||
# if running under wayland, use it
|
||||
#export WAYLAND_DEBUG=1
|
||||
# shellcheck disable=SC2034
|
||||
wayland_available=true
|
||||
# create the compat symlink for now
|
||||
if [ ! -e "$wayland_snappath" ]; then
|
||||
ln -s "$wayland_sockpath" "$wayland_snappath"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Keep an array of data dirs, for looping through them
|
||||
IFS=':' read -r -a data_dirs_array <<< "$XDG_DATA_DIRS"
|
||||
|
||||
# Build mime.cache
|
||||
# needed for gtk and qt icon
|
||||
# Font Config
|
||||
export FONTCONFIG_PATH="/etc/fonts"
|
||||
export FONTCONFIG_FILE="/etc/fonts/fonts.conf"
|
||||
|
||||
if [ "$needs_update" = true ]; then
|
||||
rm -rf "$XDG_DATA_HOME"/fonts
|
||||
|
||||
if [ -d "$SNAP_REAL_HOME/.local/share/fonts" ]; then
|
||||
ln -s "$SNAP_REAL_HOME/.local/share/fonts" "$XDG_DATA_HOME/fonts"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Build mime.cache needed for gtk and qt icon
|
||||
# @TODO: Re-enable this once we move to core22
|
||||
if [ "$needs_update" = true ]; then
|
||||
rm -rf "$SNAP_USER_DATA/.local/share/mime"
|
||||
if [ ! -f "$SNAP/usr/share/mime/mime.cache" ]; then
|
||||
if command -v update-mime-database >/dev/null; then
|
||||
cp --preserve=timestamps -dR "$SNAP/usr/share/mime" "$SNAP_USER_DATA/.local/share"
|
||||
async_exec update-mime-database "$SNAP_USER_DATA/.local/share/mime"
|
||||
fi
|
||||
fi
|
||||
# if [ ! -f "$SNAP/usr/share/mime/mime.cache" ]; then
|
||||
# if command -v update-mime-database >/dev/null; then
|
||||
# cp --preserve=timestamps -dR "$SNAP/usr/share/mime" "$SNAP_USER_DATA/.local/share"
|
||||
# async_exec update-mime-database "$SNAP_USER_DATA/.local/share/mime"
|
||||
# fi
|
||||
# fi
|
||||
fi
|
||||
|
||||
# Gio modules and cache (including gsettings module)
|
||||
|
||||
@@ -59,7 +59,6 @@ parts:
|
||||
- libnss3
|
||||
- libpango-1.0-0
|
||||
- libsecret-1-0
|
||||
- libvulkan1
|
||||
- libwayland-egl1
|
||||
- libxcomposite1
|
||||
- libxdamage1
|
||||
@@ -70,20 +69,14 @@ parts:
|
||||
- libxss1
|
||||
- locales-all
|
||||
- packagekit-gtk3-module
|
||||
- gnome-settings-daemon-common
|
||||
- xdg-utils
|
||||
prime:
|
||||
- -lib/udev
|
||||
- -usr/lib/systemd
|
||||
- -usr/share/doc
|
||||
- -usr/share/fonts
|
||||
- -usr/share/icons
|
||||
- -usr/share/lintian
|
||||
- -usr/share/man
|
||||
- -usr/share/codium/chrome-sandbox
|
||||
- -usr/share/@@NAME@@/libEGL.so*
|
||||
- -usr/share/@@NAME@@/libGLESv2.so*
|
||||
- -usr/share/@@NAME@@/libvulkan.so*
|
||||
build-attributes:
|
||||
- enable-patchelf
|
||||
override-prime: |
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
# shellcheck disable=SC1091,2148
|
||||
|
||||
DEFAULT_TRUE="'default': true"
|
||||
DEFAULT_FALSE="'default': false"
|
||||
DEFAULT_ON="'default': TelemetryConfiguration.ON"
|
||||
DEFAULT_OFF="'default': TelemetryConfiguration.OFF"
|
||||
TELEMETRY_CRASH_REPORTER="'telemetry.enableCrashReporter':"
|
||||
TELEMETRY_CONFIGURATION=" TelemetryConfiguration.ON"
|
||||
NLS=workbench.settings.enableNaturalLanguageSearch
|
||||
|
||||
# include common functions
|
||||
. ../utils.sh
|
||||
|
||||
update_setting () {
|
||||
local FILENAME SETTING LINE_NUM IN_SETTING FOUND DEFAULT_TRUE_TO_FALSE
|
||||
|
||||
FILENAME="${2}"
|
||||
# check that the file exists
|
||||
if [[ ! -f "${FILENAME}" ]]; then
|
||||
echo "File to update setting in does not exist ${FILENAME}"
|
||||
return
|
||||
fi
|
||||
|
||||
# go through lines of file, looking for block that contains setting
|
||||
SETTING="${1}"
|
||||
LINE_NUM=0
|
||||
while read -r line; do
|
||||
LINE_NUM=$(( LINE_NUM + 1 ))
|
||||
if [[ "${line}" == *"${SETTING}"* ]]; then
|
||||
IN_SETTING=1
|
||||
fi
|
||||
if [[ ("${line}" == *"${DEFAULT_TRUE}"* || "${line}" == *"${DEFAULT_ON}"*) && "${IN_SETTING}" == "1" ]]; then
|
||||
FOUND=1
|
||||
break
|
||||
fi
|
||||
done < "${FILENAME}"
|
||||
|
||||
if [[ "${FOUND}" != "1" ]]; then
|
||||
echo "${DEFAULT_TRUE} not found for setting ${SETTING} in file ${FILENAME}"
|
||||
return
|
||||
fi
|
||||
|
||||
# construct line-aware replacement string
|
||||
if [[ "${line}" == *"${DEFAULT_TRUE}"* ]]; then
|
||||
DEFAULT_TRUE_TO_FALSE="${LINE_NUM}s/${DEFAULT_TRUE}/${DEFAULT_FALSE}/"
|
||||
else
|
||||
DEFAULT_TRUE_TO_FALSE="${LINE_NUM}s/${DEFAULT_ON}/${DEFAULT_OFF}/"
|
||||
fi
|
||||
|
||||
replace "${DEFAULT_TRUE_TO_FALSE}" "${FILENAME}"
|
||||
}
|
||||
|
||||
update_setting "${TELEMETRY_CRASH_REPORTER}" src/vs/workbench/electron-sandbox/desktop.contribution.ts
|
||||
update_setting "${TELEMETRY_CONFIGURATION}" src/vs/platform/telemetry/common/telemetryService.ts
|
||||
update_setting "${NLS}" src/vs/workbench/contrib/preferences/common/preferencesContribution.ts
|
||||
@@ -169,14 +169,18 @@ elif [[ "${OS_NAME}" == "windows" ]]; then
|
||||
|
||||
if [[ "${VSCODE_ARCH}" == "ia32" || "${VSCODE_ARCH}" == "x64" ]]; then
|
||||
# msi
|
||||
ASSET_NAME="${APP_NAME}-${VSCODE_ARCH}-${RELEASE_VERSION}.msi"
|
||||
VERSION_PATH="${VSCODE_QUALITY}/win32/${VSCODE_ARCH}/msi"
|
||||
updateLatestVersion
|
||||
if [[ "${SHOULD_BUILD_MSI}" != "no" ]]; then
|
||||
ASSET_NAME="${APP_NAME}-${VSCODE_ARCH}-${RELEASE_VERSION}.msi"
|
||||
VERSION_PATH="${VSCODE_QUALITY}/win32/${VSCODE_ARCH}/msi"
|
||||
updateLatestVersion
|
||||
fi
|
||||
|
||||
# updates-disabled msi
|
||||
ASSET_NAME="${APP_NAME}-${VSCODE_ARCH}-updates-disabled-${RELEASE_VERSION}.msi"
|
||||
VERSION_PATH="${VSCODE_QUALITY}/win32/${VSCODE_ARCH}/msi-updates-disabled"
|
||||
updateLatestVersion
|
||||
if [[ "${SHOULD_BUILD_MSI_NOUP}" != "no" ]]; then
|
||||
ASSET_NAME="${APP_NAME}-${VSCODE_ARCH}-updates-disabled-${RELEASE_VERSION}.msi"
|
||||
VERSION_PATH="${VSCODE_QUALITY}/win32/${VSCODE_ARCH}/msi-updates-disabled"
|
||||
updateLatestVersion
|
||||
fi
|
||||
fi
|
||||
else # linux
|
||||
# update service links to tar.gz file
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user