steamux 0.1.0

Run multiple programs and interactive shells in one Proton's environment (Steam/umu-launcher)
Documentation

steamux

Run multiple programs and interactive shells in one Proton's environment (Steam/umu-launcher), so they share the wineserver and have correct IPC behavior, and programs like wine-discord-ipc-bridge, Cheat Engine and some UI overlays just work.

Usage

Generally, you run steamux in the target environment (steamux serve run as a server/daemon, listening on a unix domain socket), and run steamuxctl anywhere to ask the daemon to run programs in the environment.

Make sure the steamux binary is accessible in the target environment. If not, the easiest way is that just copy it to somewhere accessible (e.g. the folder where the game is installed) (and use the copied one!).

For more information, see steamux --help and steamuxctl --help.

Quick Start

Run first program (steamux CLI)

Steam

Set the launch options to steamux steam -- %command% > steamux.log and then run the game.

umu-launcher

Instead of running umu-run <exe> [args], run steamux umu -- <exe> [args].

Run another program (steamuxctl CLI)

Steam: cd to the folder your game installed in.

umu-launcher: cd $WINEPREFIX.

  • steamuxctl run -p foo.exe to run foo.exe
  • steamuxctl shell -p cmd to get an interactive cmd.exe
  • steamuxctl shell bash to get an interactive bash
  • steamuxctl spawn <executable> to run it in the background

See steamuxctl --help.