- node 18.15
- yarn
- jq
- git
- python3 3.11
- gcc
- g++
- make
- pkg-config
- libx11-dev
- libxkbfile-dev
- libsecret-1-dev
- libkrb5-dev
- fakeroot
- rpm
- rpmbuild
- dpkg
- imagemagick (for AppImage)
- snapcraft
- powershell
- sed
- 7z
- WiX Toolset
- 'Tools for Native Modules' from the official Node.js installer
A build helper script can be found at build/build.sh
.
- Linux:
./build/build.sh
- MacOS:
./build/build.sh
- Windows:
powershell -ExecutionPolicy ByPass -File .\build\build.ps1
or"C:\Program Files\Git\bin\bash.exe" ./build/build.sh
The insider
version can be built with ./build/build.sh -i
on the insider
branch.
You can try the latest version with the command ./build/build.sh -il
but the patches might not be up to date.
The script build/build.sh
provides several flags:
-i
: build the Insiders version-l
: build with latest version of Visual Studio Code-o
: skip the build step-p
: generate the packages/assets/installers-s
: do not retrieve the source code of Visual Studio Code, it won't delete the existing build
To build for Linux, you can alternatively build VSCodium in docker
Firstly, create the container with:
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
like
docker run -ti --volume=$(pwd):/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-x64 bash
When inside the container, you can use the following commands to build:
cd /root/vscodium
./build/build.sh
Firstly, create the container with:
docker run -ti --volume=<local vscodium source>:/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-armhf bash
like
docker run -ti --volume=$(pwd):/root/vscodium --name=vscodium-build-agent vscodium/vscodium-linux-build-agent:bionic-armhf bash
When inside the container, you can use the following commands to build:
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs desktop-file-utils
cd /root/vscodium
./build/build.sh
# for the stable version
cd ./stores/snapcraft/stable
# for the insider version
cd ./stores/snapcraft/insider
# create the snap
snapcraft --use-lxd
# verify the snap
review-tools.snap-review --allow-classic codium*.snap
- run
./build/build_<os>.sh
, if a patch is failing then, - run
./build/update_patches.sh
- when the script pauses at
Press any key when the conflict have been resolved...
, openvscode
directory in VSCodium - fix all the
*.rej
files - run
yarn watch
- run
./script/code.sh
until everything is ok - press any key to continue the script
update_patches.sh
- run
./build/build_<os>.sh
, if a patch is failing then, - open
vscode
directory in VSCodium - revert all changes
- run
git apply --reject ../patches/<name>.patch
- fix all the
*.rej
files - run
yarn watch
- run
./script/code.sh
until everything is ok - run
git diff > ../patches/<name>.patch
To run icons/build_icons.sh
, you will need:
- imagemagick
- png2icns (
npm install png2icns -g
) - librsvg