Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Open Archiver - L'archiveur qui perdait des emails (mais c'est corrigé, ouf !)

Un import qui affiche "terminé" et qui a mangé une partie de vos mails au passage, c'est le genre de bug qu'on ne voit jamais venir... Hé bien Open Archiver vient d'en corriger quatre d'un coup.

Open Archiver c'est une plateforme d'archivage d'emails auto-hébergée développée par Weishest, dont la seule et unique mission est d'aspirer vos boîtes et de les stocker en .eml sur votre serveur.

Mais attention, le mot "archivage" a son importance, parce que ce n'est pas un backup. Je m'explique... l'idée c'est de garder un dépôt consultable et inaltérable de tout ce qui est passé par vos boîtes, ce qui intéresse surtout les structures ou les personnes comme moi qui doivent pouvoir retrouver un échange trois ans plus tard parce qu'on leur demande tout un tas de trucs tout le temps ^^.

Côté sources, il avale de l'IMAP, du Google Workspace, du Microsoft 365, des fichiers PST, des .eml zippés et du mbox. Ensuite, vos mails archivés finissent chez vous, sur votre disque ou dans un bucket S3, chacun accompagné de son empreinte SHA256 pour repérer une altération.

La grosse news de cette nouvelle release, c'est la recherche avancée. En effet, un panneau de filtres est apparu à côté du champ de mots-clés. Vous restreignez à une source d'ingestion, à une boîte précise, à une fenêtre de dates, aux mails qui ont une pièce jointe ou à ceux qui n'en ont pas et expéditeurs et destinataires s'excluent autant qu'ils s'incluent.

Le panneau de filtres de la recherche avancée, ajouté en v0.5.2

Le mot-clé, lui, peut viser une partie précise du message. Chercher "facture" dans les noms de pièces jointes ne remonte plus tous les mails qui prononcent le mot, juste ceux qui transportent un fichier facture.pdf. Et comme la recherche entière vit dans l'URL, une requête se met en favori et se rejoue à l'identique. L'API suit, avec un GET /v1/search qui accepte les mêmes paramètres que l'interface.

Attention quand même si vous faites la MAJ, faudra relancer un reindex . Et comme les mails existants sont marqués "déjà indexés" à la montée de version, c'est une reconstruction complète qu'il vous faut, pas le simple rattrapage des trous.

Puis surtout, ces notes de version annoncent que plusieurs correctifs "ferment des chemins où un import pouvait sauter ou dupliquer des messages tout en signalant un succès". Le cas le plus vicieux vient d'un composant qui découpe le fichier en messages et qui rendait la main trop tôt. Node recollait alors les morceaux et plusieurs mails arrivaient soudés et finissaient archivés comme un seul. Les imports PST, eux, fabriquaient des messages malformés que les lecteurs affichaient de travers, et une simple re-synchronisation ré-archivait le fichier entier en doublons.

Le plus spectaculaire reste quand même le nom de pièce jointe trop long. Au-delà de 255 octets, l'écriture sur le disque échouait et emportait l'email complet avec elle. Bref, beaucoup de soucis quoi...

Donc si vous tournez déjà dessus, la question à se poser, c'est de savoir si votre archive est déjà foireuse ou pas car un reindex ne la réparera pas. Comme il reconstruit l'index de recherche à partir de ce qui est sur le disque, un message jamais écrit ne réapparaîtra pas. Mais bon, voilà, le découpeur de mbox journalise maintenant son nombre de messages, ce qui rend l'écart visible entre le fichier source et l'archive. Pour le reste, il faudra réimporter ce qui manque

Pour le faire fonctionner, comptez 4 Go de RAM, ou 2 Go si vous branchez PostgreSQL, Valkey et Meilisearch en externe. Le cœur est en AGPL, ça se lance avec un docker compose up, et une démo publique tourne en ligne si vous voulez tâter le truc avant. Pour ma part, je pense que c'est intéressant en entreprise, mais clairement, une usine à gaz, si vous avez juste un compte Gmail à archiver. A la place, je vous avais déjà montré Eonvelope et Bichon , qui sont deux archiveurs autrement plus légers !

