VS Code
Visual Studio Code is a full-featured code editor that runs on ARM64 Linux. You have several options for running it in ADL โ from the full desktop application to a browser-based setup. This page covers installation, configuration, and alternatives for devices with limited resources.
Installation Optionsโ
There are three ways to run VS Code in ADL. Each has different trade-offs.
Option 1: Code OSS from Ubuntu Reposโ
The simplest installation path. Code OSS is the open-source base of VS Code.
sudo apt update && sudo apt install code-ossCode OSS appears in your application menu under Development. Launch it from the terminal with code-oss.
Code OSS uses the Open VSX marketplace instead of Microsoft's marketplace. Most popular extensions are available on Open VSX, but some Microsoft-published extensions (like Python, C#, Remote SSH) are not. If you need those, use the official VS Code .deb instead.
Option 2: Official VS Code .debโ
Download the ARM64 .deb package directly from Microsoft:
curl -L -o /tmp/vscode.deb 'https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-arm64'
Install the downloaded package:
sudo apt install /tmp/vscode.debVS Code appears in your application menu. Launch it with code from the terminal.
The official .deb does not auto-update through apt. You need to download and install new versions manually. Check for updates at https://code.visualstudio.com periodically.
Option 3: code-server (Browser-Based)โ
code-server runs VS Code as a web application that you access through your browser. This is useful if the desktop application is too resource-heavy, or if you want to skip X11 setup entirely.
curl -fsSL https://code-server.dev/install.sh | shStart code-server:
code-server --bind-addr 127.0.0.1:8080Then open Firefox and navigate to http://127.0.0.1:8080. The default password is in ~/.config/code-server/config.yaml.
code-server uses significantly less memory than the desktop application because it offloads rendering to the browser. On devices with 3-4 GB of RAM, this can be the difference between a usable and unusable editor.
Display Configurationโ
If you are running VS Code or Code OSS as a desktop application, it needs a working X11 display through Termux:X11.
Make sure the DISPLAY environment variable is set:
echo $DISPLAYYou should see :0 or :1. If the variable is empty, your display server is not configured. See the display setup guide.
If VS Code launches but the window is blank or flickering, disable GPU acceleration:
code --disable-gpuTo make this permanent, add the flag to your VS Code desktop entry or alias:
echo "alias code='code --disable-gpu'" >> ~/.bashrc
Recommended Extensionsโ
These extensions work well on ARM64 and are useful for development in ADL:
| Extension | ID | Purpose |
|---|---|---|
| Python | ms-python.python | Python language support, linting, debugging |
| GitLens | eamodio.gitlens | Enhanced Git integration and blame annotations |
| Prettier | esbenp.prettier-vscode | Code formatting for JS, TS, CSS, HTML, JSON |
| ESLint | dbaeumer.vscode-eslint | JavaScript and TypeScript linting |
| Remote - SSH | ms-vscode-remote.remote-ssh | Connect to remote servers from within VS Code |
| Markdown All in One | yzhang.markdown-all-in-one | Markdown editing with preview and shortcuts |
Extensions marked with ms- prefixes are Microsoft-published and only available on the official VS Code marketplace. If you installed Code OSS, search for community alternatives on Open VSX or switch to the official .deb.
Install only the extensions you actively use. Each extension adds to startup time and memory usage. Five well-chosen extensions are better than twenty rarely-used ones.
Performance Optimizationโ
VS Code can be resource-hungry. These settings help keep it responsive on constrained devices.
settings.json Tweaksโ
Open settings with Ctrl+Shift+P then type "Preferences: Open Settings (JSON)". Add these entries:
{
"telemetry.telemetryLevel": "off",
"extensions.autoUpdate": false,
"workbench.enableExperiments": false,
"search.followSymlinks": false,
"files.watcherExclude": {
"**/.git/**": true,
"**/node_modules/**": true,
"**/dist/**": true
},
"editor.minimap.enabled": false,
"editor.renderWhitespace": "none",
"editor.cursorBlinking": "solid",
"editor.smoothScrolling": false,
"workbench.list.smoothScrolling": false,
"breadcrumbs.enabled": false,
"editor.bracketPairColorization.enabled": false
}
Disabling the minimap, smooth scrolling, and bracket colorization reduces rendering overhead noticeably. On lower-end devices, these changes can cut editor frame times in half.
Memory Managementโ
VS Code's memory usage grows with workspace size and extension count. Monitor and manage it with these strategies:
Opening VS Code and Firefox simultaneously on a device with 4 GB of RAM will likely cause swapping and severe slowdowns. If you need both, use code-server inside Firefox instead of running two separate heavy applications.
Lightweight Alternativesโ
If VS Code is too heavy for your device, consider these alternatives: