Frogging-Family / wine-tkg-git

The wine-tkg build systems, to create custom Wine and Proton builds
856 stars 155 forks source link

[valve-exp-bleeding] wow64 mode #1070

Open gabriele2000 opened 11 months ago

gabriele2000 commented 11 months ago

I managed to compile a wow64 build using this profile, I'd like to know if it's possible to actually create a prefix using this mode, since there's nothing in "syswow64".

That reminds me of pre-wine.8.12 or something, where that folder would be empty

Tk-Glitch commented 11 months ago

Wow64 is forcefully disabled on proton builds due to dependencies and a number of patches that are simply broken in wow64 mode, so unless you have modified the script to remove the safeguards, it's not actually a wow64 build.

gabriele2000 commented 11 months ago

Wow64 is forcefully disabled on proton builds due to dependencies and a number of patches that are simply broken in wow64 mode, so unless you have modified the script to remove the safeguards, it's not actually a wow64 build.

Heh, I just added "wow64" on "disable 32-bit libs"

gabriele2000 commented 11 months ago

so unless you have modified the script to remove the safeguards, it's not actually a wow64 build.

You gave me a cool idea.

How could I bypass the safeguards?

Tk-Glitch commented 11 months ago

You'll need to comment out or delete lines 282 to 285 in wine-tkg-git/wine-tkg-scripts/prepare.sh.

https://github.com/Frogging-Family/wine-tkg-git/blob/master/wine-tkg-git/wine-tkg-scripts/prepare.sh#L282

That being said, it's not supposed to work. The wine 8.0 base used by Proton has incomplete wow64 support to begin with.

gabriele2000 commented 11 months ago

Let me guess: it's based on the stable wine version, since from 8.16 wow64 support has become a lot more working? (it removed the "empty syswow64 folder" bug)

On Sun, 1 Oct 2023, 18:54 Etienne Juvigny, @.***> wrote:

You'll need to comment out or delete lines 282 to 285 in wine-tkg-git/wine-tkg-scripts/prepare.sh.

https://github.com/Frogging-Family/wine-tkg-git/blob/master/wine-tkg-git/wine-tkg-scripts/prepare.sh#L282

That being said, it's not supposed to work. The wine 8.0 base used by Proton has incomplete wow64 support to begin with.

— Reply to this email directly, view it on GitHub https://github.com/Frogging-Family/wine-tkg-git/issues/1070#issuecomment-1742137628, or unsubscribe https://github.com/notifications/unsubscribe-auth/AC47ERNFG45DWDXVJMOHJWLX5GN3XANCNFSM6AAAAAA44KX2A4 . You are receiving this because you authored the thread.Message ID: @.***>

Tk-Glitch commented 11 months ago

Yeah, Valve's current Proton is based on 8.0 "stable" indeed. You can use proton-tkg to build upstream-based proton builds and _NOLIB32="wow64" is allowed in that case, but YMMV with tooling dependencies building (pretty much untested).

Tk-Glitch commented 5 months ago

I have added basic handling of the wow64 file structure for proton. The main blockers will be external tooling like steam.exe/lsteamclient in 32-bit emulation, which will break. For pure 64-bit executables it should be okay though.