Skip to content

A simple GUI to control your Luxafor Flag

License

Notifications You must be signed in to change notification settings

nibrobb/luxafor-ui

Repository files navigation

Luxafor-ui

Luxafor-ui in dark mode


Getting started

Installation

Go to Releases, expand 'Assets', then choose the distribution that is right for your system. If you are on Mac, good luck.

Post-install

Really only relevant for versions of Luxafor-ui < v0.1.0-alpha.2 and distros not supporting .deb or .rpm packages See POST-INSTALL.md

Build it yourself

Get your Tauri prerequisites in order first

Dependencies (Debian/Ubuntu only)

sudo apt install libgtk-3-dev libgdk3.0-cil-dev libatk1.0-dev libxdo-dev\
 librust-gio-sys-dev librust-pango-sys-dev librust-soup3-sys-dev\
 librust-gdk-pixbuf-sys-dev libjavascriptcoregtk-4.1-dev\
 libwebkit2gtk-4.1-dev \
 libappindicator3-dev # libayatana-appindicator3-dev

NixOS

Use included shell.nix (will need tweaking)

Good luck.

Common steps

Install the Tauri command line interface tauri-cli, the wasm-bundler trunk and the wasm32 target

Add the wasm32 build target

rustup target add wasm32-unknown-unknown

If on Apple Silicon (M1 or up), install tauri-cli and trunk from cargo directly.

cargo install --locked --version "^2.0" tauri-cli
cargo install --locked --no-default-features --features update_check,rustls trunk

Pro-tip: Consider using installing tauri-cli and trunk from binstall (not suitable for Apple M1 and up)

cargo install cargo-binstall
cargo binstall tauri-cli@^2
cargo binstall trunk

Launch the app in development mode

cargo tauri dev

Build bundles for distribution

cargo tauri build

Recommended IDE Setup

VS Code + Tauri + rust-analyzer

References

Setting up trunk to not use native Open SSL (which is a pain in the ass to set up)

Inspiration and udev rules borrowed from

Luxafor library in rust

Binstall

Built with Tauri and Leptos, bundled with Trunk