This tutorial is part of our groovy series that makes the case that you can use Ubuntu for your everyday computing needs without bouncing back and forth between Linux and Windows or OS X.
For many geeky, professional or casual tech users, the desktop serves as a hub and docking station for their mobile devices. Until recently, the lack of smartphone and/or MP3 player support was one of the largest barriers to full-time adoption of Linux. With the most recent releases of Ubuntu, that is no longer an issue. You can use Ubuntu to sync your iPhone and other iOS devices in Linux, giving you one more compelling reason to kiss iTunes goodbye.
Read on to learn how to add and remove songs, podcasts, and playlists to your iPhone in Linux.
The magic that makes iPhone syncing in Ubuntu possible is a software library called libimobiledevice. In fact, this is the crux of any Linux program that interfaces with an iOS device. Libimobiledevice is included in Ubuntu 10.10, Maverick Meerkat, but it stops working once you upgrade to iOS 4.2. No big deal, you just have to upgrade your libimobiledevice package.
To do this, you’ll need to add the developer’s PPA (Personal Package Archive). This can be done in Terminal.
Note: This step is necessary if you get the error message:
Unable to mount iPhone_ org.freedesktop.DBus.Error.NoReply DBus error: MESSAGE DID NOT RECEIVE A REPLY (TIMEOUT MESSAGE BY BUS)
when you try to mount your iPhone. While you may or may not receive this message, it’s a good idea to complete this section so you’ll be ready for the next iOS/libimobiledevice update.
Launch Terminal. Find it in Applications > Accessories.
Type: sudo add-apt-repository ppa:pmcenery/ppa
When prompted, enter your password.
This will add the Launchpad PPA for Paul McEnery (the libimobiledevice developer), allowing you to update your existing libimobiledevice package using apt-get.
Type: sudo apt-get update
This will update your package index, including the PPA you just added.
Type: sudo apt-get dist-upgrade
This will upgrade libimobiledevice to your current version.
Syncing Your iPhone in Rhythmbox
At this juncture, you should be able to plug in your iPhone via USB and have it sync to any music library in Ubuntu. For now, let’s take a look at the default music player: Rhythmbox.
Note: For this tutorial, we’ll just be exploring the bare essentials of Rhythmbox. We’ll go more in-depth with Rhythmbox and other Ubuntu music players in later groovyPosts.
Manually Managing Songs and Podcasts on your iPhone
Just as with iTunes, you have the option to add songs and podcasts one at a time on your iPhone or sync your library automatically. Here’s how to do the former:
Launch Rhythmbox. Find it in Applications > Sound and Video > Rhythmbox Music Player.
Connect your iPhone via USB. It will appear under Devices.
Click Music in your computer’s library. Browse for songs to add to your iPhone. Sync them to your iPhone by Dragging and Dropping onto your iPhone’s icon under devices.
You can also copy songs from your iPhone to your computer by Dragging and Dropping them from your iPhone into your library. (Take that iTunes!).
To add podcasts, do the exact same thing, except from the Podcasts section of your library.
To delete content from your iPhone, Right-click a song and choose Delete.
Automatically Syncing your iPhone in Rhythmbox
Automatically syncing your iPhone will keep your local library or a select few playlists, and your iPhone’s music library synced. As with iTunes, this means that it will delete content from your iPhone that doesn’t exist on your local computer–so make sure that you have everything backed up locally before you sync your iPhone automatically for the first time.
With your iPhone connected, Right-click its icon under Devices and choose Sync with Library. Don’t worry–you’ll have a chance to set up your preferences before anything gets deleted.
Choose whether you want to sync your Music, your Podcasts or both. You can expand either of these options to choose specific podcast feeds or playlists to sync.
Pay close attention to how many files will be removed. Rhythmbox will give you a breakdown of how your storage space will be used up before and after. If there is more content being removed than you anticipated, you may want to review your selections.
If you have no trepidations about what will be added or removed from your iPhone, go ahead and Click Sync with the device. Now, whenever you plug in your iPhone, Rhythmbox will automatically sync your songs according to these settings.
Libimobiledevices and Rhythmbox allow you to do basic syncing of music and podcasts to your iPhone. Obviously, there are some limitations here. You can’t do apps or anything else that deals with proprietary Apple services, such as iTunes or the Apple App Store. You also can’t manage contacts with Rhythmbox, as you can with iTunes. But for day-to-day syncing and adding/removing of songs and podcasts, Rhythmbox is more than enough. The good news is that Ubuntu is serious about supporting mobile devices and smartphones. There are a few apps available that utilize the Mobile One cloud services for streaming content on your phone (similar to Amazon Cloud Player and SugarSync) and syncing of your contacts. These, however, are paid apps–we’ll talk about those later.
For now, thanks to this native iPhone support in Ubuntu, there’s one less reason to boot back into OS X or Windows. And for anyone who’s trying to go Linux full-time, that’s a very groovy thing.