mirror of
https://github.com/VSCodium/vscodium.git
synced 2026-04-24 03:50:13 +10:00
fix: re-enable 32bits builds with npm_config_force_process_config env variable (#1082)
This commit is contained in:
6
.github/workflows/linux.yml
vendored
6
.github/workflows/linux.yml
vendored
@@ -27,9 +27,9 @@ jobs:
|
|||||||
- vscode_arch: arm64
|
- vscode_arch: arm64
|
||||||
npm_arch: arm64
|
npm_arch: arm64
|
||||||
image: vscodium/vscodium-linux-build-agent:stretch-arm64
|
image: vscodium/vscodium-linux-build-agent:stretch-arm64
|
||||||
# - vscode_arch: armhf
|
- vscode_arch: armhf
|
||||||
# npm_arch: armv7l
|
npm_arch: armv7l
|
||||||
# image: vscodium/vscodium-linux-build-agent:stretch-armhf
|
image: vscodium/vscodium-linux-build-agent:stretch-armhf
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
|||||||
2
.github/workflows/windows.yml
vendored
2
.github/workflows/windows.yml
vendored
@@ -22,7 +22,7 @@ jobs:
|
|||||||
matrix:
|
matrix:
|
||||||
vscode_arch:
|
vscode_arch:
|
||||||
- x64
|
- x64
|
||||||
# - ia32
|
- ia32
|
||||||
- arm64
|
- arm64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
@@ -55,6 +55,8 @@ Each platform has its build helper script in the directory `build`.
|
|||||||
|
|
||||||
To build for Linux, you can alternatively build VSCodium in docker
|
To build for Linux, you can alternatively build VSCodium in docker
|
||||||
|
|
||||||
|
### X64
|
||||||
|
|
||||||
Firstly, create the container with:
|
Firstly, create the container with:
|
||||||
```
|
```
|
||||||
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
|
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
|
||||||
@@ -67,9 +69,7 @@ sudo apt-get install -y nodejs desktop-file-utils
|
|||||||
|
|
||||||
npm install -g yarn
|
npm install -g yarn
|
||||||
|
|
||||||
git clone https://github.com/VSCodium/vscodium.git
|
cd /root/vscodium
|
||||||
|
|
||||||
cd vscodium
|
|
||||||
|
|
||||||
./get_repo.sh
|
./get_repo.sh
|
||||||
|
|
||||||
@@ -79,3 +79,28 @@ export VSCODE_ARCH=x64
|
|||||||
|
|
||||||
./build.sh
|
./build.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### ARM 32bits
|
||||||
|
|
||||||
|
Firstly, create the container with:
|
||||||
|
```
|
||||||
|
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:stretch-armhf bash
|
||||||
|
```
|
||||||
|
|
||||||
|
When inside the container, you can use the following commands to build:
|
||||||
|
```
|
||||||
|
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
|
||||||
|
sudo apt-get install -y nodejs desktop-file-utils
|
||||||
|
|
||||||
|
cd /root/vscodium
|
||||||
|
|
||||||
|
./get_repo.sh
|
||||||
|
|
||||||
|
export SHOULD_BUILD=yes
|
||||||
|
export OS_NAME=linux
|
||||||
|
export VSCODE_ARCH=armhf
|
||||||
|
export npm_config_arch=armv7l
|
||||||
|
export npm_config_force_process_config="true"
|
||||||
|
|
||||||
|
./build.sh
|
||||||
|
```
|
||||||
|
|||||||
@@ -34,9 +34,19 @@ done
|
|||||||
|
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
if [[ "$OS_NAME" == "osx" ]]; then
|
if [[ "${OS_NAME}" == "osx" ]]; then
|
||||||
CHILD_CONCURRENCY=1 yarn --frozen-lockfile --ignore-optional
|
CHILD_CONCURRENCY=1 yarn --frozen-lockfile --ignore-optional
|
||||||
npm_config_argv='{"original":["--ignore-optional"]}' yarn postinstall
|
npm_config_argv='{"original":["--ignore-optional"]}' yarn postinstall
|
||||||
|
elif [[ "${npm_config_arch}" == "armv7l" || "${npm_config_arch}" == "ia32" ]]; then
|
||||||
|
# node-gyp@9.0.0 shipped with node@16.15.0 starts using config.gypi
|
||||||
|
# from the custom headers path if dist-url option was set instead of
|
||||||
|
# using the config value from the process. Electron builds with pointer compression
|
||||||
|
# enabled for x64 and arm64, but incorrectly ships a single copy of config.gypi
|
||||||
|
# with v8_enable_pointer_compression option always set for all target architectures.
|
||||||
|
# We use the force_process_config option to use the config.gypi from the
|
||||||
|
# nodejs process executing npm for 32-bit architectures.
|
||||||
|
export npm_config_force_process_config="true"
|
||||||
|
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
|
||||||
else
|
else
|
||||||
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
|
CHILD_CONCURRENCY=1 yarn --frozen-lockfile
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user