# Sanctum **A private, self-hosted desktop client for [mithraic.space](https://mithraic.space)** Built on [Revolt](https://revolt.chat) — open source, no tracking, no telemetry, no nonsense. Windows & Linux. Auto-updates from your own server.
--- ## What is this? Sanctum is a custom fork of [Stoat for Desktop](https://github.com/stoatchat/for-desktop), hardwired to connect exclusively to **mithraic.space** — a self-hosted Revolt instance. It replaces the default branding, icons, and update pipeline with a fully self-contained setup hosted on a private Forgejo instance. No reliance on external services. Updates come from `git.mithraic.cloud`. Builds run on a self-hosted CI runner. Everything stays in-house. --- ## Installing Grab the latest build from the [Releases page](https://git.mithraic.cloud/ad3laid3/sanctum/releases). ### Linux ```bash # extract to your local apps folder mkdir -p ~/.local/share/sanctum unzip Sanctum-linux-x64-*.zip -d ~/.local/share/sanctum/ # register it as a desktop app cat > ~/.local/share/applications/sanctum.desktop << EOF [Desktop Entry] Name=Sanctum Exec=$HOME/.local/share/sanctum/sanctum Icon=$HOME/.local/share/sanctum/resources/assets/desktop/icon.png Type=Application Categories=Network;InstantMessaging; StartupWMClass=sanctum EOF ``` Then search for **Sanctum** in your app launcher and you're in. ### Windows Extract the zip, run `sanctum.exe`. That's it. --- ## Auto-updates Sanctum checks for new releases on every launch. When a newer version is available on `git.mithraic.cloud`, you'll get a desktop notification — click it to download. No background processes, no silent installs. --- ## Building from source You'll need Git, Node.js, and pnpm (`corepack enable`). ```bash git clone https://git.mithraic.cloud/ad3laid3/sanctum cd sanctum pnpm i --frozen-lockfile pnpm start ``` ### Releasing a new build Push a version tag and CI does the rest — compiles Linux and Windows builds, creates a release, and uploads artifacts automatically. ```bash git tag v1.x.x git push origin v1.x.x ``` ### Building locally ```bash # Linux (deb + zip) PLATFORM=linux pnpm make # Windows (zip, no Wine required) pnpm make --platform win32 --arch x64 ``` Output lands in `out/make/`. --- ## Tech - [Electron](https://www.electronjs.org/) + [electron-forge](https://www.electronforge.io/) - [Revolt](https://revolt.chat) open-source chat backend - [Forgejo](https://forgejo.org/) for self-hosted git + CI - Discord Rich Presence via [discord-rpc](https://github.com/discordjs/RPC)