WebOS 2.1 - Give It a Spin with Emulation Through the WebOS SDK!
It seems like only yesterday that Palm announced its brand new Linux-based WebOS and Palm Pre, ready to shake up the world with awesomeness and Linux in a little package. They matched that announcement up with a nifty little SDK that emulated the entire OS in VirtualBox, and was released as a .deb package for Ubuntu. Someone even posted a HOWTO on the Linux Journal web site about it!
Wait... that wasn't yesterday? It was over two years ago?
Palm has since been sold to HP, you say?
Oh, excuse me. Sorry about that. It seems that the only constant in this world is change.
The last two years haven't exactly been rainbows and sunshine for the WebOS, economically speaking, but the HP acquisition of Palm appears to have given the WebOS project a breath of fresh air. They've announced a new version- WebOS 2.1, which includes native support for node.js, and some other cool developer features, such as "Exhibition Mode". Léo Apotheker, HP's new CEO, claims that their goals for WebOS are to be sold on 100 million devices a year and be included in every HP PC by 2012. Those are ambitious goals, so wouldn't it be nice to get to kick the tires of the OS that will be prevalent in (HP) tablets, smart phones, PCs, and printers soon?
Guess what? You're in luck. An emulated version of WebOS is available in the WebOS 2.1 SDK. The SDK still runs by using the VirtualBox emulator and allows you to kick the tires of the newest version of the OS, allowing you to see if it's truly ready for prime-time.
Interested? OK, let's do this.
(This HOWTO assumes that you have a Linux system that can install Ubuntu .deb packages. If you would like something other than .deb files to be available for Linux installs, I'd suggest contacting Palm at firstname.lastname@example.org to request them to release other versions, either now, or in the future. Currently, the .deb package appears to be the only officially distributed version.)
Step 2: If you have VirtualBox (3.2) and Java installed, skip these steps. If you have VirtualBox 4.0, be advised that the SDK isn't yet compatible with VirtualBox 4.0 releases yet. Directions for how to get Java and VirtualBox are listed in the Ubuntu SDK HOWTO.
Step 3: If you have a 64 bit installation, make sure that you have ia32-libs installed.
Step 4: Download the WebOS 2.1 SDK, as well as the palm novacom package that is appropriate for your system. Go to the directory where you downloaded the files, and install those packages as directed:
32 bit systems:
sudo dpkg -i palm-sdk_2.1.0-svn409992-pho519_i386.deb sudo dpkg -i palm-novacom_1.0.64_i386.deb
64 bit systems:
sudo dpkg -i --force-architecture palm-sdk_2.1.0-svn409992-pho519_i386.deb sudo dpkg -i --force-architecture palm-novacom_1.0.64_amd64.deb
Step 5 (for developers only): If development is your thing, download the documentation/code samples, and check out the Build Your First App Tutorial, SDK Sample Projects and Developer Video Library. Also, you can install the WebOS Eclipse plugin.
Give WebOS a try.
At this point, you can open the emulator by typing "palm-emulator" in the command prompt. Keep in mind that the WebOS devices usually have a "gesture area" below the screen, and that isn't present on the emulator, nor are the multi-touch capabilities like pinching to zoom. However, there are some emulated gestures that can be performed using the keyboard and mouse:
- Escape - Back Gesture
- End - Flick Up Gesture
- Home - Center Button
- Left/Right arrows switch applications
- Shift - Shift
- Alt - Option
- Double left mouse click - zoom in/out
WebOS is a Linux based OS with a lot of potential. Developer and community support will go a long way in making this OS ready for its time in the limelight. If your experience with the emulator has whet your appetite for the real thing, check out the Palm Developer Device Program and the Palm Developer Mailing List, as you may have the opportunity to obtain hardware at substantial discounts. Either way, enjoy your WebOS experience, powered by the flexibility of Linux.