protonscr

Outdated or incomplete GTK2 framework version used by steam

steamclosed Steam client
ValveSoftware/steam-for-linux#5576 · opened 2018-07-21 by Hanro50 · updated 2020-09-25 · 4 comments · github
HHanro50 2018-07-21 github

Your system information

  • Steam client version (build number or date): 8 Jun 2018, at 22:22:39
  • Distribution (e.g. Ubuntu): Multiple
  • Opted into Steam client beta?: [Yes/No] no
  • Have you checked for system updates?: [Yes/No] yes (Fresh install)

Please describe your issue in as much detail as possible:

Describe what you expected should happen and what did happen. Please link any large code pastes as a Github Gist

Steam seems to be using an out of date or incomplete version of the GTK2 framework which leads to theming being broken in about 99% of all themes I've tried since most modern themes make use of the "direction" attribute. When steam attempts to load this attribute it fails and reverts back to a fallback theme which often looks unpleasant.

This causes the following error:
"/usr/share/themes/deepen-dark/get-2.0/main.rc:1090: error: unexpected identifier 'direction', expected character '}'"

The main side effect of this is the broken menu theming found when you click on the steam system tray icon. Even if the rest of your system looks modern, that menu will look asif it were ripped strait from an OS from 2 decades ago

Steps for reproducing this issue:

  1. Download a them that contains the "direction attribute"
    e.g. the deepen dark theme I am using has it at line 1090

image {
function = SHADOW
setail = "entry"
state = NORMAL
shadow = IN
file = "assets/combo-entry.png"
border = { 4, 4, 5, 4 }
stretch = TRUE
direction = LTR
}

  1. Install steam
  2. run "steam" via terminal and look for the error I've described above
Kkisak-valve maintainer 2018-07-21 github

Related to #1542.

Ddarealshinji 2018-09-17 github

Gtk2 being outdated may also be related to https://github.com/ValveSoftware/steam-for-linux/issues/5579

HHanro50 2019-08-14 github

Found a hacky fix for those stuck with this problem. This doesn't 100% fix the problem, but comes pretty damn close on Linux Mint 19.2

Try "sudo apt-get install libgtk2.0-0:i386 libidn11:i386 libglu1-mesa:i386 libxmu6:i386" along with "sudo apt install libdbusmenu-gtk4:i386"

I did do some messing about with my repositories so I don't know if they're in the official repos...but they should be. Long story short it seems steam gives preference to the native libs on your system rather then those that come prepackaged with its runtime.

Also thanks darealshinji, I discovered this fix thanks to your suggestion within #5579

Kkisak-valve maintainer 2020-09-25 github