freedom coming soon...

GNOME desktop icon GVFS support Manage SpringBoard icons Extended device information Experimental syncing Command line backup Syslog viewing

Latest Release: 1.0.2

Tested with iPhone/iPod Touch 1G, 2G, 3G/3GS, iPhone 4 running up to firmware 4.0.2 and iPad running up to firmware 3.2.2

About:

libimobiledevice is a software library that talks the protocols to support iPhone®, iPod Touch® and iPad® devices on Linux. Unlike other projects, it does not depend on using any existing proprietary libraries and does not require jailbreaking. It allows other software to easily access the device's filesystem, retrieve information about the device and it's internals, backup/restore the device, manage SpringBoard® icons, manage installed applications, retrieve addressbook/calendars/notes and bookmarks and synchronize music and video to the device. The library is in development since August 2007 with the goal to bring support for these devices to the Linux Desktop.

News:

Project:

Packages:

Contribute:

Sources and Dependencies:

Status:

Feature Status iOS Notes
Filesystem Access Done 4.0.2 Using iFuse with fuse, on GNOME using GVFS >= 1.5.1 or kio_afc on KDE.
Music/Video Synchronization Done 4.0.2 Rhythmbox, gtkpod and Amarok sync with latest libgpod >= 0.7.90. The iPhone 4 and iPad do NOT work.
Software Update/Restore Done (git) 3.1.3 Using idevicerestore and libirecovery, updating and restoring devices is now possible. iOS 4 works if you kill ehci and use USB 1.1, thus there are kernel USB issues we need to resolve.
Phone Activation Done 4.0.2 Using ideviceactivate, activating your device is now possible.
Camera/Photo Synchronization No N/A PTP photo access works. Camera roll management needs implementation.
Calendar Synchronization Partly (One way) N/A Experimental Conduit module for device to computer sync exists. Python implementations can dump the data as iCalendar.
Contacts Synchronization Partly (One way) N/A Experimental Conduit module for device to computer sync exists. Python implementations can dump the data as vCard.
Notes Synchronization Partly (One way) N/A Experimental Conduit module for device to computer sync exists. Python implementations can dump the data as XML notes.
Bookmarks Synchronization Partly (One way) N/A Experimental Conduit module for device to computer sync exists. Python implementations can dump the data as XBEL bookmarks.
USB Internet Tethering Done 4.0.2 Use the iPhone Ethernet Kernel Driver.
TCP Tunneling Done 4.0.2 Use the iproxy tool provided by usbmuxd. This for instance allows accessing SSH or a device webserver locally.
Applications Done 4.0.2 Use ideviceinstaller to list, install, uninstall and archive your own apps.
Manage SpringBoard Done 4.0.2 Use sbmanager to arrange icons on the device using drag and drop. iPad support is broken as we do not have such a device to work with.
Backup/Restore Done (git) 3.1.3 Use the idevicebackup tool for full and incremental native backups and restoring from them. iOS 4 support is WIP.
Remote Syslog Done 4.0.2 Use idevicesyslog tool to view the syslog in realtime.
Developer Images Done 4.0.2 Use ideviceimagemounter tool to mount and use developer disk images.
Profiling/Debugging No N/A Related service protocol is unimplemented.

Want features to get implemented faster? Want to thank for our countless hours of work? Want to help us improve support for newer devices and system versions? Then feel free to donate.

As of now we are missing an iPad for testing.

Quick FAQ:

Links:

Credits/Sponsors: