netbrain / zwift

Easily zwift on linux
The Unlicense
237 stars 27 forks source link

Zwift doesn't start with 1.55.0 #54

Closed gaeljw closed 8 months ago

gaeljw commented 8 months ago

Hello,

Since this morning, I'm facing an issue with the latest image (digest ac9eb7f0a269, v1.55.0).

Zwift doesn't start and instead I get two error popups from Wine:

Wine The Wine configuration in /home/user/.wine is being updated, please wait...

rundll32.exe - This applicat... This application could not be started. Do you want to view information about this issue?

The last image working fine for me is digest ad3bca953cb1 v.1.54.0 from a few days ago. When pinning the image to this one, everything works fine.

I didn't have time to troubleshoot more, here are the container logs:

+ ZWIFT_HOME='/home/user/.wine/drive_c/Program Files (x86)/Zwift'
+ mkdir -p '/home/user/.wine/drive_c/Program Files (x86)/Zwift'
+ cd '/home/user/.wine/drive_c/Program Files (x86)/Zwift'
+ '[' '' = update ']'
++ ls -A .
+ '[' '!' 'ANT_DLL.dll
APR2007_xinput_x64.cab
APR2007_xinput_x86.cab
BleWin10Lib.dll
BleWin10Lib_V2.dll
CloseLauncher.exe
DSETUP.dll
DXSETUP.exe
Feb2010_X3DAudio_x64.cab
Feb2010_X3DAudio_x86.cab
Jun2010_XAudio_x64.cab
Jun2010_XAudio_x86.cab
Launcher_ver_cur.xml
Patcher.dll
VC_redist.x64.exe
WebView2Loader.dll
Webview2Setup.exe
Windows ANT Dongle Driver
ZwiftApp.exe
ZwiftHelper.exe
ZwiftLauncher.exe
ZwiftLauncher.exe.config
ZwiftWindowsCrashHandler.exe
Zwift_1.0.123458_bd4431b2_manifest.xml
Zwift_ver_cur.xml
Zwift_ver_cur_filename.txt
assets
bink2w64.dll
data
dotnet-v4.7.2-installer.exe
dsetup32.dll
dxupdate.cab
starting zwift...
unins000.dat
unins000.exe' ']'
+ echo 'starting zwift...'
+ wine64 start ZwiftLauncher.exe SilentLaunch
013c:err:winebrowser:launch_app could not find a suitable app to open L"http://go.microsoft.com/fwlink/?prd=11324&pver=4.5&sbp=AppLaunch2&plcid=0x409&o1=SHIM_NOVERSION_FOUND&version=(null)&processName=rundll32.exe&platform=0009&osver=5&isServer=0&shimver=4.0.30319.0"
CalebJRogers commented 8 months ago

I’m facing the same issue as of the latest update.

netbrain commented 8 months ago

Sorry about that, my "squash" routine seems to have failed. Building latest image from scratch in order to fix it. Should be fixed afterwards.

gaeljw commented 8 months ago

Thanks a lot for your work @netbrain :)

fandan commented 8 months ago

Hello, now I get a program error from the Wine Debugger with ZwiftLauncher.exe. Is there anything else to configure?

image

netbrain commented 8 months ago

Make sure you have the correct image maybe? docker rmi netbrain/zwift:latestand maybe zwift:1.55.0 aswell.

Then do a docker pull netbrain/zwift:latest

fandan commented 8 months ago

Thanks for your suggestion, but remove and then pull didn't help. Same error message. The Wine Debugger throws following message:

Unhandled exception: page fault on execute access to 0x00007f5870283d20 in 64-bit code (0x007f5870283d20).
Register dump:
 rip:00007f5870283d20 rsp:00000000234bb018 rbp:0000000000002000 eflags:00010202 (  R- --  I   - - - )
 rax:00007f5870283d20 rbx:00007f585802d230 rcx:00000000234bb130 rdx:00007f585802d238
 rsi:0000000000000002 rdi:000000007e2e55a0  r8:0000000000002000  r9:0000000000000000 r10:0000000000000031
 r11:00000000ffffffff r12:00000000234bb130 r13:000000007e2e55a0 r14:0000000000000000 r15:0000000000000002
