[pkg-wine-party] Call for testing: automatically detect wine arch and WoW64

Jens Reyer jre.winesim at gmail.com
Sun Dec 13 03:06:24 UTC 2015


On 12/13/2015 02:01 AM, Michael Gilbert wrote:
> On Sat, Dec 12, 2015 at 7:42 PM, Jens Reyer wrote:
>>>> try not to install wine64 automatically),
>>>
>>> That seems tricky given multiarch weirdness, but I guess may be possible.
>>
>> To start with, we can change wine Depends to wine32|wine64 and maybe add
>> a small hint in the package description.
> 
> That doesn't solve the problem for users that have yet to configure multiarch.

Indeed not, but at least for those who have.
Do we agree to recommend (as a word, not in the sense of d/control) to
only install wine + wine32, but not wine64? (Until recently I also
recommended to install wine64.)


>> I didn't run any longtime tests, but I noticed that installing and
>> running 32-bit and 64-bit apps in the *same* arch win64 wineprefix
>> works. Can you call that WoW64 or is it a broken error-prone setup?
> 
> People would probably consider it broken since that doesn't
> automatically launch the 32 or 64 bit executable.

But afaics there is no need to launch different executables:
export WINEARCH=win64
export WINEPREFIX="$HOME/.wine"
wine ...

is with the current packaging the same as:
WINELOADER="/usr/lib/wine/wine64" /usr/lib/wine/wine64 ...


And this works all automatically:

$ file *exe *msi [EDITED]
ImageMagick-6.8.9-7-Q16-x64-static.exe: PE32 <-- 64-bit
SteamSetup.exe:                         PE32 <-- 32-bit
7z920-x64.msi:                               <-- 64-bit

$ rm -rf ~/.wine ~/.wine64
$ export WINEARCH=win64
$ export WINEPREFIX="$HOME/.wine"
$ wine ImageMagick-6.8.9-7-Q16-x64-static.exe
$ wine SteamSetup.exe
$ wine msiexec /i 7z920-x64.msi

~/.wine/drive_c$ file Program\ Files*/*/*.exe [EDITED]
Program Files/7-Zip/7z.exe:                            PE32+
Program Files/ImageMagick-6.8.9-Q16/ffmpeg.exe:        PE32
Program Files/ImageMagick-6.8.9-Q16/imdisplay.exe:     PE32+
Program Files/Internet Explorer/iexplore.exe:          PE32+
Program Files/Windows Media Player/wmplayer.exe:       PE32+
Program Files (x86)/Internet Explorer/iexplore.exe:    PE32
Program Files (x86)/Steam/steamerrorreporter64.exe:    PE32+
Program Files (x86)/Steam/steamerrorreporter.exe:      PE32
Program Files (x86)/Steam/Steam.exe:                   PE32
Program Files (x86)/Windows Media Player/wmplayer.exe: PE32

I can launch all these apps, even concurrently. Either with their
launcher or with a pure "wine" command.

Running wineserver:
/usr/lib/x86_64-linux-gnu/wine/./wineserver.real -p0


So if I export win64 from .bashrc I have a real working WoW64!?
Working the same way as upstream or other distros.
What do I miss?

If I then have an application that works only in plain wine32 I have to
opt-out and use:
WINEARCH=win32 WINEPREFIX="$HOME/.wine32" wine ...

which with the current packaging resolves to:
WINELOADER="/usr/lib/wine/wine" /usr/lib/wine/wine ...

but also works like:
WINELOADER="/usr/lib/wine/wine" /usr/lib/wine/wine64 ...


Greets
jre



More information about the pkg-wine-party mailing list