1 Mar 2009 twisti   » (Master)

Skype on Solaris

[It almost took me a full day to get it working, so I will write down what I have done to get there.]

Actually I wanted to use Ekiga, but it does not work very well in OpenSolaris and not many "normal" (reads: non-geek) people use such clients.  And I wanted to reach some of my "normal" friends, which almost all are using Windows and most possibly Skype.

Maybe there will be a native OpenSolaris port of Skype someday, but for now we have to go different ways.

You can use the "seamless mode" from VirtualBox to run Skype on Windows.  Feature-wise this is probably the best solution, but you need to install Windows (not an option for me).  And I'm not 100% sure that sound will work in VirtualBox as it always complained about problems opening some PCM devices.

Instead of using Windows  you could use Ubuntu to run Skype and there is the possibility of transferring the install into a BrandZ Linux zone.  And that's what I wanted to do.

First of all I tried the CentOS 3 image from here, but it's too old to run a recent Skype and it is really hard to find older versions on the web (well, I found one but I couldn't get it working).

Then I tried to install Ubuntu 8.04 and CentOS 5 in VirtualBox, but both was so slow that I canceled that and searched for CentOS image tar's instead.  Fortunately I found this site where you can download CentOS 4 and 5 images as tar files.

So I installed CentOS 5 in a zone and that worked perfectly.  But when I wanted to start Skype I got this error.  Seems like it's a known problem and not related to zones.

Then CentOS 4... yeah... GCC C++ ABI problems.  Skype wants 3.4.4, but CentOS only has 3.4.3.

So... what else is left?  Debian.  And I wanted to get it running in a zone...

I downloaded a businesscard install image, because it's the smallest one (32M), and installed the smallest possible system in VirtualBox.  That install was actually very fast.  Then got Skype for Debian, scp'ed it into the VirtualBox, installed all required packages (don't forget xbase-clients for SSH X11 forwarding), tar'ed up the whole root filesystem, scp'ed the image back to the native system and installed it into a zone.  The zone install does not work out-of-the-box, obviously Debian is not RHEL or CentOS, so I hacked it a bit.

Execute the following commands in VirtualBox before you tar up the whole filesystem:

$ mkdir /etc/sysconfig
$ mkdir /etc/rc.d
$ touch /etc/rc.d/rc.sysinit

and the zone install will be successful.

[I have to add here that the Debian zone does not boot properly (try zlogin -C), so it would be better to get it working in CentOS 5, but that doesn't really matter.  Log into the zone with zlogin and start the SSH daemon.]

Then I logged into the zone via SSH (only root works, as can be read here too) and started Skype...

WOOHOO!

It came up and signed in successfully!  Chat worked, calls didn't.

This is because BrandZ only maps OSS and the Skype Debian version uses ALSA. But hey, that last hurdle must be cleared too, right?

So, simply download the static OSS version of Skype and use that one...

Voila!  Skype calls on OpenSolaris!

Easy, wasn't it?

Syndicated 2009-03-01 18:19:47 (Updated 2009-03-02 02:19:47) from twisti's weblog

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!