Stack dump:
0x000000234bb018:  00007f587121d2b3 0000000000000032
0x000000234bb028:  0000000000000000 0000000000000000
0x000000234bb038:  0000000000000000 0000000000000000
0x000000234bb048:  0000000000000000 0000000000000000
0x000000234bb058:  0000000000000000 0000000000000000
0x000000234bb068:  0000000000000000 0000000000000000
0x000000234bb078:  0000000000000000 0000000000000000
0x000000234bb088:  0000000000000000 0000000000000000
0x000000234bb098:  0000000000000000 0000000000000000
0x000000234bb0a8:  0000000000000000 0000000000000000
0x000000234bb0b8:  d671f0c22efce000 0000000000000000
0x000000234bb0c8:  00000000234bf1c0 000000007e2e55a0
Backtrace:
=>0 0x007f5870283d20 (0x00000000002000)
0x007f5870283d20: -- no code accessible --
Modules:
Module  Address                 Debug info  Name (122 modules)
PE  0000000000190000-00000000001a6000   Deferred        vcruntime140_clr0400
PE  0000000000400000-0000000001782000   Deferred        zwiftlauncher
PE  0000000003650000-0000000004117000   Deferred        clr
PE  0000000004120000-00000000041dd000   Deferred        ucrtbase_clr0400
PE  000000001e190000-000000001e2de000   Deferred        clrjit
PE  000000001e6f0000-000000001ecec000   Deferred        presentationframework
PE  000000001edd0000-000000001ef10000   Deferred        windowsbase
PE  000000001ef50000-000000001efec000   Deferred        system.xaml
PE  000000001f090000-000000001f0a6000   Deferred        nlssorting
PE  000000001f390000-000000001f3b4000   Deferred        clrcompression
PE  000000001f560000-000000001f568000   Deferred        system.runtime.interopservices.runtimeinformation
PE  000000001f570000-000000001f6ec000   Deferred        system.core
PE  000000001f800000-000000001fb7a000   Deferred        presentationcore
PE  000000001fb80000-0000000020124000   Deferred        system.windows.forms
PE  0000000020150000-0000000020347000   Deferred        wpfgfx_v0400
PE  0000000020350000-00000000203ea000   Deferred        msvcp140_clr0400
PE  00000000203f0000-000000002050f000   Deferred        presentationnative_v0400
PE  0000000021610000-0000000021640000   Deferred        system.net.http
PE  0000000021660000-00000000216c6000   Deferred        system.configuration
PE  0000000021710000-0000000021996000   Deferred        system.xml
PE  0000000021a30000-0000000021a73000   Deferred        dnsapi
PE  0000000021ab0000-0000000021b06000   Deferred        system.runtime.remoting
PE  0000000022790000-00000000227c8000   Deferred        uiautomationtypes
PE  0000000022a90000-0000000022f9b000   Deferred        patcher
PE  00000000235c0000-0000000024940000   Deferred        wined3d
PE  000000007a800000-000000007ac8f000   Deferred        opengl32
PE  000000007b600000-000000007b75b000   Deferred        kernel32
ELF 000000007d000000-000000007d005000   Deferred        <wine-loader>
PE  0000000170000000-00000001702b5000   Deferred        ntdll
PE  0000000174000000-0000000174515000   Deferred        kernelbase
PE  0000000180000000-00000001800a9000   Deferred        mscoreei
PE  00000001ccdd0000-00000001cce67000   Deferred        rsaenh
PE  00000001d0e20000-00000001d1254000   Deferred        oleaut32
PE  00000001d8c90000-00000001d8d90000   Deferred        advapi32
PE  00000001dbc50000-00000001dbed6000   Deferred        dwrite
PE  00000001de160000-00000001de3f9000   Deferred        urlmon
PE  00000001eaf60000-00000001eb005000   Deferred        sechost
PE  000000020b860000-000000020bd1a000   Deferred        ole32
PE  00000002169d0000-0000000216eb8000   Deferred        user32
PE  0000000228280000-00000002284fd000   Deferred        msvcrt
PE  000000023bc00000-000000023c8a4000   Deferred        shell32
PE  0000000250cd0000-0000000250d29000   Deferred        mpr
PE  0000000251d80000-0000000251e0d000   Deferred        winex11
PE  0000000252450000-0000000252b7b000   Deferred        windowscodecs
PE  000000025dc30000-000000025dc4e000   Deferred        version
PE  0000000263650000-00000002636cc000   Deferred        propsys
PE  000000026c190000-000000026c1af000   Deferred        nsi
PE  000000026c230000-000000026c2d4000   Deferred        uxtheme
PE  000000027a8e0000-000000027aa50000   Deferred        d3d9
PE  00000002964d0000-00000002967a2000   Deferred        crypt32
PE  00000002a2380000-00000002a2483000   Deferred        shlwapi
PE  00000002bb0a0000-00000002bb2b5000   Deferred        gdi32
PE  00000002bde30000-00000002bde7b000   Deferred        shcore
PE  00000002c73a0000-00000002c73f0000   Deferred        win32u
PE  00000002c7470000-00000002c7750000   Deferred        ucrtbase
PE  00000002ee630000-00000002ee676000   Deferred        bcrypt
PE  00000002ef230000-00000002ef24e000   Deferred        dwmapi
PE  000000031c5d0000-000000031c72b000   Deferred        combase
PE  0000000345640000-00000003457f9000   Deferred        wininet
PE  0000000368420000-0000000368646000   Deferred        rpcrt4
PE  000000036d860000-000000036d9fe000   Deferred        setupapi
PE  0000000370f70000-0000000370ffe000   Deferred        ws2_32
PE  00000003891f0000-000000038920c000   Deferred        amsi
PE  0000000393730000-0000000393784000   Deferred        imm32
PE  00000003982d0000-000000039835d000   Deferred        iphlpapi
PE  000006427ee50000-000006427eebf000   Deferred        mscoree
PE  0000064474a80000-00000644756ed000   Deferred        system.ni
PE  0000064478000000-00000644795e3000   Deferred        mscorlib.ni
ELF 00007f5847933000-00007f5849705000   Deferred        libicudata.so.72
ELF 00007f5849705000-00007f5849903000   Deferred        libicuuc.so.72
ELF 00007f5849903000-00007f584af38000   Deferred        libz3.so.4
ELF 00007f584b152000-00007f58521b0000   Deferred        libllvm-15.so.1
ELF 00007f5853e21000-00007f5853fcd000   Deferred        libxml2.so.2
ELF 00007f5853fcd000-00007f5854000000   Deferred        libtinfo.so.6
ELF 00007f5870026000-00007f5870060000   Deferred        libedit.so.2
ELF 00007f5870060000-00007f5870080000   Deferred        libgcc_s.so.1
ELF 00007f5870434000-00007f5870564000   Deferred        opengl32.so
ELF 00007f5870564000-00007f58705e5000   Deferred        libgmp.so.10
ELF 00007f58705e5000-00007f587062e000   Deferred        libhogweed.so.6
ELF 00007f587062e000-00007f58707e4000   Deferred        libunistring.so.2
ELF 00007f58707e4000-00007f5870a00000   Deferred        libgnutls.so.30
ELF 00007f5870a00000-00007f5870c06000   Deferred        libxxf86vm.so.1
ELF 00007f5870c15000-00007f5870c1b000   Deferred        ws2_32.so
ELF 00007f5870c1b000-00007f5870c20000   Deferred        dnsapi.so
ELF 00007f5870c20000-00007f5870c26000   Deferred        dwrite.so
ELF 00007f5870c26000-00007f5870c2c000   Deferred        crypt32.so
ELF 00007f5870c2c000-00007f5870c38000   Deferred        libffi.so.8
ELF 00007f5870c38000-00007f5870c86000   Deferred        libnettle.so.8
ELF 00007f5870c86000-00007f5870c9b000   Deferred        libtasn1.so.6
ELF 00007f5870c9b000-00007f5870ccc000   Deferred        libidn2.so.0
ELF 00007f5870ccc000-00007f5870e00000   Deferred        libp11-kit.so.0
ELF 00007f5870e00000-00007f5871006000   Deferred        libxdmcp.so.6
ELF 00007f5871007000-00007f5871012000   Deferred        bcrypt.so
ELF 00007f587115a000-00007f5871162000   Deferred        libxfixes.so.3
ELF 00007f5871162000-00007f587116f000   Deferred        libxcursor.so.1
ELF 00007f587116f000-00007f5871183000   Deferred        libxi.so.6
ELF 00007f5871183000-00007f5871188000   Deferred        libxcomposite.so.1
ELF 00007f5871188000-00007f5871195000   Deferred        libxrandr.so.2
ELF 00007f5871195000-00007f58711a2000   Deferred        libxrender.so.1
ELF 00007f58711a2000-00007f58711a7000   Deferred        libxinerama.so.1
ELF 00007f58711a7000-00007f58711b4000   Deferred        libmd.so.0
ELF 00007f58711b4000-00007f58711ca000   Deferred        libbsd.so.0
ELF 00007f58711ca000-00007f58711cf000   Deferred        libxau.so.6
ELF 00007f58711cf000-00007f58711f9000   Deferred        libxcb.so.1
ELF 00007f58711f9000-00007f587133b000   Deferred        libx11.so.6
ELF 00007f587133b000-00007f5871350000   Deferred        libxext.so.6
ELF 00007f5871350000-00007f58713df000   Deferred        winex11.so
ELF 00007f58715f3000-00007f587161e000   Deferred        libexpat.so.1
ELF 00007f587161e000-00007f5871669000   Deferred        libfontconfig.so.1
ELF 00007f5871669000-00007f587168c000   Deferred        libbrotlicommon.so.1
ELF 00007f587168c000-00007f5871699000   Deferred        libbrotlidec.so.1
ELF 00007f5871699000-00007f58716cf000   Deferred        libpng16.so.16
ELF 00007f58716cf000-00007f58716ee000   Deferred        libz.so.1
ELF 00007f58716ee000-00007f58717b9000   Deferred        libfreetype.so.6
ELF 00007f58717b9000-00007f5871898000   Deferred        libm.so.6
ELF 00007f5871898000-00007f5871a56000   Deferred        win32u.so
ELF 00007f5871d56000-00007f5871ecc000   Dwarf           libwine.so.1
ELF 00007f5871fcc000-00007f5871ffb000   Deferred        liblzma.so.5
ELF 00007f5871ffb000-00007f5872017000   Deferred        libunwind.so.8
ELF 00007f5872017000-00007f58720da000   Deferred        ntdll.so
ELF 00007f58720dd000-00007f58722be000   Deferred        libc.so.6
ELF 00007f58722c0000-00007f58722f4000   Deferred        ld-linux-x86-64.so.2
Threads:
process  tid      prio    name (all IDs are in hex)
00000038 services.exe
    0000003c    0     
    00000040    0     wine_rpcrt4_server
    00000054    0     wine_rpcrt4_io
    00000058    0     wine_threadpool_worker
    0000006c    0     wine_rpcrt4_io
    0000008c    0     wine_rpcrt4_io
    000000c4    0     wine_rpcrt4_io
    000000dc    0     wine_rpcrt4_io
    000000f4    0     wine_threadpool_timerqueue
    00000100    0     wine_rpcrt4_io
