funman300 336c5d908e Add MIT LICENSE and crates.io metadata
Sets license, readme, repository, keywords and categories so cargo
publish / cargo install pick up the right info. Repo URL points at
the real git.aleshym.co remote.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-16 17:33:12 -07:00
2026-04-16 17:33:12 -07:00

umutray

A small system-tray daemon and CLI for running the Battle.net launcher on Linux via umu-launcher and GE-Proton.

Features

  • Tray icon with Launch / Kill / Update-Proton menu (KDE, GNOME+AppIndicator, Xfce, any SNI-capable desktop).
  • Background poller that reflects Battle.net's running state in the tray.
  • update-proton subcommand that downloads GE-Proton releases directly from GitHub and installs them under the Steam compat tools directory.
  • diagnose subcommand that sanity-checks the environment (umu-run, prefix, Proton install, Vulkan, display server, stale agent.lock).

Install

cargo build --release
install -Dm755 target/release/umutray ~/.local/bin/umutray

Requires umu-launcher and tar on PATH. On Arch:

sudo pacman -S umu-launcher vulkan-tools

The Battle.net Launcher.exe itself is not bundled — run your existing battlenet-umu-setup.sh (or install it manually into the prefix) before first launch.

Usage

Command What it does
umutray Start the tray daemon (default)
umutray launch Launch Battle.net and return (for .desktop shortcuts)
umutray kill SIGTERM → wait 3 s → SIGKILL on all Battle.net procs
umutray diagnose Run environment health checks
umutray update-proton Interactive GE-Proton picker
update-proton --latest Install newest GE-Proton release
update-proton --version X Install a specific tag (e.g. GE-Proton10-34)
update-proton --list Show recent releases without installing
config show / config path Print current config or its path
config edit Open config in $EDITOR
config set --prefix PATH Change the Wine prefix (also --compat-dir, --gameid)
service install Write + enable a systemd --user unit for autostart
service uninstall / status Remove the unit / show its status

Config

Lives at ~/.config/umutray/config.toml, written with defaults on first run:

prefix_dir = "~/Games/battlenet-umu"
proton_version = "GE-Proton"        # or a pinned tag like "GE-Proton10-34"
gameid = "umu-battlenet"
proton_compat_dir = "~/.local/share/Steam/compatibilitytools.d"

proton_version = "GE-Proton" tells umu-launcher to auto-fetch the latest on each run. Setting it to a specific tag (done automatically by update-proton) pins that version.

S
Description
No description provided
Readme MIT 1,001 KiB
Languages
Rust 99.1%
Shell 0.9%