La méthode précédente fonctionne, mais il en existe une autre (un peu plus brutale). Vous avez besoin de LaunchAgent pour surveiller le fichier qui change et exécuter une action lorsqu'il est modifié.
Enregistrez ce qui suit dans un fichier dans ~/Bibliothèque/LaunchAgents/, vous pouvez utiliser comme nom de fichier 'com.yourname.programname.plist'). Remplacer /full/path/to/desktoppicture
avec le chemin complet de l'image dans votre dossier Dropbox.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.yourname.programname</string>
<key>Program</key>
<string>/usr/bin/killall</string>
<key>ProgramArguments</key>
<array>
<string>killall</string>
<string>Dock</string>
</array>
<key>WatchPaths</key>
<array>
<string>/full/path/to/your/desktoppicture</string>
</array>
</dict>
</plist>
Après avoir modifié et enregistré la liste des propriétés, ouvrez le Terminal et tapez :
launchctl load -w ~/Library/LaunchAgents/com.yourname.programname.plist
(en remplaçant yourname.programname par le nom que vous avez donné au fichier plist).
À ce stade, chaque fois que le fichier est modifié, killall Dock
sera exécutée, ce qui aura pour effet de quitter l'application Dock et de forcer l'actualisation du bureau. C'est un peu brutal, et pourrait être ennuyeux car le rafraîchissement du Dock/Bureau prend ~1 seconde et pendant ce temps vous ne pouvez pas utiliser Mission Control et Dashboard, mais cela devrait être automatique.
Si vous souhaitez désinstaller LaunchAgent, tapez d'abord :
launchctl unload -w ~/Library/LaunchAgents/com.yourname.programname.plist
(en renommant le fichier pour qu'il corresponde au vôtre), puis supprimez le fichier plist de ~/LaunchAgents/