00000044 svchost.exe
    00000048    0     
    0000005c    0     
    00000060    0     wine_sechost_service
0000004c explorer.exe
    00000050    0     
    00000098    0     
    000000a4    0     wine_rpcrt4_server
00000064 winedevice.exe
    00000068    0     
    00000070    0     
    00000074    0     wine_sechost_service
    00000078    0     
    0000007c    0     
    000000f0    0     
00000084 winedevice.exe
    00000088    0     
    00000090    0     
    00000094    0     wine_sechost_service
    0000009c    0     
    000000a0    0     
    000000ac    0     
    000000b4    0     
    000000b8    0     
000000bc plugplay.exe
    000000c0    0     
    000000c8    0     
    000000cc    0     wine_sechost_service
    000000d0    0     wine_rpcrt4_server
000000d4 svchost.exe
    000000d8    0     
    000000e0    0     
    000000e4    0     wine_sechost_service
    000000e8    0     
    00000120    0     wine_rpcrt4_server
    00000124    0     wine_rpcrt4_server
000000f8 rpcss.exe
    000000fc    0     
    00000104    0     
    00000108    0     wine_sechost_service
    0000010c    0     wine_rpcrt4_server
    00000110    0     wine_rpcrt4_server
    00000130    0     wine_rpcrt4_io
