Kron4ek / Conty

Easy to use unprivileged Linux container packed into a single portable executable
MIT License
754 stars 42 forks source link

Wine builds access #28

Closed thenoobtester closed 3 years ago

thenoobtester commented 3 years ago

Hi,

what if I wanted to use one of your Wine build (https://github.com/Kron4ek/Wine-Builds) with Conty? I tried putting in the extracted Wine build folder (wine-6.13-staging-tkg-amd64) in /opt and build the conty image, however I couldn't get access to it with ./conty.sh /opt/wine-6.13-staging-tkg-amd64/bin/wine becaue it looks for it on my local hardrive. So I added a wine.sh in the /usr/bin of the conty.sh because I know conty will find it (inside the wine.sh is /opt/wine-6.13-staging-tkg-amd64/bin/wine "$@") but same thing, /opt/wine-6.13-staging-tkg-amd64/ which is inside the conty container is invisible to it.

So I proceeded differently, I moved wine-6.13-staging-tkg-amd64/ to my local machine's opt folder and kept wine.sh inside conty.sh and it finds it however i get this error which tells me it doesn't find other stuff:

0180:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.

So my question is, how would I create a minimal conty.sh image (which I have already done) and put one of your wine builds inside of it and call wine?

Thank you.

Kron4ek commented 3 years ago

Hi,

You can put it to /usr/local/wine-6.13-staging-tkg-amd64 inside the image. And then execute it like:

./conty.sh /usr/local/wine-6.13-staging-tkg-amd64/bin/wine
thenoobtester commented 3 years ago

Thank you for the reply. I did what you suggested but unfortunately I get the same error message about missing driver :

`Running Conty

wineserver: using server-side synchronization. 002c:fixme:winediag:LdrInitializeThunk Wine TkG (staging) 6.13 is a testing version containing experimental patches. 002c:fixme:winediag:LdrInitializeThunk Please don't report bugs about it on winehq.org and use https://github.com/Frogging-Family/wine-tkg-git/issues instead. 002c:err:wineboot:process_run_key Error running cmd L"C:\windows\system32\winemenubuilder.exe -a -r" (2). 0064:err:module:open_builtin_so_file failed to load .so lib "/usr/local/wine-6.13-staging-tkg-amd64/lib/wine/x86_64-unix/wineusb.sys.so" 0064:err:ntoskrnl:ZwLoadDriver failed to create driver L"\Registry\Machine\System\CurrentControlSet\Services\wineusb": c0000142 0034:fixme:service:scmdatabase_autostart_services Auto-start service L"wineusb" failed to start: 1114 0094:err:plugplay:try_add_device Building report descriptor failed, removing device 0094:err:plugplay:try_add_device Building report descriptor failed, removing device 0094:err:plugplay:try_add_device Building report descriptor failed, removing device 0094:err:plugplay:try_add_device Building report descriptor failed, removing device 0140:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded. 0140:err:winediag:nodrv_CreateWindow Unknown error (998). 0140:err:systray:initialize_systray Could not create tray window 017c:err:module:open_builtin_so_file failed to load .so lib "/usr/local/wine-6.13-staging-tkg-amd64/lib/wine/i386-unix/l3codeca.acm.so" 0184:err:module:open_builtin_so_file failed to load .so lib "/usr/local/wine-6.13-staging-tkg-amd64/lib/wine/x86_64-unix/l3codeca.acm.so" 0184:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded. 0184:err:winediag:nodrv_CreateWindow Unknown error (998).`

FWIW, conty works on my machine and I also managed to pack one of the now archived portable wines inside the image and it worked. I don't know why this is not working.

Kron4ek commented 3 years ago

That's odd, it works for me. Maybe there is a regression in 6.13 release. Could you try staging-tkg-6.12 and maybe staging-6.12? No need to rebuild the image, you can just extract the builds to your home directory and then:

./conty.sh ~/wine-6.12-staging-tkg-amd64/bin/wine
thenoobtester commented 3 years ago

OK I will try and report back, thank you.

EDIT:It worked with wine-6.12-staging. One last question do you know to fix this message :

0180:err:winediag:MIDIMAP_drvOpen No software synthesizer midi port found, Midi sound output probably won't work. I'm trying to run a midi keyboard (software) but i get no sound. I do get sound with a regular wine install. If you have no clue, then never mind you already helped me a lot.

Thank you.

EDIT:Just to let you know that I took the time to try with wine-6.12-staging-tkg-amd64 and it's not working as opposed to wine staging. I get the : 0184:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.

error.

Kron4ek commented 3 years ago

Sorry, i don't know how to fix this midi error.

thenoobtester commented 3 years ago

It seems like it's a pulse lib missing or something. I'll investigate, thanks again for your help.

thenoobtester commented 3 years ago

Just to let you know that I took the time to try with wine-6.12-staging-tkg-amd64 and it's not working as opposed to wine staging. I get the : 0184:err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.

Kron4ek commented 3 years ago

Seems like some of the additional patches included in staging-tkg builds cause this. However, i can't reproduce this problem on my end, and since i can't, it's really hard to investigate this.

thenoobtester commented 3 years ago

Ok

Kron4ek commented 3 years ago

I will try to reproduce this on Debian 9, maybe this problem happens only there. You could try to find out the last staging-tkg version that works for you, 6.12 and 6.13 don't work, but maybe some relatively old version like 6.0 will.

thenoobtester commented 3 years ago

I'll let you know when I do it, wine-6.3-5-proton-amd64 also has the same issue for me. However don't waste too much time on this, only when you have time it's not a priority. Thank you again :)

Kron4ek commented 3 years ago

By the way, have you tried creating a new clean Wine prefix? Like:

export WINEPREFIX=~/somenewprefix
./conty.sh ~/wine-6.12-staging-tkg-amd64/bin/winecfg
thenoobtester commented 3 years ago

Yes, I did it with a new prefix everytime. I just tried wine-6.0-staging-tkg-amd64 and it's working. I'll try others tomorrow.

Kron4ek commented 3 years ago

I tried to run it on Debian 9 now and staging-tkg-6.13 still works fine for me even there.

However, i found out that removing libxrandr or libxrender causes this Application tried to create a window, but no driver could be loaded. error on new staging-tkg builds, while regular staging builds still work even without these libraries.

Given this, do you have libxrandr and libxrender installed inside the container? You can check like this:

./conty.sh ls /usr/lib | grep 'libXrandr\|libXrender'

The output should be:

libXrandr.so
libXrandr.so.2
libXrandr.so.2.2.0
libXrender.so
libXrender.so.1
libXrender.so.1.3.0
thenoobtester commented 3 years ago

No I don't, and that's probably the problem. I just realized I was working with a conty.sh I had created myself and had removed some packages from the original create-arch-bootstrap.sh script. So that has to be the reason. Thank you so much for helping with this. I consider it solved now. Have a nice day :)

EDIT:I installed libxrandr and libxrender in the container and now wine-6.13-staging-tkg-amd64 works !!!