Note
This is OneLauncher/OneClient v2 — a full rewrite in Rust using Freya. All previous web-based (React / Tauri) code has been removed.
We welcome contributions! Please read our contributing guidelines before getting started.
The project targets Rust edition 2024, so a recent Rust toolchain is required.
- Install Rust via rustup
- Use a toolchain that supports edition 2024 (
rustc1.85+)
# Run the app
cargo run -p oneclient_app
# Build a release binary
cargo build --release -p oneclient_appInstallers are produced with cargo-packager
(the standalone bundler spun out of the Tauri bundler). Config lives in
packages/oneclient_app/Cargo.toml under
[package.metadata.packager].
cargo install cargo-packager --locked
# Build the binary, then bundle it for the current OS:
cargo build --release -p oneclient_app
cargo packager --release -p oneclient_app --formats <targets>
# Windows: nsis macOS: app,dmg Linux: deb,appimageThe workspace shares a single version, defined in the root Cargo.toml
under [workspace.package]. Current version: 2.0.0.
All crates live under packages/ in a single Cargo workspace.
oneclient_app/- The Freya desktop application (UI, routes, entry point).oneclient_core/- Launcher core. Contains the entire launcher logic.oneclient_db/- SQLx-based database layer.oneclient_macro/- Macro definitions to simplify some code.polyio/- PolyIO-rs. Shared IO utilities (archives, files, system helpers).