00000134 (D) C:\Program Files (x86)\Zwift\ZwiftLauncher.exe
    00000138    0     
    0000014c    0     
    00000150    2     
    0000015c    0     
    00000160    0     
    00000164    0     
    00000168    0     
    0000016c    0     
    00000170    0     
    00000174    0     
    00000178    0 <== 
    0000018c    0     
00000184 conhost.exe
    00000188    0     
System information:
    Wine build: wine-8.0.2
    Platform: x86_64
    Version: Windows 7
    Host system: Linux
    Host version: 6.6.8-200.fc39.x86_64
CalebJRogers commented 8 months ago

It is working for me now.

zacha81 commented 8 months ago

zwift crashes too on my system. did a fresh install:

zwift

Unhandled exception: page fault on execute access to 0x00007f0a4d132d20 in 64-bit code (0x007f0a4d132d20). Register dump: rip:00007f0a4d132d20 rsp:000000002349b018 rbp:0000000000002000 eflags:00010202 ( R- -- I - - - ) rax:00007f0a4d132d20 rbx:00007f0a3002d1b0 rcx:000000002349b130 rdx:00007f0a3002d1b8 rsi:0000000000000002 rdi:000000007dc235c0 r8:0000000000002000 r9:0000000000000000 r10:0000000000000000 r11:00000000ffffffff r12:000000002349b130 r13:000000007dc235c0 r14:0000000000000000 r15:0000000000000002 Stack dump: 0x0000002349b018: 00007f0a4e0bd2b3 0000000000000032 0x0000002349b028: 0000000000000000 0000000000000000 0x0000002349b038: 0000000000000000 0000000000000000 0x0000002349b048: 0000000000000000 0000000000000000 0x0000002349b058: 0000000000000000 0000000000000000 0x0000002349b068: 0000000000000000 0000000000000000 0x0000002349b078: 0000000000000000 0000000000000000 0x0000002349b088: 0000000000000000 0000000000000000 0x0000002349b098: 0000000000000000 0000000000000000 0x0000002349b0a8: 0000000000000000 0000000000000000 0x0000002349b0b8: a7ac69b529976e00 0000000000000000 0x0000002349b0c8: 000000002349f1c0 000000007dc235c0 Backtrace: =>0 0x007f0a4d132d20 (0x00000000002000) 0x007f0a4d132d20: -- no code accessible -- Modules: Module Address Debug info Name (122 modules) PE 0000000000190000-00000000001a6000 Deferred vcruntime140_clr0400 PE 0000000000400000-0000000001782000 Deferred zwiftlauncher PE 0000000003650000-0000000004117000 Deferred clr PE 0000000004120000-00000000041dd000 Deferred ucrtbase_clr0400 PE 000000001e190000-000000001e2de000 Deferred clrjit PE 000000001e6f0000-000000001ecec000 Deferred presentationframework PE 000000001edd0000-000000001ef10000 Deferred windowsbase PE 000000001ef50000-000000001efec000 Deferred system.xaml PE 000000001f090000-000000001f0a6000 Deferred nlssorting PE 000000001f390000-000000001f3b4000 Deferred clrcompression PE 000000001f560000-000000001f568000 Deferred system.runtime.interopservices.runtimeinformation PE 000000001f570000-000000001f6ec000 Deferred system.core PE 000000001f800000-000000001fb7a000 Deferred presentationcore PE 000000001fb80000-0000000020124000 Deferred system.windows.forms PE 0000000020150000-0000000020347000 Deferred wpfgfx_v0400 PE 0000000020350000-00000000203ea000 Deferred msvcp140_clr0400 PE 00000000203f0000-000000002050f000 Deferred presentationnative_v0400 PE 0000000021630000-0000000021660000 Deferred system.net.http PE 0000000021660000-00000000216c6000 Deferred system.configuration PE 0000000021700000-0000000021986000 Deferred system.xml PE 0000000021a20000-0000000021a63000 Deferred dnsapi PE 0000000021b90000-0000000021bc8000 Deferred uiautomationtypes PE 0000000021be0000-0000000021c36000 Deferred system.runtime.remoting PE 0000000022a70000-0000000022f7b000 Deferred patcher PE 00000000235a0000-0000000024920000 Deferred wined3d PE 000000007a800000-000000007ac8f000 Deferred opengl32 PE 000000007b600000-000000007b75b000 Deferred kernel32 ELF 000000007d000000-000000007d005000 Deferred PE 0000000170000000-00000001702b5000 Deferred ntdll PE 0000000174000000-0000000174515000 Deferred kernelbase PE 0000000180000000-00000001800a9000 Deferred mscoreei PE 00000001ccdd0000-00000001cce67000 Deferred rsaenh PE 00000001d0e20000-00000001d1254000 Deferred oleaut32 PE 00000001d8c90000-00000001d8d90000 Deferred advapi32 PE 00000001dbc50000-00000001dbed6000 Deferred dwrite PE 00000001de160000-00000001de3f9000 Deferred urlmon PE 00000001eaf60000-00000001eb005000 Deferred sechost PE 000000020b860000-000000020bd1a000 Deferred ole32 PE 00000002169d0000-0000000216eb8000 Deferred user32 PE 0000000228280000-00000002284fd000 Deferred msvcrt PE 000000023bc00000-000000023c8a4000 Deferred shell32 PE 0000000250cd0000-0000000250d29000 Deferred mpr PE 0000000251d80000-0000000251e0d000 Deferred winex11 PE 0000000252450000-0000000252b7b000 Deferred windowscodecs PE 000000025dc30000-000000025dc4e000 Deferred version PE 0000000263650000-00000002636cc000 Deferred propsys PE 000000026c190000-000000026c1af000 Deferred nsi PE 000000026c230000-000000026c2d4000 Deferred uxtheme PE 000000027a8e0000-000000027aa50000 Deferred d3d9 PE 00000002964d0000-00000002967a2000 Deferred crypt32 PE 00000002a2380000-00000002a2483000 Deferred shlwapi PE 00000002bb0a0000-00000002bb2b5000 Deferred gdi32 PE 00000002bde30000-00000002bde7b000 Deferred shcore PE 00000002c73a0000-00000002c73f0000 Deferred win32u PE 00000002c7470000-00000002c7750000 Deferred ucrtbase PE 00000002ee630000-00000002ee676000 Deferred bcrypt PE 00000002ef230000-00000002ef24e000 Deferred dwmapi PE 000000031c5d0000-000000031c72b000 Deferred combase PE 0000000345640000-00000003457f9000 Deferred wininet PE 0000000368420000-0000000368646000 Deferred rpcrt4 PE 000000036d860000-000000036d9fe000 Deferred setupapi PE 0000000370f70000-0000000370ffe000 Deferred ws2_32 PE 00000003891f0000-000000038920c000 Deferred amsi PE 0000000393730000-0000000393784000 Deferred imm32 PE 00000003982d0000-000000039835d000 Deferred iphlpapi PE 000006427ee50000-000006427eebf000 Deferred mscoree PE 0000064474a80000-00000644756ed000 Deferred system.ni PE 0000064478000000-00000644795e3000 Deferred mscorlib.ni ELF 00007f0a271d0000-00007f0a28fa2000 Deferred libicudata.so.72 ELF 00007f0a28fa2000-00007f0a30000000 Deferred libllvm-15.so.1 ELF 00007f0a34f7b000-00007f0a365b0000 Deferred libz3.so.4 ELF 00007f0a4c6c3000-00007f0a4c8c1000 Deferred libicuuc.so.72 ELF 00007f0a4c8cc000-00007f0a4ca78000 Deferred libxml2.so.2 ELF 00007f0a4ca78000-00007f0a4caab000 Deferred libtinfo.so.6 ELF 00007f0a4caab000-00007f0a4cae5000 Deferred libedit.so.2 ELF 00007f0a4cae5000-00007f0a4cb05000 Deferred libgcc_s.so.1 ELF 00007f0a4d2e3000-00007f0a4d413000 Deferred opengl32.so ELF 00007f0a4d413000-00007f0a4d419000 Deferred ws2_32.so ELF 00007f0a4d419000-00007f0a4d41e000 Deferred dnsapi.so ELF 00007f0a4d41e000-00007f0a4d424000 Deferred dwrite.so ELF 00007f0a4d424000-00007f0a4d430000 Deferred libffi.so.8 ELF 00007f0a4d430000-00007f0a4d4b1000 Deferred libgmp.so.10 ELF 00007f0a4d4b1000-00007f0a4d4fa000 Deferred libhogweed.so.6 ELF 00007f0a4d4fa000-00007f0a4d6b0000 Deferred libunistring.so.2 ELF 00007f0a4d6b0000-00007f0a4d7e4000 Deferred libp11-kit.so.0 ELF 00007f0a4d7e4000-00007f0a4da00000 Deferred libgnutls.so.30 ELF 00007f0a4da00000-00007f0a4dc06000 Deferred libxxf86vm.so.1 ELF 00007f0a4dc06000-00007f0a4dc0c000 Deferred crypt32.so ELF 00007f0a4dc0c000-00007f0a4dc5a000 Deferred libnettle.so.8 ELF 00007f0a4dc5a000-00007f0a4dc6f000 Deferred libtasn1.so.6 ELF 00007f0a4dc6f000-00007f0a4dca0000 Deferred libidn2.so.0 ELF 00007f0a4dca0000-00007f0a4dcab000 Deferred bcrypt.so ELF 00007f0a4ddf3000-00007f0a4de00000 Deferred libxcursor.so.1 ELF 00007f0a4de00000-00007f0a4e006000 Deferred libxdmcp.so.6 ELF 00007f0a4e007000-00007f0a4e00f000 Deferred libxfixes.so.3 ELF 00007f0a4e00f000-00007f0a4e023000 Deferred libxi.so.6 ELF 00007f0a4e023000-00007f0a4e028000 Deferred libxcomposite.so.1 ELF 00007f0a4e028000-00007f0a4e035000 Deferred libxrandr.so.2 ELF 00007f0a4e035000-00007f0a4e042000 Deferred libxrender.so.1 ELF 00007f0a4e042000-00007f0a4e047000 Deferred libxinerama.so.1 ELF 00007f0a4e047000-00007f0a4e054000 Deferred libmd.so.0 ELF 00007f0a4e054000-00007f0a4e06a000 Deferred libbsd.so.0 ELF 00007f0a4e06a000-00007f0a4e06f000 Deferred libxau.so.6 ELF 00007f0a4e06f000-00007f0a4e099000 Deferred libxcb.so.1 ELF 00007f0a4e099000-00007f0a4e1db000 Deferred libx11.so.6 ELF 00007f0a4e1db000-00007f0a4e1f0000 Deferred libxext.so.6 ELF 00007f0a4e1f0000-00007f0a4e27f000 Deferred winex11.so ELF 00007f0a4e493000-00007f0a4e4be000 Deferred libexpat.so.1 ELF 00007f0a4e4be000-00007f0a4e509000 Deferred libfontconfig.so.1 ELF 00007f0a4e509000-00007f0a4e52c000 Deferred libbrotlicommon.so.1 ELF 00007f0a4e52c000-00007f0a4e539000 Deferred libbrotlidec.so.1 ELF 00007f0a4e539000-00007f0a4e56f000 Deferred libpng16.so.16 ELF 00007f0a4e56f000-00007f0a4e58e000 Deferred libz.so.1 ELF 00007f0a4e58e000-00007f0a4e659000 Deferred libfreetype.so.6 ELF 00007f0a4e659000-00007f0a4e738000 Deferred libm.so.6 ELF 00007f0a4e738000-00007f0a4e8f6000 Deferred win32u.so ELF 00007f0a4ebf6000-00007f0a4ed6c000 Dwarf libwine.so.1 ELF 00007f0a4ee6c000-00007f0a4ee9b000 Deferred liblzma.so.5 ELF 00007f0a4ee9b000-00007f0a4eeb7000 Deferred libunwind.so.8 ELF 00007f0a4eeb7000-00007f0a4ef7a000 Deferred ntdll.so ELF 00007f0a4ef7d000-00007f0a4f15e000 Deferred libc.so.6 ELF 00007f0a4f160000-00007f0a4f194000 Deferred ld-linux-x86-64.so.2 Threads: process tid prio name (all IDs are in hex) 00000038 services.exe 0000003c 0
00000040 0 wine_rpcrt4_server 0000004c 0 wine_rpcrt4_io 00000050 0 wine_threadpool_worker 0000006c 0 wine_rpcrt4_io 0000008c 0 wine_rpcrt4_io 000000c4 0 wine_rpcrt4_io 000000dc 0 wine_rpcrt4_io 000000f4 0 wine_threadpool_timerqueue 00000100 0 wine_rpcrt4_io 00000044 svchost.exe 00000048 0
00000054 0
00000058 0 wine_sechost_service 0000005c explorer.exe 00000060 0
000000a4 0
000000a8 0 wine_rpcrt4_server 00000064 winedevice.exe 00000068 0
00000070 0
00000074 0 wine_sechost_service 00000078 0
0000007c 0
000000f0 0
00000084 winedevice.exe 00000088 0
00000090 0
00000094 0 wine_sechost_service 00000098 0
0000009c 0
000000a0 0
000000b4 0
000000b8 0
000000bc plugplay.exe 000000c0 0
000000c8 0
000000cc 0 wine_sechost_service 000000d0 0 wine_rpcrt4_server 000000d4 svchost.exe 000000d8 0
000000e0 0
000000e4 0 wine_sechost_service 000000e8 0
00000124 0 wine_rpcrt4_server 00000128 0 wine_rpcrt4_server 000000f8 rpcss.exe 000000fc 0
00000104 0
00000108 0 wine_sechost_service 0000010c 0 wine_rpcrt4_server 00000110 0 wine_rpcrt4_server 00000114 0 wine_rpcrt4_io 00000134 (D) C:\Program Files (x86)\Zwift\ZwiftLauncher.exe 00000138 0
00000144 0
00000148 2
0000017c 0
00000180 0
00000184 0
00000188 0
000001bc 0
000001c0 0
000001c4 0
000001d0 0 <== 0000021c 0
000001f4 conhost.exe 000001f8 0
System information: Wine build: wine-8.0.2 Platform: x86_64 Version: Windows 7 Host system: Linux Host version: 6.6.8-200.fc39.x86_64

