Super Compute Cluster at GIKI.
Prebuilt artifacts are published on GitHub Releases:
| Platform | Artifact | What you get |
|---|---|---|
| Windows desktop | NSIS installer (.exe) |
Cluster Runtime GUI + bundled clusterctl |
| Linux server | cluster-runtime-headless-x86_64-unknown-linux-gnu.tar.gz |
cluster-runtime-server + clusterctl |
There is no Linux desktop app in this release track.
- Download the latest NSIS installer from Releases and run it.
- Launch Cluster Runtime — the API starts automatically.
- On each start the app checks for updates (Settings → Updates). Accept Install update to download, verify the signature, and relaunch.
Python is not in the installer; the runtime downloads a standalone build into the app data dir on first use if system Python is missing.
tar -xzf cluster-runtime-headless-x86_64-unknown-linux-gnu.tar.gz
cd cluster-runtime-headless-x86_64-unknown-linux-gnu
./cluster-runtime-server --service
# other terminal
./clusterctl statusUpdate (stop the server first):
./clusterctl update # prompts y/N
./clusterctl update -y # non-interactive
./clusterctl update --check # notify onlyOn service start the server logs when a newer release is available.
- Desktop GUI: from
cluster-runtime/, runpnpm run dev(Tauri + UI)- UI-only:
pnpm dev:ui
- UI-only:
- Headless server:
pnpm server:build/pnpm server:dev- binary:
target/release/cluster-runtime-server(no Tauri/GTK deps)
- binary:
- Clients:
clients/— VS Code extension + shared HTTP client
| Crate | Role |
|---|---|
cluster-runtime-core |
Shared runtime (API, plugins, Dask/Ray/MPI) |
cluster-runtime-server |
Headless binary + CLI/REPL |
clusterctl |
One-shot CLI (status, engines, update) |
cluster-runtime (src-tauri) |
Tauri GUI (Windows release target) |
# Linux
./scripts/Setup-PythonRuntime.sh --dest /var/lib/cluster-runtime/python
export CLUSTER_RUNTIME_PYTHON_DIR=/var/lib/cluster-runtime/python
# Windows (dev / GUI resources)
./scripts/Setup-PythonRuntime.ps1Or install system Python with venv support (sudo apt install python3 python3-venv python3-pip).
Bootstrap prefers the managed Python from python-runtime-manifest.json (currently 3.10.x)
and will not pick a bleeding-edge system python3 (e.g. 3.14). If you insist on system Python:
sudo ./scripts/ensure-system-python-deps.sh --series 3.10The daemon never runs sudo itself (no password prompt in --service mode).
pnpm server:build # from cluster-runtime/
./scripts/Setup-PythonRuntime.sh --dest ./data/python
./target/release/cluster-runtime-server \
--data-dir ./data \
--api-addr 0.0.0.0:8129 \
--public-url http://<server-ip>:8129 \
--python-dir ./data/python
# Interactive prompt (default):
# cr> status
# cr> dask start
# cr> scheduler set dask
# cr> peer list
# cr> help
# Daemon (no REPL): add --no-replFlags also include --enable-plugin / --disable-plugin, --scheduler dask|ray|mpi, --python, --node-name, --p2p-bootstrap.
- Bump
[workspace.package] versionincluster-runtime/Cargo.tomlandversionincluster-runtime/package.json(Tauri reads the latter for the installer). - Tag and push:
git tag v0.1.2 && git push origin v0.1.2 - GitHub Actions builds:
- Windows NSIS + updater
latest.json(signed) - Linux headless
.tar.gz+SHA256SUMS - Optional Windows headless
.zip
- Windows NSIS + updater
Generate a keypair (never commit the private key):
cd cluster-runtime
pnpm tauri signer generate -w ~/.tauri/cluster-runtime.key- Put the public key in
cluster-runtime/src-tauri/tauri.conf.json→plugins.updater.pubkey - Add GitHub Actions secrets:
TAURI_SIGNING_PRIVATE_KEY— contents of the private key fileTAURI_SIGNING_PRIVATE_KEY_PASSWORD— password if you set one (empty if not)
A keypair was generated during initial setup; the private key may be at %USERPROFILE%\.tauri-cluster-runtime-updater.key on the machine that ran setup. Copy that file’s contents into the TAURI_SIGNING_PRIVATE_KEY secret (it must match the pubkey already in tauri.conf.json). If that file is gone, regenerate and replace the pubkey.