❌

Vue lecture

Un développeur fait tourner les cinématiques de Command & Conquer sur un Atari ST de 1985

Jonas Eschenburg se tape un petit délire cet été, en portant Command & Conquer sur Atari ST, et il vient de s'occuper des cinématiques du jeu, le tout sur une machine équipée d'un Motorola 68000 cadencé à 8 MHz. Le même garçon avait déjà fait tourner Doom dessus.

Le décalage vaut le détour. Command & Conquer sort en 1995 sur PC, en VGA 256 couleurs, soit dix ans après l'Atari ST, qui affiche lui 16 couleurs en 320 par 200 points.

Envoyer les pixels bruts à l'écran est hors de question sur ce genre de matériel. La machine n'a ni le débit de lecture ni la puissance de calcul pour ça.

Ce clic autorise une connexion à Google : adresse IP transmise et traceurs possibles. En savoir plus Voir cette vidéo sur YouTube

Eschenburg a donc écrit son propre codec, baptisé STV, adapté du format VQA que Westwood utilisait à l'époque pour ses vidéos. Le principe repose sur un codebook, autrement dit un dictionnaire de petits carrés de pixels : au lieu de transmettre chaque image entière, le fichier envoie surtout des numéros qui pointent vers des motifs déjà connus du lecteur.

L'astuce est en réalité ailleurs. Les blocs sont découpés pour tomber pile sur l'organisation mémoire de l'Atari, qui range ses couleurs en plans séparés plutôt qu'en pixels contigus, ce qui permet au processeur de recopier les motifs sans passer son temps à réorganiser les bits.

La palette et le dictionnaire se mettent à jour en continu pendant la lecture, et pas une fois pour toutes au début du fichier. Ça évite le gros pâté de blocs baveux qu'on attendrait d'une compression aussi agressive.

Le tout fonctionne sur un 8 MHz d'origine. Sans accélérateur. A priori, aucun jeu Atari ST n'avait affiché de vidéo plein écran avant celui-là.

Le jeu, lui, reste beaucoup plus poussif pour le moment : quelques images par seconde en 16 couleurs, correct seulement à partir d'un Falcon, et il réclame 4 Mo de mémoire. Autour du codec, Eschenburg a publié une dizaine d'utilitaires, dont un encodeur pour fabriquer les fichiers STV et un lecteur natif pour les regarder sur la machine.

Tout est sous licence GPL sur GitHub, le portage se récupère sur itch.io, et il faut fournir ses propres fichiers du jeu d'origine puisque le projet n'a rien à voir avec EA.

Détail amusant, le son ne sort que sur STe et Falcon. Sur un ST de base, les cinématiques défilent en silence complet. La question étant maintenant de savoir si tout ça ne m'a pas donné envie de rejouer à Command and Conquer, pour ressortir mon premier pseudo de game : Moissonneuse killer (vraiment).

Source : Hackaday

  •  

OTI - Le lien à usage unique que les bots ne crament plus

Si vous avez déjà envoyé un lien à usage unique qui est arrivé mort chez votre collègue, c'est probablement la prévisualisation de la messagerie qui a ouvert le lien en premier et qui a cramé le secret accompagnant le lien.

La bonne nouvelle c'est que Oğuzhan Karacabay vient de publier une grosse mise à jour d' OTI , son service open source auto-hébergeable qui génère des liens de partage consultables une seule fois, avec chiffrement dans le navigateur.

Vous collez un mot de passe, une clé d'API ou un bout de config dans OTI, le navigateur chiffre, le serveur lui ne stocke que du charabia, et le destinataire reçoit une jolie URL qui ne fonctionnera bien qu'une fois.

Ce qui change, c'est que le lien ne meurt plus tout seul. En chargeant la page, votre destinataire voit un compte à rebours et un bouton "Decrypt Message", rien d'autre. Du coup, tant que personne ne clique, le message continue son roupillon.

Comme ça, un bot qui déroule les URLs pour fabriquer une jolie vignette repart bredouille. Après si c'est un vrai scanner de sécurité qui charge vraiment la page dans un navigateur automatisé, vous ne pourrez pas éviter le problème.

L'autre nouveauté dans OTI c'est à la création d'un nouveau lien. Le service vous génère en fait 2 liens. Il y a celui que vous envoyez et un second que vous gardez pour vous. Ce dernier vous permettra de consulter l'état du message sans jamais afficher son contenu.

Côté crypto, le contenu est chiffré en AES-256-GCM via WebCrypto, et cette clé AES est elle-même emballée dans une paire RSA-2048 générée dans votre navigateur. La clé privée voyage dans le fragment de l'URL, la partie après le #, que les navigateurs n'envoient jamais au serveur.

Le principe zero-knowledge utilisé par OTI est quasi le même que celui de PrivateBin ou d' Enclosed où la clé ne quitte jamais le navigateur.

Par contre, ça donne des liens obèses puisque le mien faisait 1825 caractères, dont 1728 rien que pour le fragment, et c'est déjà compressé en zlib. Bon courage donc pour le dicter au téléphone ^^ (il y a un QR code, heureusement !)

Le reste, c'est du confort... Fichiers .txt jusqu'à 100 Ko validés dans le navigateur avant chiffrement, mot de passe optionnel par-dessus, expiration au choix entre 5 minutes et 7 jours, limitation de débit via Redis et une tâche planifiée qui balaie les secrets périmés toutes les 30 minutes.

Pour l'héberger, c'est de l'AdonisJS 6 en TypeScript avec Dockerfile, docker-compose et migrations fournis, en licence MIT. Redis peut céder sa place au limiteur en mémoire si vous montez juste un petit truc perso.

Notez quand même que pour le moment, le projet n'a pas été audité et est maintenu par un gars tout seul, donc évitez de l'utiliser pour des secrets d'État.

La démo est en ligne si vous voulez essayer avant d'installer.

  •  

Hammer - Votre roman en fichiers texte, pas dans le cloud

Hammer, l'outil dont je vais vous parler aujourd'hui, est né d'un manuscrit perdu. En septembre 2020, son développeur Adam Brown vivait dans un van et écrivait dans des coins souvent très isolés, avec un logiciel gratuit qui se présentait comme fonctionnant hors ligne. Mais malheureusement, au bout d'une semaine sans réseau, le soft a cessé de fonctionner.

De retour en ville quelques jours plus tard, il a alors remis la main sur une connexion, et le logiciel est reparti, mais son manuscrit avait disparu !

Alors, dégoûté, il s'est dit qu'il allait coder son propre éditeur offline pour éviter que ça se reproduise, car hé, on n'est jamais aussi bien servi que par soi-même ! Et c'est pourquoi quand vous écrivez avec Hammer , chaque scène est un fichier texte enregistré sur votre disque dans le répertoire que vous avez spécifiquement choisi. Et c'est pareil pour tout ce qui est contenu annexe comme les notes et les fiches d'encyclopédie qui accompagnent les scènes.

Grâce à Hammer, qui est un logiciel gratuit sous licence MIT, vos idées sont rassemblées sous la forme d'un projet d'écriture avec tout ce qu'il faut pour prendre des notes, mettre des tags, faire des liens...etc.

L'éditeur de Hammer, avec la scène, son plan et ses notes sur le même écran.

Pour autant ce n'est pas un bloc-notes déguisé. Les scènes se réordonnent au glisser-déposer, ce qui est pratique quand vous décidez que deux personnages doivent se croiser trois chapitres plus tôt. L'encyclopédie catalogue les personnages, les lieux et les événements avec leurs images, et Hammer lit vos scènes pour repérer tout seul qui apparaît où.

La synchronisation entre vos appareils, elle, est totalement optionnelle. Et depuis la dernière version, le serveur de sync a une image Docker officielle . Un petit docker compose up -d et c'est en route, avec un volume pour vos données et le PostgreSQL embarqué directement dans le conteneur.

Si vous débutez en auto-hébergement , sachez quand même que le serveur ne parle que HTTP en local alors que les clients Hammer exigent du HTTPS, donc il faudra mettre en place un reverse proxy ou un certificat devant.

Et si vous n'avez pas envie de gérer un serveur, sachez que l'instance officielle hammer.ink est utilisable si vous êtes abonné au Patreon du projet. Vous pouvez aussi vous en passer et poser le dossier dans Syncthing ou Dropbox, mais ça ne marchera qu'entre vos ordinateurs, car les clients mobiles (Android / iOS) Hammer supportent uniquement le protocole intégré.

