Skip to content

release: v0.8.9 — fix tool detection on Bazzite and immutable distros#11

Merged
I4cTime merged 1 commit intomainfrom
develop
Apr 15, 2026
Merged

release: v0.8.9 — fix tool detection on Bazzite and immutable distros#11
I4cTime merged 1 commit intomainfrom
develop

Conversation

@I4cTime
Copy link
Copy Markdown
Owner

@I4cTime I4cTime commented Apr 15, 2026

Summary

  • Fix tool detection on Bazzite, SteamOS, Fedora Atomic, and NixOS — adds fallback path probing when shutil.which() fails because binaries live outside the app's PATH (Gamescope and MangoHud not detected on Bazzite / immutable Fedora Atomic distros #10)
  • New tool_check.py module — centralizes all tool detection with a three-tier strategy: normal PATH → extra immutable-distro bin dirs → tool-specific known paths
  • Electron PATH augmentation — appends common non-standard bin paths before spawning the Python backend
  • UI hints — adds Bazzite/SteamOS entries to the Gamescope and MangoHud "Not Installed" screens

Changed Files

File Change
src/game_setup_hub/tool_check.py New — shared find_tool() / is_tool_available() with fallback paths
src/game_setup_hub/gamescope.py Use is_tool_available("gamescope")
src/game_setup_hub/mangohud.py Use is_tool_available("mangohud")
src/game_setup_hub/presets.py Use is_tool_available() for mangohud + gamemoderun
src/game_setup_hub/protontricks.py Use find_tool("protontricks") for binary path
src/game_setup_hub/display.py Use find_tool() for xrandr / wlr-randr
electron/main.ts Append extra PATH dirs before spawning Python
gamescope-builder.tsx Add Bazzite/SteamOS install hint
mangohud/page.tsx Add Bazzite/SteamOS install hint
pyproject.toml Bump to 0.8.9
electron/package.json Bump to 0.8.9

Closes #10

Made with Cursor

Add tool_check.py with fallback path probing for Bazzite, SteamOS,
Fedora Atomic, and NixOS where binaries live outside the default PATH.

- Centralize all shutil.which() calls into find_tool() / is_tool_available()
- Probe /usr/lib/extensions/, /var/usrlocal/bin, /usr/games, NixOS profile
  paths when normal PATH lookup fails
- Augment PATH in Electron main process before spawning Python backend
- Add Bazzite/SteamOS install hints to Gamescope and MangoHud UI
- Bump version to 0.8.9

Made-with: Cursor
@I4cTime I4cTime merged commit 9c3976d into main Apr 15, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Gamescope and MangoHud not detected on Bazzite / immutable Fedora Atomic distros

1 participant