- Rust 84.9%
- JavaScript 7.8%
- CSS 6%
- Shell 1%
- HTML 0.1%
- Other 0.1%
|
All checks were successful
Publish x86_64 Flatpak nightly / flatpak (push) Successful in 10m32s
|
||
|---|---|---|
| .forgejo | ||
| .gitea/workflows | ||
| .github/workflows | ||
| assets | ||
| build-aux | ||
| crates | ||
| design | ||
| po | ||
| tools | ||
| .gitignore | ||
| [mean] | ||
| Cargo.lock | ||
| Cargo.toml | ||
| clippy.toml | ||
| DEVELOPMENT.md | ||
| justfile | ||
| README.md | ||
| rustfmt.toml | ||
Madre
Matrix chat that feels at home on GNOME.
Download • Screenshots • Build from source • Matrix
Community
Discussion happens in #madre:salix.host, which you can join from Madre itself or any other Matrix client. If you do not have an account yet, you can create one on salix.host, my public homeserver: federated, encrypted by default, and no email address required.
Download Madre
Linux
The button adds the signed Salix Flatpak repository. Madre does not publish AppStream metadata yet, so it may not appear in GNOME Software or Discover. Install it from a terminal instead:
flatpak remote-add --if-not-exists salix https://salix.host/flatpak/salix.flatpakrepo
flatpak install salix host.salix.Madre
Stable builds are available for x86_64 and ARM64. A separately installable nightly build,
host.salix.Madre.Devel, follows main and keeps its own data, settings, and sign-in, so it can
run next to the stable app:
flatpak install salix host.salix.Madre.Devel//nightly
To build Madre yourself, see Developing Madre.
Screenshots
Description
Madre is a native Matrix client for the GNOME desktop. Your spaces, rooms, and direct messages sit in one window that follows GNOME's look and feel, in light and dark, from a wide desktop layout down to a phone-sized one.
It is written in Rust with GTK 4 and libadwaita, on top of matrix-rust-sdk. Madre is under active development and has not reached v1 yet.
Features
- Spaces laid out the way you use them. A spaces rail on the left, nested categories inside each space, and a Home view that collects direct messages, invites, and rooms that are not in a space. Unread and mention counts add up to the space they belong to.
- One layout for every window size. On a wide window the member list and thread pane sit beside the timeline. Make the window narrower and they float over it, and at phone width Madre switches to single-pane navigation.
- The whole conversation. Markdown, replies, edits, reactions, threads, pinned messages, polls, mentions, attachments, read receipts, and typing notifications. Messages that fail to send are queued for retry.
- Encrypted by default. End-to-end encryption, cross-signing, device verification, and key backup with a recovery key, so a new device can still read your older messages.
- Search in encrypted rooms. Search runs on your device against an encrypted local index. Madre fills in older history in the background, one room at a time, and picks up where it left off after a restart.
- Secrets stay in your keyring. Your session and the passphrase for the encrypted local cache are stored with the desktop Secret Service, never in a plaintext settings file. Images are decoded in a sandbox.
- Built for the keyboard. Press Ctrl+K to jump to any room or person, Enter to send, Shift+Enter for a new line, and Ctrl+? for the full shortcut list.
- Yours to adjust. Light, dark, or system style, a choice of accent colors, cozy or compact message rows, desktop notifications, background sync, and start on login.
Contributions
I'm not currently accepting contributions, but issues are welcome for bug reports, feature ideas, and other feedback.
Releases
Pushing a semantic-version tag such as v0.1.1 runs the Forgejo release workflow. It builds signed
x86_64 and ARM64 Flatpaks, publishes them to the Salix repository only after both architectures
build, and attaches the bundles and their SHA-256 checksums to a Forgejo release.
Between releases, every change to main publishes the host.salix.Madre.Devel nightly for
x86_64, and an ARM64 nightly can be started by hand. Developing Madre covers the
workflows, the required secrets, and local Flatpak builds.
Disclaimer and license status
Madre is a personal project, built for daily use and experimentation. Madre, its source code, and all downloadable builds are provided as is, without warranties of any kind, express or implied. You use them entirely at your own risk. To the fullest extent permitted by applicable law, the author will not be liable for any claim, loss, damage, data loss, service interruption, or other consequence resulting from the use, misuse, or inability to use Madre.
No support commitments, compatibility guarantees, or release schedule are provided. You are responsible for complying with applicable laws and the terms of the homeservers you use. The project is not affiliated with the Matrix.org Foundation, Element, or GNOME.
The code is source available for reading and reference. The license has deliberately been left undecided for now, so unless a license is added later, no permission is granted to reuse, redistribute, or relicense it. Dependency licenses remain with their respective authors. No Fractal source code has been copied into Madre.





