This terrific wiki describes in detail the “tried and true” method of manually performing pretty much every step. Unfortunately, the Wine Application Database shows that iTunes has no maintainer, and is rated as “garbage” by most people.
So right there, my article I had planned about unlocking the iPhone using Linux – simply not possible, as of right now. According to Martin Aumueller, a moderator at the iPhone amarok forums,
“If you manage to get it working it won’t be easy at all:
Other than a regular ipod, the iphone does not work as a ‘usb mass storage device’. This means you can’t just mount it as a hard disk. However, it appears that people have managed to hack their iphone so that they are able to install arbitrary software on it, in particular a ssh server. Then it is possible to expose the iphones file system and mount it via fuse as sshfs. On the gtkpod-devel mailing list you could read that the format of the data on the iphone is very similar to an ipod. So they might be able to handle that shortly. As soon as the gtkpod guys have libgpod working with the iphone, you could try to compile Amarok against the updated libgpod and try to get it working.”
So I checked out the libgpod SVN, and found they had a version that worked once you had SSH running on the iPhone – which means it’s kinda pointless to use a Linux box to try and get things unlocked, because to get SSH running, you need Window or Mac, which is confirmed by Eric Betts (who also has a quick guide how to get gtkpod working), a CS major at OSU – go Beavers!
benanzo has some interesting information over at the ModMyiPhone forum:
“Linux users have been able to sync with the iPhone for awhile now. We just mount the iPhone’s FS wirelessly via sshfs, load GTKPod and sync …wirelessly.
The current SVN version of libgpod (the backend that manipulates iTunesDB) has recently implemented full support for artwork, video, calendar, contacts, podcasts etc. for the iPhone, iPT.
You can also use gnupod. In fact, with that I’ve written a script that runs on my phone that checks what wifi network i’m connected to and if it’s my home network (where my computer is) it automatically initiates syncing.
That means that whenever I get home, I don’t have to sit down at my computer, or even take my phone out of my pocket — everything syncs back and forth automatically. Beautiful.
I’m currently in the process of porting libgpod to the iPhone environment so we can integrate over-the-air downloads into iTunesDB. That basically means we can then write a GUI frontend to bashpodder (podcast client) and automatically download/sync podcasts on-the-go.
My next project will be to get internet radio running…
Shoutcast on-the-go will be sweet.”
That’s it from me, for now. Here are a bunch of links that should get you started unlocking your iPhone. I’m going to detail later on how to get the sshfs and libgpod svn working on Ubuntu.
1, 2, 3, 4, 5, and lastly, how to remove the iPhone AT&T SIM card. That threw me for a loop.
So far I’m enjoying the iPhone, it’s a beautiful machine – even better when running on T-Mobile.