Bref, un super outil pour les écrivains, les journalistes et autres producteurs de contenu qui aiment bosser offline. Et si Hammer s'arrête de fonctionner un jour, votre roman sera encore avec vous.

  •  

Votre vieux Morrowind se relance dans le navigateur

Si vous êtes fan de The Elder Scrolls III: Morrowind, j'ai une bonne nouvelle pour vous : vous allez pouvoir y jouer directement dans un onglet de navigateur ! En effet, c'est ce que nous propose openmw-web , signé Virtastic et sorti il y a quelques jours !

openmw-web fait donc tourner Morrowind dans un browser en recompilant OpenMW vers WebAssembly avec Emscripten. OpenMW, c'est le moteur libre qui réimplémente de zéro celui du jeu, et l'avoir en WebAssembly, ça permet de le faire tourner localement sur votre machine dans le navigateur.

Si vous voulez tester, il y a deux façons de vous lancer. Soit via le monde de démo livré avec OpenMW qui est jouable direct avec un petit village, ses PNJ, ses gardes et des créatures qui rôdent autour.

Ou alors vous pointez le navigateur vers le dossier Data Files de votre propre installation. Les fichiers sont alors lus en streaming depuis le disque via la File System Access API, rien n'est uploadé nulle part, et Tribunal, Bloodmoon et vos mods en .esp, .esm ou .bsa sont détectés tout seuls.

Dans ce mode, les sauvegardes atterrissent ensuite sous la forme de vrais fichiers dans un sous-dossier openmw-web-saves, donc vider le cache du navigateur ne les effacera pas. Alors que sur le monde de démo, elles resteront dans le stockage du navigateur, et là si vous videz votre cache en mode bourrin, vous perdrez votre avancement.

J'ai lancé la démo, et je dois dire que ça tourne plutôt bien.

Ce clic autorise une connexion à Google : adresse IP transmise et traceurs possibles. En savoir plus Voir cette vidéo sur YouTube

Virtastic est une boîte dont c'est le métier de recompiler des logiciels desktop en applis web. Ils vendent la prestation de conversion, la maintenance et l'hébergement, et licencient leur bibliothèque de dépendances déjà cross-compilées vers WebAssembly, genre Qt, CPython, OpenCASCADE ou FFmpeg.

Donc Morrowind c'est leur vitrine, avec FreeCAD et Jagged Alliance 2 en preview et Blender annoncé. Ça explique la finition du truc, car le gros du travail était surtout dans la chaîne de dépendances, et pas forcément dans le jeu.

Notez que de ce que j'ai lu dans la doc, sous Windows, visiblement le navigateur refuse d'ouvrir un dossier situé dans Program Files, là où Steam installe par défaut. Il faut donc copier Data Files sur le Bureau ou dans Documents avant de le sélectionner.

Le développeur a évoqué également un mode multijoueur parmi les fonctions à venir, ce que le jeu n'a jamais eu d'origine. Et sur le dépôt, il tient sa roadmap sous forme de tickets qu'il s'ouvre à lui-même.

Je vous parlais d'OpenMW en 2012 , quand c'était encore un moteur prometteur en cours d'écriture et nous voilà 14 ans plus tard, et ce même moteur tourne dans un Chrome OKLM. C'est beau non ? Dans le genre vieux logiciel qui déménage dans le navigateur, y'a aussi ce émulateur x86 en WebAssembly qui reste mon autre chouchou.

Amusez-vous bien !

Source

  •  

Sa boîte à goûter fait tourner un LLM en local

Si vous avez eu une boîte à goûter M.A.S.K. dans les années 80 pour transporter vos BN, alors celle de RadioactiveArtist va vous plaire. Dans sa boite à goûter, pas de Princes ni de Balisto... lui, il embarque un Raspberry Pi 5, un écran tactile de 7 pouces et une IA qui tourne sans internet.

Le clin d'œil est calculé puisque M.A.S.K., c'était ce dessin animé de 85-86 dont les objets du quotidien planquaient tous une seconde vie. Fermé, l'engin reste donc une boîte à goûter d'époque. Mais ouverte, elle devient un cyberdeck complet, avec clavier et enceintes noyés dans la partie basse + un écran qui se redresse sur sa propre charnière.

Ce clic autorise une connexion à Google : adresse IP transmise et traceurs possibles. En savoir plus Voir cette vidéo sur YouTube

