mmtrt / WINE_AppImage

MIT License
96 stars 13 forks source link

Wine appimage not working #59

Open Blad3forc3 opened 8 months ago

Blad3forc3 commented 8 months ago

Recently I have noticed the size of the wine appimage has reduced (from nearly 900mb to 230mb) since this i have found the wine appimage doesnt work with everything it once did. Can you build wine appimages with 32bit support?

ivan-hc commented 7 months ago

In my use case, 32bit apps are working but are very very slow.

ivan-hc commented 7 months ago

@mmtrt any solution?

ivan-hc commented 7 months ago

@Blad3forc3 just realized that this may be an issue with the experimental support to Wayland, are you on an x11 environment too?

@mmtrt should an environment variable be included in the package?

mmtrt commented 7 months ago

@ivan-hc Try using dxvk and d8vk if facing slow perf, also that exp support for wayland is not enabled.

ivan-hc commented 7 months ago

Try using dxvk and d8vk if facing slow perf,

how? If you are referring to the version from the repositories, it doesn't work. I also tried restarting.

Blad3forc3 commented 7 months ago

I am on x11 yes. It is only 32bit apps that fail. I didn't have a problem when the appimages were 800+ mb.

mmtrt commented 7 months ago

how? If you are referring to the version from the repositories, it doesn't work. I also tried restarting.

./wine-devel_9.2-x86_64.AppImage winetricks dxvk

for d8vk just place d3d8.dll in app/game dir and in winecfg add dlloverride d3d8 as native

here 32bit game with d8vk perf

Screenshot_20240226_130218

ivan-hc commented 7 months ago

./wine-devel_9.2-x86_64.AppImage winetricks dxvk

for d8vk just place d3d8.dll in app/game dir and in winecfg add dlloverride d3d8 as native

here 32bit game with d8vk perf

I've followed all the instructions, Diablo 2 LOD (year 1999) still lags

mmtrt commented 7 months ago

I've followed all the instructions, Diablo 2 LOD (year 1999) still lags

use d2dx with dxvk for diablo 2 lod

ivan-hc commented 7 months ago

Tried and didn't work.

However, I've two 32bit games:

ivan-hc commented 7 months ago

UPDATE: I've tried to create a new wine prefix using old wine builds from https://github.com/Kron4ek/Wine-Builds and still does not work as before. At this point I think that there is something broken with some recent updates. I use Debian Testing and recently I remember that I've updated MESA from version 8 to 9. May this be the issue?

@Blad3forc3 can you confirm what I say?

mmtrt commented 7 months ago

0118:err:environ:init_peb starting L"Z:\media\ivan\userdata\Giochi\Diablo II\SystemSurvey.exe" in experimental wow64 mode 0118:err:winediag:ntlm_check_version ntlm_auth was not found. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution. 0118:err:ntlm:ntlm_LsaApInitializePackage no NTLM support, expect problems

install winbind for fixing ntlm errors, for d2dx add glide3x to game dir and add that as native windows dlloverride, install dxvk from winetricks and launch game with these args -3dfx -dxnocompatmodefix should be working now.

for fifa idk why it keeps crashing only work after first install without any changes now it just crashes.

ivan-hc commented 7 months ago

However, I've just finishet trying to use wine/wine32 from Debian repositories... same issue.

I've never had issues with your AppImage, but if also with wine 8.x from binaries and wine 9 from repositories does not work anymore, I think that there is an issue with MESA or something

mmtrt commented 7 months ago

really weird d2 lod seem to work fine for me with that config.

ivan-hc commented 7 months ago

I've done a test in Virtualbox, Windows 10, and the games are quite fluid, it is not a MESA issue as I was thinking about.

Its really too strange.

mmtrt commented 7 months ago

found the cause of games crashing it seems is starting path of executable issue idk why this happens

/to/the/path/wine.appimage filename.exe game works

/to/the/path/wine.appimage /to/the/path/filename.exe game crashing

ivan-hc commented 7 months ago

???

what does it has to do with it? I tried both ways, the result is the same: Fifa2004 doesn't start, Diablo2 is slow.

ivan-hc commented 7 months ago

@mmtrt according to my tests, the problem is elsewhere, maybe not the AppImage itself. If you can share the AppImage of version 8.x, therefore prior to the latest release, I am convinced that it will not work the same. I don't know what happened, a different version MESA driver, some kernel module... if you have some old build, I might test to see if I'm wrong.

