Skip to content

Releases: thaylorz/proton-ge-custom

Proton-LayeredOverlay — transparent overlay games on Linux (unofficial)

Choose a tag to compare

@thaylorz thaylorz released this 09 Jun 03:01
f3d797c

⚠️ Unofficial / custom build. NOT affiliated with GloriousEggroll (GE-Proton) or Valve.
Third-party build for testing the overlay-transparency fix; don't report issues with it to them.

Custom Proton build that renders transparent desktop/taskbar overlay games correctly on
Linux (instead of an opaque black box). Reference game: TBH: Task Bar Hero
(Steam AppID 3678970); works for any borderless WS_EX_LAYERED overlay game.

Install

  1. Extract into your Steam compatibility tools folder:

    tar -xzf Proton-LayeredOverlay.tar.gz -C ~/.steam/root/compatibilitytools.d/
    
  2. Fully restart Steam.

  3. Game → Properties → Compatibility → force Proton-LayeredOverlay.

  4. Game → Properties → Launch Options — pick ONE mode:

    Recommended (real per-pixel alpha, zero flicker, needs a compositor like KWin/Mutter/picom):

    WINE_LAYERED_OVERLAY_ALPHA=1 %command%
    

    Fallback (XShape; works without a compositor; binary mask, may flicker slightly):

    WINE_LAYERED_OVERLAY_SHAPE=1 %command%
    
  5. Launch. The overlay renders transparent and stays interactive.

Off by default → no effect on other games. Debug: prefix with WINEDEBUG=+x11drv and/or PROTON_LOG=1.

How it works

ALPHA mode (the correct fix): gives the Vulkan client window and the top-level window a
32-bit ARGB visual (use_alpha), and makes the DXVK presenter request a non-opaque
compositeAlpha, so the X compositor blends the swapchain's real per-pixel alpha — no XShape,
no reshaping, zero flicker, true semi-transparency.

SHAPE mode: XShapes the window to the rendered non-black pixels each frame (binary mask +
temporal hysteresis). Works without a compositor, but is a 1-bit approximation.

Links

Credits

XShape approach by Solarisfire (ValveSoftware#9841). Generalised, flicker fixed,
and extended with the real-alpha (ARGB) path in this build.

Verify

sha512sum -c Proton-LayeredOverlay.sha512sum