Steam

Download for openSUSE Vendor: Valve Software

Developer: Valve Software

License: Steam EULA

Web: http://steampowered.com



About

Steam is a software distribution service.

Features

online games store

automatic updates

in-game achievements

synchronized savegame and screenshot functionality

view friends playing

instant messenger

Installation

Warning: Steam is a closed source application whose Steam is a closed source application whose runtime relies on a 2012 Ubuntu release for binary compatibility. This may cause issues with the openSUSE:Tumbleweed rolling release, but the maintainers do their best to keep Steam working well on openSUSE.

The latest version of Steam can be installed from the Build Service using this link. If you experience missing dependencies please contribute them to the steam.spec file by branching the steam package in the Games:Tools repository.

Frequently asked questions

Is Steam free?

Yes, Valve Software allows the installation of their Freeware Steam client via their EULA what they call a "limited installation license" without any charges.

If you buy games on the Steam store you are bound to their Subscriber Agreement. Technically you don't own the games you buy, but rent them for an unlimited amount of time. That means they are bound to your account, you can install them wherever and whenever you want, but can't sell them. The DRM will also require an internet connection to activate them for the first time. Some games even need a continuous internet connection.

Freeware games like Team Fortress 2 are marketed as "free-to-play". They get monetized via in-game purchases of additional inventory items.

How will I know if this game runs on Linux?

The Valve store has a Linux section: http://store.steampowered.com/browse/linux/ They also add a Tux penguin icon to Linux compatible games.

In addition to games that are native to Linux, it is also possible to run some games that are not native to Linux through Steam Play.

How well do games run on Linux?

Valve's Games on Steam are native ports. They will run a lot faster and smoother than the experience with Wine workarounds (see the section below for more information about Steam on Wine). Valve also claimed that the lack of DirectX overhead also increased performance.[1] If you spawn an additional XServer to run OpenGL games it will boost your FPS even more because the Desktop Environment and composition effects won't slow you down. If you are running KDE hit ALT+SHIFT+F12 to temporarily disable the KWin compositor. This will enhance video performance especially when you run OpenGL games in windowed mode.

Steam-Controller

The Steam Controller is a gamepad sold by Valve and can be used also on Linux.

Installation

Warning: If the controller does not work in wireless mode please check if it works with the steam and steam-devices packages from the Games-Repository as they are often more up-to-date.

You will need the latest version of Steam installed, after that the steam-devices package should be automatically installed. Make sure the users which should have access to the steam controller are in the games group. After the installation you might need to log-out and relogin.

Steam Play

The goal of Steam Play is to make games that are not native to Linux run as well as they do on Windows. Some games even get the benefit of better controller support through Steam Play than they would have running on Windows. Steam Play uses a customized version of Wine called Proton to launch games. This does not require the user to install Wine on their PC.

Steam Play has a relatively small list of whitelisted games, but only games which have been verified to run as well as they do on Windows will be whitelisted. More games are also being added to the whitelist as bug fixes are made and more testing is done.

Steam Play also has the option to play non-whitelisted games, but these games are more prone to having either minor issues or not working at all on Linux. ProtonDB is a fan made website which allows users to see how well games work with Steam Play. Users can also submit reports for games they have tested to rate how well the game works with Steam Play.

To get logs, set launch options to PROTON_LOG=1 %command%, after starting the game it will create a log file in your $HOME. Also, check issues on GitHub for help about specific games.

For AMD GPU users, since proton requires libvulkan_radeon-32bit but it doesn't installed by default, you need to manually install it.

Steam in Wine

This procedure was tested on Wine 1.7.2





Warning: Running Steam through Running Steam through Wine should no longer be necessary to run Windows games on Linux. Steam Play is much easier to use and works better for most games. Also, beware that this method does not mean you can play all Windows games on Linux. It simply allows you to launch the games from Steam. The actual compatibility of a game with Wine is a completely separate issue and users are advised to check the AppDB for specific information for each game.

Installation

Install Wine on your system to use this method. You can run Steam from the systems version of Wine or use a program like Play On Linux (POL) to help you install and use it. If you use POL then please disregard the rest of this guide and instead follow the general procedure of installing an application with POL.

First, download the windows version of steam and cd to the directory.

$ cd /path/to/download

It is important that this be done using a terminal emulator like Konsole so that if there are any errors, they can be kept track of using the output Steam will give. When the installer is done downloading, run the following command:

$ wine SteamSetup.exe

This should begin the Steam installer which will then prompt you for information regarding your language and install directory. Once that is done, you should uncheck start steam and end the installer.

Now you can simply find steam in your application launcher and run it as if it were any other program!

Bugs with Wine

Steam has no text

This is a known issue with dwrite.dll and can by bypassed using two methods.

The first method is quite simple, you edit the launcher for Steam and add -no-dwrite to the end of it.

The second method is more global, as the problem with the above method is that it does not apply to all steam launchers and is instead limited to the launcher itself. To apply this to all launchers on your system, you must edit the wine configuration for your system. Doing this is pretty easy and it should fix all missing text problems.

Begin by opening the Wine configuration program (winecfg) and in the Applications tab, select the Add application button. Navigate to where the Steam.exe file is (usually in the Program Files/Steam folder) and select it.

Now click the Libraries tab and in the New override for library menu and select dwrite. Then click the Add button, and making sure that dwrite is selected, click the edit button. In the popup, select disable hit OK and then OK again on the Wine Configuration window. Steam should now be able to run from any launcher and still display text.

