2
0
Эх сурвалжийг харах

docs: update extensions and build

Baptiste Augrain 1 сар өмнө
parent
commit
a64179d80b

+ 25 - 9
docs/extensions-compatibility.md

@@ -1,20 +1,23 @@
 # Extensions compatibility
 
-## Partial Compatibility
+## Table of Contents
 
-- [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
-> [Since May 2021](https://devblogs.microsoft.com/python/python-in-visual-studio-code-may-2021-release/), Python is using a closed source language server ([Pylance](https://marketplace.visualstudio.com/items?itemName=ms-python.vscode-pylance))
+- [Incompatibility](#incompatibility)
+- [Replacements](#replacements)
+  - [C/C++](#cc)
+  - [Python](#python)
+  - [Remote](#remote)
+- [Beyond](#beyond)
 
 ## Incompatibility
 
+Most MS extensions are limited to run on only MS products by their license and by running additional checks in their proprietary code.
+
+- [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)
 - [LaTeX Workshop](https://marketplace.visualstudio.com/items?itemName=James-Yu.latex-workshop)
 > It's officially unsupported: https://github.com/James-Yu/LaTeX-Workshop/wiki/FAQ#vscodium-is-not-officially-supported
-
-## Incompatibility due to licensing
-
-The following extensions are not compatible with VSCodium due to their licensing:
-
 - [Live Share](https://marketplace.visualstudio.com/items?itemName=MS-vsliveshare.vsliveshare)
+- [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python)
 - [Remote - Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers)
 - [Remote - SSH](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh)
 - [Remote - SSH: Editing Configuration Files](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh-edit)
@@ -24,6 +27,19 @@ The following extensions are not compatible with VSCodium due to their licensing
 
 The following extensions are functional replacements for incompatible extensions:
 
+### C/C++
+
+- [clangd](https://open-vsx.org/extension/llvm-vs-code-extensions/vscode-clangd)
+
+### Python
+
+- [BasedPyright](https://open-vsx.org/extension/detachhead/basedpyright)
+
+### Remote
+
 - [Open Remote - SSH](https://open-vsx.org/extension/jeanp413/open-remote-ssh)
 - [Open Remote - WSL](https://open-vsx.org/extension/jeanp413/open-remote-wsl)
-- [BasedPyright](https://open-vsx.org/extension/detachhead/basedpyright) (open-source alternative to Pylance)
+
+## Beyond
+
+[VSIX Manager](https://github.com/zokugun/vscode-vsix-manager) allows you to be able install extensions from multiple sources.

+ 33 - 7
docs/howto-build.md

@@ -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
 

+ 6 - 0
docs/index.md

@@ -20,6 +20,7 @@
 - [How do I press and hold a key and have it repeat in VSCodium?](#press-and-hold)
 - [How do I open VSCodium from the terminal?](#terminal-support)
   - [From Linux .tar.gz](#from-linux-targz)
+- [What are reh and reh-web archives?](#reh)
 - [Troubleshooting](https://github.com/VSCodium/vscodium/blob/master/docs/troubleshooting.md)
 - [Contributing](https://github.com/VSCodium/vscodium/blob/master/CONTRIBUTING.md)
 - [How to build VSCodium](https://github.com/VSCodium/vscodium/blob/master/docs/howto-build.md)
@@ -225,3 +226,8 @@ On Linux, when installed with a package manager, `codium` has been installed in
 ### <a id="from-linux-targz"></a>From Linux .tar.gz
 
 When the archive `VSCodium-linux-<arch>-<version>.tar.gz` is extracted, the main entry point for VSCodium is `./bin/codium`.
+
+## <a id="reh"></a>What are reh and reh-web archives?
+
+- Remote Host (`reh`) is the server component for remote ssh/wsl which runs it on a "remote" computer and makes that remote computer accessible via VSCodium.
+- Web Host (`reh-web`) is the server component of the command `codium serve-web` which runs it locally and makes VSCodium accessible via a browser.