So you can download Steam for Linux now!. Or at least Ubuntu. The 1.0.0.22-version package needs a bit of tweaking to make it installable on Debian. There's a good writeup of some of the issues in this blog post (more recent packages seem to have much more simple dependencies). I run amd64 with multiarch enabled for i386. I chose to update my libc to the version in experimental rather than embed a newer version in a private steam directory. The remaining issues are mostly package version differences between Ubuntu (who seem to be very epoch-happy, I guess they've made a lot more packaging mistakes) and Debian.

I wrote the following script to do the work. It takes two arguments: the original steam .deb and then the output filename to write a modified .deb to. Feel free to try it.

#!/bin/sh set -u set -e [ $# -eq 2 ] || { echo "$0 <in-deb> <out-deb>" >&2; exit 1; } wd=$(mktemp -td $0.XXXXXX) trap "rm -r '$wd'" INT QUIT EXIT dpkg-deb -x "$1" "$wd/steam" dpkg-deb -e "$1" "$wd/steam/DEBIAN" sed -i -e 's/\(libpulse0 (>= \)1:/\1/' -e '# remove ubuntu epoch' \ -e 's/^\(Version:.*\)$/\1+jmtd/' \ -e 's/xterm | gnome-terminal,//' -e '# seems to be an apt bug here' \ -e 's/\(multiarch-support (>= 2.15\)[^)]*/\1/' -e '# remove ubuntu epoch' \ "$wd/steam/DEBIAN/control" mv "$wd/steam/usr/bin/steamdeps" "$wd/steam/usr/bin/steamdeps.orig" ln -s "/bin/true" "$wd/steam/usr/bin/steamdeps" fakeroot dpkg-deb -b "$wd/steam" "$2"