
# Updates

JCode publishes one continuously moving release stream. Each successful release pipeline is versioned as `0.2.<project-local pipeline IID>` and replaces the public "latest" pointers after its artifacts are ready.

## Desktop

The macOS and Windows desktop apps check JCode's EOS-backed update feed automatically. They download a newer build in the background and install it when the app exits. You can also check manually from **Settings -> About**. Linux checks the same release pointer but installs a downloaded tar.gz manually.

There are no stable or beta channels and no staged rollout. All desktop users see the same published version.

Desktop builds are available for:

- macOS on Apple Silicon and Intel
- Windows x64
- Linux x64 as tar.gz

Download the current installers from [jcode.vpnla.pro/download](https://jcode.vpnla.pro/download).

For a system Linux install with Chromium's OS sandbox enabled:

```bash
tar -xzf JCode-*-x64.tar.gz
cd JCode-*-x64
sudo ./install.sh --system
jcode-desktop
```

If sudo is unavailable, a rootless install is available only with explicit acceptance of the reduced browser isolation:

```bash
./install.sh --user --accept-no-sandbox
jcode-desktop
```

Both modes atomically switch a stable installation path. The `jcode-desktop` launcher and the bundled `jcode` CLI therefore move to the new version together.

Desktop also owns runtimes that it installs on remote hosts through **Set up over SSH**. Those daemons do not self-update from EOS. Install a newer Desktop release, then run **Check, edit, or repair** for that host to transfer the bundled runtime and take ownership, even when an EOS-installed runtime already has the same version.

## Android

Android is distributed as a direct APK from [jcode.vpnla.pro/download](https://jcode.vpnla.pro/download). The APK is built by EAS and uploaded to EOS for each release pipeline. JCode is not submitted to Google Play or the App Store by this release process.

The Android build runs independently from desktop publication, so the download page may briefly show that the APK is still pending after a new desktop version appears.

## Headless runtime

The public server/CLI installer is an advanced manual fallback for machines that cannot be prepared through Desktop's SSH flow. It downloads a self-contained runtime from EOS, so the host needs public network access during installation and updates. Installs made through this runtime can update themselves to the latest published version; source checkouts, Desktop-managed daemons, desktop-bundled local daemons, and Docker builds do not use that updater.

Install on macOS or Linux:

```bash
curl -fsSL https://objects.eos.chengdu-7.cmecloud.cn/jcode/runtime/install.sh | sh
```

Install from PowerShell:

```powershell
irm https://objects.eos.chengdu-7.cmecloud.cn/jcode/runtime/install.ps1 | iex
```