Un cyberdeck, pour ceux qui débarquent des âges farouches (vous l'avez ?), c'est un ordinateur portable assemblé à la main dans un boîtier détourné, fait pour être réparé et modifié plutôt qu'acheté.

Dedans, y'a donc un Pi 5 avec 16 Go de RAM et une microSD de 128 Go. L'alimentation passe par un HAT UPS Geekworm, la carte d'onduleur qui se clipse sur le Pi, nourrie par 4 accus 18650. En façade, des lecteurs de cartes, des ports USB 3 et un jack casque, plus un hub audio USB Waveshare qui pilote les enceintes. Par contre, on ne sait rien de son autonomie...

L'Ethernet a été une vraie plaie apparemment puisqu'aucun adaptateur du marché ne rentrait dans l'espace disponible. Il a donc poncé à fond un connecteur RJ45 nu jusqu'à ce qu'il clipse dans le port. Les charnières, elles, se sont révélées bien plus dures que prévu, et les pattes du circuit imprimé de l'écran n'étaient pas faites pour encaisser cette tension. Une plaque ABS récupérée sur une vieille caisse de transport a réglé le problème.

Et la boîte ressort intacte !

Puis je sais pas si vous avez vu dans la vidéo, mais il y a aussi un LLM là-dedans. Un modèle de 3 milliards de paramètres via Ollama, qui répond sans la moindre connexion. L'écran de boot, l'écran de login et les icônes maison, eux, ont été codés avec Claude Code, qu'il a installé sur la machine le temps de la configuration.

Si le format vous parle, le Hackberry Pi CM5 dont je vous ai parlé joue dans la même cour, et les cyberdecks faits maison ont droit à leur guide sur le site.

Bref, à moitié jouet, à moitié machine de terrain, et zéro trou dans la boîte ça, c'est du respect pour l'objet !!

Source

  •  

Firefox ressort le mode compact du placard, 5 ans après

En 2021, Mozilla a estimé que le mode compact de Firefox intéressait trop peu de monde pour mériter sa place dans l'interface. Le bug qui actait sa suppression a énervé pas mal de monde, mais la justification à l'époque, c'était que cette densité est "difficile à découvrir, et on suppose qu'elle est peu utilisée".

Faut dire que ce mode compact réduit sacrément l'espacement des barres d'outils et des onglets pour gagner de la place à l'écran. Mozilla le destine explicitement aux petits écrans.

Mais devant la levée de boucliers, Mozilla a dû faire machine arrière mais à moitié ^^. En avril 2021, un second bug acte le compromis : ceux qui utilisaient déjà le mode compact le gardent, les autres doivent aller l'activer à la main dans about:config via browser.compactmode.show.

Puis au bout d'un moment dans le menu de personnalisation, l'option réapparaît en juin 2021 dans Firefox 89 sous le doux nom de "Compact (not supported)". C'est la version qui embarquait la refonte Proton dont je vous parlais à l'époque .

Nous sommes 5 ans plus tard, et Mozilla remet le couvert avec le mode compact ! En effet, le nouveau design de Firefox est arrivé aujourd'hui dans Nightly, et ce mode compact fait partie du package. "Les gens nous ont dit que ça leur manquait, et on les a écoutés", explique l'équipe.

Sauf que ce n'est pas exactement un retour à la case départ. Dans le code de Nightly 155, le mode compact ne revient pas dans le menu de personnalisation. En réalité, il déménage dans les réglages, sous une rubrique "Window density" qui propose Automatique, Standard, Compact et Tactile.

Mais surtout Firefox sait maintenant basculer en compact tout seul. C'est une préférence fraîchement débarquée, browser.compactmode.auto.threshold, qui fixe le déclencheur à 0.05. Cela veut dire que si la barre d'onglets s'apprête à bouffer plus de 5 % de la hauteur de votre fenêtre, le navigateur passe en densité réduite sans rien vous demander.

Même logique sur la largeur avec la barre latérale repliée avec un garde-fou plutôt propre qui fait que si un utilisateur a choisi lui-même une densité, il ne se fait jamais écraser son réglage.

Le reste de la refonte, baptisée Project Nova en interne , n'est pas mal non plus. Les onglets prennent une forme plus douce avec un léger dégradé sur l'onglet actif, la palette s'inspire du feu avec des violets fumés, et les icônes sont redessinées pour tenir la route en thème clair comme en sombre. Mozilla a d'ailleurs publié les teintes avec leurs codes, du Cream #FFF4EE au Midnight Purple #210340.

Les réglages sont réorganisés au passage, avec une entrée dédiée aux contrôles IA pour couper entièrement ces fonctions, et un réglage du niveau de protection contre le pistage. Mozilla annonce aussi 9 % de gain sur les temps de chargement du contenu principal des pages sur un an.

Bon voilà, ce que je peux vous dire, c'est que comme d'habitude, avec Firefox, les gens vont encore gueuler pour rien. En 2014, la refonte Australis avait provoqué le même genre de problème, au point qu' une extension entière avait été codée pour restaurer l'ancienne apparence .

La différence, cette fois, c'est que Mozilla range la personnalisation du côté des réglages officiels au lieu de la laisser aux extensions et à about:config.

Pour voir tout ça, il vous faut la version Nightly et rien d'autre. Dans le code source, la préférence globale browser.nova.enabled n'est activée que sur les builds Nightly, elle reste à false partout ailleurs. Le déploiement large est annoncé pour cette année, sans date. En attendant, la branche stable continue d'avancer de son côté avec les conteneurs natifs arrivés dans Firefox 153 .

Source

  •  

Pascal Editor - Le plan 3D se dessine pendant que Claude bosse

J'ai jamais fait construire de maison mais je crois savoir que dessiner le plan de sa maison en 3D, ça passe encore par un logiciel assez lourd à installer + une licence, sans oublier l'interface façon Micro Applications de 2003 (qui s'en souvient ??). C'est pourquoi Aymeric Rabot et Wassim Samad ont pris le problème autrement avec Pascal Editor, un éditeur de bâtiments 3D qui tourne simplement dans un onglet de navigateur. Et en plus, c'est gratuit, open source (licence MIT) et surtout sans inscription.

Vous tracez les murs à la souris, puis viennent les zones, les dalles, les plafonds et les toits. Les portes et les fenêtres sont paramétriques, posez-les sur une cloison, la découpe se fait toute seule en géométrie booléenne via three-bvh-csg. Le mobilier s'accroche au sol, au mur ou au plafond selon l'objet ( allez regarder cet exemple ! )

Tout ça s'organise en Site, Bâtiment, Niveau, puis pièces. Le rendu passe par Three.js en WebGPU, la scène est sauvegardée en local dans IndexedDB, et l'historique remonte 50 étapes en arrière. Sauvegardez ou partagez un projet en ligne par contre, et il part sur leurs serveurs.

Le projet propose aussi @pascal-app/mcp sur npm, un serveur Model Context Protocol qui expose la scène 3D à un agent. Vous installez le package, et la commande pascal-mcp branche Claude Desktop, Claude Code, Cursor ou Codex directement sur votre plan (votre scène part alors chez le fournisseur du modèle, forcément).

Ça donne une trentaine d'outils utilisables en langage naturel : create_room pour sortir une pièce complète depuis un polygone, add_door et add_window sur un mur donné, furnish_room qui meuble selon le type de pièce, measure, check_collisions pour repérer les objets qui se chevauchent, et undo si l'agent part en vrille. Trois prompts sont livrés avec, dont from_brief qui transforme une phrase du genre "un 2 pièces dans 80 m²" en suite de modifications.

Deux outils lisent aussi des images, un pour les plans scannés, un pour les photos de pièce. Attention, ils n'embarquent aucun modèle de vision mais utilisent la capacité sampling du protocole, autrement dit c'est le modèle de votre client MCP qui regarde l'image.

Et puis il y a la synchro. Le serveur écrit dans une base SQLite locale, et la page de l'éditeur s'abonne au flux d'événements. Résultat, vous gardez l'onglet ouvert à côté de votre fenêtre de chat et vous voyez les murs apparaître au fur et à mesure que l'agent travaille. J'avais montré le même genre de bascule avec n8n qui laisse une IA piloter ses workflows , sauf qu'ici le retour est visuel et immédiat.

Côté interopérabilité, un convertisseur avale les fichiers IFC, le format d'échange du BIM, et l'export sort en GLB, STL ou OBJ. Cet export est d'ailleurs arrivé par des contributeurs extérieurs, pas par l'équipe, c'est pour vous montrer à quel point le projet est bien soutenu ! De quoi ensuite passer votre plan dans Blender, ou le texturer avant impression 3D . Un système de plugins permet aussi d'ajouter ses propres types d'objets, avec un exemple officiel qui plante des arbres et des fleurs.

Si vous voulez tester, l' éditeur s'ouvre direct dans le navigateur , et le code est sur GitHub. À vous de voir si vous dessinez tout vous-même ou si vous déléguez à l'IA.

Merci Letsar pour le lien !

Source

  •  

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 !

  •  

Subwave - La radio maison qui réveille vos MP3 oubliés

Si vous avez un Navidrome qui tourne dans un coin et un serveur Ollama qui passe ses journées à ne rien faire, vous ne vous êtes jamais dit que les deux pourraient bosser ensemble ? C'est en tout cas ce qu'a flairé Parminder Klair qui a branché l'un sur l'autre et en a sorti une vraie station de radio, avec un DJ qui parle entre les morceaux.

Son DJ baptisé Subwave ne fait pas de la lecture aléatoire. À chaque tour, le modèle utilise des outils qui lui permettent de fouiller la bibliothèque, regarder ce qui vient de passer, consulter la grille des programmes, lire la météo. Il choisit le titre suivant avec une raison, écrit une intro courte, la synthèse vocale la lit, et Liquidsoap baisse la musique sous la voix.

Le vrai boulot ensuite c'est dans l'audio. L'analyseur embarqué mesure le tempo, la tonalité, le volume, et surtout la façon dont chaque morceau se termine. Un vrai fondu se laisse filer, une fin sèche se coupe net.

Il sait aussi repérer les intros chantées pour que le DJ ne cause pas par-dessus la voix. Ça, par contre, réclame l'image lourde de l'analyseur, une ligne à ajouter dans le fichier .env, et elle est en amd64. Sur un NAS ARM, ça passe en émulation.

Andon FM , dont je vous parlais en mai, c'était le spectacle avec 4 IA qui achetaient leur musique et partaient en vrille en direct alors qu'ici, Subwave c'est l'outil qu'on installe chez soi, pour jouer ses propres fichiers.

Côté modèle, pas besoin d'artillerie lourde puisque Klair fait tourner un modèle 9B, du Qwen3.5 plus exactement, sans le raisonnement et avec de l'appel d'outils activé. "Les modèles plus gros écrivent de meilleurs textes, mais ils ne sont pas obligatoires", explique-t-il sur son site, "La mémoire de session compte plus que la taille du modèle. Sans elle, le DJ se répète en moins d'une heure."

La station se pilote depuis une console d'admin supportant jusqu'à 24 personas de DJ avec chacun sa voix, une grille sur la semaine où chaque créneau a son ambiance, et des compétences que le DJ enchaîne entre les titres, genre météo, infos ou trafic. Rassurez-vous, ces compétences sont de simples fichiers texte posés dans un dossier. Remplacer le flux RSS de la BBC par le vôtre ne demande donc pas de recompiler quoi que ce soit.

Le parti pris de cet outil, c'est le format radio et pas la playlist. Un seul flux Icecast, tout le monde entend la même chose au même instant, et aucun bouton pour passer au suivant. L'opérateur peut sauter un titre depuis l'admin, l'auditeur non. Klair le dit lui-même, les gens adorent ou décrochent immédiatement.

De son côté, le 100 % local tient à peu près la route avec Ollama, Piper ou Kokoro pour la voix, votre Navidrome, aucune clé d'API. Il n'y a que 2 appels sortant. 1 pour la météo via Open-Meteo et l'autre c'est MusicBrainz activé par défaut pour retrouver l'année d'origine des morceaux.

Pour le reste il vous faut Navidrome et un hôte Docker, comptez 10 minutes d'installation. Le flux sort toujours en MP3, avec des sorties Opus, AAC ou FLAC en plus si vous les activez, et un fichier .pls pour tuner depuis Sonos ou VLC. Les applications iOS et Android sont dispo en France, gratuites. Il y a même un serveur MCP, donc Claude Desktop peut réclamer un morceau à l'antenne.

Dernier point important que je tiens à préciser : Diffuser votre bibliothèque à d'autres que vous, c'est de la représentation publique, avec deux droits distincts à couvrir : la composition et l'enregistrement. En France, la première passe par la SACEM, le second par la SPRÉ. Donc soit vous l'utilisez comme station privée juste pour vous, soit vous ne diffusez que de la musique libre de droit. Et encore là, j'ai déjà entendu des histoires où la SACEM s'est servie au passage sur ce genre de musique, donc renseignez-vous bien.

Le code est en MIT, et vous pouvez écouter la démo avant de vous lancer.

  •  

Chrome tourne enfin sur Raspberry Pi (si vous savez où cliquer)

Si vous avez un Raspberry Pi et que Chromium commence à vous fatiguer, le VRAI Chrome, celui des chads que vous êtes, est enfin dispo en ARM64 !! Enfin, dispo... Si vous savez où chercher, parce que la page de téléchargement de Google vous propose toujours l'installeur amd64, qui ne tournera jamais sur votre machine. C'est Joey Sneddon, d'OMG! Ubuntu, qui a trouvé la combine en bidouillant l'URL depuis son Pi 5.

Avant toute chose, vérifiez que vous êtes bien en 64 bits, parce qu'un système 32 bits refusera le paquet :

dpkg --print-architecture

Si ça répond arm64, le fichier est là , 126 Mo. Il s'installe comme n'importe quel .deb local, en laissant apt gérer les dépendances :

wget https://dl.google.com/linux/direct/google-chrome-stable_current_arm64.deb
sudo apt install ./google-chrome-stable_current_arm64.deb

Le RPM existe aussi pour les distributions qui préfèrent, en remplaçant la fin du nom par aarch64.rpm.

J'ai ouvert le paquet pour regarder ce qu'il y avait dedans. Son fichier de contrôle annonce google-chrome-stable en version 150.0.7871.186, architecture arm64, un peu plus de 400 Mo une fois installé. Soit exactement la même version que le paquet x86 poussé le même soir. Le même Chrome, à la même révision.

Et le canal stable n'est pas seul. Le dépôt de Google sert aussi la beta (151.0.7922.47), la dev (152.0.7967.2) et la canary (152.0.7974.0) pour les puces ARM, et son fichier Release déclare noir sur blanc les deux architectures. Les quatre canaux ont été publiés dans la même minute que leurs équivalents x86.

Est-ce qu'on se retrouve coincé sur cette version, à re-télécharger le .deb à la main tous les mois ? Non. Le script de post-installation contenu dans le paquet ajoute le dépôt Google en précisant l'architecture, et les cinq paquets y sont indexés en arm64 exactement comme en x86. Les mises à jour ont donc de quoi arriver par apt, comme d'habitude.

Alors pourquoi s'embêter, puisque Chromium tourne sur ARM depuis des années ? Pour deux trucs. D'abord ma synchro du compte Google, qui ramène favoris, mots de passe et extensions. Et ensuite, Widevine, le module DRM, qui est ici un vrai binaire aarch64 et pas une couche de compatibilité comme l'émulateur FEX financé par Valve . Netflix et les autres plateformes à DRM s'ouvriront enfin sur un SBC !!!

Mais avec une nuance à connaître avant de vous réjouir qui est que sous Linux, Widevine reste au niveau "Software Secure". Cela veut dire que sur Netflix, la qualité plafonnera entre 720p et 1080p. De la HD donc et pas de la 4K. Désoléééé !

Google avait promis tout ça en mars, pour le deuxième trimestre et son billet annonçait même une installation via chrome.com/download pour les autres distributions, ce qui est malheureusement le morceau qui manque aujourd'hui.

Cela veut dire aussi que rien ne garantit que ce paquet soit considéré comme étant prêt par ses auteurs donc si votre machine doit rester stable, laissez passer quelques semaines avant de vous y essayer.

Manque plus que quelqu'un chez Google ait le courage d'appuyer sur "publier".

Source

  •  

Pix 2D to 3D - Des sprites aux modèles 3D, sans IA ni GPU

Si vous faites du pixel art, voilà un petit outil qui devrait vous plaire. Pix 2D to 3D prend votre sprite et vous le transforme en modèle 3D voxelisé au format .obj, importable direct dans Blender, Unity ou Godot. Pas la moindre trace d'IA là-dedans, uniquement des maths, et son dev Prashant bosse chez Snaptrude sur du logiciel 3D, donc autant vous dire qu'il maîtrise.

L'idée, c'est de vous épargner la modélisation quand vous montez un jeu en 3D iso ou un 2.5D et qu'il vous manque juste trois caisses et un tonneau pour meubler le décor. Vous dessinez le sprite, vous le passez dans l'app et hop, l'objet 3D ressort de l'autre côté.

Vous avez 4 modes selon ce que vous lui donnez à manger, plus un réglage Auto qui devine le format tout seul en regardant les proportions de votre image.

Single voxelise un sprite unique. Single + Repeated le répète sur les 4 côtés en l'extrudant sur la profondeur de votre choix. Dual accepte une planche à 2 vues (face et dos). Et mon préféré, Quad, avale carrément une planche de 4 vues alignées à l'horizontale dans un ordre bien précis : gauche, face, droite, dos. Résultat, un objet complet visible à 360°.

Si c'est sur ce dernier mode que vous voulez partir, sachez que le développeur conseille de passer par la fonction d'export de Frame d' un éditeur de sprites plutôt que de tout vous taper à la main.

L'interface de Pix 2D to 3D, avec le sélecteur de mode et les réglages de profondeur

L'algorithme calcule l'épaisseur des pixels en fonction de leur distance au bord, et les flancs sont arrondis pour une transition douce. L'outil modifie également les bords pour un effet plus naturel, en supprimant progressivement des voxels, ce qui évite l'aspect rigide et artificiel.

Du coup, pas de GPU qui chauffe, rien à installer à part l'app. Après cet outil est un convertisseur géométrique, pas un devin, hein donc à vous de bien gérer l'alignement du dessin dans les cases au départ. Sur Windows, la dernière pre-release est disponible par contre, pour macOS, il faut utiliser la version précédente et sous Linux, ça se compile facilement avec Go, Node, GTK3 et WebKit2GTK.

En tout cas, pour des formes simples et plutôt rondes, j'ai trouvé le rendu assez bluffant. Maintenant, si vous préférez rester dans votre éditeur, Pixelorama dispose de sa propre extension de voxélisation, mais sans le mode à 4 vues. Et pour vous rendre compte de ce que donnent des sprites voxélisés à grande échelle, je vous invite à jeter un œil à ce mod voxel de Duke Nukem 3D qui vaut vraiment le coup d'œil.

C'est par ici que ça se passe !

  •  

Firefox en WebAssembly - Gecko s'embarque dans vos pages web

Vous avez une TV connectée qui vous crache de la pub, un navigateur intégré dedans qui n'accepte aucune extension, et surtout aucun moyen d'installer quoi que ce soit dessus ? Bonne nouvelle les amis, l'équipe de Puter vient de compiler Firefox en WebAssembly, ce qui fait que ce mur commence sérieusement à se fissurer...

On avait déjà de vieux OS et des émulateurs x86 qui tournaient dans une page web , et là on passe carrément au navigateur au complet. La démo est en ligne si vous voulez tester tout de suite.

L'idée, la voilà... vous ouvrez un onglet dans votre navigateur, et dans cet onglet, c'est un Firefox complet qui tourne, avec son propre moteur d'affichage. Curieux de savoir ce que ça pesait, j'ai récupéré les fichiers, et une fois tout déballé, on arrive à 233 Mo. C'est exactement le même Firefox que sur votre machine, sauf qu'il vit à 100% sur une page web.

Le plus marrant là-dedans, c'est toutes les possibilités que ça ouvre... Par exemple, il y a un gars sur Hacker News qui vient de récupérer une TV sous VIDAA, ce système où tout s'affiche en pages web et où le navigateur maison refuse le moindre bloqueur de pub. Et maintenant son programme du week-end c'est de démarrer Firefox dans le navigateur de la télé, puis d'y glisser uBlock Origin . Et ça vaut pour tout ce qui est cadenassé, la borne d'accueil, le Chromebook du collège, le poste du boulot où l'informatique vous a tout bloqué sauf le navigateur.

La deuxième, c'est de pouvoir vérifier un site dans Firefox quand vous n'avez pas de Firefox sous la main. Vous êtes sur iPhone, ou coincé sur le Chrome tout naze de votre boîte sans les droits admin ? Bah vous ouvrez un onglet et vous avez un vrai moteur Mozilla sous la main pour vérifier que votre page ne part pas en vrille.

La troisième possibilité s'adresse aux développeurs. Pour fabriquer une miniature de page ou prévisualiser du HTML, il faut d'habitude un navigateur qui tourne sur un serveur, avec la machine à payer derrière. Là, le rendu peut se faire directement chez le visiteur, grâce à un peu de code :

import { Gecko } from 'gecko.js';

const gecko = new Gecko({ canvas: document.querySelector('canvas')! });
await gecko.init();
await gecko.load('data:text/html,# hello from Gecko

');

Maintenant, la limite de la démo actuellement en ligne, c'est que tout le trafic passe par les serveurs de Puter, sans quoi ça ne pourrait pas fonctionner du tout. Le HTTPS reste bien chiffré de bout en bout, mais évitez quand même d'y taper vos mots de passe. Ah et ça rame aussi un peu, et sur mobile c'est mort pour le moment. En tout cas, c'est pas un truc que je vous conseille d'utiliser au quotidien parce que bien employé par un cybercriminel, ça pourrait permettre s'il y a une faille dans le moteur de rendu évidemment de lire par exemple vos cookies.

Donc si vous l'utilisez, pensez bien à faire tourner chaque site que vous visitez avec ça, dans une instance séparée

Ce chantier a été entrepris avec l'aide de Claude d'Anthropic. Il a englouti une trentaine de milliards de tokens, soit dans les 25 000 $ au tarif normal. Mais heureusement, l'équipe de Puter avait un abonnement Max et s'en est tirée "que" pour une centaine de dollars. Voilà, c'est de la bidouille, avec les défauts qui vont avec mais avouez que c'est beau ^^.

Le code est ici sous licence MPL, et y'a aussi WebkitWasm qui fait la même chose avec WebKit.

Source : Simon Willison

  •  

Contourner un géoblocage via VPN n'a rien d'illégal, dit la CJUE

En voilà une bonne nouvelle ! La Cour de justice de l'Union européenne vient de rendre un arrêt le 9 juillet dernier qui précise que contourner un géoblocage avec un VPN ne fait pas de vous un pirate.

Et croyez-moi, nos ayants droit préférés ne vont pas adorer.

En plus, toute cette affaire est un petit bijou de bizarrerie juridique. Les manuscrits d'Anne Frank sont protégés par le droit d'auteur aux Pays-Bas jusqu'en 2037, mais ils sont déjà tombés dans le domaine public dans plein d'autres pays européens, comme la Belgique par exemple. En septembre 2021, l'Anne Frank Stichting, la fondation d'Amsterdam qui gère la Maison d'Anne Frank, a mis en ligne gratuitement une édition scientifique des manuscrits, en néerlandais, avec un géoblocage pour couper l'accès depuis les pays où l'œuvre reste protégée.

Et c'est à ce moment-là, que l'Anne Frank Fonds, la fondation suisse qui détient les droits de l'œuvre, attaque car pour elle, un blocage qu'on peut déjouer avec un simple VPN ne protège rien du tout.

Alors comme c'était un peu compliqué, la Cour suprême des Pays-Bas a renvoyé la question à Luxembourg.

Et la réponse de la CJUE est claire comme de l'eau de roche : le géoblocage suffit. Tant qu'il est fait dans "l'état de l'art", c'est une mesure efficace, même si un VPN peut le contourner en deux clics. Le simple fait qu'on puisse passer outre ne transforme pas la mise en ligne en "communication au public" illicite.

Et voici le passage qui nous intéresse vraiment : le fournisseur de VPN n'est pas responsable. Il ne donne pas accès à l'œuvre et ne joue "aucun rôle indispensable" dans sa diffusion, écrit la Cour. Si un jour un géoblocage bâclé laisse fuiter une œuvre protégée, c'est celui qui l'a mise en ligne qui répond, pas le VPN qui a servi à sauter la barrière.

Attention quand même à ne pas sur-interpréter non plus... Cela ne veut pas dire que la Cour vous délivre un permis de pirater tranquille via VPN. Elle parle d'une œuvre déjà libre de droits quelque part, de la responsabilité de l'éditeur, et elle blanchit les fournisseurs de VPN au passage. Mais le message de fond c'est bien que le VPN reste un outil parfaitement légal , et pas un complice.

Sauf qu'en France, vu qu'on est des gros nuls, on fait tout l'inverse. Pendant que le Luxembourg range le VPN du côté des outils neutres, la justice française le traite comme un FAI qu'on réquisitionne. Canal+, qui tient les droits de la Premier League et du Top 14, a déjà fait condamner les cinq gros du secteur, NordVPN, ExpressVPN, CyberGhost, Proton et Surfshark, à bloquer les sites de streaming sportif pirate pour leurs abonnés français.

Proton s'est même retrouvé sommé de filtrer une trentaine de domaines fin janvier 2026, avec des ordonnances "dynamiques" que l'Arcom peut étendre à la volée. Je vous racontais déjà tout ça quand la France a commencé à ordonner aux VPN de bloquer ces sites .

Notez aussi que Proton, société suisse, avait justement annoncé vouloir porter la question du blocage des VPN devant la CJUE. L'arrêt Anne Frank tombe donc très bien car ça leur fait plus de munitions.

Reste maintenant LA vraie question : les injonctions françaises, fondées sur le Code du sport, tiendront-elles face à la jurisprudence de Luxembourg ? Vivement le prochain round ^^.

  •  

Dream Server - Un serveur IA complet chez vous en une commande

Monter une vraie IA à la maison, c'est vite une galère. Vous achetez une super machine puis vous collez dessus toute votre liste au père Noël (Chat local, reco vocale, génération d'image, RAG et compagnie) et vous voilà à empiler des dockers à n'en plus finir. Eh bien Light Heart Labs en a eu marre de ces bricolages et nous a pondu Dream Server, un outil qui câble tout ce petit monde à votre place !

Une seule commande et c'est parti mon kiki (Linux et macOS) :

curl -fsSL https://raw.githubusercontent.com/Light-Heart-Labs/DreamServer/main/dream-server/get-dream-server.sh | bash

Ou Windows :

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
git clone https://github.com/Light-Heart-Labs/DreamServer.git
cd DreamServer
.install.ps1

Ça va lancer le script qui va ensuite tout paramétrer tout seul et choisir le modèle d'IA qui collera le plus à votre matériel, et cela que vous ayez une RTX 4090, un Mac M4 avec mémoire unifiée ou encore une puce AMD Strix Halo voire un vieux PC sans GPU.

Edit : un lecteur m'a remonté un piège si vous êtes sous Linux configuré en français (ou n'importe quelle locale qui écrit les décimales avec une virgule). Le script génère tout seul les valeurs de votre fichier .env en suivant le format de nombres de votre système, et il vous colle des 16,0 au lieu de 16.0. Du coup l'install se vautre avec une erreur dans le genre COMFYUI_CPU_LIMIT: expected number, got '16,0'. La parade, confirmée par un des auteurs, c'est de relancer l'installeur en forçant la locale C (celle qui met des points à la place des virgules) :

LC_ALL=C ./install.sh

Ensuite, pendant que le LLM se télécharge à fond les ballons, un autre petit modèle de 1,5 milliards de paramètres en backup afin que vous puissiez quand même "discuter" avec votre Dreamserver.

Le rôle de Dreamserver c'est donc juste de prendre toutes les briques de l'IA pour vous en faire un truc clé en main. Open WebUI pour le chat, llama-server pour l'inférence, Whisper et Kokoro pour la voix, ComfyUI pour les images, Qdrant pour le RAG, SearXNG pour la recherche web sans mouchard, et bien sûr n8n pour brancher tout ça à vos automatisations.

Et une fois que c'est en route, suffit de lancer la commande dream et là vous pourrez tout faire.

Par exemple dream status pour visualiser l'état des services et du GPU, dream model swap T3 pour changer de "palier" sur votre matos, dream enable n8n pour activer une extension ou encore dream mode hybrid pour avoir de l'inférence en local avec possibilité de basculer sur une IA dans le cloud via une API.

Dreamserver reste un orchestrateur, et pas un moteur IA magique, donc si vous adorez tout assembler vous-même, vous n'avez clairement pas besoin de ça. Par contre, si vous vous en foutez, et que vous voulez juste votre IA qui tourne ce soir, ça vous fera gagner des heures de bidouille.

Faut dire qu'à mesure que l'IA devient une infrastructure de base, dépendre à 100% d'un abonnement cloud qui peut tripler ses tarifs ou couper votre accès du jour au lendemain, ça craint un peu. Donc je pense qu'on est tous bien contents d'avoir des solutions clé en main comme celle-ci.

Si ça vous tente, c'est sur le dépôt de Dream Server .

  •  

Communautés tech toxiques, faudrait en parler à un moment

Y'a un truc dont on parle pas assez dans le milieu tech je trouve, et pourtant tout le monde le constate : Une grande partie des communautés autour du logiciel libre, de Linux, du dev...etc sont devenues des endroits franchement hostiles. Des clubs fermés, peuplés quasi exclusivement de mecs, qui passent leur temps à expliquer aux autres qu'ils sont de gros nuls, qu'ils posent des questions de noobs, ou encore qu'ils ne tapent pas sur leur clavier comme il faut et j'en passe... Oui je parle bien entre autres du fameux barbu Linux qui vous toise parce que vous utilisez Ubuntu et pas Arch que vous avez compilé à la main.

Et le pire, c'est que tout ça est documenté et chiffré, et même reconnu par les pontes du milieu eux-mêmes ! Vous allez voir...

Prenez Linus Torvalds par exemple. C'est le créateur de Linux et pendant des années, il a insulté publiquement des développeurs sur la mailing list du kernel, leur balançant que leur code était une honte et compagnie. En septembre 2018, il a toutefois fini par mettre les choses à plat dans un mail d'excuses où il écrit noir sur blanc que ses attaques étaient "non professionnelles et injustifiées", et qu'il voulait s'excuser auprès des gens que son comportement avait blessés et je cite, "possiblement complètement chassés du développement du kernel". Il a même pris une pause pour aller se faire aider à comprendre ses émotions. Si même le mec au sommet de la pyramide reconnaît qu'il a fait fuir des contributeurs à coups de mépris, vous imaginez un peu l'ambiance qui grouille en dessous...

D'ailleurs, trois ans plus tôt, en 2015, une développeuse majeure du kernel avait déjà claqué la porte. Sarah Sharp, celle qui maintenait le pilote USB 3.0, était pourtant loin d'être une débutante. Dans son billet Closing a door , elle explique notamment qu'elle n'arrive plus à contribuer à une communauté où elle était respectée pour ses compétences mais jamais respectée en tant que personne.

Violence verbale, blagues sexistes et homophobes, voilà tout ce qu'elle subissait. Et en 2015, malheureusement, elle criait vraiment dans le désert. Personne ne l'a écouté et il aura fallu attendre 2018 et les excuses de M. Torvalds pour capter qu'il y avait un sérieux problème.

Je vous ai dit aussi que j'avais des chiffres, alors les voilà... En 2017, une étude publiée dans PeerJ a analysé plus de 3 millions de pull requests sur GitHub et le résultat bien que fascinant m'a déprimé. Le code proposé par des femmes est accepté à un taux plus élevé que celui des hommes, environ 79% contre 75%. SAUF quand leur genre est identifiable. Cela veut dire que quand on sait que c'est une femme, on accepte moins son code, alors même qu'en moyenne il est meilleur. Affreux non ?

La même année, l'enquête Open Source Survey de GitHub plantait également le décor en annonçant qu'il y avait environ 95% d'hommes, 3% de femmes et 1% non binaire parmi les contributeurs (le 1% restant c'est l'arrondi, btw). Et tristement, les femmes rapportaient bien plus souvent du langage qui les mettait mal à l'aise, et des remarques stéréotypées ("Pas mal pour une femme !", "T'es blonde ou quoi ?", ce genre de saloperies sexistes).

Voilà où en est la belle méritocratie du logiciel libre !

Et du côté de l'entraide soi-disant légendaire, c'est pas plus glorieux. Stack Overflow, le site où des millions de devs vont chercher de l'aide tous les jours, a carrément publié en 2018 un mea culpa officiel . Leur responsable "culture" y écrit que trop de gens vivent Stack Overflow comme un endroit hostile ou élitiste, en particulier les codeurs débutants, les femmes et les personnes de couleur.

Le vrai problème, selon lui, ce n'est pas la communauté, c'est qu'on a appris aux utilisateurs à dire aux autres ce qu'ils font de travers sans jamais leur apprendre à le faire correctement. C'est ce bon vieux RTFM de connard balancé à la gueule des débutants qui après n'osent plus poser de question.

Et tout ça, ça coûte cher, figurez-vous. Oui, oui, la Tech Leavers Study du Kapor Center , en 2017, a chiffré à 16 milliards de dollars par an le coût du turnover provoqué par une culture de travail injuste dans la tech. Les femmes, les minorités, les gens qui ne rentrent pas dans le moule, bah ils se barrent. Une autre enquête, Elephant in the Valley , montrait même que 60% des femmes de la Silicon Valley qui avaient +10 ans d'expérience avaient subi des avances sexuelles non désirées.

Bon, maintenant je vais quand même vous parler de moi, parce que tout ça, je le constate aussi depuis vingt ans.

Pour ma part, si je me suis retiré des réseaux sociaux, et je parle même des réseaux plus barbus, les Mastodon et compagnie censés être plus sains, c'est à cause de ça. Cette hostilité permanente, ce besoin maladif de certains de vous expliquer pourquoi vous avez tort, pourquoi votre choix technique est nul, pourquoi vous n'êtes pas un "vrai". Et si j'ai fermé mes commentaires il y a des années, c'est exactement pour la même raison. Pas parce que je ne voulais plus discuter avec vous, mais parce que je ne voulais plus servir de défouloir à une poignée de types qui confondent intelligence et agressivité.

Sachez que sur cette planète, 100% des problèmes que j'ai eus (et que j'ai encore) dans ma vie perso comme dans ma vie pro, ont été causés par des hommes. Pas 90%. 100% ! Et à chaque fois que quelqu'un m'a défendu, m'a tendu la main, m'a aidé quand j'étais au sol, c'était dans 80% des cas des femmes. Alors je le dis tout simplement, merci à elles, vraiment, du fond du cœur.

