Ouroboros v0.7.1
/docs v0.7.1 updated 2026-05-09

Ouroboros Documentation

Install

Ouroboros is built from source. There are no pre-built binaries yet — the project is early and moving fast. Building takes about five minutes on a modern machine.

Prerequisites

You need three things installed:

ToolVersionInstall
Rust≥ 1.80curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Bun≥ 1.1curl -fsSL https://bun.sh/install | bash
System librariesvariessee platform section below

Linux (Fedora / RHEL)

sudo dnf install -y \
    webkit2gtk4.1-devel openssl-devel curl wget file \
    libappindicator-gtk3-devel librsvg2-devel \
    gcc gcc-c++ make gtk3-devel patchelf

Linux (Ubuntu / Debian)

sudo apt install -y \
    libwebkit2gtk-4.1-dev libssl-dev curl wget file \
    libayatana-appindicator3-dev librsvg2-dev \
    build-essential libgtk-3-dev patchelf

macOS

xcode-select --install

Xcode command-line tools include everything Tauri needs on macOS. No additional packages required.

Windows

Install Build Tools for Visual Studio with the “Desktop development with C++” workload. Also install WebView2 (usually pre-installed on Windows 10+).

Clone and build

git clone https://git.sr.ht/~nikkilol/ouroboros
cd ouroboros/desktop-app
bun install
bun run dev

bun run dev launches the app in development mode — a live-reloading Tauri window backed by the SvelteKit dev server. Rust crates download on first build; subsequent launches are fast.

Production build

bun run package

This produces platform-native packages in src-tauri/target/release/bundle/:

PlatformOutput
Linux.rpm and .AppImage
macOS.dmg
Windows.msi and .exe

The AppImage is a single portable file — chmod +x and run, no install needed.

Updates

cd ouroboros
git pull
cd desktop-app
bun install
bun run package

First run

On first launch, Ouroboros creates a SQLite database at ~/.local/share/lol.nikki.ouroboros/ouroboros.db (Linux) or the platform equivalent. The app is empty until you connect a sync source in Settings.

The workspace folder

Notes are stored as flat markdown files in a folder you choose (Settings → Channels → Notes). The default is ~/Documents/Zettelkasten. Ouroboros watches this folder for changes — edits from other editors sync in automatically.

CalDAV

Add a CalDAV account in Settings → Channels → Add account. Enter the server URL, username, and password. Ouroboros discovers calendars and task lists automatically.

Tested with: Fastmail, Radicale, Baikal, Nextcloud. Any RFC 4791 compliant server should work.

CardDAV

Add a CardDAV account the same way. Ouroboros syncs contacts and creates shadow contacts from calendar attendees automatically.

Config schema

Configuration is stored in the SQLite database (sync_accounts table). There is no config file to edit manually — all settings are managed through the Settings UI.

Questions & issues

If you run into a bug or have a feature request, submit a ticket. You can also email hola@ouroboros.now.

esc