Steam/Client troubleshooting
This article Article description::provides troubleshooting details for the Steam client on Linux systems.
ATI video drivers
- If ATI Legacy drivers are used, and a Valve game (Counter-Strike: Source, Team Fortress 2, etc.) fails to start with the following error:
Required OpenGL extension "GL_EXT_texture_sRGB_decode" is not supported. Please update your OpenGL driver.
Update the ATI Legacy drivers to the most recent version[1].
Big Picture Mode and games not working with controller
This issue is most likely caused by incorrect uinput device node permissions.
Sony DualShock 3
Check /dev/uinput:
crw-rw---- 1 root input 10, 223 Apr 3 21:44 /dev/uinput
In order for Big Picture Mode to see the controller, it needs the user to have write access to it. The solution is a udev rule:
/etc/udev/rules.d/60-dualshock3.rules
<syntaxhighlight lang="bash"># Fix permissions to allow the DualShock 3 controller to be used by Steam SUBSYSTEM=="usb", ATTRS{idVendor}=="054c", MODE="0666" KERNEL=="uinput", SUBSYSTEM=="misc", MODE="0660", GROUP="input"</syntaxhighlight>
After saving the file, udev will need to be "re-triggered":
root #
udevadm control --reload
root #
udevadm trigger
If the user(s) that intend to use the controller with Steam are not already in the input group, they will need to be added:
root #
gpasswd -a <user> input
After that, log out and back in as said user. Steam should detect the controller without issue. A good way to test this is to make sure Steam has focus and press the PlayStation button. If Big Picture mode starts, the controller is detected and configured correctly.
Microsoft Xbox 360 controller
The Microsoft Xbox 360 controller should work out of the box with steam-overlay and CONFIG_JOYSTICK_XPAD compiled into the kernel.
Big Picture Mode not launching on Wayland
If Big Picture Mode fails to launch on Wayland, check if you do not have set the environment variable SDL_VIDEODRIVER=wayland
, or override it on launching Steam:
user $
SDL_VIDEODRIVER=x11 steam
When using the provided desktop file to launch Steam, the workaround can be made permanent by editing its Exec
part:
/usr/share/applications/steam.desktop
<syntaxhighlight lang="ini">Exec=env SDL_VIDEODRIVER=x11 /usr/bin/steam %U</syntaxhighlight>
Direct rendering is not being used
If Steam starts with the following error:
Error: OpenGL GLX context is not using direct rendering, which may cause performance problems.
Confirm if direct rendering is enabled with glxinfo, which is provided by the x11-apps/mesa-progs package:
root #
glxinfo | grep "direct rendering"
direct rendering: Yes
If direct rendering is not enabled, ensure that the correct OpenGL implementation is selected:
root #
eselect opengl list
Next, ensure that the user running Steam has sufficient permissions to access direct rendering. If the USE variable is set to acl
and ConsoleKit or systemd is being used, permissions will be handled automatically. Otherwise, add the user running Steam to the video group:
root #
gpasswd -a user video
If direct rendering is enabled and the correct OpenGL implementation is selected, then this issue may be caused by app-eselect/eselect-opengl 1.3*.[2]. This issue has been fixed for users of the steam-launcher ebuild. Otherwise, run the following as a temporary workaround:
For ATI drivers:
user $
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib32/opengl/ati/lib" steam
For NVIDIA drivers:
user $
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib32/opengl/nvidia/lib" steam
If direct rendering is still not enabled, refer to the Steam Knowledge Base article on direct rendering for possible solutions.
Flatpak client
SSL errors
When installing the Flatpak version, certain items may show "Invalid SSL certificate" when trying to load (like News and Friends). This is caused by a bug in app-crypt/p11-kit. Make sure the version of app-crypt/p11-kit is equal to or greater 0.23.20. Unmask the needed version if required.
Steam systray icon is not visible
There is currently no solution[3]. Instead the "empty space" in the systray can be clicked to open Steam.
Vulkan breaks after nvidia-drivers update
After updating x11-drivers/nvidia-drivers, Proton and Vulkan-based games may fail to work (fallback to OpenGL). On a laptop with multiple GPUs, Proton/Vulkan games use the integrated GPU instead of the NVIDIA discrete GPU after updating x11-drivers/nvidia-drivers.
Other symptoms when starting Vulkan-based games:
Could not create Vulkan instance :
ERROR_EXTENSION_NOT_PRESENT
FATAL ERROR: vkCreateInstance failed with error (VK_ERROR_EXTENSION_NOT_PRESENT)
This issue[4] is likely due to a driver version mismatch. Flatpak applications run within a container (or "sandbox"), and the NVIDIA libraries within the container must match the drivers loaded and running on the Gentoo host.
To fix this, run
user $
flatpak update --app com.valvesoftware.Steam
to update the required runtime for om.valvesoftware.Steam
. Check if flatpak updates the org.freedesktop.Platform.GL[32].nvidia-VERSION-NUM
package to match the version number of x11-drivers/nvidia-drivers on the Gentoo host.
Friends list offline and store not rendering
When running Steam in the GNOME desktop environment the store (and special offers) no longer properly render; the friend's list is constantly in an offline state and status cannot be changed to online. When viewing Steam client debugging output, the following line is repeatably displayed:
./steamwebhelper: symbol lookup error: /usr/lib/gio/modules/libdconfsettings.so: undefined symbol: g_log_structured_standard
The issue is caused by Steam not properly setting the GSETTINGS_BACKEND environment variable, not setting the GIO_MODULE_DIR environment variable to its own GIO/modules path, and not shipping a newer version of glib library in its included runtime.
The workaround is to set the GSETTINGS_BACKEND environment variable to memory
when launching Steam[5][6]. This is best completed by editing the Exec
line in the steam.desktop file used to launch Steam:
/usr/share/applications/steam.desktop
<syntaxhighlight lang="ini">Exec=env GSETTINGS_BACKEND=memory /usr/bin/steam %U</syntaxhighlight>
Hardened Gentoo
It seems that the Steam binary has rwx
bits set, and needs to be PaX marked in order to work on a hardened system:
user $
paxctl-ng -m ~/.local/share/Steam/ubuntu12_32/steam
The binaries of most games should also be PaX marked:
user $
paxctl-ng -m ~/.local/share/Steam/steamapps/common/World\ of\ Goo/WorldOfGoo
user $
paxctl-ng -m ~/.local/share/Steam/steamapps/common/Uplink/uplink.bin.x86_64
user $
paxctl-ng -m ~/.local/share/Steam/steamapps/common/Team\ Fortress\ 2/hl2_linux
Failure to perform PaX marking will result in the game failing to run, with little information given. To check if a game needs to be PaX marked, run the game's startup script or binary file (found in ~/.local/share/Steam/steamapps or ~/.local/share/Steam/steamapps/common) under a debugger. This can be accomplished with some of Valve's provided startup scripts by setting the GAME_DEBUGGER environment variable to gdb
:
user $
env GAME_DEBUGGER=gdb ./hl2.sh
If a binary needs to be PaX marked, gdb should output something similar to:
warning: Cannot call inferior functions, Linux kernel PaX protection forbids return to non-executable pages!
and/or:
Cannot access memory at address 0x80486c6.
After an update in July 2013, Steam also needs a PaX marked /bin/bash when the OpenGL libraries require rwx
markings, otherwise games will fail to run from the Steam client[7]:
user $
sudo paxctl-ng -m /bin/bash
However, this results in Bash failing to run. It is also a security issue, and it is strongly recommended to try without PaX marking. If it works when using the proprietary NVIDIA drivers, please make a note of it on this page.
libGL fails to load driver
The Steam runtime overrides various system libraries, including libgcc, libstdc++, and libgpg-error with its own bundled versions[8]. This can result in Steam failing to start with the following error:
libGL error: unable to load driver: <driver_name>.so
To workaround this issue, locate the problematic library by starting Steam with libGL debugging enabled:
user $
LIBGL_DEBUG=verbose /usr/bin/steam
libGL: dlopen /usr/lib32/dri/i965_dri.so failed (/usr/lib32/libgcrypt.so.20: symbol gpgrt_lock_lock, version GPG_ERROR_1.0 not defined in file libgpg-error.so.0 with link time reference) libGL error: unable to load driver: i965_dri.so
Next, delete the problematic library from the Steam runtime to force the use of system library instead:
user $
find ~/.steam/root/ -name "libgpg-error.so*" -print
Repeat the above to discover other problematic libraries in the Steam runtime. The bundled libraries may reappear after every Steam update. In this case simply delete the libraries again from the Steam runtime.
If the above solution does not work, run the following as a temporary workaround:
For NVIDIA drivers:
user $
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib32/opengl/nvidia/lib" steam
libGL fails to load driver with AMDGPU
When using AMDGPU, Steam may fail to start with the following error:
libGL error: unable to load driver: radeonsi_dri.so libGL error: driver pointer missing libGL error: failed to load driver: radeonsi libGL error: unable to load driver: radeonsi_dri.so libGL error: driver pointer missing libGL error: failed to load driver: radeonsi libGL error: unable to load driver: swrast_dri.so libGL error: failed to load driver: swrast
To workaround this issue, disable the problematic libraries from the Steam runtime to force the use of system libraries instead[9]:
user $
mv ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1{,.disable}
user $
mv ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6{,.disable}
Tested with a Sapphire Radeon HD 7870 GPU on ~amd64 and
VIDEO_CARDS="amdgpu radeonsi"
in /etc/portage/make.conf.Memory corruption
If Steam starts with the following error:
*** glibc detected *** zenity: malloc(): memory corruption: 0x00000000016cf020 ***
Installing the x11-libs/libXi package should fix the issue.
root #
emerge --ask x11-libs/libXi
Missing fonts
If Steam is having issues with missing fonts, installing the media-fonts/font-bitstream-100dpi and media-fonts/corefonts packages may fix the issue.
root #
emerge --ask media-fonts/font-bitstream-100dpi media-fonts/corefonts
If the X server does not recognize the newly installed fonts, run the following:
user $
xset +fp /usr/share/fonts/100dpi
user $
xset +fp /usr/share/fonts/corefonts
user $
xset fp rehash
Reset the installation
To reset (i.e. wipe) the Steam installation, including installed games, and reinstall Steam without losing data:
user $
steam --reset
Reversed X cursor
If an X cursor theme has not been set by the desktop environment or window manager, Steam will override the default X cursor theme. This can result in a reversed X cursor from left to right. The issue can be fixed by setting an X cursor theme, if one is available, or by installing an X cursor theme:
root #
emerge --ask x11-themes/vanilla-dmz-xcursors
If the X cursor is still reversed, even after exiting Steam, run the following to fix the issue:
user $
xsetroot -cursor_name left_ptr
Segfault when remember my password is selected
Selecting the Remember my password
option at the Steam login dialog when Steam is running without D-Bus, will cause Steam to segfault the next time it is started[10]. This issue can be fixed by running the following:
user $
rm -fr ~/.local/share/Steam/config
Segfault when starting Steam
Steam segfaults when DBus is not accessible. Check that dbus service is runnning and that the DBUS_SESSION_BUS_ADDRESS
variable is set:
user $
echo $DBUS_SESSION_BUS_ADDRESS
dbus-J2zA6AVqHR,guid=e86f44f3b96c6c03f68d01a66029c172
This may happen when KDE is started from the command line and omit to use dbus-launch
.
If Steam fails to start with the following error:
munmap_chunk(): invalid pointer: 0xf75aca24 free(): invalid pointer: 0xffca16d0
Setting the locale to C
may fix the issue[11]:
user $
LANG=C steam
If Steam fails to start with the following error:
The futex facility returned an unexpected error code.
The kernel option CONFIG_COMPAT_32BIT_TIME needs to be activated.
Segfault when using apulse
Using Steam with media-sound/apulse while D-Bus is not running, will cause Steam to segfault with a Connection refused
message. This issue can be fixed by ensuring that D-Bus is running:
root #
rc-service dbus start
Taskbar button persists even when closed or minimized
Depending on the desktop environment being used, the Steam taskbar button may persist even when the Steam window is closed or minimized to the system tray[12]. To correct this behavior, force the Steam window to close instead of minimize:
user $
STEAM_FRAME_FORCE_CLOSE=1 steam
To set the STEAM_FRAME_FORCE_CLOSE environment variable permanently, add the following to the shell login initialization file:
~/.bash_profile
Setting a local environment variable with Bashexport STEAM_FRAME_FORCE_CLOSE=1
Log out and back in to have the changes take effect.
Steam hangs when installing a game
If clicking the Install button on a Steam game page causes the Steam client to hang with the following console output:
GameAction [AppID 255710, ActionID 1] : LaunchApp failed with AppError_18 with "" GameAction [AppID 255710, ActionID 1] : LaunchApp changed task to Failed with ""
It might be possible to fix this by running Steam with:
user $
STEAM_RUNTIME=1 STEAM_RUNTIME_PREFER_HOST_LIBRARIES=1 steam
Use system libraries
Steam bundles many libraries which are used instead of the system libraries. To force Steam to use the system libraries, disable the Steam runtime:
It is not recommended to disable the Steam runtime, as it can lead to numerous problems, including runtime and missing 32-bit libraries.
user $
STEAM_RUNTIME=0 steam
To set the STEAM_RUNTIME environment variable permanently, add the following to the shell login initialization file:
~/.bash_profile
Setting a local environment variable with Bashexport STEAM_RUNTIME=0
Log out and back in to have the changes take effect.
Windows games crash immediately on launch
If Windows-only games crash without even displaying a window, and the Steam log include a line that begins:
wine: Unhandled exception 0x20474343 in thread..
the cause might be that the system Mesa library (on which Steam depends) is not compiled with Vulkan support. Follow the instructions on the Vulkan page to rectify this.
xterm launches briefly and then closes
This issue is caused by the shell being set to something other than a POSIX compliant shell (i.e. fish). Change the shell to a POSIX compliant shell and accept the Steam license agreement. The shell can be set back afterwards.
System information can not be detected
Sometimes it may be useful to obtain system information, as explained here: https://steamcommunity.com/sharedfiles/filedetails/?id=390278662 . If the client is not able to detect the distribution in which it is running or any related information, install sys-apps/lsb-release.
root #
emerge --ask sys-apps/lsb-release
External resources
- https://github.com/ValveSoftware/Proton/wiki/Using-a-NTFS-disk-with-Linux-and-Windows - Official Valve instructions for using Proton to share games on an NTFS partition between Linux and Windows.
References
- ↑ Mark Browning. [WORKAROUND] Allow TF2 to run with legacy ATI drivers 12.6., Steam for Linux Steam Community, December 4th, 2012. Retrieved on May 30th, 2015.
- ↑ Michał Górny. steam-launcher likely broken with eselect-opengl-1.3*, Steam Overlay, January 2nd, 2015. Retrieved on May 27th, 2015.
- ↑ pyroxar. Missing icon when Steam update or install runtime while first run, Flatpak wrapper for Steam using Freedesktop Runtime, January 28th 2019. Retrieved on April 13th, 2020.
- ↑ Shished. Vulkan games stopped working after Arch update, March 22nd, 2020. Retrieved on September 2nd, 2020.
- ↑ leio. symbol lookup error: libdconfsettings.so, Steam Overlay, May 9th, 2019. Retrieved on October 24th, 2019.
- ↑ Leio. GNOME 3.30 for all init systems, Gentoo Forums, May 8th, 2019. Retrieved on October 24th, 2019.
- ↑ Alex Efros. Compatibility with PaX/GrSecurity, Steam for Linux, December 22nd, 2012. Retrieved on May 28th, 2015.
- ↑ jsa1983. Problem with libstdc++.so.6 bundled with steam-runtime 2014-04-15, Steam for Linux, April 26th, 2014. Retrieved on December 26th, 2015.
- ↑ itsnikolay. Problem with installing Steam on Ubuntu 15.04+, Ask Ubuntu, May 1st, 2015. Retrieved on September 19th, 2018.
- ↑ Shished. Steam segfaults when "remember my password" is checked, Steam for Linux, July 28th, 2014. Retrieved on May 25th, 2015.
- ↑ pnrao. Steam client not launching, Steam for Linux, March 6th, 2017. Retrieved on June 11th, 2017.
- ↑ Kevin Cox. Close to Tray, Steam for Linux, January 30th, 2013. Retrieved on May 27th, 2015.