popsUlfr / Proton

Compatibility tool for Steam Play based on Wine and additional components. Gallium Nine with some extras.
Other
50 stars 1 forks source link

Switching to 32 bit prefix #4

Open rea987 opened 5 years ago

rea987 commented 5 years ago

Some Windows games require 32 bit prefix to run via Proton which is mostly related with 32 bit dotnet20 dependency that cannot be installed in 64 bit prefixes. I previously prepared a guide for this which involves removing prefix after backing up .../Program Files (x86)/Steam directory. Then recreating a 32 bit prefix and finally moving Steam directory to Program Files.

https://www.reddit.com/r/SteamPlay/comments/9qojgb/w40k_dawn_of_war_winter_assault_32bit_prefix_fix/

As the method utilizes systems own wine32 to create the prefix, I had doubts whether Gallium Nine works or not. It turned out that despite using system's wine32 to create the prefix, Gallium Nine functions regardless. So, should I use following command to specify wine build to use winecfg, winetricks etc, or is using system's own wine safe?

WINE=~/.local/share/Steam/compatibilitytools.d/Proton_3.16-5_Gallium_Nine_Extras_0.1.1/dist/bin/wine

popsUlfr commented 5 years ago

I should maybe try iterating on this pull request : https://github.com/ValveSoftware/Proton/pull/919 Force it to create a 32bit prefix or change it to one if already 64bit, though the existing prefix would need to get nuked :/ I'm not sure how to properly account for that, even before the first time you launch the game and let it create the prefix you'd need to force wine to 32bit only.

Using the system's wine to run winetricks or winecfg shouldn't cause any problems. Next time you start the game it will update the prefix to get back in line with the proton wine. Make sure WINEARCH=win32 is set.

For winecfg or winetricks I usually run the game with PROTON_DUMP_DEBUG_COMMANDS=1, then ./run winecfg inside /tmp/proton_<username>. For winetricks cp ./run ./run_winetricks, I edit the file to put the last line the wine command inside the WINE= variable like you did and add winetricks afterwards.