set selinux to permissive, still same problem

netbrain commented 8 months ago

@zacha81 and @fandan you are both on fedora? and does the 1.54.0 version work for you?

i.e $ VERSION=1.54.0 zwift

zacha81 commented 8 months ago

hi @netbrain , yes I am currently on Fedora 39, seems like fandan is too. I have not been using Zwift on Linux for a while now. The last time I had it up and running was still on Fedora 38, I reckon- in the meantime I was always using a windows vm. I don't remember the Zwift version, though. I tried running Zwift 1.54 as suggested but it fails too with the same error message.

gpu is amd rx6600

fandan commented 8 months ago

@netbrain First of all, thank you for your great work on being able to use Zwift on Linux. I just tried version 1.54. The same problem. My system is Fedora 39 and my GPU is a AMD Radeon RX 5700. I was also able to use Zwift on Fedora 39 until a few days ago. The last entry in the Log.txt of the Zwift volume is:

GLFW ERROR 65542: WGL: The driver does not appear to support OpenGL

The problems may come from adjusting the variables NVIDIA_VISIBLE_DEVICES and/or NVIDIA_DRIVER_CAPABILITIES?

gaeljw commented 8 months ago

I hadn't tested yet the new image (digest b530163c2430b87a3b74087226be7b4dfa53166331246bde36e460f42934956f), I have the same errors as others.