Et si c'est pour faire de la recherche, ce que je vous conseille, c'est de faire comme moi, c'est-à-dire un RAG qui indexe tous vos emails en local et qui vous permet de chercher dedans facilement avec n'importe quel LLM qui supporte les outils MCP. Moi je fais ça avec LEANN et ça marche très bien .

Open Archiver est à découvrir ici !

Eonvelope - Vos emails méritent aussi un backup local

On archive nos photos avec Immich , nos documents avec Readur , nos mots de passe avec Vaultwarden ... mais nos emails ? Ah bah non, ça on les laisse chez Google en croisant les doigts pour que tout se passe bien jusqu'à la fin de nos jours. C'est quand même un peu dinguo quand on y réfléchit sérieusement.

Et pourtant, y'a des années de conversations là-dedans ! Des factures en pièce jointe, des confirmations de commande, des échanges pro avec votre comptable, des mots de passe envoyés en clair (oui, hélas, ça arrive encore). Du coup, quand un hébergeur mail décide de changer ses conditions générales ou de fermer boutique, tout part à la poubelle si vous n'y faites pas attention.

Eonvelope , c'est un outil open source en Python qui permet de sauvegarder automatiquement tout ça sur votre propre serveur et qui se lance avec un simple docker compose up.

Le truc, c'est que des outils comme Gmvault font déjà le boulot via cron, mais uniquement pour Gmail et en ligne de commande alors qu'Eonvelope, lui, un peu à la manière de Bichon , tourne en arrière-plan avec une interface web et archive en continu tous vos comptes. Franchement, c'est pas le même délire. Vous branchez vos comptes IMAP, POP3, Exchange, et même JMAP (le protocole poussé par Fastmail qui commence tout juste à se démocratiser), vous réglez la fréquence, et hop, vos mails atterrissent dans votre instance sans que vous ayez à y penser.

Attention par contre, c'est de l'archivage, pas un client mail... vous ne répondrez pas à vos mails depuis l'interface.

Côté installation, c'est du Docker avec seulement 2 conteneurs, le serveur web et la base de données. En fait, comptez 5 minutes chrono si vous avez déjà un serveur dédié ou un VPS, le fichier docker-compose.yml est fourni et les variables d'environnement sont bien documentées sur ReadTheDocs . Y'a même un mode basse consommation pour ceux qui font tourner ça sur un Raspberry Pi 4 avec 2 Go de RAM ou un petit Synology ! SSL et HTTPS sont inclus par défaut, et l'authentification multifacteur aussi.

Mais le vrai point fort, c'est les intégrations avec le reste de l'écosystème self-hosted. Concrètement, vous pouvez envoyer vos pièces jointes PDF vers Paperless-ngx pour l'OCR, les photos vers Immich, et exporter vos contacts vers votre carnet d'adresses Nextcloud. Y'a aussi un endpoint Prometheus pour brancher Grafana et suivre vos stats d'archivage. En gros, si vous avez déjà un homelab qui tourne, ça vient se brancher dessus comme une pièce de Lego.

L'interface web est en PWA (donc utilisable sur votre téléphone), avec un moteur de recherche, du filtrage par date et par expéditeur, des fils de conversation reconstitués et de l'import/export en EML et MBOX. Franchement, c'est propre. Y'a aussi une API REST pour ceux qui préfèrent scripter par-dessus plutôt que de passer par l'interface.

Le projet est sous licence AGPLv3 et son dev déclare l'utiliser lui-même au quotidien, ce qui est souvent bon signe. Notez que la migration depuis un backup existant n'est pas forcément fluide mais qui ne tente rien n'a rien !

Bref, ça comble un vrai manque dans la stack de nos machins auto-hébergés mais je trouve que l'approche est clairement plus intégrée que ce qui existe (genre MailPiler ou un combo fetchmail+dovecot). À surveiller donc !

Source

Anna's Archive vient de sauvegarder la totalité de Spotify

