Uplink is written in pure Rust with a UI in Dioxus (which is also written in Rust). It was developed as a new foundation for implementing Warp features in a universal application.
The goal should be to build a hyper-customizable application that can run anywhere and support extensions.
To get running fast, ensure you have Rust installed.
Standard Run:
cargo run --bin ui
Rapid Release Testing: This version will run close to release but without recompiling crates every time.
cargo run --bin ui --profile=rapid
macOS M1+
Dep | Install Command |
---|---|
Build Tools | xcode-select --install |
Homebrew | /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" |
Rust | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs |
cmake | brew install cmake |
ffmpeg | brew install ffmpeg |
audio opus | brew install opus |
For this to work, we need to install ffmpeg
-> brew install ffmpeg
for macOS
And for Windows, I followed the steps on this site here
Windows 10+
Dep | Install Command |
---|---|
Rust | Installation Guide |
ffmpeg | Installation Guide |
Ubuntu WSL (Maybe also Ubuntu + Debian)
Dep | Install Command |
---|---|
Rust | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh |
Build Essentials | sudo apt install build-essential |
pkg-config | sudo apt-get install pkg-config |
alsa-sys | sudo apt install librust-alsa-sys-dev |
libgtk-dev | sudo apt-get install libgtk-3-dev |
libsoup-dev | sudo apt install libsoup-3.0-dev |
Tauri Deps | sudo apt install libwebkit2gtk-4.1-dev build-essential curl wget libssl-dev libgtk-3-dev libayatana-appindicator3-dev librsvg2-dev |
ffmpeg | sudo apt-get install ffmpeg |
libopus-dev | sudo apt-get install libopus-dev |
libxdo-dev | sudo apt install libxdo-dev |
- Open Uplink and navigate to Settings > Extensions > Settings > Open Extensions.
- In another Finder window, open Uplink.
- Inside Uplink, go to Target > Debug, where you'll find the Emoji selector.
- Drag the Emoji selector to the Extensions window that is still open.
- Close all open windows.
- Finally, run cargo run trace2.
emoji-extension.mov
All contributions are welcome! Please keep in mind we're still a relatively small team, and any work done to ensure contributions don't cause bugs or issues in the application is much appreciated.
Guidelines for contributing are located in the contributing_process.md
.