| Filename | Latest commit message | Latest commit date |
|---|---|---|
Source-Sha: e94a3035df11c43e0a89eb558c8160f49c4bf8f7 Policy-Sha: 931e614b3eb4734781ac19a9305b5a058a3fd73a59c33294fe348a05cd4284b7 Tree-Digest: 39d07957f25423dea8332cfb1ad83fa92c2512b32ec5beb3dba824f7d0a1e556 |
||
| .cargo | ||
| crates | ||
| data | ||
| packaging/arch | ||
| public-docs | ||
| scripts | ||
| vendor/souveraine-networking | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| LICENSE | ||
| README.md | ||
Culver
Culver brings SMS, MMS and Matrix into one inbox on SouveraineOS. Close the window. The receiver keeps running.
SouveraineOS integration comes first. Full compatibility with other platforms follows.
Features
- SMS through ModemManager; MMS through mmsdtng.
- Matrix rooms, threads, reactions, edits and favorites.
- Local contacts, photos and vCard import/export.
- Call controls, recent calls and voicemail actions.
- Message Sync between paired devices over VPN.
- Song details from Player, added to an unsent draft.
Culver uses Rust and Qt/QML. Contacts and SMS/MMS history live in an encrypted local database.
Build
Use Rust/Cargo, Clang, CMake, Ninja, pkg-config, Qt 6 Base, Declarative and Tools, OpenSSL and SQLite. Tests also need D-Bus. See the Arch recipe for package dependencies.
cargo build --workspace --locked
cargo test --workspace --locked
Run
Culver needs session and system D-Bus and an unlocked Secret Service provider. Contact export uses Souveraine's passphrase-verification service.
SMS needs a supported modem; MMS needs carrier configuration; Matrix needs an account and homeserver. Message Sync uses Souveraine's identity and session services, with pairing and consent on both devices.
The package installs receiver and window services. For development:
cargo run --locked -p culver -- --receiver
# In another terminal:
cargo run --locked -p culver
Rust crates are in crates/; QML is in crates/app/qml/.
See the changelog.