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 when you don't have VirtualBox installed
Poking around inside of the .app directory, I found these 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...