Using Fedora 39, no GPU. Previous image (ad3bca953cb15e4a0cd0c310c8ec794d7932de1a2e551bb86b945e9d21652455) working fine on the same environment.

netbrain commented 8 months ago

@fandan @gaeljw and @zacha81 maybe you could try to run another gl process in the container?

https://github.com/netbrain/zwift/issues/42#issuecomment-1815831734

fandan commented 8 months ago

glxinfo shows following output:

name of display: :0
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  83
  Current serial number in output stream:  84

and LIBGL_DEBUG=verbose glxgears:

libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: using driver amdgpu for 4
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: pci id for fd 4: 1002:731f, driver radeonsi
libGL: MESA-LOADER: dlopen(/usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so)
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
/usr/share/libdrm/amdgpu.ids version: 1.0.0
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL: using driver amdgpu for 4
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: pci id for fd 4: 1002:731f, driver radeonsi
libGL: MESA-LOADER: dlopen(/usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so)
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
/usr/share/libdrm/amdgpu.ids version: 1.0.0
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL: MESA-LOADER: dlopen(/usr/lib/x86_64-linux-gnu/dri/swrast_dri.so)
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL: Can't open configuration file /etc/drirc: No such file or directory.
libGL: Can't open configuration file /home/user/.drirc: No such file or directory.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
Error: glXCreateContext failed
netbrain commented 8 months ago

