[arch-general] steam-native can't find libpcre.so.3, breaks embedded browser
It seems like the steam-native package is broken as of March 21, according to this bug report[1]. Installing libselinux and pcre seems to fix the issue. I don't know if it's a good idea to write about it here, but I'd like to get this patch mainstreamed, instead of having to install another package to workaround this bug. [1] https://bugs.archlinux.org/task/62095?project=5&string=steam-native-runtime
Em abril 4, 2019 0:25 Alexandre Oliveira via arch-general escreveu:
It seems like the steam-native package is broken as of March 21, according to this bug report[1].
Installing libselinux and pcre seems to fix the issue. I don't know if it's a good idea to write about it here, but I'd like to get this patch mainstreamed, instead of having to install another package to workaround this bug.
[1] https://bugs.archlinux.org/task/62095?project=5&string=steam-native-runtime
Hi Alexandre, As I have just commented on the bug, I cannot reproduce this bug. And I use steam on an almost daily basis. It looks like it's a bug on upstream steam and does not affect all users. Even though we can patch things on occasion to fix broken packages, we tend to wait for upstream fixes if the issue is not critical or a fix already exists. Also, the patch you referred to, is not an actual patch, just a package that creates an ugly fix, by creating a symlink to libpcre. That's not the right way to fix this issue. Regards, Giancarlo Razzolini
On Thu, 4 Apr 2019 at 15:40, Giancarlo Razzolini via arch-general <arch-general@archlinux.org> wrote:
Em abril 4, 2019 0:25 Alexandre Oliveira via arch-general escreveu:
It seems like the steam-native package is broken as of March 21, according to this bug report[1].
Installing libselinux and pcre seems to fix the issue. I don't know if it's a good idea to write about it here, but I'd like to get this patch mainstreamed, instead of having to install another package to workaround this bug.
[1] https://bugs.archlinux.org/task/62095?project=5&string=steam-native-runtime
Hi Alexandre,
As I have just commented on the bug, I cannot reproduce this bug. And I use steam on an almost daily basis.
It looks like it's a bug on upstream steam and does not affect all users. Even though we can patch things on occasion to fix broken packages, we tend to wait for upstream fixes if the issue is not critical or a fix already exists.
Are you sure you're running steam-native? I get the exact same issue with `steam-native`, while `steam` has a working browser (but some games have other issues). It seems unlikely to me that steam would require libpcre.so.3 only for some users but not for others. While it is definitely a problem caused by upstream, they officially only support some Ubuntu distributions. There's no guarantee that steam will solve this on their end.
Also, the patch you referred to, is not an actual patch, just a package that creates an ugly fix, by creating a symlink to libpcre. That's not the right way to fix this issue.
A better fix is mentioned on the steam forum [1] by a WorMzy:
$ export LD_PRELOAD="/usr/lib/libgio-2.0.so.0:/usr/lib/libglib-2.0.so.0" $ steam-native
Apparently those libraries still come from the steam distribution, even with steam-native, and those pull in libpcre.so.3 and libselinux.so.1. Preloading the system versions avoids that. [1] https://steamcommunity.com/groups/SteamClientBeta/discussions/0/184807200276...
Regards, Giancarlo Razzolini
On April 4, 2019 7:11:07 PM GMT+02:00, Maarten de Vries via arch-general <arch-general@archlinux.org> wrote:
A better fix is mentioned on the steam forum [1] by a WorMzy:
$ export LD_PRELOAD="/usr/lib/libgio-2.0.so.0:/usr/lib/libglib-2.0.so.0" $ steam-native
Apparently those libraries still come from the steam distribution, even with steam-native, and those pull in libpcre.so.3 and libselinux.so.1. Preloading the system versions avoids that.
[1] https://steamcommunity.com/groups/SteamClientBeta/discussions/0/184807200276...
That looks a lot more appropriate as a fix, however please keep the discussion and information flow at a single place and further responses should be made in the bug ticket. We will provide a fix soon, but should first dive into why those libs were used in the first place. Thanks for the useful information. Cheers, Levente
Em abril 4, 2019 14:11 Maarten de Vries escreveu:
Are you sure you're running steam-native? I get the exact same issue with `steam-native`, while `steam` has a working browser (but some games have other issues). It seems unlikely to me that steam would require libpcre.so.3 only for some users but not for others.
Yes, I am sure. But to be double sure I've ran it from the shell. No issues with the store page.
While it is definitely a problem caused by upstream, they officially only support some Ubuntu distributions. There's no guarantee that steam will solve this on their end.
If we can argue, I don't see why they wouldn't.
Also, the patch you referred to, is not an actual patch, just a package that creates an ugly fix, by creating a symlink to libpcre. That's not the right way to fix this issue.
A better fix is mentioned on the steam forum [1] by a WorMzy:
$ export LD_PRELOAD="/usr/lib/libgio-2.0.so.0:/usr/lib/libglib-2.0.so.0" $ steam-native
Apparently those libraries still come from the steam distribution, even with steam-native, and those pull in libpcre.so.3 and libselinux.so.1. Preloading the system versions avoids that.
[1] https://steamcommunity.com/groups/SteamClientBeta/discussions/0/184807200276...
Now a patch I can agree on. Given that steam-runtime is all about LD preloading stuff, there would be the place to fix this, if we can't get this fixed upstream. Regards, Giancarlo Razzolini
I don't think it'll be possible to have this patch upstream because not all distros offer a native runtime version of Steam like Arch does and for some reason, as stated in the bug report by Maarten, the native runtime is using Steam's version of glib and gio. From what I understood, it makes sense to patch the native runtime to add these two libraries to the list of replaced libraries, although I'm not sure how that works at all in the steam-native binary. On 4/4/19 2:33 PM, Giancarlo Razzolini via arch-general wrote:
Em abril 4, 2019 14:11 Maarten de Vries escreveu:
Are you sure you're running steam-native? I get the exact same issue with `steam-native`, while `steam` has a working browser (but some games have other issues). It seems unlikely to me that steam would require libpcre.so.3 only for some users but not for others.
Yes, I am sure. But to be double sure I've ran it from the shell. No issues with the store page.
While it is definitely a problem caused by upstream, they officially only support some Ubuntu distributions. There's no guarantee that steam will solve this on their end.
If we can argue, I don't see why they wouldn't.
Also, the patch you referred to, is not an actual patch, just a package that creates an ugly fix, by creating a symlink to libpcre. That's not the right way to fix this issue.
A better fix is mentioned on the steam forum [1] by a WorMzy:
$ export LD_PRELOAD="/usr/lib/libgio-2.0.so.0:/usr/lib/libglib-2.0.so.0" $ steam-native
Apparently those libraries still come from the steam distribution, even with steam-native, and those pull in libpcre.so.3 and libselinux.so.1. Preloading the system versions avoids that.
[1] https://steamcommunity.com/groups/SteamClientBeta/discussions/0/184807200276...
Now a patch I can agree on. Given that steam-runtime is all about LD preloading stuff, there would be the place to fix this, if we can't get this fixed upstream.
Regards, Giancarlo Razzolini
Looks like it's very unlikely that Valve will be willing to fix their stuff. As discussed in both the Arch Linux issue and GitHub, the problem is that steamwebhelper.sh prepends the path '.', which causes the issue. Editing the file to append that same path instead works. I think the way to go is to edit the steam-native script and add /usr/lib and /usr/lib32 and then applying a patch to steamwebhelper.sh to fix the path, as stated by Leonard in the bug tracker. On Thu, 4 Apr 2019, 21:09 Alexandre Oliveira, <rockytvbr@gmail.com> wrote:
I don't think it'll be possible to have this patch upstream because not all distros offer a native runtime version of Steam like Arch does and for some reason, as stated in the bug report by Maarten, the native runtime is using Steam's version of glib and gio.
From what I understood, it makes sense to patch the native runtime to add these two libraries to the list of replaced libraries, although I'm not sure how that works at all in the steam-native binary.
On 4/4/19 2:33 PM, Giancarlo Razzolini via arch-general wrote:
Em abril 4, 2019 14:11 Maarten de Vries escreveu:
Are you sure you're running steam-native? I get the exact same issue with `steam-native`, while `steam` has a working browser (but some games have other issues). It seems unlikely to me that steam would require libpcre.so.3 only for some users but not for others.
Yes, I am sure. But to be double sure I've ran it from the shell. No issues with the store page.
While it is definitely a problem caused by upstream, they officially only support some Ubuntu distributions. There's no guarantee that steam will solve this on their end.
If we can argue, I don't see why they wouldn't.
Also, the patch you referred to, is not an actual patch, just a package that creates an ugly fix, by creating a symlink to libpcre. That's not the right way to fix this issue.
A better fix is mentioned on the steam forum [1] by a WorMzy:
$ export LD_PRELOAD="/usr/lib/libgio-2.0.so.0:/usr/lib/libglib-2.0.so.0" $ steam-native
Apparently those libraries still come from the steam distribution, even with steam-native, and those pull in libpcre.so.3 and libselinux.so.1. Preloading the system versions avoids that.
[1]
https://steamcommunity.com/groups/SteamClientBeta/discussions/0/184807200276...
Now a patch I can agree on. Given that steam-runtime is all about LD preloading stuff, there would be the place to fix this, if we can't get this fixed upstream.
Regards, Giancarlo Razzolini
participants (4)
-
Alexandre Oliveira
-
Giancarlo Razzolini
-
Levente Polyak
-
Maarten de Vries