protonscr

beta 2021-08-31: steamwebhelper requires libcups.so.2

steamclosed runtimeWeb Component
ValveSoftware/steam-for-linux#8031 · opened 2021-09-01 by sylware · updated 2021-09-14 · 13 comments · github
Ssylware 2021-09-01 github

In steamwebhelper.log I get:
"./steamwebhelper: error while loading shared libraries: libcups.so.2: cannot open shared object file: No such file or directory"

Then libcef does not load and the steam client is "empty", except for the menus.

Ttukodi 2021-09-01 github

Same problem for me on Arch Linux. Preloading the harfbuzz library from system seems to solve it:

LD_PRELOAD=/lib/libharfbuzz.so steam

Ssmcv 2021-09-01 github

@sylware, @tukodi: What symlinks are in each of your ~/.steam/root/ubuntu12_64/steam-runtime-heavy/pinned_libs_* directories?

@eNTi: If you are not using the beta client then you are not experiencing the same issue. Please open a separate issue with full details, including the output that Steam produces when you run it from a terminal (gnome-terminal, Konsole or similar). It would also be useful to try switching to the beta client and see whether that resolves whatever issue you are having. In the beta client (but only the beta client), the Steam web helper logs to ~/.steam/steam/logs/steamwebhelper.log.

EeNTi 2021-09-01 github

@sylware, @tukodi: What symlinks are in each of your ~/.steam/root/ubuntu12_64/steam-runtime-heavy/pinned_libs_* directories?

@eNTi: If you are not using the beta client then you are not experiencing the same issue. Please open a separate issue with full details, including the output that Steam produces when you run it from a terminal (gnome-terminal, Konsole or similar). It would also be useful to try switching to the beta client and see whether that resolves whatever issue you are having. In the beta client (but only the beta client), the Steam web helper logs to ~/.steam/steam/logs/steamwebhelper.log.

Yes. I was experiencing a different issue. Deleted my post so that it won't confuse anyone.

Ssmcv 2021-09-01 github

Workaround: install whatever package provided by your distribution contains an x86_64 libcups.so.2. On Debian/Ubuntu it's libcups2:amd64, on Arch it seems to be libcups, other distributions will be similar.

@kisak-valve, please could you retitle this to something like beta 2021-08-31: steamwebhelper requires libcups.so.2 so people with unrelated steamwebhelper issues don't think this one is relevant to them?

Ssylware 2021-09-01 github

I built an empty libcups stub, google libcef is loading successfully with it.

If anybody with a lean distro without cups (printing) wants it, I'll put it on my gist (if it is still working though).

weird, usually google libcef is carefull at dynamically loading the system libs (it is even trying on a periodic time basis all the time ).

Ssmcv 2021-09-01 github

I built an empty libcups stub

I hope it goes without saying that this is unsupported, and unsupportable.

Ssmcv 2021-09-01 github

@tukodi, if LD_PRELOADing Harfbuzz works around this symptom for you, then I think you have the same symptom as @sylware, but for a different reason: #7935. Beta 2021-08-31 should resolve that.

Ssylware 2021-09-01 github

huh? the stub is just there as a work around waiting for google libcef to properly handle dynamic loading of libcups.

BTW, does libcef handle gracefully a fallback chain of renderers? vulkan->GL->cpu?

Ttomaszg7 2021-09-06 github

I have the same issue on beta with Gentoo. I couldn't preload harfbuzz as I didn't have 32-bit version installed, but installing cups did the trick. I hope this issue gets resolved, so I can get rid of it.

Ssmcv 2021-09-06 github

I couldn't preload harfbuzz

Harfbuzz is nothing to do with this issue. There are two separate issues that have the same high-level symptom: the steamwebhelper not being able to start, resulting in a mostly blank UI.

#7935 is related to harfbuzz, affects the general-availability release, and is fixed in the beta.

This issue, #8031, is related to libcups, does not affect the general-availability release, and does affect the beta.

Ssmcv 2021-09-10 github

This issue, #8031, is related to libcups, does not affect the general-availability release, and does affect the beta.

That's no longer the case: Steam general availability now incorporates the change that fixed #7935, which means it unintentionally also needs libcups.so.2. This is a harm-minimization thing: more distributions were broken by #7935 than by this issue, because most distributions have a 64-bit libcups.so.2 included in all desktops, so fixing #7935 was prioritized higher than fixing this issue.

Workaround: Install a 64-bit libcups. You don't need the rest of CUPS: building CUPS with --with-components=core should be sufficient.

A future release is likely to add the necessary libcups.so.2 to steam-runtime-heavy, meaning you don't need to provide your own. I cannot provide an ETA for this (and I cannot guarantee that it will happen), Steam's update schedule is outside my control.

Ssmcv 2021-09-14 github

A future release is likely to add the necessary libcups.so.2 to steam-runtime-heavy, meaning you don't need to provide your own.

This is in the latest Steam update (2021-09-13, 1631572918), both beta and general-availability.

Kkisak-valve maintainer 2021-09-14 github

Closing per "Add libcups.so to the runtime (steam-for-linux#8031)" in the 2021-09-13 Steam client update.

Nothing extracted yet.