invernyx / smartcars-3-bugs

The bug tracker for the smartCARS 3 application
3 stars 0 forks source link

[BUG] - Linux behaviour erratic (3.2.2?) [Update on #384] #386

Open paulscottrobson opened 1 month ago

paulscottrobson commented 1 month ago

Describe the bug

This is effectively reopening #384

I have two near identical Linux boxes. One is a development machine, one for flight sims, the latter dual boots Windows.

Hardware is slightly different but AMD CPUs and Nvidia graphics cards. Both are on 3.2.2, the OS install is almost identical, up to date Arch (as of 18/07/24)

One works, one doesn't. (On the one that works I successfully logged in)

The one that doesn't shows the 'disappearing GUI' mentioned in #384 ; though it is less sensitive, it still displays the initial login GUI where you type your tfdi login - which goes to a white screen if you move the mouse over it, click on a field etc, but it takes more movement or other GUI events (I think) than 3.2.1 did. But it still is impossible to log into.

The one that appears to work correctly, it doesn't seem to be possible to log out so I can check if I can log in, but there is the option to go back to the login screen and that seems to work fine.

The shell logs are slightly different.

The log from the one that works shows the following ; the failed one is trying to access api/credentials/retrieve/tfdidesign and the successful one api/lastcommunity (may be because one is logged in)

info: smartCARS server running on http://localhost:7172 {"source":"main","timestamp":"2024-07-18T08:05:39.698Z"}
libva error: vaGetDriverNames() failed with unknown libva error
info: Setting current plugin {"handler":"set-current-plugin","plugin":null,"source":"realTimeAPI","timestamp":"2024-07-18T08:05:40.139Z"}
error: Failed to call local API {"endpoint":"api/lastcommunity","error":{"code":"ERR_BAD_REQUEST","config":{"adapter":["xhr","http"],"data":"{}","env":{},"headers":{"Accept":"application/json, text/plain, */*","Content-Type":"application/json"},"maxBodyLength":-1,"maxContentLength":-1,"method":"get","params":{},"timeout":0,"transformRequest":[null],"transformResponse":[null],"transitional":{"clarifyTimeoutError":false,"forcedJSONParsing":true,"silentJSONParsing":true},"url":"http://localhost:7172/api/lastcommunity","xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN"},"message":"Request failed with status code 404","name":"AxiosError","stack":"AxiosError: Request failed with status code 404\n    at http://localhost:7172/app/static/js/main.70fa8c0a.js:2:270012\n at XMLHttpRequest.d (http://localhost:7172/app/static/js/main.70fa8c0a.js:2:270160)","status":404},"timestamp":"2024-07-18T08:05:41.090Z"}
info: Socket disconnected {"handler":"disconnect","socketId":"1T_F7JaoneefRsGSAAAB","source":"realTimeAPI","timestamp":"2024-07-18T08:05:44.488Z"}
info: Stopping plugins {"timestamp":"2024-07-18T08:05:44.507Z"} 

The one that doesn't work

info: smartCARS server running on http://localhost:7172 {"source":"main","timestamp":"2024-07-18T08:02:09.652Z"}
libva error: vaGetDriverNames() failed with unknown libva error
info: Setting current plugin {"handler":"set-current-plugin","plugin":null,"source":"realTimeAPI","timestamp":"2024-07-18T08:02:10.059Z"}
error: Failed to call local API {"endpoint":"api/credentials/retrieve/tfdidesign","error":{"code":"ERR_BAD_REQUEST","config":{"adapter":["xhr","http"],"data":"{}","env":{},"headers":{"Accept":"application/json, text/plain, */*","Content-Type":"application/json"},"maxBodyLength":-1,"maxContentLength":-1,"method":"post","params":{},"timeout":0,"transformRequest":[null],"transformResponse":[null],"transitional":{"clarifyTimeoutError":false,"forcedJSONParsing":true,"silentJSONParsing":true},"url":"http://localhost:7172/api/credentials/retrieve/tfdidesign","xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN"},"message":"Request failed with status code 404","name":"AxiosError","stack":"AxiosError: Request failed with status code 404\n    at http://localhost:7172/app/static/js/main.70fa8c0a.js:2:270012\n    at XMLHttpRequest.d (http://localhost:7172/app/static/js/main.70fa8c0a.js:2:270160)","status":404},"timestamp":"2024-07-18T08:02:10.078Z"}
info: Socket disconnected {"handler":"disconnect","socketId":"NO-2Yntr5u4-N-iZAAAB","source":"realTimeAPI","timestamp":"2024-07-18T08:02:14.245Z"}
info: Stopping plugins {"timestamp":"2024-07-18T08:02:17.403Z"}

How do you reproduce this bug?

run the smartcars 3 executable

Expected behavior

Should allow log in.

Screenshots

No response

Operating system

Arch Linux x64 current updated.

Community airline

N/A

smartCARS Version

3.2.2

Plugins installed

None unless there are defaults.

Additional context

No response

Thien42 commented 1 month ago

Well the problem with Linux is that the amount of combinations of hardware and software possible is simply too high for us to guarantee that smartCARS 3 will work on all of them.

To me it looks like some incompatibility between the rendering process of Electron and the Linux NVIDIA drivers. I will try to reproduce the issue, but since both my hardware and software setup will be different, it might not be possible.

paulscottrobson commented 1 month ago

I do appreciate that, and thanks for trying. If you want me to test anything let me know. I have been tinkering but so far have been unsuccessful. I think you are correct it is something to do with the nvidia rendering / VAAPI ; is there a way of turning off hardware acceleration ? (I'm not an expert on electron) The application looks like it doesn't have huge graphic requirements ?

I do use orbx which has an electron installer with graphics and it works, though it does require sandboxing.

Thien42 commented 1 month ago

I think I will update to a newer version of electron in the next release. It's been a overdue for a little while, and maybe it will help