Turn your iPod into a Linux-running machine and write your own iPod applications.
Ever since the original iPod was released, users have come up with new and interesting ways to use their iPods as more than just MP3 players. Apple’s various updates have added to the firmware new features, such as calendars and contacts [Hack #33], games [Hack #36], HTML-like notes [Hack #39], and now photo storage capabilities [Hack #3].
Unfortunately, these new features can come only from Apple, so we are beholden to their timelines and commercial interests.
This is where Linux—or more specifically, uClinux (http://www.uclinux.org; free)—comes to the rescue. uClinux is a special port of the Linux kernel that supports CPUs without a memory-management unit. Other than that, it’s basically a full-featured Linux kernel, including filesystem support for FAT32 and HFS+, TCP/IP networking, and FireWire, all with a nice Unix API.
By porting Linux to the iPod, we can create a freely available development platform where software can be developed for the iPod independently of the Apple firmware. What’s more, basing it on such an open system gives us immediate access to all the resources available on the Linux platform—that is, all those open source packages people use to build great software.
Installing Linux on your iPod consists of two basic steps: patching the iPod operating ...