Bazzite OS is an immutable Linux distro, so file paths and permissions are different from standard SteamOS. On Bazzite, PortProton or Wine prefixes are usually located in user-specific container folders (e.g., `~/.var/app/...` or `~/.local/share/...`), meaning hardcoded paths like `/home/deck/...` won't work out of the box.
### Why I used PortProton & How to find your working setup:
1. **Easy Prefix & Runner Management:** I chose PortProton because it allows you to quickly create/configure Wine prefixes (like `DOTNET`) and switch between different Proton/Wine builds with a few clicks.
2. **How I found the working combination:**
- First, I installed the Native Linux W3D Hub Launcher and downloaded the game (e.g., Tiberian Sun / Renegade).
- Before tying everything to the launcher, I tested launching the game's `.exe` directly inside PortProton.
- I experimented with different Proton versions and prefix settings until I found the exact combo that ran the game smoothly without bugs.
- Once I had that working combination, I took its prefix path, DXVK environment variables, and Proton binary path, and put them into the `mywine.sh` script.
- Finally, I pointed the Native W3D Hub Launcher settings to execute `mywine.sh`.
### How to adapt this for Bazzite + GTX 10xx (Pascal):
1. **Find your actual paths:** Open Konsole in Bazzite and check where your PortProton installation and prefixes actually live. Update the paths in `mywine.sh` accordingly.
2. **Test direct `.exe` launching first:** Use PortProton to directly test your game's `.exe` first. On GTX 10xx (Pascal), some Proton/DXVK builds might crash due to driver quirks. Find the Proton build and prefix settings that work for your GPU.
3. **Write your script & link it:** Once the game runs fine standalone, put those specific paths/settings into `mywine.sh`, make it executable (`chmod +x mywine.sh`), and set `/path/to/mywine.sh` in the Native W3D Hub Launcher settings.