Andy Reitz (blog)

 

 

Aww, crap

| Comments

As I tweeted earlier, I was really excited to download the Palm webOS SDK today. Unfortunately, Palm states that the webOS Emulator (part of the SDK) requires Sun's VirtualBox, which I have no desire to install on my machine. The last time I played with VirtualBox, it caused kernel panics on my Mac Pro at work. Plus, I already have VMware Fusion installed -- and the thought of having two different virtualization options installed on my machine just seems like a bad idea.

But I installed the SDK anyway, and sure enough, I was greeted with this error when I tried to run the emulator:

webOS SDK error
webOS SDK error when you don't have VirtualBox installed

Poking around inside of the .app directory, I found these files:

webOS Emulator files
webOS Emulator files

As it turns out, the "palm-emulator" binary is actually just a bash script. Taking a look, all it does is marshalls up a bunch of Java class files, and then launches the JVM on the following class: com.palm.webos.emulator.ui.PalmEmulator. Taking a peek in that JAR file, I see a bunch of class files, including:

intension:/Applications/Palm Emulator.app/Contents/Resources/Jars$ unzip -l Emulator.jar 
Archive:  Emulator.jar
  Length     Date   Time    Name
 --------    ----   ----    ----
       78  07-13-09 16:16   META-INF/MANIFEST.MF
....
      485  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxSyntaxError.class
     1852  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxInstallation.class
      595  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader$Bios.class
      607  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader$Hardware.class
      552  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader$Logo.class
      620  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader$Machine.class
      646  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader$VBoxMachineConfig.class
     7313  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxConfigFileReader.class
     9419  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxVM.class
     3946  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxSystem.class
     2786  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxErrorResult.class
      594  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxException.class
      494  07-10-09 04:37   com/palm/webos/emulator/vbox/VBoxParseException.class
    17317  07-12-09 01:56   com/palm/webos/emulator/vbox/VBoxManage.class
....

So, it looks like the webOS Emulator hooks into the guts of VirtualBox with some Java code, probably to accomplish loading of the VM (from the "nova-cust-image-sdk62.vmdk" file), and probably to put some custom chrome around the VirtualBox environment.

In laymans terms, this means it's probably pretty-much impossible to make the webOS SDK work with VMware Fusion, as I had hoped. So now, I have to figure out if I'm going to install VirtualBox or not. Well, that's not true -- I really want to play with the webOS SDK, so I'm going to have to install VirtualBox. So the real question at this point, is where am I going to install VirtualBox. I sure wish I had a spare machine...

-Andy.

Update: Looks like running VirtualBox and VMware Fusion together is a bad idea. I guess I'll be installing 32-bit Linux on my Mac this weekend...