Steam

From Funtoo
Jump to navigation Jump to search


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

Install

In order to install Steam, we must first install app-portage/layman.

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

root # layman -a gamerlay
root # layman -S

Ok, now we can install steam by running:

root # emerge steam-launcher

install part 2

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:

root # /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.

root # emerge liberation-fonts
root # 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.

user $ mkdir -p ~/backup
user $ mv ~/.local/share/Steam/steamapps ~/backup
user $ steam --reset
user $ 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!

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

OpenGL GLX context is not using direct rendering

This can happen when the latest version of mesa drivers use glibc, but steam still looks for libstdc++ and libgcc_s. Those come from GCC; not glibc[1].

To make sure that steam does not look for libstdc++ and libgcc_s, they may be removed[2]:

root # 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

root # 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

References

[1]: archtum. archtum comments on Games Run, But Not From Steam, GNU/Linux Gaming on Reddit, February 17th, 2015. Retrieved July 14th, 2015.

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