J'ai d'abord appliqué la méthode décrite par marcan sous Fedora 11 (en packageant tout en rpm pour ne pas trop abimer mon install).
Mais gvfs-afc n'étant pas disponible dans F11, je ne pouvais pas synchroniser mon iPhone avec rhythmbox. Par contre, gtkpod fonctionnait comme un charme.

Du coup, après une installation de Fedora 12 qui s'est très bien passée,(mis à part un petit souci vite réglé grâce à la doc de fedora-fr), je me suis attaqué à la synchronisation.
Attention ce sont des versions de développement, surtout libusb dont dépendent pas mal de paquets dépendent ! Ces instructions proviennent d'un autre blog anglophone principalement. Tout d'abord ajouter quelques paquets avec le dépôt rawhide :

#yum --enablerepo rawhide install usbmuxd-devel libplist-devel libiphone-devel ifuse
#yum --enablerepo rawhide update gvfs-afc

Ensuite, on installe une version de libgpod plus récente :

#rpm -Uvh http://users.linpro.no/ingvar/libgpod/0.7.3-0.git20100105/i686/libgpod-0.7.3-0.git20100105.fc12.i686.rpm

Puis il faut modifier le fichier /lib/udev/rules.d/85-usbmuxd.rules et ajouter OWNER=”usbmux" à la ligne 4 (Pour éviter que usbmuxd ne tourne avec les droits root):

ACTION=="add", SUBSYSTEM=="usb", OWNER="usbmux", ATTR{idVendor}=="05ac", ATTR{idProduct}=="129[0-9]", ATTR{bConfigurationValue}!="$attr{bNumConfigurations}", ATTR{bConfigurationValue}="$attr{bNumConfigurations}", RUN+="/usr/sbin/usbmuxd -v -v -u -U"

Et ajouter l'utilisateur usbmux sus-nommé

#useradd -r -c "usbmuxd daemon user" -d /media -s /bin/false usbmux

Un reboot n'est pas nécessaire (un simple redémarrage de gnome devrait suffire)

Pour pouvoir utiliser gtkpod il faut créer un point de montage (gtkpod n'utilise pas gvfs-afc)

#mkdir /media/iphone
#chown utilisateur_simple /media/iphone
#chgrp utilisateur_simple /media/iphone
#echo user_allow_other >> /etc/fuse.conf

Enfin en utilisateur simple,

ifuse /media/iphone/// 
Une fois la synchronisation terminée, il faut bien penser à démonter l'iphone avec :
///fusermount -u /media/ipone 

Il ne reste plus qu'à ajouter quelques infos dans l'iphone. il faut identifier l'uuid, une chaîne de 40 caractères retournée par la commande :

#lsusb -v | grep -i iSerial

Puis mettre à jour l'iPhone

#ifuse /media/iphone
#ipod-read-sysinfo-extended your_uuid_string /media/iphone
#fusermount -u /media/iphone

Et voilà ! tout est prêt !