Uncategorized —

Joost on Linux: it’s difficult, but possible

Although a native Joost client hasn't been released yet for the Linux platform …

Joost, the compelling new on-demand P2P video service from the creators of Skype, has attracted considerable attention since the launch of its closed beta program. Last week, we offered 10,000 of our readers the opportunity to join in on the fun. I grabbed an invite myself so that I could put Joost to the test on the open-source Linux platform.

Unfortunately, the Joost client application is currently only natively supported on Windows and Mac OS X. This is a bit ironic, since the program itself heavily utilizes Mozilla's open-source cross-platform XulRunner runtime and many other open-source components. As usual, the open-source community has found some creative ways to make it work in the absence of official support. Instructions are now available in various places describing how to make Joost run on Ubuntu Linux with Wine, a Windows binary runtime layer for Linux.

Although Wine doesn't support Joost right out of the box, developers have produced a few patches that make it work. In order to apply those patches, users will have to compile Wine from scratch, which is a relatively arduous process. You can also find some unsupported packages with modified versions of Wine in various places, but it's generally not a good idea to use unsupported packages from an untrusted source. Instructions for patching, compiling, installing and configuring Wine for Joost can be found in the Ubuntu forums. Instructions are also available for a few other distributions as well.

There are several problems that users could potentially encounter along the way. Even after compiling and installing a patched version of Wine, I still wasn't able to make it work entirely. First, I got an error message telling me that Joost requires Windows XP. This problem can easily be fixed by changing the Windows Version value to Windows XP on the Applications tab of the winecfg utility. After I changed that, Joost would start and properly display its splash screen, but when the login interface showed up, the fonts were completely unreadable. This happens when default Windows fonts are not available. To resolve this problem, you have to install the default fonts from Windows, either by copying them from a Windows partition or by installing the msttcorefonts package on Ubuntu. Next, I got an error message claiming that my audio card couldn't be found. The instructions in the Ubuntu forum explain that you can resolve this problem by enabling the OSS driver and setting the Hardware Acceleration option to Emulation on the Audio tab of the winecfg utility.

After experimenting with a few other suggestions listed in the Troubleshooting section of the instructions in the Ubuntu forum, I got to the point where Joost would run in Wine, but with audio only. Video never appeared, and I just got a blank screen. This is apparently the result of a problem with Nvidia's proprietary graphics drivers. Some users have been able to get Joost working with complete audio and video support by by installing the latest release of the Nivida drivers. That's the point at which I gave up. I experimented with manually installing Nvidia drivers last year when I was working with Beryl, and after a few very nasty Xorg crashes, I decided that I would only use Ubuntu's packaged drivers in the future. Despite my reluctance, others are succeeding. A colleague of mine who already had Nvidia's beta drivers installed managed to get Joost running after doing the Wine patch. I got to see it in action on his computer, and even though he could only get it to run at 800x600, it still seemed to work pretty well. Some users who have gotten it to work are saying that it maxes out their CPU and that playback stutters a bit, but it isn't clear how widespread that problem is yet. According to a poll in the Ubuntu forums, about half of the people who have attempted to get Joost running in Wine have succeeded.

I also tried to get it to work in a Windows XP installation hosted in VMware, but didn't have much luck. Joost uses Direct3D, which isn't really officially supported in VMware yet. There is a simple hack that users can do to get accelerated 3D to work in VMware, but it's still very experimental. When I modified my Windows XP VMX file to enable 3D acceleration and then tried to run Joost, my whole screen turned black, and I had to hit the reset button on my computer. Needless to say, I don't recommend trying Joost in VMware.

Although the methods that people are using right now to get Joost working on Linux are very hackish, one should keep in mind that the Joost developers plan to officially release and support a native Linux build at some point in the future. Until then, Linux enthusiasts will likely continue working to simplify and document the process of getting the Windows version of Joost to run in Wine.