Raspberry Pi: accéder à Dropbox

La communauté des utilisateurs des Raspberry Pi est grandissante. Nombreux sont les utilisateurs cherchant à installer le client Dropbox sur leur Raspberry, se heurtant tous au même problème: Dropbox n’est installable que sur des machines ayant une architecture x86 (32bits) ou x86_64 (64bits), et non pas une architecture ARM. La synchronisation n’est donc pas possible.

J’ai cependant cherché d’autres solutions à mettre en place afin de pouvoir accéder à ses fichiers Dropbox depuis le Raspberry Pi.

En montant le dossier Dropbox dans le système de fichiers

Linux (et par extension les différentes distributions Linux, incluant Debian) est extrêmement flexible et puissant dans la gestion des fichiers. Par exemple, il est possible de monter un répertoire distant dans le système de fichiers: vous pouvez très bien rendre disponible un serveur ftp dans votre répertoire personnel (/home/pi/ftp_free/ par exemple) et agir sur les fichiers comme s’ils étaient présents sur votre disque dur. Aucune solution gratuite n’est cependant disponible, l’API  Dropbox ne proposant pas cette option.

En utilisant Owncloud 4.5

Owncloud se présente comme étant une alternative libre à Dropbox, installable sur un serveur web. De nombreux modules complémentaires sont disponibles, de la gestion d’une liste de contacts jusqu’à l’agenda personnel. Ce qui nous intéresse ici, c’est que la version 4.5 apporte des fonctionnalités telles que la possibilité de monter des services comme Dropbox ou Google Drive directement dans Owncloud. Il est donc possible d’accéder aux fichiers de Dropbox à partir d’Owncloud installé sur le Raspberry Pi… Seul problème: les fichiers de Dropbox ne sont pas téléchargés sur le Raspberry, mais uniquement accessibles à partir de l’interface web d’Owncloud:

As far as I can tell, it doesn’t download any files (at least for me the mount point – the folder where the Dropbox custom mount is mounted to – remains emtpy) – it seems it just uses the Dropbox REST API to access the Dropbox files via the owncloud interface. (forum Owncloud)

Exit donc la méthode d’Owncloud !

En utilisant l’API de Dropbox

L’API de Dropbox permet de créer des applications ayant les autorisations nécessaires afin d’agir sur vos fichiers (après confirmation de votre part bien évidemment). Une application tierce permettrait donc d’imiter le comportement du client Dropbox pourrait donc éventuellement être créée.

Dropbox Bash Uploader

Après quelques recherches, j’ai découvert le projet Bash Dropbox Uploader. Le site de ce projet propose un fichier .sh (script bash Unix) permettant d’effectuer certaines actions sur les fichiers:

  • upload: mettre un fichier en ligne dans votre dossier Dropbox
  • download: télécharger un fichier à partir de votre dossier Dropbox
  • delete: supprime un fichier distant
  • list: affiche la liste des fichiers de votre dossier Dropbox, pour un répertoire spécifié en paramètre
  • info: affiche des informations sur votre compte Dropbox (adresse mail, espace total, espace utilisé, …)
  • unlink: supprime les autorisations de Bash Dropbox Uploader

Cependant, aucune de ces commandes ne permet de synchroniser un dossier local avec le dossier distant de Dropbox. Je suis actuellement en train de contacter le développeur de ce projet à propos d’un éventuel futur client de synchronisation basé sur ce projet. C’est la meilleure piste que nous ayons pour l’instant.

Utilisation d’un autre outil de synchronisation

sharea.netA première vue, aucun autre service ne propose de client en ligne de commande compatible avec l’architecture ARM. J’ai cependant contacté le développeur principal de Sharea, un dropbox-like axé sur le social. Selon lui, la réalisation d’un client compatible ARM serait possible et peut être prévue pour le futur. A suivre, donc !

Emuler un processeur i386

C’est le projet fou d’un internaute: émuler un processeur i386 grâce à Qemu

QEMU runs on x86 systems running Linux, Microsoft Windows, and some UNIX platforms, and can host target systems from a range of different microprocessors as detailed on the QEMU website

Cela n’a cependant pas fonctionné – notemment à cause de certaines librairies utilisées par Dropbox. Vous pouvez lire son travail sur son blog.

La question reste donc sans réponse pour l’instant, surtout que Dropbox ne semple pas prévoir de client pour architecture ARM, faisant la sourde oreille à toutes les demandes de fonctionnalités allant en ce sens.

(source image 1)