Donc voilà, messieurs les toxiques de la tech, sachez-le, je vous évite du mieux que je peux, parce que vous n'êtes pas les personnes ouvertes et sympathiques que vous pensez être. J'ai toujours refusé de rentrer dans vos cases et je pense que pour votre bien et celui du Monde en général, ce serait chouette à un moment d'arrêter de vous comporter en boy's club de connards, et surtout arrêter de croire que la tech vous appartient et que tous ceux qui ne pensent pas comme vous méritent de se faire détruire en place publique.

Et aux femmes, aux noobs, aux curieux, et à tous ceux qui ne sont pas ces clones qui se marrent à chaque blague sexiste, sachez que la tech, elle est à tout le monde.

Elle l'a toujours été d'ailleurs.

Franchement, je vous le dis, moi je trouve ça triste parce que ce milieu, moi je l'aime, j'y suis depuis le tout début, probablement bien avant eux et le voir se transformer en cour de récré pour mecs aigris incapables de gérer leurs émotions, et voir surtout que ça empire d'année en année, bah ça me fout le cafard.

Ah et si mon article vous a donné la rage et que vous voulez me casser la gueule, c'est probablement parce que vous vous êtes bien bien reconnu en 4K UHD Dolby Atmos avec les sous-titres et que vous venez de comprendre que vous n'êtes pas ce gars altruiste que vous pensez être... Déso / pas déso 😘 hein.

  •  

