Synchronisation des préférences sous OSX avec Dropbox

Si vous souhaitez retrouver tous vos réglages sur un autre Mac, utilisez Dropbox pour synchroniser les fichiers de préférences des applications.

Comment ? En déplaçant les fichiers de préférences qui se trouvent dans ~/Library/Preferences ou dans ~/Library/Application Support vers Dropbox, et en les remplaçant par un lien symbolique vers leur nouvel emplacement.

Introduction

Alors que sous Windows les applications enregistrent leurs réglages dans un unique fichier volumineux nommé la base de registres, sous Mac OSX (tout comme GNU/Linux ou tout autre Unix) il est de tradition pour les applications de tout enregistrer sous forme de fichiers1.

On retrouvera souvent deux formats de fichiers :

Bien entendu il y a de nombreux autres formats mais ceux-ci sont les plus courants.

Le principe

Sur la machine source, on déplace les préférences vers Dropbox et on les remplace par un lien vers leur nouvel emplacement.

Déjà, les préférences sont sauvegardées dans Dropbox, bon point.

Sur la machine cible, on effectue l'opération inverse : on efface (ou sauvegarde) les fichiers de préférences concernés et on créé des liens à partir de Dropbox.

Maintenant, vos préférences sont disponibles partout : encore mieux !

Manuellement

Applications

Les emplacements les plus fréquemments utilisés par les applications pour stocker leurs préférences :

En étudiant la documentation, l'aide ou le site web d'une application on trouve souvent une référence à ses fichiers de préférence et à leur emplacement.

Une fois le fichier ou le dossier repéré, il faut enchaîner les opérations suivantes :

Exemple

Nous allons décortiquer un exemple avec les préférences de Sublime text 2.

L'éditeur stocke un dossier Sublime Text 2 dans ~/Library/Application\ Support qui contient tous les réglages : nous allons le manipuler étape par étape dans le Terminal2.

Sauvegarde du fichier :

cd ~/Library/Application\ Support
zip -r ~/Desktop/st2prefs.zip Sublime\ Text\ 2

Création d'un dossier dans Dropbox et déplacement du dossier de Sublime Text 2 :

mkdir ~/Dropbox/Prefs
mv Sublime\ Text\ 2 ~/Dropbox/Prefs/

Remplacement du fichier dans la bibliothèque par un lien :

ln -s ~/Dropbox/Prefs/Sublime\ Text\ 2 ~/Library/Application\ Support/Sublime\ Text\ 2

Système

Vous souhaitez retrouver vos réglages iTunes sur tous vos Macs ?

cd ~/Library/Preferences
mv com.apple.iTunes.plist ~/Dropbox/Prefs/
ln -s ~/Dropbox/Prefs/com.apple.iTunes.plist com.apple.iTunes.plist

Préférences user

On parle là des préférences de bash, Ruby, Python, ssh, git, etc.

Exemple :

cd ~
zip -r ssh.zip .ssh
mv .ssh ~/Dropbox/Prefs/
ln -s ~/Dropbox/Prefs/.ssh .ssh

Commandes utilisées

Résumé des commandes utilisées dans le Terminal :

Automatiquement

Mackup est un script en Python qui permet d'automatiser ce processus.

Le script est encore jeune et peu d'applications sont compatibles, mais c'est prometteur.

Pour le moment je crois qu'il vaut mieux continuer à manipuler ces fichiers sensibles soi-même, manuellement, dans le Terminal, comme un bon vieux dinosaure barbu à gros carreaux.

Encore mieux : étudiez le script de Mackup sur GitHub, et inspirez-vous du principe (simple) pour écrire votre version en Shell, Ruby, AppleScript ou… ce que vous préférez.


  1. pour simplifier, on peut dire qu'historiquement, c'est principalement dû à la nature même du traitement de l'information dans un système Unix, où tout est fichier 

  2. on pourrait manipuler les fichiers avec le Finder après avoir activé l'option pour afficher les fichiers cachés, mais c'est plus long et ça ne marche pas toujours très bien 

Auteur: Eric Dejonckheere