After Hours

gtkpod: A better alternative than iTunes


I am going to break from my normal routine of ranting and/or raving about one issue or another and go old school by looking at a Linux application. That's right - a good ol' fashion Linux application.

I have recently been inundated with questions about using an iPod (or iPhone) with Linux. I have written about Rockbox and how to "Open Source" your iPod, but for the average user, that is not a viable option (Firmware? Do what????). So instead I am going to introduce you to an application that, in my opinion, is much better than the original (the original being iTunes.) Gtkpod is a GTK application that allows the user to sync their iPod with Linux. Gtkpod supports first through fifth generation iPods and does, pretty much, everything iTunes does. So let's first take a look at the features. Gtkpod can:

  • Read your existing iTunesDB (this is nice because it can actually take the songs off your iPod and put them onto your computer without needing a third-party application).
  • Add music to your iPod.
  • View, add, and modify Cover Art.
  • Browse contents of hard disk and drag/drop songs into playlists.
  • Create and modify playlists, including smart playlists.
  • Configure the charset the ID3 tags are encoded in from within gtkpod.
  • Extract tag information (artist, album, title...) from the filename if you supply a template.
  • Detect duplicates when adding songs (optional).
  • Remove and export tracks from your iPod.
  • Modify ID3 tags -- changes are also updated in the original file (optional).
  • Refresh ID3 tags from file (if you have changed the tags in the original file).
  • Sync directories.
  • Normalize the volume of your tracks.
  • Write the updated iTunesDB and added songs to your iPod.
  • Work offline and synchronize your new playlists / songs with the iPod at a later time.
  • Export your korganizer/kaddressbook/thunderbird/evocalendar/evolution/webcalendar data to the iPod.