Game Porting Toolkit 4 - Les jeux Windows enfin fluides sur Mac

Il y a deux ans, Apple lâchait le Game Porting Toolkit en jurant ses grands dieux qu'on pourrait faire tourner des jeux Windows sur un Mac Apple Silicon. À l'époque je vous disais que le gaming Windows sur Mac, c'était donc plié. Hé bien la version 4.0 vient de sortir en bêta, et cette fois les chiffres donnent raison à cette promesse !

La nouvelle version du traducteur maison de GPTK (baptisé D3DMetal 4) transforme dorénavant le DirectX 12 des jeux en Metal 4, le moteur graphique d'Apple.

Le youtubeur Andrew Tsai, dont j'ai mis le test dans cet article, a donc benchmarké 20 gros titres Windows pour mesurer le gain, et certains résultats piquent fort.

Black Myth Wukong passe par exemple de 60 à 80 fps sur un MacBook Pro M3 Max, juste en changeant de système et de version de traduction ! Red Dead Redemption 2 gagne 25% de perfs sur le MacBook Neo, la petite machine d'Apple à 600 balles avec sa puce A18 Pro et ses tout petits 8 Go de RAM (le chip de l'iPhone 16 Pro, quoi).

Black Myth Wukong : à gauche GPTK 3.0 sur macOS 26 (~60 fps), à droite GPTK 4.0 sur macOS 27 bêta (~80 fps).

