Cleanly Installing Steam for Linux Beta on 64-bit Debian

Cleanly installing on Debian Sid (or Wheezy)
If you wish to install the client on a Debian system without polluting it with Ubuntu packages and/or other external dependencies, here’s a quick HOWTO.

1. Make sure your apt-get understands multiarch if you’re on amd64

2. Install i386 packages that are available in Debian

apt-get install libgl1-mesa-glx:i386 libgl1-mesa-dri:i386 libcurl3-gnutls:i386 libogg0:i386 libpixman-1-0:i386 libsdl1.2debian:i386 libtheora0:i386 libvorbis0a:i386 libvorbisenc2:i386 libvorbisfile3:i386 libasound2:i386 libc6:i386 libcairo2:i386 libcups2:i386 libdbus-1-3:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgcrypt11:i386 libgdk-pixbuf2.0-0:i386 libglib2.0-0:i386 libgtk2.0-0:i386 libnspr4:i386 libnss3:i386 libopenal1:i386 libpango1.0-0:i386 libpng12-0:i386 libpulse0:i386 libstdc++6:i386 libx11-6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxrandr2:i386 libxrender1:i386 zlib1g:i386

If you are using an NVidia card with the proprietary drivers (I didn’t need this):

apt-get install libgl1-nvidia-glx:i386

3. Choose a directory for Steam, such as /opt/steam

mkdir /opt/steam
cd /opt/steam

4. Download Steam and Ubuntu packages

wget http://media.steampowered.com/client/installer/steam.deb
M=http://ubuntu.wikimedia.org/ubuntu/pool
wget "${M}/main/libj/libjpeg-turbo/libjpeg-turbo8_1.2.1-0ubuntu2_i386.deb"
wget "${M}/main/e/eglibc/libc6_2.15-0ubuntu20_i386.deb"
wget "${M}/universe/j/jockey/jockey-common_0.9.7-0ubuntu11_all.deb"

5. Extract everything in /opt/steam

dpkg -x libjpeg-turbo8_1.2.1-0ubuntu2_i386.deb /opt/steam
dpkg -x libc6_2.15-0ubuntu20_i386.deb /opt/steam
dpkg -x jockey-common_0.9.7-0ubuntu11_all.deb /opt/steam
dpkg -x steam.deb /opt/steam

6. Fix the steam script so that it understands $STEAMLIBS

sed -i 's@/usr/lib@$STEAMLIBS@' /opt/steam/usr/bin/steam

7. Create a custom launch script with the following contents and put it anywhere:

#!/bin/sh
BASE="/opt/steam"
export STEAMLIBS="${BASE}/usr/lib"
export LD_LIBRARY_PATH="${BASE}/lib/i386-linux-gnu:${BASE}/usr/lib/i386-linux-gnu"
export LC_ALL="C"
exec "${BASE}/usr/bin/steam" "$@"

Use chmod ugo+x filename.sh to make the script executable

8. Run

9. Fixing the cursor theme

Steam overwrites the X11 Cursor theme when it launches. This is a problem with Gnome and other WMs/DMs that do not set a cursor theme. You can overcome this for Gnome by setting a mouse cursor theme.

To fix this issue, become root and put the following into /usr/share/icons/default/index.theme (creating the directory /usr/share/icons/default if necessary):

[Icon Theme]
Inherits=Adwaita
Note: Instead of “Adwaita”, you can choose another cursor theme (e.g. Human).

Alternatively, you can create a symlink ~/.icons/default that points to the entry for your cursor in /usr/share/icons, for example:

mkdir -p ~/.icons
ln -sT /usr/share/icons/Neutral_Plus ~/.icons/default

If the cursor gets stuck pointing in the wrong direction after exiting Steam, a workaround is to run
xsetroot -cursor_name left_ptr

Credit to Sam Hocevar for steps 1 thru 8 and credit to the ArchWiki for step 9

Reverse Scrolling In Debian Wheezy

This works in Debian Wheezy to reverse the scroll direction (aka Natural Scrolling):

echo "pointer = 1 2 3 5 4 7 6 8 9 10 11 12" > ~/.Xmodmap && xmodmap ~/.Xmodmap

No reboot required. Reverting is as easy as running the command above again, but swapping the 5 with the 4 and the 7 with the 6.

Credit to Andy C’s Weblog