ubuntu-fr

Communauté francophone des utilisateurs d'Ubuntu

[[iphone]]

Piste: » iphone


iPhone et Ubuntu

iPhone

Cette page est une page de travail destinée à partager des informations et résultats d'expériences qui pourront permettre d'utiliser l'iPhone avec Ubuntu.

Si vous avez des informations supplémentaires à ajouter ou bien des améliorations à apporter, votre contribution est la bienvenue !

Les données de l'iPhone à synchroniser sont composées essentiellement de photos, musique et vidéos, ainsi que des contacts et des évênements du calendrier. Sous MacOS et Windows, l'utilisation d'iTunes permet de synchroniser ces différents éléments avec les logiciels du systèmes. Le logiciel iTunes n'étant pas disponible sous Linux, deux solutions s'offrent au possesseur d'iPhone :

  1. l'utilisation d'iTunes sous machine virtualisée et la synchronisation des données avec celles de la machine virtuelle. Cette solution ne nécessite pas de modification de l'iPhone, mais oblige à utiliser des logiciels de la machine virtuelle.
  2. un peu de travail pour une synchronisation avec les données Ubuntu via des logiciels Ubuntu. Cette solution est au plus proche du sytème mais nécessite un iPhone jailbreaké.

Synchronisation sous Ubuntu

Nous proposons ici différentes solutions pour synchroniser avec des logiciels Linux et avec les données Ubuntu les données de l'iPhone suivantes :

  • photos,
  • musiques et vidéos,
  • contacts et agenda.

Certaines de ces solutions nécessitent un iPhone jailbreaké.

Les photos

Lorsque vous connectez votre iPhone sur un port USB, le répertoire comportant des photos est automatiquement monté sous l'intitulé « Apple, Inc. iPhone ». Ubuntu vous propose alors d'importer vos photo avec votre logiciel favori comme pour tout autre appareil photo numérique.

Avec gThumb

Sous gThumb, l'appareil est bien reconnu sous « Apple iPhone (PTP mode) »

Import photos gThumb

Simple comme Ubuntu ;-)

Avec digiKam

Sous digiKam, l'appareil est bien reconnu sous « Apple iPhone 3G (PTP mode) » et est accessible via Importer>Appareil Photo>iPhone 3G.

Import photos digiKam

Pour accéder à l'appareil sous digiKam, il faut démonter "Apple, Inc. iPhone" sous Nautilus.

La musique et les vidéos

La synchronisation de la musique et des vidéos directement sous Ubuntu nécessite un iPhone jailbreaké.

Le problème des firmware 2.X consiste en l'utilisation par l'iTunes de l'iPhone d'une base de données spécifique pour gérer la bibliothèque des musiques et vidéos de l'appareil. Selon que vous souhaitez ou non utiliser l'iPod de l'iPhone, deux solutions s'offrent à vous.

  • si vous souhaitez utiliser les logiciels natifs de l'iPod de l'iPhone : il faut générer une nouvelle base de donnée qui soit compatible avec des applications linux (comme gtkPod ou Amarok). Avec cette méthode la synchronisation se fait de façon transparente sous le logiciel Linux choisi.
  • si vous ne souhaitez pas utiliser l'iPod de l'iPhone : il vous suffit d'installer des logiciels de lecture alternatifs sur l'iPhone, par exemple dTunes (pour lire musique et vidéos), pwnPlayer (pour la musique uniquement) et Mplayer (pour musique et vidéo). Ces logiciels sont disponibles sous Cydia. Avec cette méthode, la "synchronisation" se fait manuellement en déposant les fichiers musiques/vidéos dans les répertoires adhoc de l'iPhone par connexion ssh.

Les manipulations suivantes on été testées sur iphone et ipod-touch jailbreakés pour tous les firmwares jusqu'au 2.2.1

Synchronisation avec l'iPod de l'iPhone

Nous expliquons ici comment synchroniser avec Amarok ou gtkPod. Ces deux logiciels permettent de synchroniser musiques, playlistes et vidéos entre votre PC et votre iPhone. Ils transfèrent tous les deux les jaquettes des albums et chansons déjà présents dans votre collection, mais ne gèrent pas les aperçus des vidéos (la faute en incomberait à l'iPod de l'iPhone).