Et le phénomène c'est 007 First Light, un AAA tout récent que personne ne pensait voir démarrer sur Mac, qui tranquillou nous crache du 70 fps en 1080p sur le M3 Max. Mais bien sûr, y'a un petit piège caché quand même pour celui-là. En fait, à chaque lancement, comptez 20 bonnes minutes de compilation de shaders avant de pouvoir jouer. Mais une fois dans le jeu c'est nickel. CodeWeavers finira sûrement par corriger ça, cela dit...

D'ailleurs, petit ajout, Alexandre, un lecteur, m'a signalé qu'un utilisateur de Reddit a pondu un outil open source pour contourner ça, 007 Shader Commander . Le principe, sauvegarder le cache de shaders D3DMetal une fois qu'il est constitué, puis le restaurer avant chaque lancement histoire de ne pas tout recompiler. Résultat chez lui, on passe de 20 minutes à 3 secondes au démarrage. Le projet est tout jeune (v0.0.1) et pensé pour CrossOver, mais si vous galérez sur 007, ça vaut le coup d'œil. Merci à lui !

007 First Light en 1080p sur un MacBook Pro M3 Max, environ 73 fps via GPTK 4.0 et le chemin DirectX 12 vers Metal 4.

Mais alors pourquoi ça va plus vite, ma chère Micheline ?

