Steam

Steam is a content delivery system available for GNU/Linux gaming.

Install

In order to install Steam, we must first install Package:Layman.

Once layman is installed and synced, we must add the gamerlay repository:

# layman -a gamerlay
# layman -S
Ok, now we can install steam by running:

# emerge steam-launcher

install part 2

Make sure your user is in the 'games' group by typing:

# groups youruser

If not add your user to the 'games' group by typing:

# usermod -a -G games youruser

Steam has its own internal package management system. Portage will not track its files, or games installed. the ebuild simply pulls in the steam installer, to run the steam installer:

# /usr/games/bin/steam

The installer will prompt you with several questions, once done running the installer command will load the latest version of steam.

Troubleshooting

Text is corrupt or missing

Steam makes heavy usage of the Arial font. A decent Arial font to use is ttf-liberation.

# emerge liberation-fonts
# eselect fontconfig enable 60-liberation.conf

Steam segfaults after 2nd start!

I do not know much about this behaviour, but I found a workaround. If you saved your password, you need to backup all your games and reset Steam.

$ mkdir -p ~/backup
$ mv ~/.local/share/Steam/steamapps ~/backup
$ steam --reset
$ mv ~/backup ~/.local/share/Steam/steamapps

Start Steam again, enter username and password, but do not check "Remember my password", it is the thing that causes all the troubles. You will need to enter password every time you start Steam.

My screen in Dota 2 (and other Source games) is all red!

# echo 'media-libs/libtxc_dxtn abi_x86_32' >> /etc/portage/package.use
# emerge media-libs/libtxc_dxtn

OpenGL GLX context is not using direct rendering

This can happen when the latest version of mesa drivers conflict with steam's bundled libstdc++ libraries[1], especially when open source video card drivers are installed.

So that steam does not use its bundled libstdc++ libraries, they may be removed[2]:

# rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/installed/libstdc++6-4.6-pic_4.6.3-1ubuntu5+srt4_amd64 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/installed/libstdc++6-4.6-pic_4.6.3-1ubuntu5+srt4_amd64.md5 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/installed/libstdc++6_4.8.1-2ubuntu1~12.04+steamrt2+srt1_amd64 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/installed/libstdc++6_4.8.1-2ubuntu1~12.04+steamrt2+srt1_amd64.md5 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++_pic.a && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/gcc/x86_64-linux-gnu/4.6/libstdc++_pic.map && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++.so.6 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.18 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/share/doc/libstdc++6 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/usr/share/doc/libstdc++6-4.6-pic && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/installed/libstdc++6-4.6-pic_4.6.3-1ubuntu5+srt4_i386 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/installed/libstdc++6-4.6-pic_4.6.3-1ubuntu5+srt4_i386.md5 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/installed/libstdc++6_4.8.1-2ubuntu1~12.04+steamrt2+srt1_i386 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/installed/libstdc++6_4.8.1-2ubuntu1~12.04+steamrt2+srt1_i386.md5 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/gcc/i686-linux-gnu/4.6/libstdc++_pic.a && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/gcc/i686-linux-gnu/4.6/libstdc++_pic.map && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu/libstdc++.so.6.0.18 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/share/doc/libstdc++6 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/usr/share/doc/libstdc++6-4.6-pic && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime.old/i386/usr/share/doc/libstdc++6

and

# rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu/libgcc_s.so.1 && rm ~/.local/share/Steam/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu/libgcc_s.so.1

Removal

To remove steam, and content in case of corruption:

$ rm -rf .local/share/Steam
$ rm -rf .Steam

References

[1]: higuita, Ev1l0rd. Problem with installing Steam on Ubuntu 15.04 - Ask Ubuntu, Ask Ubuntu, April 26th, 2015. Retrieved December 29th, 2015.

[2]: altiris. [SOLVED] Steam won't open, libGL errors, Arch Linux Forums, February 18, 2015. Retrieved July 14th, 2015.