Vous connaissez Anna's Archive , cette bibliothèque pirate qui sauvegarde tous les livres et articles scientifiques de l'humanité ? Hé bien ils viennent de s'attaquer à un nouveau chantier : sauvegarder Spotify (en tout cas le plus possible), c'est à dire des millions de morceaux + de la métadonnées, soit ~300 téraoctets de données !!

Anna's Archive se focalise normalement sur le texte (livres, et documents de recherche) parce que c'est ce qui a la plus haute densité d'information mais leur mission, c'est de préserver le savoir et la culture de l'humanité, et ça inclut donc aussi la musique. Et comme ils ont trouvé un moyen de scraper Spotify à grande échelle, ils se sont dit "Hey pourquoi pas ? On est des oufs".

Et ça donne la plus grande base de données de métadonnées musicales jamais rendue publique, avec 186 millions d'ISRCs uniques (ces codes qui identifient chaque enregistrement). Pour vous donner un ordre de grandeur, MusicBrainz n'en a que 5 millions. Niveau fichiers audio, ils ont aussi archivé environ 86 millions de morceaux, ce qui représente 99,6% des écoutes sur la plateforme (même si ça ne fait "que" 37% du catalogue total). Donc si vous écoutez un morceau au hasard sur Spotify, y'a 99,6% de chances qu'il soit dans l'archive.

Pour trier tout ça, ils ont utilisé la métrique "popularité" de Spotify qui va de 0 à 100. Ainsi, pour les morceaux avec une popularité supérieure à 0, ils ont récupéré quasiment tout en qualité originale (OGG Vorbis 160kbit/s) et pour les morceaux à popularité 0 (soit ~70% du catalogue, des trucs que personne n'écoute), ils ont réencodé en OGG Opus 75kbit/s pour gagner de la place… mais ils ne sont pas allés au bout de la longue traîne (trop de stockage pour trop peu de gain, et pas mal de contenu “bof” à popularité 0). Pour 99% des gens ça sonne pareil, même si je sais que les audiophiles vont me tuer dans les commentaires ^^.

En regardant les stats qu'ils ont produit à partir de ce qui a été scrappé, les 3 morceaux les plus populaires (Die With A Smile de Lady Gaga et Bruno Mars, BIRDS OF A FEATHER de Billie Eilish, et DtMF de Bad Bunny) ont été streamés plus de fois que les 20 à 100 millions de morceaux les moins populaires combinés. Bon, ils précisent aussi que la popularité est très dépendante du moment, donc ce top est un peu arbitraire mais ça montre à quel point la longue traîne est looooongue sur les plateformes de streaming...

Après le problème avec la préservation musicale actuelle (ce qu'on retrouve sur les sites de Torrent par exemple), c'est qu'elle se concentre uniquement sur les artistes populaires et la qualité maximale (FLAC lossless). Du coup, y'a plein de musique obscure qui ne survit que si une seule personne décide de la partager. Et ces fichiers sont souvent mal seedés. Et c'est pour ça que je trouve l'approche d'Anna's Archive plutôt pas mal car elle consiste à archiver tout ce qui existe (ou presque), même en qualité "suffisante", plutôt que de se concentrer sur un sous-ensemble en qualité parfaite.

Et comme vous vous en doutez, tout est distribué via des torrents, avec les métadonnées déjà disponibles (moins de 200 Go compressés) et les fichiers audio qui arrivent progressivement par ordre de popularité. Note la base s'arrête à juillet 2025, donc tout ce qui est sorti après peut ne pas être là (même s'il y a quelques exceptions).

Bref, c'est la première archive de préservation musicale vraiment ouverte, que n'importe qui peut mirrorer s'il a assez de stockage et voilà comment grâce à l'aide de tout le monde, le patrimoine musical de l'humanité sera protégé pour toujours des catastrophes naturelles, des guerres, des coupes budgétaires et autres désastres... Par contre, pas sûr que ça la protège de la boulimie des IA génératives.

Merci à Lilian pour l'info !

Source

❌