(www.openwinecomponents.org) Open Wine Components Documentation

ROAM_REFS: https://www.openwinecomponents.org/

** HOW STEAM RUNS GAMES ON LINUX:

steam-process-diagram.png

** BUT WHAT IF MY GAME IS NOT ON STEAM?..

* Use Open Wine Components UMU-LAUNCHER!

umu-launcher-diagram.png

** THE IMPORTANCE OF THE STEAM LINUX RUNTIME CONTAINER

By running everything inside the Steam Linux Runtime container, it forces both Proton and the game it's running to use the libraries within the container. This is important for two reasons.

  1. Version Compatibility

    Proton is built using this runtime. If your system has a library version that differs from the runtime and you don't run proton with the runtime, it can cause Proton to fail.

    Example: Your system has library.so (version 4.5.6) but Proton was built using Steam Linux Runtime with library.so (version 1.2.3) - so it expects a different version and fails when trying to run with a different version.

  2. Cross-Distribution Stability

    This ensures a stable, non-changing set of libraries EVERY time the game is run, on ANY Linux distribution. Having a stable target has always been the hardest part of allowing games to run on Linux, and this resolves that problem.

** USING THE CLI TOOL:

Example command:

WINEPREFIX=~/some/prefix/path PROTONPATH=GE-Proton umu-run /path/to/game.exe

** GE-PROTON AND UMU-PROTON

When using UMU-LAUNCHER you can specify PROTONPATH=GE-Proton to make it automatically download and use the latest GE-Proton build. Alternatively you can point it to any existing proton install path. If PROTONPATH is not specified, it defaults to downloading and using UMU-Proton.

** UMU-DATABASE + UMU-PROTONFIXES

* Common Game Fixes

* Integration Partners

UMU-LAUNCHER works as a back-end CLI tool alongside these front-end GUI game managers:

CLI – Command Line Interface

GUI – Graphical User Interface

* The Unified Database System

All tool developers collaborate on UMU's unified database:

Key Features:

* How It Works Together

  1. The GUI tool knows the TITLE and STORE the game comes from, or the CODENAME provided by the store's API/database.
  2. The GUI searches the UMU-DATABASE using STORE and/or TITLE/CODENAME, receiving the UMUID in return.
  3. The GUI tool passes the UMUID and STORE to UMU-LAUNCHER, triggering game fixes when using GE-Proton or UMU-Proton.

** DATABASE USAGE

* Search Interface

We've created a simple search web page for finding database entries:

* API Endpoints

The web page provides several endpoints that can be queried:

Local Graph

org-roam 94819f83-ac40-4e4b-bc22-e005670a5c93 (www.openwinecomponents.org) Open Win... //www.openwinecomponents.org/images/steam-process-diagram.png https://www.openwinecomponents.org/images/steam-process-diagram.png 94819f83-ac40-4e4b-bc22-e005670a5c93->//www.openwinecomponents.org/images/steam-process-diagram.png //www.openwinecomponents.org/images/umu-launcher-diagram.png https://www.openwinecomponents.org/images/umu-launcher-diagram.png 94819f83-ac40-4e4b-bc22-e005670a5c93->//www.openwinecomponents.org/images/umu-launcher-diagram.png //github.com/gloriouseggroll/proton-ge-custom https://github.com/gloriouseggroll/proton-ge-custom 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/gloriouseggroll/proton-ge-custom //github.com/open-wine-components/umu-proton https://github.com/open-wine-components/umu-proton 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/open-wine-components/umu-proton //lutris.net/ https://lutris.net/ 94819f83-ac40-4e4b-bc22-e005670a5c93->//lutris.net/ //heroicgameslauncher.com/ https://heroicgameslauncher.com/ 94819f83-ac40-4e4b-bc22-e005670a5c93->//heroicgameslauncher.com/ //github.com/Faugus/faugus-launcher https://github.com/Faugus/faugus-launcher 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/Faugus/faugus-launcher //github.com/ebenbruyns/junkstore https://github.com/ebenbruyns/junkstore 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/ebenbruyns/junkstore //github.com/SeongGino/Nero-umu https://github.com/SeongGino/Nero-umu 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/SeongGino/Nero-umu //www.zoom-platform.com/ https://www.zoom-platform.com/ 94819f83-ac40-4e4b-bc22-e005670a5c93->//www.zoom-platform.com/ //usebottles.com/posts/2024-09-24-umu-next/ https://usebottles.com/posts/2024-09-24-umu-next/ 94819f83-ac40-4e4b-bc22-e005670a5c93->//usebottles.com/posts/2024-09-24-umu-next/ //github.com/Open-Wine-Components/umu-database https://github.com/Open-Wine-Components/umu-database 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/Open-Wine-Components/umu-database //github.com/Open-Wine-Components/umu-protonfixes https://github.com/Open-Wine-Components/umu-protonfixes 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/Open-Wine-Components/umu-protonfixes //umu.openwinecomponents.org/ https://umu.openwinecomponents.org/ 94819f83-ac40-4e4b-bc22-e005670a5c93->//umu.openwinecomponents.org/ //github.com/Open-Wine-Components/umu-database/tree/main/umu.openwinecomponents.org https://github.com/Open-Wine-Components/umu-database/tree/main/umu.openwinecomponents.org 94819f83-ac40-4e4b-bc22-e005670a5c93->//github.com/Open-Wine-Components/umu-database/tree/main/umu.openwinecomponents.org