usbmuxd: iPhone/iPod Touch Linux Syncing Support

Well, Linux user, today is a good day for you. A developer, by the name of mercan, was working on full support for iDevice syncing and Linux will finally get iPhone/iPod Touch syncing support soon.

Well, Linux user, today is a good day for you. A developer, by the name of mercan, was working on full support for iDevice syncing and Linux will finally get iPhone/iPod Touch syncing support soon.

iphonelinux-stack

The picture above represents the software stack:

  • libusb-1.0 provides an advanced API to access USB devices under Linux, replacing the old libusb-0.1 API
  • usbmuxd coordinates application access to the device and talks the specific iPhone/iTouch USB protocol
  • libiphone implements the Apple-specific protocols that are tunneled through usbmuxd: it can launch services through lockdown, retrieve device info, send notifications, and access the filesystem via AFC.
  • iFuse and gvfs-backend-afc both provide access to AFC to regular Linux apps. iFuse does this by mounting via FUSE, while gvfs-backend-afc is obviously a backend for gVFS.
  • libgpod (the library that traditionally has managed music databases for iPods) is being extended to support the new SQLite format, the new hash, and also to talk to libiphone to properly put the device in to and out of sync mode.
  • Theoretically, actual music players such as Amarok and Rhythmbox will need none or very few modifications to work.

If you have an iPhone or an iPod Touch and you’d like to use them with Linux in the future, I encourage you to test it out. If your device is jailbroken, you get the immediate benefit of being able to SSH over USB (which is a lot faster than over WiFi!), and if you’re using firmware 2.x or earlier and the hacky sync-over-WiFi-with-sshfs method, you can immediately get a speed boost by doing it over USB.

usbmuxd RC 1 is available for download here.  For more info please visit this page.

SUPPORT

FSM has no ads or affiliate links. Your support would simply pay for our servers, domain and maintanance. If there's any leftover change, we'll get some coffee and a slice of pizza.

Liberapay  
Bitcoin (BTC) 1Hfuq77gKKFJeNcq4EP4dQK3yDRWrFEwJR
Bitcoin Cash (BCH) qzmdm6e6q5wf2p6sxz2mst7cenz60newwc5m4e9js8
Ether (ETH) 0x5f02869278C24A6579d3820f52AD15936D6F9d69
Stellar (XLM) GDWT2QU2CI3GZ5XH5DTSU3IUAHZMTB6VQKKRHBYWS5YCCQOAG6OKG2OB
More content?