For throse of you with a nvidia graphics card you basically need to get the gpu working in a container environment. https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/sample-workload.html

Also try running an actual gl application like glxgears.

for other graphics cards you need to try different settings i guess. Heres an example on how to get started:

# Create container containing glxgears
docker run --name glx-test debian:bookworm-slim bash -c "apt-get update && apt-get install -y  mesa-utils"
# Create image of container
docker commit glx-test glx-test
# Remove temporary container
docker rm -f glx-test 

#Then try some different experiments in order to get glxgears to work on your system. On my system this works.
docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --gpus=all -it --rm glx-test glxgears

However also try including flags like, but not limited to:

--device /dev/dri:/dev/dri
--user=$(id -u):$(id -g)
-e WAYLAND_DISPLAY=$WAYLAND_DISPLAY
-v $XDG_RUNTIME_DIR/$WAYLAND_DISPLAY:/tmp/$WAYLAND_DISPLAY
-e XDG_RUNTIME_DIR=/tmp

This all depends on if you are running xorg, wayland or a hybrid etc. Try googling for other flags that would be necessary for your system. If you find a working configuration, then let me know and we'll make the necessary adjustments to zwift.sh.

gonced8 commented 8 months ago

Using PopOS with no GPU and also getting the OpenGL error. Did you manage to get it to work @gaeljw and/or @fandan ?

fandan commented 8 months ago

@gonced8 I'm doing my best and have already carried out various tests over the last two days. Unfortunately so far without success. Which GPU are you using? Also an AMD Radeon?

gonced8 commented 8 months ago

Yes @fandan , it's a laptop with a AMD Ryzen 5. And thank you for carrying those tests. If you figure something out, let us know please!

netbrain commented 8 months ago

Ok, so the issue now is passthrough of a Ryzen APU to the container? And and a amd Radeon GPU?

gaeljw commented 8 months ago

Just tried to use the previous image (1.54.0) which was working for me on Monday and today it's not working anymore with the same error as others.

It must be related to some upgrades we got in the last days. I saw a containerd upgrade but downgrading didn't help.

For now, I don't have any solution.

It's not the same issue as the one I was originally having though.

fandan commented 8 months ago

@netbrain Radeon cards are also affected

I didn't start the container as a daemon. Then after starting the ZwiftLauncher the message appears that libvulkan.so.1 was not loaded. However, the file exists. An initial Google search revealed that this is a known Wine problem. One suggestion was to reinstall the driver (here). Is to be tested.

