Lerm-IT

Blog traitant de technologies informatiques. Logiciel libre, AdminSys, DevOps et GNU/Linux !

05 May 2010

[Gentoo] Connecter l'iPhone sur linux via l'USB sans jailbreak !

Depuis peu il est possible de connecter son iPhone via USB sur son linux !!

Je vais vous détailler la procédure que j’ai appliquée pour l’installer sur ma gentoo.

Présentation

Tout d’abord nous allons installer les paquets suivant :

  • usbmuxd : Gère la connexion entre votre iPhone et l'USB de votre PC.
  • ifuse : Driver du système de fichier utilisé par l'iPhone.
  • libplist : Une librairie qui comprend ce que raconte l'iPhone (données binaires).
  • libiphone : Une librairie qui communique avec l'iPhone. (lié à libplist)

Ce qui nous donnera :

iPhone <–> usbmuxd <—> libplist <—> ifuse <–> vous

Préparer le terrain

Tous ces paquets paquet n’ont actuellement (5 mai 2010) pas été testé par gentoo, nous allons donc forcer emerge à les installer.

Note : Ce n’est pas parce qu’un paquet n’a pas été testé qu’il n’est pas stable !

Pour cela nous allons éditer le fichier /etc/portage/package.keywords. Ce fichier nous permet de dire à portage d’utiliser des paquets qui n’ont pas encore été testées tout en gardant le reste de notre système en “stable” (comprendre qui a été testé). Nous allons donc ajouter les lignes suivantes à notre ficher package.keywords (si le fichier n’existe pas créé le).

# Iphone
app-pda/usbmuxd ~x86
# Ces deux paquets sont nécessaires à usbmuxd
virtual/libusb ~x86
=dev-libs/libusb-1.0.7 ~x86
=app-pda/ifuse-0.9.5 **
=app-pda/libplist-1.2 **
=app-pda/libiphone-0.9.5 **

Le signe = permet de spécifier la version du paquet et le signe ** permet de passer outre tout les checks réalisé sur les paquets (“Est-il testé” par exemple).

Note : A l’heure où j'écris ces lignes les versions des paquets ci-dessus sont les dernières disponibles dans l’arbre portage. Il ce peut que celles-ci changent au fil du temps.

Installer les paquets

Nous allons très simplement utiliser emerge pour installer nos paquets.

sudo emerge =app-pda/libplist-1.2
sudo emerge app-pda/usbmuxd
sudo emerge =app-pda/libiphone-0.9.5
sudo emerge =app-pda/ifuse-0.9.5

Accéder à l’iPhone

Maintenant que tout est en place nous allons monter notre iPhone sur notre système. Pour cela nous allons lancer usbmuxd comme daemon et le forcer à utiliser udev.

usbmuxd -u

La suite de l’opération est un jeu d’enfant ! utiliser ifuse pour monter notre iPhone. Par exemple pour monter notre iPhone dans /media/iphone

ifuse /media/iphone

Et voilà vous pouvez accéder à votre iPhone !