How to install skype on debian wheezy with x86-64 / amd64 machine

I have been trying to install skype on my debian wheezy installation on amd64 a.k.a. x86-64 bit machine. It has taken several days of my productive time just to install skype just because the skype version available for download on Linux Debian is an i386 package and due to dependencies issues, it fails to install. Even though the download page says that the package is for multiarch but actually it is a i386 based package. I have tried installing other .deb packages available on skype.com but still it does not configure the skype. dpkg reports that it is leaving the package unconfigured and suggests that you should run:

sudo apt-get install -f

But that also does not help as it simply uninstalls skype. I have tried the instructions as listed here http://wiki.debian.org/skype but that simply does not help.

Finally the options that I was left with was:

  1. Upgrade my whole system to sid (which at the time of writing is quite unstable, whicih usually is the case after a release).
  2. Make my system dual boot with sid and the other as wheezy so that I have at least one OS running even if sid breaks.
  3. The last option was to install sid in a chroot and run skype from within chroot.

Even though the last option seems inelegant but that is the best unless you want to live on the edge.

To setup a sid chroot one can use debootstrap which makes it easier to setup chroot and follow the instructions listed here:

http://wiki.debian.org/Debootstrap

Once that is done, you can also install schroot package which makes it easier to run chroot. Once I did that, I was still unable to run skype because the xserver would not allow connection to the chrooted system so that the gui for skype shows.

To be able to run skype, you first need to allow xserver to let a client connect. To do so simply run the following on the main system:

xhost +

Viola! Now the gui for skype shows up but wait … the sound card still does not work.

For it make sure you have libpulse installed. If it is not installed, install it using:

apt-get install libpulse0:i386

The other thing that you need to do is configure alsa.

. Configure alsa in the chroot to use pulse by default by creating/editing /etc/asound.conf. Put the following in the file asound.conf:

pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

The other thing that you might need to do is copy the file /var/lib/dbus/machine-id from host to chrooted system.

Once you do these steps run skype again and it should now have sound working on skype. This last part is based on the following post:

http://blog.einval.com/debian/misc/pulseaudio_chroot.comments

Hopefully once you have this, the skype should be running on your debian installation 🙂

Advertisements