Hé bien ("ma chère Maïté", allez, on joue le jeu !!) parce que GPTK 4 est taillé pour Apple Silicon et ne traîne plus ce boulet qu'est la compatibilité Intel. Ça débloque donc des trucs comme l'interpolation d'images de MetalFX. Notez qu'en dessous, c'est toujours CrossOver et ce bon vieux Wine qui font le sale boulot de traduction, comme depuis le début.

Autre bonne surprise, les fameuses fuites mémoire des jeux Naughty Dog. Avant, Uncharted 4 ou The Last of Us 2 qui vous bouffaient 34 Go de RAM en quelques minutes, ben maintenant il vous faudra des heures pour atteindre le même niveau de conso RAM. C'est donc pas encore parfait, mais c'est largement jouable.

De son côté, comme on peut le voir dans la vidéo, Spider-Man 2 nous colle un magnifique bug de T-pose si vous n'avez pas une puce M5, parce que le jeu réclame des fonctions GPU absentes des puces précédentes. Et de leur côté, Monster Hunter Wilds bégaie, Street Fighter 6 plante une fois sur deux.

Spiderman en T-Pose

Bref, on est sur de la bêta, faut le savoir.

Mais quand ça marche, ça marche fort ! Rien que Tekken 8 qui tourne à 60 fps en ligne, c'est le plus fluide que ce jeu ait jamais eu sur un Mac. Star Wars Battlefront 2 dépasse aussi les 120 fps et Hellblade 2, Expedition 33 ou Resident Evil 9 tournent sans broncher.

Pour jouer correctement, prévoyez quand même un Mac avec de la RAM et de quoi installer la bêta de macOS 27.

En tout cas, voir un James Bond next-gen tourner sur un MacBook, moi ça me plait !

