Review of Linux on the iPod
By Jordan Carder
Posted: 12/27/2004
(revised 12/28/2004)

(Note: This review from Dec. 2004 used v0.3a. As of May 2005 the latest version
is 0.3b available at
http://ipodlinuxinstl.sourceforge.net/download.html. Although still only supporting
iPod 1G-3G there have been some improvements/changes from the version Jordan
used for this review. Here's the list of change notes for 0.3b:

Includes the newest iPodLinux Kernel and podzilla as of April 4th, 2005.

Installer checks to ensure Mac OS X is not installed on the target iPod.

Updated the installed iPodLinux kernel, user-land, and Podzilla.

The original review using the previous v0.3a follows.-Mike)

Recently, I saw a note about a new release of the iPod-Linux Installer for
Mac OS X. I was intrigued, and decided to go check it out. I'm glad I did.

I remember quite some time ago reading an article about how some ingenious
hackers had found a way to boot a version of Linux on the iPod.
"Interesting", I thought to myself. "But is it really good for anything?"
At the time, no, it was not. It was functionally useless, no more than a
proof-of-concept.

I am happy to announce that iPodLinux has become much more than an
interesting little proof-of-concept. It is now the de facto way to expand
the iPod's capabilities and features. It is far from perfect, but quite far
from useless.

On my 2G 10GB iPod, I used version 0.3a of Jeffrey Nelson (aka macPod)'s
excellent iPod-Linux Installer for Mac OS X, located here. This is by far the easiest way to install Linux on a Mac-formatted iPod. It
requires no knowledge of Linux or iPod hardware - just press the button and
watch it do its stuff.

