Trackers come out before the page renders.
Remote images are off by default. 1×1 pixels and images served from known tracker hosts are stripped from the HTML, not merely deferred. You can load remote content per message when you want it.
Alcedo is a GTK4 and libadwaita mail client written in Rust with Relm4. IMAP and SMTP, a unified inbox, and privacy defaults that are on before you touch a setting.
Version 0.1.0, initial development. Alcedo installs from source on Ubuntu 26.04 with GNOME 50. There is no Flathub package and no binary release yet. Expect rough edges, and read the install page before you point it at an account you rely on.
What it does
Remote images are off by default. 1×1 pixels and images served from known tracker hosts are stripped from the HTML, not merely deferred. You can load remote content per message when you want it.
Read receipts are off. Outbound tracking pixels are off. Turn either on and Alcedo discloses it before the message is sent. There is no vendor telemetry, no analytics, and no update ping.
Rust and Relm4, not a packaged web page. A real three-pane GNOME window on Wayland that follows your system light and dark preference and your accent colour.
Registers as your mailto: handler. Optional tray icon.
Mail, calendar, and contacts live in one window instead of three.
Gmail and Microsoft sign in with OAuth over PKCE, in your system browser. Yahoo and generic IMAP use an app password. The unified inbox spans all of them, and each account keeps its own folders.
Messages and metadata sit in SQLite on your disk. Tokens and passwords go to the system keyring and never into SQLite. IMAP and SMTP run over rustls.
The window
Alcedo is a three-pane client with a switcher rail for mail, calendar, and contacts. The reading pane sits to the right or below the list.
Also in the window
Get it
One script installs the GTK4 and libadwaita build dependencies, builds a release binary, and puts the desktop entry, icon, and GSettings schema where GNOME expects them.
./scripts/install-ubuntu-26.sh