AdSense Mobile Ad

Monday, December 21, 2009

iPhone on a Solaris Host

I'm a moderately happy owner of an iPhone and, as I'm usually running Solaris on my systems, I've struggled to find a working solution to connect my handset to an iTunes instance. One of the major drawbacks of the iPhone is that you really need iTunes: whether you want to upgrade it, back it up, or simply transfer the contents you purchased on the Apple stores, you need iTunes to get the job done.

I'm running several virtualized OS on my Solaris guests with Sun xVM VirtualBox, and never managed to make it work because of some limitations of the Solaris USB driver implementation. A couple of days ago, Sun announced the release of xVM VirtualBox 3.1.2 and in the changelog I read the following:
  • Solaris hosts: several USB fixes (including support for Apple iPhone)

I quickly updated my VirtualBox instance, quickly live-upgraded my Solaris Express Nevada build 116 to Nevada build 129 (during the installation, VirtualBox informed me that it needed recent Nevada builds for the USB kernel module to work properly), plugged the iPhone in an USB slot of a Sun Ultra 24 and it worked!





3 comments:

ഉപാസന || Upasana said...

Why no new posts!!!
:-(

Grey said...

Hi!

Thanks for your interest! I've been busy gathering info for a series of post about the news introduces in Java EE 6.

Bye,
Grey

Mark said...

One big caveat is that the flashing of iPhone firmware won't work as the USB bus control from VirtualBox isn't as capable as a directly connected PC. You'll get as far as getting the phone to iRecovery mode and it'll get stuck. You can recover the phone on a proper PC without issues and then restore a backup from VirtualBox.

It's ok for syncing iTunes content etc and doing and restoring backups. Just don't get tricky :) I'm putting this here as a warning to others who might attempt it.