The following information was necessary to fix a Lutris Wine bottle created by an install script for Lord of the Rings Online. Part of the fix was to select a different browser than the system default browser because the game had issues with the default browser even after it was made to work.
At first, it seemed sensible to post the information on a Lord Of The Rings Online forum, but, since that time, the information was used to fix a similar issue with Magic The Gathering Arena install script, so it seems relevant to post on Lutris forums for anyone else that encounters a similar issue with even more games.
When a browser launch does not work, running the game in a terminal has been helpful.
- Right-click game
- Click “Configure”
- Click “System Options”
- Enable “Run in a terminal”
In both cases where games failed to launch a browser, the terminal shows clues. When the attempt is made to launch the store, regardless which default browser is selected in the Linux desktop settings, a symbol lookup error occurs:
/opt/brave.com/brave/brave: symbol lookup error: /lib64/libpango-1.0.so.0: undefined symbol: fribidi_get_par_embedding_levels_ex
XPCOMGlueLoad error for file /usr/lib64/firefox/libmozgtk.so: /lib64/libpango-1.0.so.0: undefined symbol: fribidi_get_par_embedding_levels_ex Couldn't load XPCOM.
Internet searches show similar issues with other software, and in most cases, it appears that the software potentially packages a wrong version of libfribidi, and the cure is to make sure the system version of libfribidi is used.
This triggered a thought that setting Lutris’ Configure|System Options|Prefer system libraries and/or Disable Lutris Runtime might help, but at first it didn’t seem to as these settings tended to cause Brave to core dump with a bad system call.
For reference, this is what happened for Brave:
/usr/bin/brave-browser-stable: line 48: 554179 Bad system call (core dumped) "$HERE/brave" "$@"
Oddly, Brave worked fine on the system for everything else. It never became clear why being called from inside a wine application should be any different (especially since Brave used to work with this game).
Later it became evident that Configure|System Options|Prefer system libraries DID HELP and appears to remove the message about things not loading. For some reason, Brave had issues, but Firefox became usable after making the change.
All this was find and good, but I did not want to set Firefox as my default web browser! Since Firefox was needed for the in-game browser launches, I wondered how to make it work so Firefox was used by a wine bottle without having to change the system default browser.
Luckily this page showed up in search results.
Their solution didn’t work as-is for this situation, but fortunately some fiddling around got results:
$ WINEPREFIX="path-to-game-wine-bottle" wine regedit
path-to-game-wine-bottleis the directory containing the wine
drive_cfolder where the game is installed. Lutris can tell you what it is if you use Configure after right clicking the button normally used to launch the game from within the Lutris application.
If there is not one already, create a
WineBrowserkey (i.e. folder
WineBrowserkey, create a string called
Browserswith the following value:
Clearly, this is for the browser that works for me. It could be the name of any browser that works to open the browser when set to the system default browser.
- Check HKEY_CLASSES_ROOT|http|shell|open|command so that it looks like this:
C:\windows\system32\winebrowser.exe "%1" "%2"
Do the same thing for HKEY_CLASSES_ROOT|https|shell|open|command.
The aforementioned article says
“%1”, but the
“%1”on this system was already present, and,
-nohomewas not already there there, so I didn’t add it, and it works for me.
Now, even though my default system browser is Brave, which doesn’t work for in-game browser launching, the game now opens the in-game browser sessions with Firefox.
This procedure has now worked for two different games, so it is bound to be useful for other games. It also is probably worth summarizing a few points:
- Try using system libraries instead of Lutris-provided libraries when a library load issue occurs.
- A previously working browser might stop working after an update, but others might work fine.
- Do not assume a browser not working means all browsers do not work.
- It might be annoying to have to change a system browser to fix an issue with a game.
- It is possible for each game to use a different browser (than the system default browser).