Gtkpod can not:

  • Connect to iTunes store.
  • Rip songs from CDs (for that you will need to use another application like Kaudiocreator.)
  • Sync an iPhone without jumping through some serious hoops (we won't touch on that one yet.)

Now let's get down to business.

Getting and installing

The first thing you need to do is install gtkpod and its requirement libgpod. To do this use either yum or apt-get and run either command: yum install gtkpod or apt-get install gtkpod. Both of these will catch the requirements and, with your permission, will install them both. Now you're ready to fire up gtkpod.

First use

Before you start up gtkpod you are going to have to find out where your system sees your iPod. Plug your iPod into your computer, open up a command prompt, and issue the command dmesg. Toward the end of that scrolling list, you should see something like:

sdb: Write Protect is off

sdb: Mode Sense: 68 00 00 08

sdb: assuming drive cache: write through

SCSI device sdb: 58605120 512-byte hdwr sectors (30006 MB)

sdb: Write Protect is off

sdb: Mode Sense: 68 00 00 08

sdb: assuming drive cache: write through

sdb: sdb1 sdb2

sd 17:0:0:0: Attached scsi removable disk sdb

sd 17:0:0:0: Attached scsi generic sg0 type 0

That should tell you your usb subsystem sees the device at sdb. Now you need to be about to mount this as a standard user. You don't want to have to add music to your iPod as root. So as the root user add an entry to your /etc/fstab file that looks like this:

/dev/sdb2 /media/IPOD auto defaults,user,rw 0 0

As you can see we're using the sdb device but we've added a 2 to the location. This is done because /dev/sdb1 is taken up by the boot record and 2 is where the heart of the device is. You will also notice our fstab sees the mount point as /media/IPD so we have to create the directory /media/IPOD. Do this as root but give it 777 permissions with the command chmod -R 777 /media/IPOD.

Now, as the standard user you can mount your iPod. Test this by issuing the command mount /media/IPOD. If it works you won't get any errors. Check out the contents by issuing ls /media/IPOD.

Now to gtkpod.

NOTE: I am using version .99.8.

You can start up gtkpod from either the multimedia menu (from either KDE or GNOME) or run the command gtkpod from the command line. When you first start up you are going to have to take care of some simple configurations. Go to Edit and then Edit preferences and then take a look at the General tab. In that tab will be a button to click to configure the Mount point of your iPod. There you will enter /media/IPOD for the iPod Mountpoint and select a directory to serve as your backup directory. That's about it.

So in order to use gtkpod you first want to plug in your iPod, mount it, and then open up gtkpod. Gtkpod will see all of the songs on your iPod and you can add, delete, edit, and do pretty much everything you need. Once you are done, make sure you click the Save Changes button and let all changes be saved. Once that is finished unmount your iPod with the command umount /media/IPOD and you're ready to unplug your device.

Now there are some more advanced things you can do with gtkpod but I am not going to get into those. And you should be able to figure out most of the usual tasks.

Final Thoughts

I have been using gtkpod to sync my iPods for a long time. I have yet to have a single problem with this application. And, unlike iTunes, gtkpod won't bring your system to a snail-like pace when using it.

I hope you give gtkpod a try. Once you use it, and see how powerful and simple it is, you won't turn back to iTunes unless you need to download music. Enjoy. Or, better yet, Rock on!

About

Jack Wallen is an award-winning writer for TechRepublic and Linux.com. He’s an avid promoter of open source and the voice of The Android Expert. For more news about Jack Wallen, visit his website getjackd.net.

17 comments
The Scummy One
The Scummy One

Since you have been using this for over a year, or have stopped, How well does this app deal with multiple iPods?

howardshippin
howardshippin

I am trying this with an IPOD Touch 2nd generation (not jailbroken). When I attempt to load the Ipod in gtkpod, I get the message: Could not find iPod directory structure at '/media/IPOD'. If you are sure that the iPod is properly mounted at '/media/IPOD', it may not be initialized for use. In this case, gtkpod can initialize it for you. Do you want to create the directory structure now I say yes, then there's the message: Please select mountpoint and Ipod model I respond /media/IPOD and xA627, which I think is my ipod model for the 16GB model. Then comes the message "Error initializing Ipod: Couldn't find the Ipod Firewire ID

rngunter
rngunter

The only thing I dislike is that I can't play the "purchased" music from my iTunes, because of the encoding and Apple's unwillingness to support Linux OS's. Other than that you can ROCK ON with gtkpod! Like typical Linux systems, nothing else beats it, even the "original."

larfrey
larfrey

Is there something simple for simple minds?

fibonacci9
fibonacci9

Maybe? Will this program allow me to download old stored music files, Mac formattted, onto my PC, then upload again in PC format, (all I have right now) so I don't lose all the old files while making the iPod functional with the computer now available?? Any comments/info will be appreciated by this non-geek! Thanks! fibonacci9

blhelm
blhelm

I've been struggling with the decision to switch to iTunes or stay with Rhapsody. I have an HTC 8525 which runs Windows Mobile. Rhapsody sees it fine and uploads directly to it. But I sure would like to find a comparible program on Linux.

Dr.Tech
Dr.Tech

I must admit. I do not own an iPod (shoot me) and have not wanted one for the simple fact that I do not like proprietary-type electronics and software (a big reason I stayed away from Sony products, primarily VIOS and camcorders). Plus, I have owned mobile devices with mp3 software. With the growth of the open source market over the decade, I am more amped to purchase gadgets like the iPod/iPhone and make them more "open/user-friendly". I look forward to my iPod purchase so that I can utilize the gtkpod. Thanks.

NaughtyMonkey
NaughtyMonkey

about the IPhone. I am interested in that. Does some of the functionality work with the IPhone?

Jaqui
Jaqui

I've always found grip works on even old cds, where kaduiocreator has frequently let me down on older disks.

jlwallen
jlwallen

is that it requires a lot of work to do on top of which it requires the iphone to be jailbroken. my iphone isn't jailbroken and probably won't be since they are working on the release of the SDK. but if i can't find a way to get gtkpod working with an iphone (without jumping through serious hoops) i will report it asap.

Neon Samurai
Neon Samurai

for data extraction, that's a recent change from my prefered Media Monkey (limited by win32 dependancies). In in the process of figuring out how all the K3B extraction settings work for both audio and video though.

jlwallen
jlwallen

probably one of the best burning softwares i have used. it doesn't have the complexities of many nor does it have the bugs of most. and on top of making quick copies and backups it burns iso images better than any other software. of course that make sense considering the open source community relies on iso images so heavily.

Neon Samurai
Neon Samurai

For the ISO file too disk media, I'm all about K3B. DD is purely for the disk media too ISO direction. With the number of disks I burn, I should probably start doing multiples though or maybe borrow my publishing client's disk feeder; I keep a Mandriva One disk in my work issued notebook for any use of the hardware outside of work and usually return home without it since I'll hand it off to anyone interested.

jlwallen
jlwallen

some of the things you can do with ISO burning in K3B: multiple copies md5 checking image type auto detection simulated writing (for testing) it's really quite simple to use - once you know where to look. ;-)

Neon Samurai
Neon Samurai

dd is dead simple and does what's needed but having options is good and besides, it's something I can't do now so I gotta figure it out later. :) I usually have one of my desktops reserved for four eterms since I make heavy use of ssh into remote servers and local VM so the command line is a happy place for me though dd with such simple command switches in this case helps (I definaly need a front end for things like ffmpeg still). I don't remember what my issue with ISO ripping was the last time I tried but I'll post back if it's still an issue just for information sake. ah well, if I simply let the OS install itself, I'd likely have less trouble but more unused programs and not nearly as much fun.

jlwallen
jlwallen

in K3B go to Tools and then "Burn CD Image". there's no need for command line when using K3B.

Neon Samurai
Neon Samurai

I spent a weekend a while back trying to rip an ISO with K3B. Wow did it ever break my head when I took two minutes to search the forums. ripping ISO in Windows: winISO or some similar third party software. ripping ISO with a Linux OS: dd if=/dev/cdrom of=~/disk.iso seriously.. it broke my little mind at how easy it was after so many years of third party hacks and apps in Windows. damn I love when an OS is written for the benefit of the end user rather than the shareholders. :D K3B handles all other functions as a front end for me though and damn it's a fantastic app. Now to fine tune DVD to video settings so my resulting files are easily transposed to format/sizes required for tv, computer or Maemo viewing.

Editor's Picks