Préparation de l'iPhone

Pré-requis

  • Supprimer toutes les musiques et vidéos de l'iPhone avec iTunes pour éviter les conflits,
  • Un iPhone jailbreaké,
  • Installer openssh sur l'iPhone via cydia,
  • Iphone connecté en wifi avec une ip fixe (soit en la fixant dans l'iphone soit en liant l'adresse mac de l'iphone à une adresse ip fixe dans votre routeur/box/etc.).
Lorsque l'iPhone passe en veille, le wifi est automatiquement désactivé, excepté lorsqu'il est relié en USB à l'ordinateur. Pensez toujours à connecter votre iPhone en USB lors des transferts wifi pour éviter une coupure réseau. Vous pouvez également installer l'application "Insomniak" disponible dans Cydia qui permettra que votre iPhone soit toujours opérationnel même lorsque son écran est en veille.

Se connecter en ssh sur l'iphone via la commande (mot de passe : alpine):

ssh root@adresse_ip_de_l'iphone

Effacez l'ancienne base de donnée de l'iPhone :

rm /private/var/mobile/Media/iTunes_Control/iTunes/iTunesDB
rm /private/var/mobile/Media/iTunes_Control/iTunes/iTunesDB.ext

Changez la base de donnée pour une version compatible Linux en éditant le fichier /System/Library/Lockdown/Checkpoint.xml de l'iphone

 pico /System/Library/Lockdown/Checkpoint.xml

ou

 nano /System/Library/Lockdown/Checkpoint.xml

selon l'éditeur texte installé sur l'iPhone.

Trouvez la clé "DBVersion" et changez sa valeur de 4 à 2.

Déconnectez le ssh.

Vous disposez maintenant d'un iPhone sans contenu multimédia et dont la base de donnée est synchronisable avec des logiciels Linux.

Préparation de Ubuntu

Dès lors que votre iPhone dispose d'un serveur SSH, vous pouvez vous y connecter de manière transparente sous Ubuntu. Nous vous proposons ici d'utiliser ipod-convenience qui permet de monter et démonter le contenu de votre iPhone dans un répertoire média de votre installation Ubuntu.

Pour ubuntu 7.10, il faut rajouter le dépôt suivant dans synaptic pour pouvoir installer ipod-convenience :

deb http://ppa.launchpad.net/ipod-touch/ubuntu gutsy main

Pensez à mettre à jour la liste des logiciels pour pouvoir installer ipod-convenience.

Installez le paquet apt://ipod-convenience. Pendant l'installation l'assistant de configuration va demander de renseigner les paramètres de montage :

  1. l'adresse IP de l'iphone (ou l'alias que l'on a configuré précédemment),
  2. le point de montage : celui-ci est un dossier qui va être créé pour recevoir l'iPhone. Indiquez par exemple /media/iphone

configuration de ipod-convenience

Branchez votre iphone sur une prise USB, ceci est nécéssaire pour générer le hash (ou firewireGUID) utilisé par la base de données iTunes. Si nécessaire, ajoutez vous au groupe fuse, déconnectez vous, puis reconnectez vous.

Vous pouvez désormais connecter et déconnecter votre iphone depuis un terminal avec les commandes suivantes (mot de passe : alpine ):

iphone-mount
iphone-umount

Votre iphone est alors monté sur /media/iphone

Problème éventuel

la commande 'iphone-mount' affiche une erreur et rien ne se produit :

 ssh: : Name or service not known

Ceci est un bug connu sur la dernière version de ipod-convenience.

En attendant le patch il suffit d'éditer le script :

 sudo gedit /usr/bin/iphone-mount

Puis remplacer la ligne 66 :

if ssh root@192.168.6.136 test -d /var/mobile; then

Par :

if ssh root@$IPADDRESS test -d /var/mobile; then

Eviter que l'iPhone ne demande un mot de passe à chaque connexion

Se connecter en ssh à l'iPhone :

ssh root@<device ip>

Entrer le mots de passe dottie si il est en version 1.1.0 et alpine si il est en version 1.1.1 ou supérieur

Tapez ensuite les commandes suivantes

chmod 0755 ~ ~/.ssh
chmod 0644 ~/.ssh/*
nano /etc/ssh/sshd_config

Cherchez la partie commençant par #RSAAuthentication et modifiez la en enlevant tout les « # ».

Code :

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      %h/.ssh/authorized_keys

Faites CTRL+O pour sauvegarder puis CTRL+X pour quitter.

Tapez ensuite :

reboot

Votre iPhone redémarre tout seul.

Maintenant quand vous tapez :

ssh root@<device ip>

la connexion doit se faire sans demander de mot de passe.

Avec Amarok

Ouvrez Amarok, cliquez sur le menu "Configuration > Configurer Amarok".

  • Ouvrez l'icône "Périphérique de média",
  • Cliquez sur "Ajouter un périphérique",
  • Selectionnez ensuite "Périphérique de média Apple iPod",
  • Entrez "iphone" comme nom de périphérique,
  • Entrez "/media/iphone" comme point de montage.

La liste de lecture de votre iPhone doit maintenant apparaître dans l'onglet "Périphérique" de Amarok. Si vous avez utilisé la méthode avec ipod-convenience vous pouvez ajouter "iphone-mount" à la commande de pré-montage et "iphone-umount" à la commande de pré-déconnexion. Précisez le modèle de l'appareil : toujours dans l'onglet "Périphériques", cliquez sur le menu "iPod > Définition du modèle de l'iPod > Mobile Phones > iPhone".

Vous pouvez maintenant monter votre iPhone directement sous Amarok dans l'onglet Périphériques, puis synchroniser vos médias.

Iphone en cours de synchronisation sous Amarok

Comme Amarok ne permet pas l'édition des tags des vidéos mp4, les vidéos apparaitront toutes sous l'intitulé "untitled" dans l'iPod de l'iPhone. Afin de modifier les tags auteur, titre et album des fichiers vidéos, vous pouvez par exemple utiliser easytag avant le transfert vers l'iPhone.

N'oubliez pas de redémarrer l'iPod de l'iPhone pour voir les changements dans la bibliothèque musicale (lancez iPod et appuyez environs 12 secondes sur le bouton home).
Avec gtkPod

Montez l'iPhone dans un terminal avec la commande iphone-mount (voir précédemment) puis ouvrez gtkPod. Lors du premier lancement, celui-ci génére automatiquement une nouvelle base de données sur votre iPhone.

  • Ouvrez ensuite le menu "Édition > Préférences",
  • Dans l'onglet "Général" cliquez sur "Définir le point de montage …",
  • Notez le point de montage "/media/iphone",
  • Spécifiez un endroit de sauvegarde pour iTunesDB.,
  • Spécifiez le modèle : iPhone.

Vous pouvez maintenant synchroniser vos médias avec gtkPod. À la différence d'Amarok, gtkPod permet non seulement la synchronisation des photos mais aussi l'édition des tags mp4 videos qui apparaitront sous l'iPod de l'iPhone,

Gestion de l'iPhone sour gtkPod

Maintenant vous pouvez utiliser votre iPhone sous Ubuntu avec gtkPod et Amarok mais ne réutiliser pas iTunes après sous peine de devoir recommencer la manipulation.

Synchronisation manuelle de l'iPhone

Avec cette méthode, vous déposez vos fichiers multimédias par ssh dans l'arborescence de l'iPhone. Votre musique et vos vidéos ne sont plus accessibles par l'iPod de l'iPhone et vous devez utiliser d'autres logiciels iPhone pour les lire.

Si vous avez suivi la méthode ipod-convenience (voir ci-dessus), l'arborescence de votre iPhone est accessible par votre navigateur de fichier dans /media/ipod/.

Navigation dans l'arborescence de l'iPhone sous Nautilus

dTunes

dTunes est disponible via Cydia. Il permet de lire musiques et vidéos qui sont stockées dans le répertoire /var/mobile/Library/Downloads de l'iPhone.

  • Installez dTunes sur l'iPhone jailbreaké via Cydia,
  • Montez l'iPhone avec ipod-convenience (cf plus haut pour le tuto),
  • Copiez vos musiques sur l'iPhone dans le dossier /var/mobile/Library/Downloads comme sur une clé USB et utilisez dTunes pour les lire.
pwnPlayer

pwnPlayer ne permet que de lire la musique pour le moment. La marche à suivre est similaire à celle de dTunes.

  • Installez pwnPlayer sur l'iPhone jailbreaké via Cydia et configurez le pour utiliser les musiques situées dans /private/var/mobile/Media/Musiques,
  • Montez l'iPhone avec ipod-convenience (cf plus haut pour le tuto),
  • Copiez vos musiques sur l'iPhone dans le dossier Musiques comme sur une clé USB et utilisez le logiciel pwnPlayer pour les lire.
Mplayer

MPlayer est disponible via Cydia. Il supporte les formats mpeg4, h.264, wmv, mp3, aac, wma et real media et s'installe de façon similaire aux deux logiciels précédents. Les fichiers doivent être stockés dans le répertoire /private/var/media.

Les contacts et l'agenda

Nuevasync

Nuevasync permet de synchroniser contacts et agenda de l'iPhone avec un ceux d'un compte google. Le service est gratuit et permet de synchroniser plusieurs calendriers google. Vous pourrez ensuite synchroniser ces données avec Thunderbird ou Evolution.

Lors de la première synchronisation, vous perdrez tous vos contacts et rendez-vous inscrits sur l'iPhone.

Il existe aussi une application Google Sync en version beta qui permet de synchroniser calendriers et contacts google.

Funambol

Funambol propose une suite de logiciels open-sources permettant de synchroniser contacts, agenda, tâches "over-the-air" (bien que le terme ne semble pas être tout à fait exact).

En ce qui concerne l'iPhone, Funambol ne synchronise que les contacts (synchronisation du calendrier, des tâches et des notes sont prévus… depuis début 2008). La synchronisation se fait entre l'iPhone et un serveur central SyncML qui peut à son tour se synchroniser avec Thunderbird, Sunbird ou Evolution.

Installation

Sur un iPhone Jailbreaké : installer funambol via l'installeur puis configurer le serveur SyncML.

Sans Jailbreak : ouvrir Safari et se connecter à http://my.funambol.com (vous devrez utiliser le portail de funambol comme serveur SyncML).

Un serveur

Vous avez quelques réticences à stocker vos informations dans les bases de données d'une société tiers, pas de problème : la page funambol vous explique de manière simple comment installer un serveur à la maison et comment configurer votre iPhone et vos différents organiseurs.

Stockage de fichiers

L'application gratuite Discover permet, via une connexion Wifi, d'échanger des fichiers de tout type () entre votre PC et votre iPhone. Ceci permet d'utiliser votre iPhone comme une clef USB. Notez bien que celle-ci ne donne accès qu'aux répertoires private, public et photos de votre iPhone. Vous ne pourrez pas gérer la bibliothèque musicale ou vidéo de votre iPhone avec cette application.

Pour l'installation :

  1. Installez l'application Discover via l'AppStore sur votre iPhone,
  2. connectez l'iPhone sur votre réseau Wifi,
  3. lancez l'application Discover sur l'iPhone. Celle-ci vous donnera l'URL à saisir dans votre navigateur pour accéder aux dossiers de l'iPhone,
  4. le transfert des fichiers se fait directement via le navigateur Web du PC.

Synchronisation sous iTunes virtualisé

L'utilisation d'iTunes sous machine virtuelle offre les mêmes possibilités de synchronisation qu'avec iTunes sous OS natif. Ceci ne nécessite pas le jailbreakage de l'iPhone mais requiert l'installation d'une machine virtuelle Windows ainsi que la disponibilité des ressources à synchroniser sous cet OS (musiques, vidéos, etc.).

iTunes sous VirtualBox

Cette solution nécessite une installation de VirtualBox non-ose fonctionnelle avec communication des ports USB :

Procédez ensuite à l'installation d'iTunes.

Sous Intrepid la gestion de l'iPhone ne demande aucune manipulation supplémentaire. La mise à jour du firmware a par exemple plusieurs fois été testée avec succès.

Sous Hardy, une manipulation supplémentaire est nécessaire ( tutoriel).

Sous Hardy la mise à jour du firmware n'est absolument pas garantie.

iTunes sous vmware-player

Il est possible de synchroniser l'iPhone à travers une machine virtuelle en suivant le tutoriel de bilbo858 sur le forum.

Cette méthode est relativement instable et présente des risques de perte de données.

Ne tentez ni restauration ni mise à jour du firmware sous vmware sous peine de rendre votre iPhone inutilisable.

Encoder des vidéos

Vous pouvez très facilement encoder des vidéos à partir de vos fichiers ou de vos DVD de manière à les lire sur votre iPhone, et ce grâce au logiciel libre et gratuit Handbrake. Quelques fonctionnalités :

  1. encode fichier vidéo et disque DVD en un fichier au format iPhone,
  2. gère les sous-titres, les pistes audio et les chapitres des DVD.

Handbrake est disponible sous deux versions, avec une interface graphique GTK (GUI) en ligne de commande (CLI). Les deux versions sont à télécharger sur le site officiel.

encodage video Handbrake

Sous Hardy (8.04), la version GUI ne fonctionne pas, mais vous pouvez toujours utiliser la version CLI :

./HandBrakeCLI -i /dev/scd0 -o movie.mp4 --preset="iPhone & iPod Touch" 

Si vous êtes un puriste, vous pouvez aussi utiliser ffmpeg en ligne de commande :

ffmpeg -i video.avi -f mp4 -vcodec mpeg4 -maxrate 1000 -b 700 -bufsize 4096 -g 300 -acodec aac -ab 192 -s 480x320 video.mp4

Vous pouvez ensuite déposer ces vidéos sur votre iPhone

  • via iTunes virtualisé pour un iPhone original,
  • en utilisant gtkPod/Amarok si votre iPhone est jailbreaké,
  • dans le répertoire adhoc si vous utilisez Mplayer, dTunes ou pwnPlayer.

Qu'est-ce que le jailbreakage ?

Le Jailbreakage consiste à modifier le firmware de l'appareil afin d'installer des logiciels tiers (c'est à dire non-fournis par Apple, généralement car ne respectant pas les clauses de développement). En ce qui concerne notre utilisation sous Ubuntu, cette manipulation nous permet de synchroniser musique et vidéos sans utiliser le triumvira machine virtuelle+Windows+iTunes. Lors du jailbreakage, un serveur SSH est installé, ce qui permet sous Ubuntu d'accèder au contenu de l'iPhone par une connexion ssh standard.

Le jailbreak de votre iPhone se fait sous votre responsabilité et annule n'annule absolument pas la garantie logicielle de l'appareil. A condition de revenir à la configuration logicielle de base en restaurant l'iPhone depuis iTunes. Il faut pour cela avoir déjà synchronisé une fois l'iPhone avec iTunes.

Vous pouvez jeter un œil aux sites Forum SOSiPhone pour firmware 1.x, Forum SOSiPhone pour firmware 2.x et http://www.frenchiphone.com qui indiquent pas mal de petites astuces, dont la procédure à suivre pour Jailbreaker votre iPhone.

LÉGALITÉ OU NON DU JAILBREAK ?1)

Nous ne vous expliquerons pas ici cette procédure appelée « Jailbreak » - ou en français « Sortir de prison » - car ceci peut être considéré comme illégal.

Cependant, si on étudie la loi DADVSI, celle-ci nous dit qu'il est interdit de contourner des verrouillages mis en place par les éditeurs (donc ici Apple) sauf pour assurer l'interopérabilité (ce qui est notre cas avec Ubuntu) 2).

Apple indique que l'appareil iPhone ne fonctionne qu'avec iTunes sur les systèmes d'exploitation MacOs ou Windows.
On peut alors dans notre cas, considérer le Jailbreak comme un moyen nécessaire pour assurer l'interopérabilité de l'iPhone avec Ubuntu.

Ps: pour le firmware 3.0 iphone interdit le jailbreak directement dans la licence d'utilisation à accepter pour l'installation du firmware

_Enchained.

Autres méthodes pour se connecter à l'iPhone

Se connecter à un serveur

Sous Gnome, lancez « Se connecter à un serveur » de Nautilus, disponible dans le menu Raccourcis. Se connecter en root avec le mot de passe alpine3).

Sshfs

Vous aurez alors besoin d'un dossier qui permettra de monter l'iPhone sur Ubuntu. Dans un terminal créez le dossier /media/iphone :

 sudo mkdir /media/iphone/ -m 777

Ajoutez ensuite votre nom d'utilisateur au groupe fuse

 sudo adduser $USER fuse 

Les commandes suivantes permettent respectivement de "monter" et "démonter" l'iPhone sur Ubuntu, les logiciels pourront alors communiquer avec. Donc soit vous les inscrivez dans chacun de ces logiciels (par exemple Amarok) soit vous créez des commandes de connexion automatisées via nautilus_scripts.

 #version <= 1.1.2
 sshfs root@iphone:/var/root/Media /media/iphone/ 
 #version >= 1.1.3
 sshfs root@iphone:/var/mobile/Media /media/iphone/
 #démonter :
 fusermount -u /media/iphone

Au montage la commande vous demandera votre mot de passe ssh. L'iphone apparaîtra alors sur votre bureau comme un disque dur.

Bugs et dépannage

Impossible de monter l'iPhone

Si le message suivant apparait :

fuse: mountpoint is not empty
fuse: if you are sure this is safe, use the 'nonempty' mount option

Comme indiqué : le repertoire de montage n'est pas vide. Prenez garde à ce que votre iPhone ne soit pas monté / connecté (si nécessaire éteignez-le) ouvrez votre repertoire de montage (/media/iphone) et supprimez son contenu (celui-ci doit contenir tout au plus 2 liens symbolique et un repertoire plus ou moins vide).

Collection corrompue

Vous avez tout de même voulu substituer votre lecteur audio préféré à iTunes et vous avez cassé votre base de données ? Deux solutions s'offrent à vous :

  • Un reset via iTunes. Dans ce cas, toutes vos données iPhones non sauvegardées sous iTunes seront perdues (musiques, vidéos, contacts, etc.). L'iPhone retournera au dernier firmware,
  • Vider votre collection de musique et regénérer un iTunesDB vide. Ceci nécessite un accès console ou SSH sur votre iPhone. Entrez alors le code suivant :
find / -name *mp3 | xargs rm -f {};
mv /private/var/mobile/Media/iTunes_Control/iTunes/iTunesDB /private/var/mobile/Media/iTunes_Control/iTunes/iTunesDB.bak

Divers

  • gtkPod ne gère pas encore les vidéos encodées en mp4/v2,
  • La liste de lecture de l'iPhone est incorrectement mise à jours lors de l'ajout de nouvelles musiques. Éteignez l'application iPod de l'iPhone (sous iPod iPhone, pressez le bouton home environ 12 secondes). Si cela ne fonctionne pas, essayez la méthode avec ipod-convenience.
  • Les images de pochettes ne sont pas importées. Dans ce cas, essayez la méthode avec ipod-convenience.

Voir aussi

Lien interne Ubuntu-fr

Liens externes internet

Projets annexes

  • lprod - Exportations de vidéos sur Ubuntu pour appareils mobiles (pda / iPod / iPhone …) beta tests en cours.
  • iPhone Linux[en] - Communauté de développeurs Linux pour iPhone.
  • MNPLight[fr] Move And Play Light - Une application destinée à la synchronisation sans passer par iTunes (musique, contacts, agenda, etc.). Ce n'est pas très ergonomique et beaucoup de manipulations peuvent sembler dangereuses pour les données.

Contributeurs : _Enchained - esion - bilbo858 - jekkil - Firefly - mogwai -Hopf

1) Ceci n'est pas une information officielle mais mon interprétation de la loi- _Enchained.
2) ceci est un résumé, pas une citation pure et simple - _Enchained.
3) démarche pour KDE ?

iphone.txt · Dernière modification: 2009/06/01 19:34 par 213.95.41.13
Le contenu de ce wiki est sous double licence : CC BY-SA et GNU FDL