umu(1)

NAME

umu-run - Unified Launcher for Windows Games on Linux

SYNOPSIS

umu-run [FILE]

umu-run [FILE [ARG...]]

umu-run [winetricks [ARG...]]

umu-run --config [FILE]

umu-run --help

POSITIONAL ARGUMENTS

winetricks
    Run winetricks[1] verbs (Requires GE-Proton or UMU-Proton).

    See winetricks(1) for more info or below for an example.

OPTIONS

-h, --help
    Show this help message.

--config <config>
    Path to TOML configuration file (Requires Python 3.11+).

    See umu(5) for more info and examples.

DESCRIPTION

The Unified Launcher for Windows Games on Linux (umu) was created to make Valve's Proton[2] and the protonfixes[3] project accessible outside the Steam client, providing a standardized way for other clients (e.g., Lutris, Heroic Games Launcher, Bottles, or Rare) to run games via Proton and configure WINE prefixes.

As a result, clients:
•   No longer require Steam or Steam binaries to be installed
•   Can contribute and automatically benefit from protonfixes
•   Can run games through Proton as it were a native Steam game
•   Can reference a unified online database of game fixes (protonfixes)

You can run umu directly from a terminal emulator, or through your launcher of choice if supported.

EXAMPLES

Example 1. Run a game

    $ WINEPREFIX=~/.wine PROTONPATH=~/GE-Proton9-4 umu-run foo.exe

Example 2. Run a game and apply a specific protonfix

    # Applies the Star Citizen fix to the current WINE prefix
    $ WINEPREFIX=~/.wine GAMEID=umu-starcitizen PROTONPATH=~/GE-Proton9-4 umu-run foo.exe

Example 3. Run a game via a configuration file

    # config.toml
    [umu]
    prefix = "~/.wine"
    proton = "~/GE-Proton30"
    game_id = "0"
    exe = "~/foo.exe"
    launch_args = ["-opengl", "-SkipBuildPatchPrereq"]
    store = "gog"
    $ umu-run --config config.toml

Example 4. Create a umu WINE prefix

    $ WINEPREFIX=~/foo PROTONPATH=~/GE-Proton9-4 umu-run ""

Example 5. Run a game and automatically set Proton

    # Uses the latest UMU-Proton and automatically removes old UMU-Proton builds
    $ WINEPREFIX=~/.wine umu-run foo.exe

Example 6. Run a game, automatically set Proton, and create a WINE prefix

    # Creates the prefix as $HOME/Games/umu/umu-default and uses the latest UMU-Proton
    $ umu-run foo.exe

Example 7. Run a game and explicitly set a valid Proton verb

    $ WINEPREFIX=~/.wine GAMEID=0 PROTONPATH=~/GE-Proton9-4 PROTON_VERB=waitforexitandrun umu-run foo.exe

Example 8. Run a game and enable debug logs

    $ UMU_LOG=debug WINEPREFIX=~/.wine PROTONPATH=~/GE-Proton9-4 umu-run foo.exe

Example 9. Run a game and set a Proton by its version name

    # Checks for GE-Proton9-1 at $HOME/.local/share/Steam/compatibilitytools.d
    $ WINEPREFIX=~/.wine PROTONPATH=GE-Proton9-1 umu-run foo.exe

Example 10. Run a game and automatically use the latest GE-Proton

    $ WINEPREFIX=~/.wine PROTONPATH=GE-Proton umu-run foo.exe

Example 11. Run winetricks verbs

    $ PROTONPATH=GE-Proton umu-run winetricks quartz wmp11 qasf

Example 12. Run a game, but do not apply protonfixes

    $ GAMEID=umu-genshin PROTONPATH=GE-Proton PROTONFIXES_DISABLE=1 umu-run foo.exe

ENVIRONMENT VARIABLES

GAMEID
    Optional. Can be an arbitrary value or a valid id in the umu-database[4]. If unset, defaults to umu-default (does not apply any fixes automatically).

PROTONPATH
    Optional. Path to a Proton directory, version name (e.g., GE-Proton9-5) or codename (e.g., GE-Proton).

    Otherwise, defaults to using UMU-Proton.

    Valid codenames include: GE-Proton

WINEPREFIX
    Optional. Path to a WINE prefix directory. Otherwise, defaults to $HOME/Games/umu/$GAMEID. If no GAMEID is set, defaults to $HOME/Games/umu/umu-default.

UMU_LOG
    Optional. Enables debug logs for the launcher.

    Set 1 to enable all logs.

STORE
    Optional. Can be an arbitrary value or a valid store id in the umu-database.

PROTON_VERB
    Optional. Must be a valid Proton verb. Otherwise, defaults to waitforexitandrun.

UMU_RUNTIME_UPDATE
    Optional. Disables automatic updates to the Steam Linux Runtime[5].

    Set 0 to disable updates.

UMU_NO_PROTON
    Optional. Runs the executable natively within the Steam Linux Runtime. Intended for native Linux games.

    Set 1 to run the executable natively within the SLR.

UMU_HTTP_TIMEOUT
    Optional. Sets the timeout, in seconds, for each HTTP request. Otherwise, defaults to 5.

    Set 0 to disable timeouts for HTTP requests. Set a positive integer to override the default.

UMU_HTTP_RETRIES
    Optional. Number of times to retry possibly spurious network errors. Otherwise, defaults to 3.

    Set 0 to disable retries for HTTP requests. Set a positive integer to override the default.

SEE ALSO

umu(5), winetricks(1)

NOTES

1.  https://github.com/Winetricks/winetricks
2.  https://github.com/ValveSoftware/Proton
3.  https://github.com/Open-Wine-Components/umu-protonfixes
4.  https://github.com/Open-Wine-Components/umu-database
5.  https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/blob/main/docs/container-runtime.md

AUTHORS

Maintained by Open Wine Components members, and assisted by other open source contributors. For more information about umu development, see https://github.com/Open-Wine-Components/umu-launcher.