starting zwift...
+ echo 'starting zwift...'
+ wine64 start ZwiftLauncher.exe SilentLaunch
0050:err:vulkan:wine_vk_init Failed to load libvulkan.so.1.
++ winedbg --command 'info proc'
++ grep -P ZwiftLauncher.exe
++ grep -oP '^\s\K.+?(?=\s)'
+ LAUNCHER_PID_HEX=00000134
+ LAUNCHER_PID=308
+ [[ -f /home/user/Zwift/.zwift-credentials ]]
+ echo 'authenticating with zwift...'
authenticating with zwift...
0150:err:ole:CoGetContextToken apartment not initialised
++ zwift-auth
0138:err:combase:RoGetActivationFactory Failed to find library for L"Windows.Foundation.Diagnostics.AsyncCausalityTracer"
0178:err:vulkan:wine_vk_init Failed to load libvulkan.so.1.
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: radeonsi
libGL error: No matching fbConfigs or visuals found
libGL error: failed to load driver: swrast
0178:err:wgl:X11DRV_WineGL_InitOpenglInfo  couldn't initialize OpenGL, expect problems
0178:err:d3d:wined3d_caps_gl_ctx_create Failed to find a suitable pixel format.
0178:err:eventlog:ReportEventW L"Application: ZwiftLauncher.exe\nFramework Version: v4.0.30319\nDescription: The process was terminated due to an unhandled exception.\nException Info: exception code c0000005, exception address 00007F44EA819D20\n"
wine: Unhandled page fault on execute access to 00007F44EA819D20 at address 00007F44EA819D20 (thread 0178), starting debugger...

Maybe the problem came from the Debian update from 11 to 12?

@netbrain In the Dockerfile I saw that bookworm was loaded. However, there is still a reference to bullseye. Is that correct?

echo "deb https://dl.winehq.org/wine-builds/debian/ bookworm main" > \
  /etc/apt/sources.list.d/winehq.list && \ 
  sed -i '/^Types: deb/{:a; N; /\n$/!ba; s/Suites: \(.*\)/Suites: bullseye \1/}' /etc/apt/sources.list.d/debian.sources && \
netbrain commented 8 months ago

That might be the issue. Feel free to try it out and build the image from scratch.

I'm afk this weekend.

netbrain commented 8 months ago

On second thought, if it's related to the bookworm upgrade then it should be fairly easy to test an older Zwift version. Not sure which tho.

netbrain commented 8 months ago

FYI on my current laptop i have dual graphics card and by default it uses my intel card when starting zwift. even if it doesn't map the --device /dev/dri (as it finds i have a nvidia card) so in my case it uses --gpus all instead.

When using nvidia-smi, i can see that zwift isn't using the nvidia graphics card, so in order to force it over on nvidia i have to use these env variables:

docker run ...
  -e __NV_PRIME_RENDER_OFFLOAD_PROVIDER=NVIDIA-G0 
  -e __GLX_VENDOR_LIBRARY_NAME=nvidia 
  -e __VK_LAYER_NV_optimus=NVIDIA_only 
  -e __NV_PRIME_RENDER_OFFLOAD=1 
  -e DISPLAY=:0 
  ...
docker.io/netbrain/zwift:latest

this is however on nixos in conjunction with nvidia-offload

fandan commented 7 months ago

Hello everyone,

there are news: After spending a few days installing various drivers and libs to get glxinfo error-free, I have now most likely found the cause: My host system is Fedora 39, which a current mesa-libGL (23.3) is used. However, the debian bookworm-slim image used in the container uses an older version. This seems to cause problems when passing the renderer from the host to the container. Installing an additional package source can help.

deb http://ftp.de.debian.org/debian sid main

In Dockerfile:

...
RUN dpkg --add-architecture i386 

RUN echo "deb http://ftp.de.debian.org/debian sid main" >> /etc/apt/sources.list

RUN \
  apt-get update && \
....

This package source provides a current libGL.

My theory is also supported by the fact that I released the new mesa-libGL version on January 1st. I received it by updating my packages in fedora 39. There were no problems with zwift before.

glxinfo is now running. But zwift itself isn't starting yet.

There are still some errors in the Zwift installation routine that need to be analyzed.

quietvoid commented 7 months ago

If you want to try I have a Dockerfile based on Arch Linux running the latest drivers (at least those current to Arch). https://github.com/quietvoid/zwift/blob/mod/bin/image/Dockerfile

Since I run Arch as host I haven't run into any issues so far.

fandan commented 7 months ago

glxinfo is now running. But zwift itself isn't starting yet.

There are still some errors in the Zwift installation routine that need to be analyzed.

That was another problem and my fault. By adding the new package source everything now works for me. Can anyone test the package source integration with a NVIDIA card and a different host system? If it runs there too, could @netbrain integrate it?

gonced8 commented 7 months ago

Update from my side: today I tried running it again, without changing anything, and it worked straight out of the box. It did update the Docker image.

netbrain commented 7 months ago

@fandan start by creating a pull request.

gaeljw commented 7 months ago

Thanks folks, just to say that the latest image (netbrain/zwift@sha256:e68c33ba7fcd7eeced68faf2a87d24ca1b6f0ddc4e51b37e680ee36267b8bd5e) is working fine back on my Fedora 39.

zacha81 commented 7 months ago

Can confirm it works for me too.