The installation process, while relatively invasive, appears to be quite
safe as long as one follows the directions. After connecting via Firewire
(or, optionally, USB 2.0 for 3G iPods), the installer downloads the iPod's
firmware to your Mac, patches it to allow dual-booting of Linux (yes,
Apple's original OS is still there!), and re-installs the new hacked
firmware onto the iPod. The iPod can be restored to original Apple specs at
any time by using the installer, or an Apple iPod Updater. There is the
option to make Linux your iPod's default OS, but I don't recommend this.
Read on.

It is worth nothing that the mini, 4G, U2, and Photo iPods are not currently
supported as of the writing of this article. Development is in progress,
and the developers are requesting funds
in order to purchase said iPods to work on compatibility.

In order to boot Linux, simply reset your iPod by holding the menu and play
buttons until you see the Apple logo. Then, hold down the |<< (rewind)
button. The Apple logo will disappear after a few seconds, and the
iPodLinux logo will appear (Tux the penguin listening to an iPod). People
can tell that your iPod is a Mac iPod, because PC users who install Linux on
their iPods get a different, square Tux logo. Text will quickly scroll by,
showing the steps in the iPod's boot process.

Note: To reboot into the Apple OS, select Reboot iPod from within Podzilla,
then select Absolutely. Unless you set your iPod to boot Linux by default,
it will always boot the Apple OS unless you hold down |<< (rewind).

Once in Linux, you will be greeted by Podzilla, iPodLinux's standard
graphical user interface. It operates like Apple's interface, but with
smaller, crisper text, faster menu switching as well, due to the lack of the
sliding animation when switching menus. It's not totally polished - Music
browsing lacks some of Apple's features, and sometimes needs to spin up the
hard drive in order to browse, which takes a few seconds, and eats battery.
Linux as a whole is more battery demanding than the Apple OS.

Speaking of Music, yes, true to the iPod's original intent, iPodLinux plays
music! However, its playback capabilities are far from perfect. It does
well with CBR (constant bit rate) MP3's, except for occasional slight
skipping when changing the volume a large amount. It more or less chokes on
all AAC's, spitting out ugly, skipping audio. VBR (Variable Bit Rate) MP3's
are not perfect either - they often play at the wrong speed. Let me tell
you, it's quite an experience listening to Pink Floyd's ÔMoney' at 3/4
speed. Actually, it can be pretty hilarious - try it out if you have any
VBR MP3's in your collection.

The lack of proper AAC support is disappointing considering about half of my
music collection is AAC-encoded, but I'm sure that iPodLinux's music player
will improve over time.

But let's move on to what makes iPodLinux really shine - what it does
besides playing music. There are 4 items in the Extras menu - Recordings,
Calendar, Calculator, and Games.

Recordings is a remarkable feature, unfortunately limited only to 3G iPods.
A friend with Linux on his 3G demonstrated this to me - and it's
mind-blowing. In the Recordings menu, one can choose either Mic Record or
Line In Record. Line In Record is for ripping audio output from other
sources - pretty simple. With Mic record, however, one can speak into the
left earbud of the iPod headphones (I assume a simple passive mic could be
used also), and record audio, without any additional attachments! The
recordings are saved in WAV format, and can be downloaded to your Mac and
converted later.

Calendar is relatively useless - it starts in December, 1969. It would take
you a long time to scroll to 2004-2005 - I'm not going to do the math.
Calculator could come in handy if you're weak in simple math.

Next is the Games menu. Currently, Podzilla comes preloaded with 5 games:

Steroids is an Asteroids clone. It could be called "bad" but I'll
say that it's just "under development." Perhaps in the next version they
will address the issue of your ship's 100% Asteroid-resistant hull plating.

Othello is one of those annoying games involving a checkerboard-like
playing field, where clicking on a space results in some dots of different
colors appearing in different places around the board. I have no idea how
to play it, but I think I'm good - I won.

BlueCube is a Tetris clone, and a fun one. The pieces start out
moving so slowly that they basically hang in midair for you, and using the
wheel for rotation, one can rotate the pieces in either direction!
Nevertheless, rotating using the wheel is a somewhat difficult skill to
master, and I find BlueCube very fun to play.

Pong - you and the AI, mano y mano. This gets boring after ~10
seconds.

Nimesweeper is a good little Minesweeper clone. Use the scroll
wheel to select squares, and the action button to uncover them.

I am sure many more games are on the way, so, rejoice! iPod users are
finally liberated from playing breakout! Word has it that a Game Boy
emulator could be on its way - we can only hope.

The Settings menu contains some useful features, such as Backlight,
Contrast, Wheel Sensitivity, Button Debounce (not sure what this is), the
Clicker, and options for Loading, Saving, and Resetting options.
Unfortunately, it does not contain music controls such as Shuffle, Repeat,
Sound Check, or EQ settings. This means that Podzilla is limited to playing
your songs one at a time...

Now, on to another fine feature of Podzilla - the File Browser.

It allows you to browse all of your iPod's files, including hidden and system files.
Most users will find its greatest capability to be picture viewing.
Podzilla can display GIF, JPEG and BMP images (not PNG), 4 grays, up to 160x128
in resolution. Podzilla does not have the ability to execute apps,
but rather, shell scripts. It also has the ability to read text files, but I have yet
to present it a text format that it will actually correctly display.

Coming to the end of Podzilla's features, we have Quit Podzilla, Reboot
iPod, and About menus. Selecting Quit Podzilla will open up the console for
a moment, then launch Podzilla again. Perhaps this is an idiot-proofing
feature. Reboot iPod is important - it allows you to boot back into the
Apple OS. About displays a nice little window with info about your
iPodLinux, Podzilla, and iPod versions, as well as credits to the authors.

Final Ratings:

Cons/Missing features

Mac connectivity while inside Linux

power management (can't turn your iPod on or off in Linux)

Poorly implemented features:
music playing in general
battery meter (present but non-functional)
hold switch (works, but once you flip it, the icon is always present)
some international characters in filenames garbled
chokes on text files
support for only 4 grays - doesn't the iPod support many more shades?
Podzilla's title permanently displays the last menu item you chose
until you choose a new one

Pros:

Expandability! This Linux thing is just gonna get bigger and
bigger, baby. Linux will allow the iPod to live on and grow for years to
come.

A few good games, refreshing change of pace from what Apple offers.

Image viewing

Cool factor - can't leave that out.

Possible iPod-to-iPod file transfer. This is currently under
development, and is very possible. Not only will the iPod be able to access
other iPods, running Linux or not, but it will be able to read from and
write to Firewire and USB 2.0 mass storage devices.