An iPhone hacker has successfully ported the open source Linux kernel to Apple's popular mobile device. Although the port is still at a very early stage of development and currently only supports a slim subset of the iPhone's capabilities, it demonstrates the versatility of the Linux kernel and the ingenuity of iPhone modding enthusiasts.

The port was announced in a blog entry last week. The post also includes a link to a video that demonstrates the software booting on an actual iPhone. The lead developer, who writes under the pseudonym "planetbeing", says that the port has a framebuffer driver and support for serial-over-USB, but still lacks critical features such as touchscreen support, sound, baseband and WiFi support, and accelerometer drivers.

The port includes a custom bootloader that enables users to choose whether to boot Linux or the iPhone's own operating system at startup. The code is distributed under GNU's General Public License (GPL) and is available from a GitHub repository. Instructions that describe how to install it from an Ubuntu Linux computer are also available.

Because the port doesn't have full touchscreen drivers yet, the only way to interact with the system is by using a keyboard on a host system that is connected to the iPhone via USB. The port includes BusyBox, a collection of core GNU userspace utilities embedded in a single lightweight executable. It provides the ash command shell and enough basic commands to manage and interact with a mobile Linux platform.

The port is a very big first step, but it is still very far from offering a viable alternative software platform for the iPhone. The developers hope to expand on the porting effort and eventually bring Google's Linux-based Android operating system to the device. Some early Android porting experiments performed by other developers indicate that this could eventually be possible, but it's definitely not going to be easy. It's likely that implementing baseband support will prove especially difficult.

Android was recently ported to the BeagleBoard, a hackable ARM board that was designed by TI for the hobbyist market. The developers behind the OpenMoko project are also working on a porting effort, with the aim of putting Android on the FreeRunner handset.

The Android/iPhone port won't be completed overnight, and there are also some limitations of the Android user interface that will have to be addressed before it can be used practically on other kinds of devices. For example, Android was designed for devices with full qwerty keyboards, so it doesn't yet have an onscreen keyboard—a weakness that Google plans to fix at some point in 2009.

The open source software community has been bringing alternative open software platforms to Apple's portable devices for several years. One previous example is the Rockbox project, which provides open replacement firmware for iPods and other digital audio players. The new iPhone Linux project could eventually bring that same openness and freedom of choice to the iPhone and iPod Touch products.