SteamCMD

SteamCMD is a command line alternative for servers and users who don't want a graphical client. See the official documentation for more information.

Flatpak

Flatpak may also be used to install Steam. The Flatpak package manager itself needs to be installed with ZYpp, such with the command (launched as administrator):

sudo zypper install flatpak

after this, if one wishes to install Steam as user (as opposed to as root) run:

flatpak install --user --from https://flathub.org/repo/appstream/com.valvesoftware.Steam.flatpakref

or, alternatively if one wishes to install Steam system-wide run:

sudo flatpak install --from https://flathub.org/repo/appstream/com.valvesoftware.Steam.flatpakref

or run this command without sudo as root. A desktop launcher should appear in application menus, if not relogin and it should happen. If one wishes to launch Steam from the command-line run:

flatpak run com.valvesoftware.Steam

Troubleshooting

Error starting Steam installer (OpenSuse Leap 15)

After installing the Steam installer, there is an error: symbol lookup error: /usr/lib/i386-linux-gnu/libxcb-dri3.so.0: undefined symbol: xcb_send_request_with_fds

See: https://github.com/ValveSoftware/steam-for-linux/issues/5249

Workaround presented in ticket works, just start steam this way:

$ LIBGL_DRI3_DISABLE=1 steam

Games not connecting to servers (OpenSuse Leap 42.3)

With OpenSuse Leap 42.3 there is a problem with different certificates paths (between OpenSuse and Ubuntu 12). This should be corrected with:

# ln -s /var/lib/ca-certificates/ca-bundle.pem /etc/ssl/certs/ca-certificates.crt

After this, games like Rocket League and Rust work ok and connect to servers.

If OpenSuse Leap 42.2 Steam stopped working after Steam client updates of June 2017, launch steam with command

$ STEAM_RUNTIME_PREFER_HOST_LIBRARIES=0 steam

Source: https://forums.opensuse.org/showthread.php/525175-After-Steam-update-the-games-is-not-launching

AMD graphical chip set and no game play

Some users report that with Free radeon installed for AMD graphical chip-set, there is no game play at all: games won't start after selecting and clicking them. To possibly solve this search and install the appropriate AMD proprietary driver for your card with one-click: SDB:Radeon

AMD radeonsi_dri.so opensource driver

If steam doesn't load and complains about missing radeonsi_dri.so.

Run steam with :

/usr/bin/steam %U

Loading Steam without local runtime to avoid crash or game play without sound

Some users report that newer updates of the Steam client temporarily require starting with the following command to avoid a crash. Also users report missing sound in video-clips and games. Try to load Steam without local runtime to solve this:

$ STEAM_RUNTIME=0 steam

Loading Steam without local runtime means loading without the pre-bundled libraries that Steam delivers within the package. These could be older versions, with bugs resolved in newer versions, already installed on your system. Steam will attempt to use the ones installed on your system, when started with this option.

Failure to start Steam, when trying to load Steam without local runtime

This could be due to missing 32 bit libraries, for example on 64 bit systems. Go to directory ~/.local/share/Steam/ubuntu12_32 and investigate missing libraries by executing the commands below:

$ cd ~/.local/share/Steam/ubuntu12_32

$ LD_LIBRARY_PATH=".:${LD_LIBRARY_PATH}" ldd $(file *|sed '/ELF/!d;s/:.*//g')|grep 'not found'|sort|uniq

(source: https://wiki.archlinux.org/index.php/Steam#Using_native_runtime_.3D) Example output:

libdbus-glib-1.so.2 => not found libnm-glib.so.4 => not found libnm-util.so.2 => not found

or

$ LD_PRELOAD=/usr/lib32/libudev.so.1 STEAM_RUNTIME=0 steam

(source: https://wiki.archlinux.org/index.php/Steam/Troubleshooting) Example output:



you are missing the following 32-bit libraries, and Steam may not run: libXtst.so.6 libva.so.1 libvdpau.so.1 libva.so.1 libva-x11.so.1

Find these missing dependencies with YasT - Software management, select "RPM delivers", search for the missing files and install the 32bit versions.

for example, you use:

$ sudo zypper in libvdpau_radeonsi-32bit (for radeon cards) libXtst6-32bit libvdpau_va_gl1-32bit libva-glx2-32bit

If you still experience this problem when you have 32-bit libs installed, make sure your user is part of the video, games, audio and cd groups. This can be done with YaST -> User and Group Management -> Edit and then select the Details tab.

Ensure user is part of the correct groups

Game crashes even with STEAM_RUNTIME=0

If you are encountering an issue where your games seem to crash at launch and you cannot figure out what is wrong try to see what output you get from the following two commands

/path/to/executable

gdb /path/to/executable (at the prompt, type) run

In my case I was getting the following error "terminate called after throwing an instance of 'CFileException'". The solution was to put it on an ext4 parition and then attempt to run the game.

Please also see https://wiki.archlinux.org/index.php/Steam#Some_games_fail_to_start

No Sound

I have had no sound with my steam games until I ran the following commands:

rm -fv /var/lib/dbus/machine-id ln -sv /etc/machine-id /var/lib/dbus/machine-id

I found this information here. It says to only create the link if the file does not exist. It did exist for me, but replacing it with a symlink fixed my sound issue. Only do this if you feel confident, I cant guarantee it wont break something.

Some games may attempt to communicate with alsa directly, rather than going through pulse audio. This can be fixed by installing alsa-plugins-pulse.