Four Skypes in one box… and many blogs and comments

March 08, 2007

I didn’t really expect this little trick to gain the sort of traction that it has seen by now. I just thought it was a funny little thing to do and maybe some people would take notice. But by now, it has been featured on no less than The Unofficial Apple Weblog and many other sites, plus of course all the comments that I’m getting on Flickr and elsewhere. If anything, it’s surely a big thumbs up to virtualization. And as wolli notes, it is much more than just a way of killing time, and it has many practical applications. For example, all the mobile versions of things, both Skype and otherwise, are developed and tested mostly in virtual machines, and only the final full tests are run on actual devices. It is much more easy and practical to run things in your full computer than install a new build in the (much slower) actual device and mess around with the much more clunkier UI (which of course is necessary when testing the usability side of things, but not so much when you’re just experimenting with the technology).

I had some other ideas that I couldn’t get done this time. It actually didn’t take too much time, contrary to what some people suggest, because I’m running the Windows virtual machine most of the time anyway for some work apps, and installing the Linux one was just a matter of downloading the Kubuntu ISO image and running the installer. Everything that I did is out-of-the-box and you can easily recreate this if you have access to Mac OS X and Parallels.

So another esoteric thing that I thought of was to run Skype for Linux on Mac OS X natively. It’s a UNIX-based system, so the needed libraries and things should be there, right? Turns out you cannot do this because of binary format incompatibility. OS X uses Mach-O, while Linux uses ELF. And I tried to search around, but looks like no one has accomplished running ELF-s natively on OS X, and my expertise doesn’t go to such low level that I would know if it’s even possible with some patch or library overloading or something like that. But the Linux folks told me that at some point they will actually do a native OS X build of Linux Skype (which is actually based on Qt which should work fine in OS X) so we can see how that works.

Someone in the TUAW post comments said…

instead of having a full KDE desktop, he should have been forwarding X using Apple’s X11 app (over SSH probably wouldn’t be necessary).

I’m not really sure what that means and what to/from where should I be forwarding… can I run the program in Linux and then somehow forward the UI to OS X desktop? I don’t have too much time to dig for the instructions myself, but if someone pointed me to some place that shed some more light on what this means and how to do it, I’d perhaps try it out.