|
@@ -6,7 +6,8 @@
|
|
|
- [Linux](#dependencies-linux)
|
|
|
- [MacOS](#dependencies-macos)
|
|
|
- [Windows](#dependencies-windows)
|
|
|
-- [Build Scripts](#build-scripts)
|
|
|
+- [Build for Development](#build-dev)
|
|
|
+- [Build for CI/Downstream](#build-ci)
|
|
|
- [Build Snap](#build-snap)
|
|
|
- [Patch Update Process](#patch-update-process)
|
|
|
- [Semi-Automated](#patch-update-process-semiauto)
|
|
@@ -14,10 +15,11 @@
|
|
|
|
|
|
## <a id="dependencies"></a>Dependencies
|
|
|
|
|
|
-- node 20.14
|
|
|
+- node 20.18
|
|
|
- jq
|
|
|
- git
|
|
|
- python3 3.11
|
|
|
+- rustup
|
|
|
|
|
|
### <a id="dependencies-linux"></a>Linux
|
|
|
|
|
@@ -48,7 +50,7 @@ see [the common dependencies](#dependencies)
|
|
|
- [WiX Toolset](http://wixtoolset.org/releases/)
|
|
|
- 'Tools for Native Modules' from the official Node.js installer
|
|
|
|
|
|
-## <a id="build-scripts"></a>Build Scripts
|
|
|
+## <a id="build-dev"></a>Build for Development
|
|
|
|
|
|
A build helper script can be found at `dev/build.sh`.
|
|
|
|
|
@@ -72,6 +74,31 @@ The script `dev/build.sh` provides several flags:
|
|
|
- `-p`: generate the packages/assets/installers
|
|
|
- `-s`: do not retrieve the source code of Visual Studio Code, it won't delete the existing build
|
|
|
|
|
|
+## <a id="build-ci"></a>Build for CI/Downstream
|
|
|
+
|
|
|
+Here is the base script to build VSCodium:
|
|
|
+
|
|
|
+```bash
|
|
|
+# Export necessary environment variables
|
|
|
+export SHOULD_BUILD="yes"
|
|
|
+export SHOULD_BUILD_REH="no"
|
|
|
+export CI_BUILD="no"
|
|
|
+export OS_NAME="linux"
|
|
|
+export VSCODE_ARCH="${vscode_arch}"
|
|
|
+export VSCODE_QUALITY="stable"
|
|
|
+export RELEASE_VERSION="${version}"
|
|
|
+
|
|
|
+. get_repo.sh
|
|
|
+. build.sh
|
|
|
+```
|
|
|
+
|
|
|
+To go further, you should look at how we build it:
|
|
|
+- Linux: https://github.com/VSCodium/vscodium/blob/master/.github/workflows/stable-linux.yml
|
|
|
+- macOS: https://github.com/VSCodium/vscodium/blob/master/.github/workflows/stable-macos.yml
|
|
|
+- Windows: https://github.com/VSCodium/vscodium/blob/master/.github/workflows/stable-windows.yml
|
|
|
+
|
|
|
+The `./dev/build.sh` script is for development purpose and must be avoided for a packaging purpose.
|
|
|
+
|
|
|
## <a id="build-snap"></a>Build Snap
|
|
|
|
|
|
```
|
|
@@ -103,13 +130,12 @@ review-tools.snap-review --allow-classic codium*.snap
|
|
|
## <a id="patch-update-process-manual"></a>Manual
|
|
|
|
|
|
- run `./dev/build.sh`, if a patch is failing then,
|
|
|
-- open `vscode` directory in **VSCodium**
|
|
|
-- revert all changes
|
|
|
-- run `git apply --reject ../patches/<name>.patch`
|
|
|
+- run `./dev/patch.sh <name>.patch` where `<name>.patch` is the failed patch
|
|
|
+- open `vscode` directory in a new **VSCodium**'s window
|
|
|
- fix all the `*.rej` files
|
|
|
- run `npm run watch`
|
|
|
- run `./script/code.sh` until everything is ok
|
|
|
-- run `git diff > ../patches/<name>.patch`
|
|
|
+- go back to the command line running `./dev/patch.sh`, press `enter` to validate the changes and it will update the patch
|
|
|
|
|
|
### <a id="icons"></a>icons/build_icons.sh
|
|
|
|