Source (les 20 benchmarks d'Andrew Tsai) et AppleInsider .

  •  

Le Casio VL-1 de 1981 modernisée pour quelques euros

En 1981, Casio sortait le VL-1, un drôle d'objet vendu autour de 70 dollars, à mi-chemin entre la calculatrice de poche et le synthétiseur monophonique, avec un séquenceur de cent notes planqué dedans et un afficheur à huit caractères. Un jouet, en apparence. Sauf qu'il s'en est vendu près d'un million entre 1979 et 1984, ce qui pour un machin pareil reste assez dingue.

Vous l'avez déjà entendu, c'est sûr. C'est lui qui balance la rythmique du tube "Da Da Da" du groupe allemand Trio, en 1982, sur le preset Rock-1 et une voix piano d'un kitsch parfaitement assumé. De quoi lui offrir un statut culte malgré sa réputation de gadget pour enfants.

Le bidouilleur Max Vega, lui, a regardé cette vieille coque beige et a eu envie de lui greffer un cerveau de 2026. Il a viré toute l'électronique d'origine et glissé à la place un ESP32-C3, un microcontrôleur, autrement dit une petite puce programmable à quelques euros qu'on retrouve aujourd'hui dans la moitié des objets connectés.

Et ça change tout. Le VL-1 devient un ROMpler, un mot un peu barbare qui désigne juste un instrument capable de rejouer des sons enregistrés au lieu de les fabriquer péniblement de toutes pièces comme avant. Là où la synthèse d'origine, monophonique et riquiqui, ne sortait qu'une note à la fois, l'ESP32 va piocher ses échantillons sur une simple carte microSD et offre du coup une réserve de stockage quasi infinie pour empiler autant de banques de sons qu'on veut.

Le plus malin, c'est qu'il n'a touché à rien côté look. Le haut-parleur d'origine est resté, les boutons du clavier aussi, sauf qu'ils pilotent maintenant une interface affichée sur un petit écran OLED pour choisir l'instrument du moment. De l'extérieur, on a toujours le même jouet de 1981.

Comme la puce a de la marge sous le capot, Max Vega en a profité pour ajouter des modes qui plaquent des accords complets d'un seul doigt. L'original, lui, ramait déjà avec une seule note.

Au bout du compte, on récupère un petit instrument qui se glisse dans un sac à dos, qu'on dégaine n'importe où, mais avec enfin une palette sonore digne de ce nom à la place des bips d'origine. Le charme lo-fi du VL-1 est resté culte pendant quarante ans, sauf que voilà, à l'usage il était quand même pas mal limité.

Bref, trop bien, un vieux truc culte qu'on ne jette pas, qu'on réveille avec trois euros d'électronique.

Source : Hackaday

  •  

Half-Life 2 dans le navigateur - Le hack d'un lycéen

Vous vous souvenez de la première fois que vous avez lancé Half-Life 2 et que vous avez attrapé une caisse avec le gravity gun ? Eh bien un lycéen qui se fait appeler slqnt vient de remettre tout ça dans votre navigateur, gratuitement, sans avoir à installer Steam ni à télécharger le moindre gros paquet. Ça se passe sur hl2.slqnt.dev , c'est en ligne depuis hier, et le jeu tourne tout en fluidité, largement au-dessus des 60 images par seconde directement sous Chrome.

Sur mobile par contre, il vous faudra un clavier branché parce que les contrôles tactiles sont quasi inexistants pour l'instant, mais sur un PC, vous lancez la page et vous voilà à Black Mesa East.

Maintenant, le plus intéressant c'est comment il s'y est pris, parce que porter un jeu bâti sur le moteur Source de Valve (le même que celui de 2004, successeur de GoldSrc) dans un onglet, ça ne se fait pas en claquant des doigts.

Et slqnt n'est pas parti de zéro puisque c'est un copain qui lui a montré un portage de Portal fait par un autre dev nommé weliveinhell. Ce projet open source était d'ailleurs lui-même un fork de nillerusr/source-engine , c'est-à-dire une version modifiée de la fuite du code du moteur Source de Team Fortress 2 qui a circulé en 2020. Voilà pour la base du truc qui n'est ni plus ni moins que le moteur leaké patiemment retapé par la communauté.

L'astuce de ce portage tient dans un mode de rendu appelé ToGLES. En gros le moteur sait parler OpenGLES, le truc qu'on utilise d'habitude pour les applis Android, sauf qu'Emscripten sait traduire ces appels en WebGL2 dans le navigateur. Résultat, slqnt n'a eu quasiment aucun travail à faire côté affichage, le plus dur étant déjà fait.

Le casse-tête par contre, ça a été d'abord les assets, parce que cette version du moteur date d'avant la réédition anniversaire de HL2 et ne supportait pas ses fichiers. Il a donc fallu basculer sur la branche steam_legacy de Steam, puis dépaqueter tous les VPK du jeu et les redécouper en fichiers .data, un par carte, pour que le navigateur les charge au fur et à mesure.

Et puis il y a eu les animations faciales. C'était l'une des grandes fiertés techniques de HL2 à sa sortie, la façon dont les visages bougeaient en parlant. Sauf que ça faisait tellement planter le portage que slqnt a fini par désactiver complètement le système pour avoir quelque chose de stable.

Du coup le G-Man vous fait son monologue d'intro avec un visage figé, mais au moins ça tourne. Le reste de son journal de bord est également une jolie liste de galères de bidouilleur, vu de l'intérieur avec au hasard, les sauvegardes à recâbler sur le système de fichiers d'Emscripten, les batteries et medkits qui ne fonctionnaient pas, le gravity gun qu'Alyx vous tend mais qui n'arrivait jamais dans l'inventaire, les PNJ qui s'effondraient et mouraient au hasard, les headcrabs qui ne faisaient aucun dégât, l'eau toute noire et j'en passe...

Petit détail qui parle à quiconque a déjà bidouillé un jeu, il a dû remapper l'accroupissement sur la touche C, parce que CTRL déclenchait des raccourcis du navigateur qui pourrissent la partie.

Reste maintenant la question que tout le monde se pose : Est-ce que Valve est au courant ? Parce qu'un portage qui repose sur du code moteur leaké et sur les assets du jeu, légalement, c'est une zone grise bien grise qui tire vers le noir.

Valve a toujours été plutôt cool avec sa communauté de moddeurs, mais ça pourrait disparaître du jour au lendemain. Après si l'idée d'un jeu Source qui tourne dans un onglet vous fait marrer, c'est exactement le même esprit que ce Portal 2 transformé en serveur web , ou que ce Doom qui tourne avec juste du CSS . Mettre les vieux FPS dans le navigateur, c'est presque devenu un sport, je vous en parlais déjà avec Wolfenstein 3D .

Bref, foncez essayer tant que c'est en ligne. Et si vous y arrivez sur mobile sans clavier, écrivez vite un bouquin pour raconter comment vous avez fait !

Source

  •  

Adblock for YouTube - 10 millions d'installs et un piège dormant

Mise à jour du 26 juin 2026 : Mathias Rochus, le fondateur d'AdBlock Ltd qui édite l'extension, m'a contacté pour réagir. Il souligne que cette capacité n'a jamais servi (le rapport Island le confirme) et que le scriptlet en cause, trusted-create-element, n'est pas maison : il vient de la bibliothèque open-source de scriptlets d'AdGuard que beaucoup de bloqueurs embarquent. Surtout, il annonce corriger les deux problèmes dès aujourd'hui : suppression pure et simple du scriptlet inutilisé pour qu'aucune config serveur ne puisse l'appeler, et vérification du vrai domaine youtube.com au lieu d'une chaîne posée n'importe où dans l'URL. La nouvelle version doit encore passer la revue de Google.

Une précision quand même, parce que c'est le cœur du sujet : selon le rapport Island, quand le serveur renvoie certains paramètres, l'élément créé est une balise <script> dont le contenu est fourni directement par le serveur. Autrement dit, le verrou qu'on retire servait bien à faire tourner du code venu d'ailleurs. Le correctif, lui, est une bonne nouvelle pour les 10 millions d'utilisateurs. Je reviendrai vérifier une fois la mise à jour en ligne.


Si vous avez installé une extension qui s'appelle "Adblock for YouTube" pour virer les pubs de vos vidéos, prenez deux minutes pour lire mon article.

Les chercheurs Oleg Zaytsev et Shachar Gritzman, de la boîte de sécurité Island, viennent de passer au peigne fin une de ces extensions installée par plus de 10 millions de personnes, et ce qu'ils ont trouvé dedans n'est pas très joli joli. Le truc affiche fièrement un badge "Featured" sur le Chrome Web Store, fait bien le boulot promis (il bloque les pubs), mais il embarque aussi de quoi exécuter n'importe quel bout de JavaScript sur n'importe quel site que vous visitez.

Et ça, ça craint !

Mais avant que vous fermiez l'onglet en panique, sachez tout d'abord qu'il existe plusieurs extensions qui portent ce nom. Celle qui pose problème a un identifiant précis, cmedhionkhpnakcndndgjdbohmhepckk. Donc pour vérifier, tapez chrome://extensions dans votre barre d'adresse, activez le "Mode développeur" en haut à droite, et regardez l'ID affiché sous chaque extension. Si vous tombez sur celui-là, virez-la sans réfléchir. Si c'est un autre identifiant, ce n'est pas l'extension visée par cette analyse, ce qui ne veut pas dire pour autant que tous les bloqueurs du store sont blancs comme neige, hein...

Ce qui inquiète Island, ce n'est pas une ligne de code qui vole vos données là, maintenant mais plutôt une capacité en sommeil. L'extension contient ce que les chercheurs appellent les ingrédients architecturaux pour faire tourner du code arbitraire, et la mèche peut être allumée par un simple changement côté serveur sans que cela se voit.

En clair, du jour au lendemain, le bidule pourrait se mettre à lire vos pages, aspirer vos données et à agir à votre place dans vos comptes perso, vos applis de boulot ou vos panneaux d'admin. Au moment de l'analyse, le mécanisme dormait. Il n'était pas absent.

Et le détail qui fait sourire jaune, c'est quand même ce garde-fou censé limiter l'extension à YouTube. En théorie elle ne s'active que sur le site de Google mais en pratique, elle tourne sur absolument tous les sites, avec une vérification qui regarde juste si la chaîne "youtube.com" apparaît quelque part dans l'URL.

Oui n'importe où, du coup une adresse comme bank.example.com/search?q=youtube.com passe le test sans problème donc autant vous dire que le verrou ne verrouille pas grand chose...

Cette extension traîne sur le store depuis 2014. Au départ c'était donc un bête bloqueur de pub YouTube, jusqu'à un changement de propriétaire en 2018. Les premières versions embarquaient carrément un SDK d'injection de pub baptisé Unistream, finalement retiré en juin 2024, et les chemins d'injection de script pilotables à distance sont présents depuis février 2025. 3 autres extensions de blocage de pub liées au même écosystème ont déjà été dégagées du Chrome Web Store pour cause de malware.

Toutefois, pour le moment, il n'y a aucune preuve qu'un payload malveillant ait réellement été poussé aux utilisateurs, mais c'est la combinaison de plusieurs de ces facteurs qui pue : une extension à 10 millions d'installs, un accès à tous les sites, un canal d'injection téléguidé, un passé d'injection de pub et des cousines déjà bannies. Gloups !

Donc je vous conseille vivement de faire le tour de vos extensions. CRXplorer vous aidera à débusquer celles qui sont louches, et si vous cherchez à bloquer les pubs proprement, j'avais fait le point sur les bonnes méthodes pour ça . Petit rappel au passage, sur Chrome le uBlock Origin complet a été débranché par le passage à Manifest V3, et il ne reste que sa version Lite, forcément moins fortiche.

Donc si vous voulez le vrai, c'est sur Firefox que ça se passe maintenant.

Bref, méfiez-vous des bloqueurs de pub qui réclament la lune et au moindre doute sur l'ID, désinstallez cette merde !

Source

  •  

DoH is now generally available on Windows DNS Server

DoH is now generally available on Windows DNS ServerMicrosoft has recently launched a new feature called DNS over HTTPS (DoH) via their June 9, 2026 update. The company had this feature in testing for a while, and now it has finally been made available to the public. As a result, you can now deploy DoH on your on-premises DNS infrastructure without a third-party […]

The post DoH is now generally available on Windows DNS Server appeared first on TheWindowsClub News.

  •  
❌