mmtrt commented 7 months ago

nvm that issue seem only related to fifa 2004 demo crashing,

also both games working fine here now.

d2lod-new

fifa04

mmtrt commented 7 months ago

Try local building of devel and staging appimage using this last known v8 repo changes

ivan-hc commented 7 months ago
appimagebuilder.modules.setup.generator.RuntimeGeneratorError: Unsupported AppRun version (v3.0.0-devel-2), please use v2.0.0 or newer
ivan-hc commented 7 months ago

I'll try with AppRun v2.0.0

ivan-hc commented 7 months ago
File "/home/ivan/Scrivania/WINE_AppImage/squashfs-root/usr/lib/python3.8/site-packages/appimagebuilder/commands/run_script.py", line 82, in __call__
    raise RuntimeError("Script exited with code: %s" % _proc.returncode)
RuntimeError: Script exited with code: 2
mmtrt commented 7 months ago

alright done re enabled v8 builds

ivan-hc commented 7 months ago

I've seen, now I'm downloading "stable"

ivan-hc commented 7 months ago

Everything works really good now!

ivan-hc commented 7 months ago

So there is something in the new wine 9.x appimages that does not work as it should.

mmtrt commented 7 months ago

Everything works really good now!

that's great.

So there is something in the new wine 9.x appimages that does not work as it should.

should be related to wow64 not everything works with it ig.

ivan-hc commented 7 months ago

yep, I've taken a look around and seems that none talks about a troubleshot. I was so happy to use it with my AppImage of Bottles.

ivan-hc commented 7 months ago

Sadly they don't provide a 32bit runner, but your AppImage, if symlinked as "wine" and "wine64" in ~/.local/bin did the trick

ivan-hc commented 7 months ago

@mmtrt I don't know if this would help in investigating on why wine 9 does not work for me: I have an old Nvidia GeForce GT 710 (driver "nvidia-tesla-470-driver" on Debian repositories).

mmtrt commented 7 months ago

@mmtrt I don't know if this would help in investigating on why wine 9 does not work for me: I have an old Nvidia GeForce GT 710 (driver "nvidia-tesla-470-driver" on Debian repositories).

its older gpu so it would be better to use older dxvk like 1.10.x which have support for 470.x nv drivers.

ivan-hc commented 7 months ago

if so, how should I install it? should I use winetricks?

mmtrt commented 7 months ago

ye winetricks or you can manually add from its archive.

ivan-hc commented 7 months ago

@mmtrt I've tried and it didn't worked (I've installed "dxvk0054").

Fifa2004 now starts and also the game is quite fluid, but menus are slow, the same happen to Diablo2... but also the gameplay is slow and unplayable.

ivan-hc commented 7 months ago

@mmtrt Forgive me for asking, I extracted the two AppImages and noticed some differences.

I can see that the new AppImage have no more an AppRun.env file in the root of thearchive, but the AppRun binary is bigger than the previous one and also the wrapper is quite different (at least in the header, you exported the wine and wineserver binaries which shouldn't be a problem).

This seems to be a huge change in the code, but more than that I can't investigate further.

I build AppImage packages myself, I typically list all the environment variables and commands needed in a single AppRun script (and I'm often forced to export libraries from the host as well to make my packages work). I liked the modular method you adopted in version 8, but since I can't extract the AppRun binary I can't take a look to see if anything has changed.

I wonder, could this revolution you have made to the code have contributed to the malfunctioning with old Nvidia cards?

ivan-hc commented 7 months ago

@mmtrt For example, the file AppRun.config exports /usr/lib and /lib, but not /opt/wine-stable/lib/wine/x86_64-unix, should them be included in LD_LIBRARY_PATH?

Also, I'm not a WINE expert, so I don't know how wow64 works exactly, but I can't see 32bit libraries in the package, this time (the previous versions had also a i386-linux-gnu directory under /lib or /usr/lib). May this be a limit for 32bit programs (at least on old GPUs)?

mmtrt commented 7 months ago

well AppRun binary and AppRun.env, AppRun.config changes are due to using diff appimagebuilder with AppImage runtime v3 b/c without using that wine v9 was not working so I had to shift to that.

ivan-hc commented 7 months ago

I understand, so the previous one work with libfuse2 and this one does not need it