Using Your iPod with (K)ubuntu 9.10
After a rocky beginning, I've been able to do many neat things with my Black iPod Classic with 120 GB, but it hasn't been without its trials and tribulations. In this post, I'll write about the tools I use to sync music, add photos, and transcode videos to the correct format. Being a Kubuntu user, note that my bias is towards KDE tools. If you use others, please list them in the comments. As with many things on Linux, there's more than one way to do it. (Apologies to Larry Wall)
Those who know me well are familiar with my unhealthy dislike for all things Apple. Perhaps it's the way they attach DRM to everything they touch. Or maybe it's the cult of Steve. Or maybe it's because they make shiny, overpriced goods that they push to the gullible. Naturally, when my wife looked for something to give me on my birthday, she purchased an iPod. To her credit, she told me what she was thinking before the purchase, and I made a mad dash to Google to see about alternative, friendlier devices. In all honesty, I couldn't find a better device for the money, and so an iPod it was.
1. Get your repositories in order
Because iPods will not play any patent-free multimedia formats (Boo!), the first thing you'll need to do is add the medibuntu.org repository to your sources.list. For one thing, that's where you'll get the good DVD ripping software, as well as a version of FFMPEG that is actually useful. If you're new to this and don't know what a sources.list is, just follow the instructions on the Ubuntu community wiki. I had to install the following packages: amarok, digikam (for syncing over photos), ffmpeg, libdvdcss2, lame, libdvdread4, gtkpod-aac and arista. Just a few short months ago, I wasn't able to get everything in a neat package, but now you can. Everything listed above should be in a repository. Note that I use the multiverse and universe repositories. If you can't find one of the above packages, enable one of those repositories first.
2. Get ready for some disappointment
One thing still lacking an any Linux distro is a single interface to do "everything." There is no single tool or package of tools that can rip CD's and DVD's, encode them, and then transfer to your iPod. If there is, I want to know about it! So the first thing you'll need to do is get used to the idea of using multiple tools. The next thing to be wary of is that you shouldn't try to get cute and sync an iPod from iTunes after syncing it from any non-iTunes software. Apparently, iTunes views any "contamination" by other software as an evil to be purged - without so much as telling you, I'm afraid. I found many megabytes of music deleted from my iPod after connecting it to iTunes on Windows. I eventually found a way around it, but an easier way is to just forego iTunes in its entirety. If you're on Linux, you won't need it anyway. And finally, stick with MP3, as I've never had any luck with using AAC encoders on Linux. Most recently, I couldn't get AAC files to store the track number information, so I was left with a song list in alpha order for some albums. If you know of a good solution to this problem, please put it in the comments.
But the most disappointing thing, by far, was that I couldn't use Rockbox on my particular iPod. For the "Classic" series, the last generation that Rockbox works with is 5.5. Mine is a generation 6 or 7, so no dice. TEH STEVE thinks his UI is teh best, and doesn't think kindly of us when we try other things. TEH STEVE ALWAYS KNOWS!!!!111!!! If you're thinking of Rockbox, check the iPod ports table on the Rockbox wiki to see if your particular model is supported.
3. Ripping and encoding from CD's
If you use Amarok 2.2, you'll find that ripping CD's is a snap. When you pop in a CD, it should automatically show up in the Amarok local music collection box. Simply right-click and select "Copy to Collection"->"Local Collection", at which point you are prompted to select what format to encode the CD audio. In my experience, iPods seem to have some trouble with variable bit rates, so you'll want to select a constant bit rate. I suppose one could just copy directly to the iPod, but I like to test the encoding first before syncing directly. Once the newly encoded music is in your local collection and meets your audio quality criteria, use the same right-click mechanism as before to transfer the new files to your iPod.
There are a veritable host of ripping and encoding options on Linux, but I like the simplicity of doing it from Amarok. Feel free to share your recipes below.
4. Transferring photos
Recent versions of digiKam makes transferring photos to your iPod a snap. For the record, I'm using digiKam 1.0 beta5 (according to 'dpkg -l digikam'). Simply highlight the photos you want to transfer, and from the menu bar select "Export"->"Export to iPod". Make sure you have targeted the right album on your iPod and click "Transfer". Best I can tell, this function reduces the photo sizes to 640x480 before transferring.
This isn't the only way to transfer photos, however. Gtkpod also has this functionality.
5. Ripping, encoding and transferring DVD's and other videos.
One of the great discoveries on Ubuntu 9.10 was the inclusion of a tool called "Arista" which allows the user to select from a variety of video encoding presets, including iPod video, to use for encoding the source video. It's available in Ubuntu's Universe repository for 9.10. The Arista interface allows you to rip from a DVD device or a video file you've already saved locally. I've had good luck with it, both with DVD's and AVI movies from my camera. I'm curious if others have had similarly good experiences. To be sure, one need not use a GUI tool like Arista for the encoding. The Ubuntu community wiki includes some helpful tips on using ffmpeg from the command-line for this purpose.
To transfer the video, the best tool for that seems to be gtkpod. Make sure to install gtkpod-aac, as the 'regular' version won't give you the ability to sync videos and photos.
All in all, I'm able to do everything I want with my iPod from Ubuntu. I haven't tried any of the calendar functionality, but I don't see much of a reason to, especially considering that I don't have network access for it. Please share your experience with iPods on Linux below.
PS - iTunes and the iTunes Music Store are evil. Do not touch.