| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Tip
▶️ Click here to download & install Robrix on macOS, iOS, Android, Linux, and Windows.
Robrix is a fast, powerful Matrix chat client written from scratch in Rust.
It brings some cool new features to the world of Matrix, like our signature "dockable tabs" layout that lets you view and interact with multiple rooms or threads simultaneously. This works just like your favorite multi-tab IDE or web browser, letting you keep tabs on as many conversations as you want.
Robrix stays sleek and smooth even under heavy usage. We designed it to be fast and light (but also feature-rich), as it's fully native on every platform: no Electron, no underlying web engine, no JavaScript, and no cruft. Scrolling through many rooms at once with millions of messages each is no problem. Native sliding sync logs you in quickly, and your rooms list fully syncs without a long wait. We also went to great lengths to ensure that Robrix's room timeline view is consistent and predictable; it won't unexpectedly jump around while loading messages, images, or other room content. We've always found this to be annoying in other chat apps.
Robrix is the flagship app of Project Robius, a framework for multi-platform application development in Rust, and is written atop the Makepad UI toolkit, which we also contribute to significantly.
Check out our most recent talks and presentations for more info:
The following table shows which host systems can currently be used to build Robrix for which target platforms.
| Target Platform | Host OS | Builds? | Runs? |
|---|---|---|---|
| macOS | macOS | ✅ | ✅ |
| Linux | Linux | ✅ | ✅ |
| Windows | Windows | ✅ | ✅ |
| Android | Any | ✅ | ✅ |
| iOS | macOS | ✅ | ✅ |
| OpenHarmony | Any | ✅ | 🚧 |
Important
Robrix only works with Matrix homeservers that support native Sliding Sync, just like other modern clients (e.g., Element X).
First, install Rust.
Install cmake, which is required for some Matrix SDK dependencies.
If you're building on Linux or WSL on Windows, install the required dependencies. Otherwise, proceed to step 4.
On a Debian-like Linux distro (e.g., Ubuntu), run the following:
sudo apt-get update
sudo apt-get install libssl-dev cmake llvm clang libclang-dev libsqlite3-dev pkg-config binfmt-support libxcursor-dev libx11-dev libasound2-dev libpulse-dev libwayland-dev libxkbcommon-devThen, build and run Robrix.
cargo run --releaseTip
If you get a build error from aws-lc-sys about a "COMPILER BUG DETECTED" related to memcmp (GCC #95189), your GCC version is too old (GCC 9 and earlier are affected). The easiest fix is to build using clang instead:
CC=clang CXX=clang++ cargo run --releaseAlternatively, upgrade GCC to version 10 or newer.
cargo install --force --git https://github.com/makepad/makepad.git --branch dev cargo-makepadUse cargo-makepad to install the Android toolchain with the full NDK included:
cargo makepad android install-toolchain --full-ndkBuild and run Robrix using cargo-makepad:
cargo makepad android run -p robrix --releaseUse cargo-makepad to install the iOS toolchain:
rustup toolchain install nightly
cargo makepad apple ios install-toolchainPerform the following one-time setup steps:
cargo makepad apple ios \
--org=rs.robius \
--app=robrix \
run-sim -p robrix --releaseTip
If you get errors from the simulator, update your simulator tooling:
xcodebuild -downloadPlatform iOSRun the following command to show all provisioning profiles, signing identities, and device identifiers on your Mac.
cargo makepad apple listRun the following command, filling in the unique starting characters chosen above.
cargo makepad apple ios \
--profile=<unique-starting-hex-string> \
--cert=<UNIQUE_STARTING_HEX_STRING> \
--device=<UNIQUE-STARTING-HEX-STRING> \
--org=rs.robius \
--app=robrix \
run-device -p robrix –releaseThese are generally sorted in order of priority. If you're interested in helping out with anything here, please reach out via a GitHub issue or on our Robius matrix channel.
Tip
We already have pre-built releases of Robrix available for download.
rustup update stable ## Rust version 1.79 or higher is required
cargo +stable install --force --locked cargo-packagerFor posterity, these instructions have been tested on cargo-packager version 0.10.1, which requires Rust v1.79.
cargo install --locked --git https://github.com/project-robius/robius-packaging-commands.gitcargo packager --release ## --verbose is optionalNote that due to platform restrictions, you can currently only build:
There are some additional considerations when packaging Robrix for macOS:
Important
You will see a .dmg window pop up — please leave it alone, it will auto-close once the packaging procedure has completed.
Tip
If you receive the following error:
ERROR cargo_packager::cli: Error running create-dmg script: File exists (os error 17)
then open Finder and unmount any Robrix-related disk images, then try the above cargo packager command again.
Tip
If you receive an error like so:
Creating disk image... hdiutil: create failed - Operation not permitted could not access /Volumes/Robrix/Robrix.app - Operation not permitted
then you need to grant "App Management" permissions to the app in which you ran the cargo packager command, e.g., Terminal, Visual Studio Code, etc. To do this, open System Preferences → Privacy & Security → App Management, and then click the toggle switch next to the relevant app to enable that permission. Then, try the above cargo packager command again.
After the command completes, you should see both the Robrix.app and the .dmg in the dist/ directory. You can immediately double-click the Robrix.app bundle to run it, or you can double-click the .dmg file to
Note that the .dmg is what should be distributed for installation on other machines, not the .app.
If you'd like to modify the .dmg background, here is the Google Drawings file used to generate the MacOS .dmg background image.
| Back | FazBrowse Home | New Git URL |