URL: https://linuxfr.org/news/etesync-sortie-du-protocole-en-version-2-et-autres-informations Title: EteSync, sortie du protocole en version 2 et autres informations Authors: Pierre-Alain TORET Davy Defaud, Benoît Sibaud, Lawless et Ysabeau Date: 2020-08-13T13:16:27+02:00 License: CC By-SA Tags: etesync, contacts, calendrier, tâches, auto-hebergement et vie_privée Score: 42 Trois ans et demi sont passés depuis le lancement d’EteSync et le projet a déjà pas mal évolué. Je ne suis pas vraiment neutre, je participe de temps en temps au projet depuis un petit bout de temps, mais je suis étonné de ne pas avoir vu d’articles passer ici. La sortie imminente d’une nouvelle version du protocole et les nombreuses intégrations système ou applicatives, déjà disponibles depuis peu ou à venir, sont une bonne occasion de changer cet état de fait. ![EteSync](https://www.etesync.com/static/img/brand.5e0c4083d73a.svg) ---- [Site officiel](https://www.etesync.com/) [Dépôts des codes source du projet](https://github.com/etesync) [FAQ officielle (répond à la majorité des questions :D)](https://www.etesync.com/faq/) [Guide d’utilisation](https://www.etesync.com/user-guide/) [Canal IRC via Kiwi IRC](https://www.etesync.com/community-chat/) ---- EteSync ======= EteSync (_End‑to‑end synchronization_, synchronisation de bout en bout en français), est le nom de plusieurs éléments qu’il faut distinguer : * un protocole ; * un service en ligne (en fait, une instance payante du serveur EteSync parmi d’autres, administrée par le fondateur du projet, le service étant facilement auto‑hébergeable) ; * certaines applications clientes. L’ensemble a été fondé par [Tom Hacohen](https://stosb.com/), un ancien de chez Samsung qui a travaillé sur Enlightenment et OpenMoko entre autres choses. Le protocole ------------ Le protocole permet de gérer ses contacts, événements et tâches, le tout étant chiffré de bout en bout. On pourrait donc rapprocher l’utilisation de ce protocole de [CalDAV](https://fr.wikipedia.org/wiki/CalDAV) et [CardDAV](https://fr.wikipedia.org/wiki/CardDAV), mais avec l’impossibilité pour le serveur distant de savoir ce qui est stocké. De plus, ce protocole est journalisé, c’est‑à‑dire que chaque action réalisée (création, modification et suppression) est enregistrée. Cela permet, par exemple, de revenir en arrière facilement (un contact supprimé, il suffit de retrouver et d’annuler l’action de suppression par exemple). À noter que le protocole dans sa version actuelle permet déjà des utilisations intéressantes comme le partage de calendrier entre différents utilisateurs. Comme le mentionne le titre de cet article, le protocole est en cours d’évolution. Comme l’annonce l’[article du blog officiel du 12 août 2020](https://blog.etesync.com/coming-soon-etesync-2-0/), la version 2 utilisera la bibliothèque [libsodium](https://doc.libsodium.org/) et sera vérifiée à l’aide de [Verifpal](https://verifpal.com/). Le service en ligne / serveur ----------------------------- Il est nécessaire de faire tourner un serveur pour que le service fonctionne. Il existe donc une [instance officielle](https://api.etesync.com/). La FAQ mentionne quelque chose d’intéressant à mon sens : > _Why should I trust you with my data?_ > _You shouldn’t._ > Pourquoi devrais-je vous faire confiance pour mes données ? > Vous ne devriez pas. Ce qui va à l’encontre du discours de nombreux fournisseurs de services en ligne en ce moment, je trouve, et mérite d’être souligné. La possibilité de mettre en place sa propre instance (mes contributions ont principalement eu lieu à ce niveau‑là, pour faciliter le déploiement) est également la bienvenue pour celles et ceux qui n’auraient vraiment pas confiance. Pour l’instant, l’implémentation officielle est en Python et basée sur Django. Il est possible d’utiliser une base de données de type SQLite ou une _back‑end_ géré par Django (pour ma part, j’utilise PostgreSQL sans souci). J’ai réalisé des paquets [RPM non officiels](https://copr.fedorainfracloud.org/coprs/daftaupe/etesync/) pour Fedora/CentOS et pour l’[Arch Linux User Repository](https://aur.archlinux.org/packages/etesync-server/) afin de simplifier un peu l’installation, mais n’ai pas eu beaucoup de retours pour l’instant. Je ne me suis pas attaqué aux paquets `.deb`, n’utilisant pas de système lié de près ou de loin à Debian. J’ai également pris la peine de mettre en place un fichier `.ini` pour que la configuration du serveur soit plus aisée et éviter de devoir aller éditer directement les fichiers en Python. Les applications clientes ------------------------- ### Client Web Le [client Web officiel](https://client.etesync.com) peut également être auto‑hébergé à l’aide d’un simple serveur Web. Il est néanmoins à noter que l’instance officielle permet d’accéder sans problème à son propre serveur en renseignant son adresse URL dans les paramètres avancés. ### Android Il y a bien évidemment un client pour Android qui permet d’importer facilement ses contacts à partir d’une exportation en vCard, par exemple, ou directement depuis un compte déjà paramétré sur l’appareil. L’application est disponible sur F‑Droid et sur le Play Store de Google. ### iOS De la même façon, une application est disponible pour les appareils tournant sous iOS. Néanmoins, d’après ce que j’ai pu voir, l’écosystème Apple est beaucoup moins simple à appréhender, selon les retours que Tom fait sur le canal IRC. Le développement de ce client a été soutenu par [NLnet](https://nlnet.nl/project/Etesync-iOS/). ### GNOME et KDE (GSoC) Le projet a bénéficié cette année de deux projets lors du « Summer of Code », vous pouvez les voir en détail [ici](https://summerofcode.withgoogle.com/projects/?sp-search=etesync). Les réalisations sont : * la réalisation d’un _back‑end_ EteSync pour Akonadi (côté KDE) ; * la réalisation d’un _back‑end_ EteSync pour Evolution Data Server (côté GNOME). ### Thunderbird Un projet de développement est en cours pour ajouter la prise en charge du protocole EteSync au greffon [TbSync](https://addons.thunderbird.net/fr/thunderbird/addon/tbsync/). Celui‑ci est également soutenu par [NLnet](https://nlnet.nl/project/EteSync-Thunderbird/). En l’absence de cette prise en charge, il est pour l’instant nécessaire d’utiliser le pont [DAV/EteSync](https://github.com/etesync/etesync-dav) pour exploiter ses contacts et calendriers depuis Thunderbird. C’est un serveur [Radicale](https://radicale.org) modifié qui parle d’un côté le protocole EteSync vers le serveur, et de l’autre les protocoles CalDAV/CardDAV pour que d’autres clients ne possédant pas encore de prise en charge d’EteSync puissent s’y connecter. Cela se rapproche dans l’esprit de ce que propose [ProtonMail](https://mail.protonmail.com/bridge) pour pouvoir utiliser des clients de messagerie électronique traditionnels avec son service de courriel. ### Tasks.org (pour les tâches uniquement) Il est possible depuis la version 8.0 de l’application de synchroniser les tâches via le protocole EteSync. De nombreuses améliorations ont eu lieu depuis. ### vdirsyncer Il y a une prise en charge d’EteSync depuis mars 2017, selon cette [demande d’intégration Git](https://github.com/pimutils/vdirsyncer/pull/614). Venez participer ! ================== La communauté est principalement regroupée sur le canal IRC [_#etesync_ sur Freenode](ircs://chat.freenode.net:6697/etesync), sur [Matrix](https://matrix.to/#/#freenode_#etesync:matrix.org) (pont vers IRC, en réalité) et sur [Reddit](https://www.reddit.com/r/EteSync/). En ce moment, les extensions pour GNOME et KDE sont en cours de test. Le code source est librement accessible sur les dépôts GitHub.