Native Matrix client built on matrix-rust-sdk with a Silica UI.
FEATURES
- Sliding sync, end-to-end encryption, cross-signing, device verification (both directions), key backup and recovery
- Rooms, spaces (nested), direct chats, room directory search
- Send, edit, delete, reply, pagination in encrypted rooms
- Pictures, files, sharing (also as share target from Gallery / file manager)
- Voice and video calls (classic 1:1 VoIP; MatrixRTC-only clients cannot be called)
- Notifications, offline send queue, encrypted local stores
- OAuth (MAS) login, device-code login, password login
- English and German UI
WHY IS THE PACKAGE SO BIG?
The app ships the complete Matrix stack statically: matrix-rust-sdk, E2EE (vodozemac), sliding sync, rustls, its own HTTP runtime and a bundled SQLite. None of that exists as a system library on Sailfish OS, and Qt 5.6 is too old for the C++ alternatives - which is exactly why the protocol core is written in Rust. Installed size ~48 MB (Element X, same SDK: ~100 MB), RPM ~16 MB.
NO BACKGROUND DAEMON
Messages arrive while the app is running (the cover is enough). Like other daemonless messengers on this platform, a closed app does not receive.
ARCHITECTURES
aarch64 (Sailfish OS 5.0+), armv7hl (Sailfish OS 4.6+).
Written with Claude Code (Anthropic), icons included; the protocol core is upstream matrix-rust-sdk.
Source, issues, releases: https://github.com/JimKnopfIoT/harbour-xmatic
| Attachment | Size | Date |
|---|---|---|
| 15.13 MB | 18/08/2026 - 13:53 | |
| 15.63 MB | 18/08/2026 - 13:53 |
- The room search keeps the keyboard. Every letter re-filters the list and
the list comes back as a full reset; on each reset the list view recreated
its current row and handed that row the focus, taking the keyboard from the
search field in the header. The list has no current row any more, so there
is nothing to hand the focus to - measured on the device, no loss in thirty
keystrokes where before it was every one. The room directory search had the
same layout and gets the same fix. (The 0.9.1 hand-back ran before the
focus was taken and therefore never did anything.)
- Profile pictures are round. They were square with a highlight-coloured ring
drawn across them - on the stock ambience a light-blue circle on every room
icon - because a rectangular clip cannot round an image. A proper mask does.
- A notification can carry the message. Off by default, because the banner
also lands on the lock screen; the switch is under Account -> This app. On,
the banner shows the latest text (a picture, file, voice message or
location is named as such, an undecryptable event says so) instead of the
count.
- The appearance page has a visible "Reset to defaults" button - the entry
in its pull-down was easy to miss - and the opacity slider follows a reset
and a change of element instead of keeping its last dragged position.
Comments
kaulian
Tue, 2026/08/18 - 16:11
Permalink
Thanks a lot.
Manisak
Tue, 2026/08/18 - 14:21
Permalink
Damed I Love you ;-)
kempertom
Tue, 2026/08/18 - 14:13
Permalink
Wow. Wonderful. What are you plan to implement?