Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installing Postio

Postio is pre-release and, for now, Linux only: GTK4/libadwaita, Wayland first, X11 where it happens to work. There’s no packaged release yet, so installing it means building from source.

System dependencies

Fedora 40+:

sudo dnf install gtk4-devel libadwaita-devel webkitgtk6.0-devel \
                 sqlite-devel libsecret-devel glib2-devel pkgconf-pkg-config

Ubuntu 26.04 (earlier releases ship a GTK older than Postio’s floor):

sudo apt install build-essential pkg-config libgtk-4-dev libadwaita-1-dev \
                 libwebkitgtk-6.0-dev libsqlite3-dev libsecret-1-dev \
                 libglib2.0-dev libpango1.0-dev

Rust is pinned by the project’s rust-toolchain.toml — with rustup installed, the right compiler arrives automatically on your first cargo command.

Build and install

git clone https://github.com/dlapiduz/postio.git
cd postio
scripts/install-local.sh               # builds --release, installs to ~/.local

That puts postio on your $PATH and adds it to your app grid, with its icon. scripts/install-local.sh --uninstall removes exactly what it installed.

Prefer to just try it without installing anything?

cargo run -p postio-app

Prefer a sandboxed build? Postio ships a Flatpak manifest under flatpak/ that builds against the GNOME 50 runtime — see flatpak/README.md in the repository for the one-time SDK setup. Postio isn’t on Flathub yet, so for now that means building the Flatpak yourself too.

First run

First run opens onto a one-screen setup: type your email address, and Postio’s autoconfig probe fills in the server settings for you (checking a built-in provider table, then Thunderbird’s autoconfig service, then DNS SRV records — or you can enter everything manually). Your password goes straight into your desktop’s keyring; it is never written to a file. iCloud accounts need an app-specific password, generated at https://account.apple.com.

From there, drive it from the keyboard: j/k to move, Enter to open, e to reply, a to archive, u to undo anything, / to search (from:ada is:unread …), Ctrl+K for the command palette, ? for the full cheat sheet. Every binding is rebindable — see the keyboard reference.

Troubleshooting

cargo build fails looking for a library (a pkg-config error naming gtk4, libadwaita-1, webkitgtk-6.0, sqlite3, or libsecret-1): a system dependency from the list above is missing or too old. Check what you have against what’s needed with pkg-config --modversion gtk4 (and so on for the others).

The window fails to open, or opens with broken rendering: only Wayland is verified. If you’re on X11 and hit a rendering issue, try a Wayland session first, or force the X11 backend explicitly with GDK_BACKEND=x11 cargo run -p postio-app before filing an issue.

Onboarding won’t save the account, or every launch reopens onboarding: Postio stores credentials in your OS keyring over the Secret Service D-Bus API, which needs a running keyring daemon — GNOME Keyring or KWallet’s Secret Service integration are the common ones. Minimal desktop environments often don’t start one by default; on Fedora, sudo dnf install gnome-keyring and make sure your session starts it. A locked keyring blocks the same way — unlock it and try again.