Closed theofficialgman closed 8 months ago
I have spent the last 3 days on this.
My conclusion is that steam needs to be launched with -cef-disable-gpu
parameters on most hardware. It's not needed on my Ampere+RTX4060 machine, but needed on my Lenovo X13s and PI/400.
I have pushed a commit on box86 to change the steam installer shell script to add this parameter, and also added this info in the README there.
Sorry for the incorrect repo post. I should have caught that it gets stuck in steam 32bit (box86) code and not 64bit (box64) code. If you want to transfer this issue to that repo go ahead.
I thinks it's a 64bits issue, but steam is launched with 32bits app :(
What a mess ... this 32bits / 64bits mix is tricky!
My conclusion is that steam needs to be launched with
-cef-disable-gpu
parameters on most hardware. It's not needed on my Ampere+RTX4060 machine, but needed on my Lenovo X13s and PI/400.
I'll check other cli args to see if they have any affect in a bit.
thanks for your continued efforts as always.
I have a working archive of the ~/.local/share/Steam folder from 2/26/2024. @ptitSeb or @theofficialgman if you could use that to compare differences, let me know and I can send it over using https://sharedrop.io It is 762MB
If you want it, DM me on discord, and do not expect an immediate reply as I have to go.
My conclusion is that steam needs to be launched with
-cef-disable-gpu
parameters on most hardware. It's not needed on my Ampere+RTX4060 machine, but needed on my Lenovo X13s and PI/400.I'll check other cli args to see if they have any affect in a bit.
Check box source code (either one), on
main.c
you'll see that when steam is detected, there are a few arguments that are automatically inserted. I didn't forced this one because some machine doesn't need it, so I assume it's a driver issue that might get fixed later...thanks for your continued efforts as always.
:)
I have an archive of the older ~/.local/share/Steam folder from Monday. @ptitSeb or @theofficialgman if you could use that to compare differences, let me know and I can send it over using https://sharedrop.io It is 762MB
well we already know (from a valve post) that they updated CEF in this update. so it is certainly instigated by with that.
@ptitSeb on my end on nintendo switch only -cef-disable-gpu-compositing
is needed. hw accelerated rasterization still works on this hardware though that may not apply to everything.
that should be a bit faster than -cef-disable-gpu
for what it matter, this hardware works fully in upstream chromium using default sandboxing.
Possibly related: https://github.com/FEX-Emu/FEX/issues/3479
I just want to report that I have tested the latest CEF builds on nintendo switch (native ARM64 and x64 with Box64) and both work just fine with no args passed https://cef-builds.spotifycdn.com/index.html#linux64 https://cef-builds.spotifycdn.com/index.html#linuxarm64
I also did a strings on the steam libcef.so
and found that is uses an "ancient" version 109.0.0-HEAD.2772+g7992ccc+chromium-109.0.5414.120
this version came out in Jan 2023
I have not downloaded official binaries for that version and tested them yet
I have tested the above version of CEF (x64 through Box64) without issues with no args. So the problem appears to only manifest with steam or steams build of CEF
also the output error dialog that we see at least makes sense
on a standard x86_64 pc, running ~/.local/share/Steam/ubuntu12_64/steamwebhelper.sh
returns quickly
on arm64 through box64, running ~/.local/share/Steam/ubuntu12_64/steamwebhelper.sh
hangs (which is what the error dialog says)
seems like a variant of this bug https://github.com/chromiumembedded/cef/issues/3565#issuecomment-1741590032
~/.local/share/Steam/ubuntu12_64/debug.log
[0302/011417.028389:WARNING:task_impl.cc(32)] No task runner for threadId 0
[0302/011417.065305:WARNING:task_impl.cc(32)] No task runner for threadId 0
the issue does not occur with the sampleapplication hence why it is difficult to debug and upstream closed it
@ptitSeb found a workaround/fix. disable the steamwebhelper box64rc overrides as such
[steamwebhelper]
#BOX64_NOSANDBOX=1
#BOX64_INPROCESSGPU=1
#BOX64_LOG=0
BOX64_MALLOC_HACK=2
#BOX64_DYNAREC_BIGBLOCK=0
#BOX64_DYNAREC_CALLRET=1
#BOX64_DYNAREC_STRONGMEM=2
and remove all the steam forced args from box86 https://github.com/ptitSeb/box86/blob/14c9cb148d92e601ee691981a6c85efdc7b86352/src/main.c#L1573-L1580
this fixes the issue. I removed all of those commands but I think that specifically the --in-process-gpu
argument is problematic and prevents steam webhelper from working. if I add --in-process-gpu
to the x64 CEF that that I downloaded it hangs just like steam webhelper in box64
Oh, ok. That indeed works on the X13s :O That's awesome. Those settings were needed before (espeically the no sandbox). I'll do some more stability test and update box86/box64 accordingly. (note the malloc=2 should be automatic if it detect libcef.so)
Possibly related: FEX-Emu/FEX#3479
Probably a different root cause (I guess the use of pressure-vessel might be problematic on FEX?)
same problem. After update steam don`t working.
src/steamUI/steamuisharedjscontroller.cpp (546) : Failed creating offscreen shared JS context src/steamUI/steamuisharedjscontroller.cpp (546) : Failed creating offscreen shared JS context
same problem. After update steam don`t working.
src/steamUI/steamuisharedjscontroller.cpp (546) : Failed creating offscreen shared JS context src/steamUI/steamuisharedjscontroller.cpp (546) : Failed creating offscreen shared JS context
Update box86 and box64 and try again, it should work after that.
Just ran a rebuild in box86-debs and box64-debs for all the pi-apps users and anyone else using those repos.
Can confirm that Steam launches now after upgrading packages. I have pushed an update to the pi-apps steam installer so that it upgrades these packages and reinstalls Steam. That should solve everything for everyone.
Thanks @theofficialgman and @ptitSeb for working together on this. I think this issue can be closed now that it is solved.
I and @Botspot have replicated Steam unable to launch on fresh installs seen as early as 2/28/2024
end of log snippit:
an error window like so pops up none of the options change anything in getting steam to launch.
this has been replicated on multiple systems with a fresh steam install: Ubuntu Bionic Nintendo Switch Ubuntu Jammy Nintendo Switch Debian Bookworm RPi5
(info for the discord users, not ptitSeb: I have requested that users create a bug report for such issues that occur on Box64 but not on a standard x86_64 PC. Over the past few days there have been a dozen or so reports in the discord servers but nobody has followed the advise and created a bug report. All of the users reading this where I requested that you open a bug report force me to make it instead of reading and following directions)