HN Digest
Briefing personnel.

Edition quotidienne

Lire vite. Garder l'essentiel.

Les meilleurs longs formats de Hacker News, relus plus calmement.

3130 articles Page 50/313 Sans filtre

06:04

Rescuing old printers with an in-browser Linux VM bridged to WebUSB over USB/IP

L'auteur récupère une imprimante photo Canon SELPHY d'occasion et constate qu'elle n'est plus supportée directement par macOS et Windows. En la connectant à une machine Manjaro avec CUPS, Gutenprint et Avahi, il parvient à la partager en AirPrint pour la famille. Pour simplifier l'usage sans configuration matérielle, il développe une application web (printervention.app) qui exécute une VM Alpine Linux via l'émulateur v86 dans le navigateur et communique avec l'imprimante via WebUSB. Après deux prototypes de ponts unidirectionnels entre CUPS et WebUSB (TTY et 9p), il met en place un pont bidirectionnel fondé sur USB/IP côté Linux et tcpip.js côté navigateur, permettant à CUPS de contrôler l'imprimante normalement. Il ajoute des fonctions pour gérer la mise en page JPEG via insertion dans un PDF adapté, la conversion HEIC sans surcharge mémoire, un prototype de numérisation SANE, ainsi que des liens d'affiliation et une télémétrie minimale, tout en gardant le projet pour l'instant non open source.

06:04

A whole boss fight in 256 bytes

Il s'agit d'une démo audio-visuelle qui tient exactement dans un fichier .com de 256 octets et s'exécute sous DOS (via DosBox‑X), affichant en temps réel un robot qui se détériore, une explosion croissante, un paysage damier défilant et une bande son MIDI. Le binaire se génère avec FASM (fasm endbot.asm endbot.com) et s'exécute dans DosBox‑X configuré pour MPU‑401 (mpu401=uart) et un synthétiseur (fluidsynth ou win32) ; la touche ESC arrête la démo et le code envoie un reset MIDI (0xFF) à la sortie. La boucle principale avance pixel par pixel et déclenche le traitement par trame quand l'index roule, la synchronisation se fait en écrivant sur le PIT puis en exécutant hlt pour obtenir ~30 FPS, et la musique est diffusée via rep outsb sur le port MIDI 0x330 selon le compteur BP. Les graphismes utilisent des astuces compactes : multiplication par 0xCCCD pour obtenir X/Y, test circulaire X²+Y² versus temps pour l'explosion, sprite 16×16 en bitmasks 2bpp avec btc pour retourner des bits et accumuler des impacts, xlat pour la table de couleurs et div/aam 9 pour la perspective et le damier de paysage. Pour tenir dans 256 octets le code emploie de nombreuses optimisations (push/pop es, BP comme horloge, stosb, ret pour quitter, etc.), emballe les données sprite et MIDI dans un seul bloc et manipule quelques octets de la sprite comme commandes MIDI pratiques.

06:03

Show HN: Gemma 4 Multimodal Fine-Tuner for Apple Silicon

Cet outil permet d'entraîner et d'adapter localement des modèles Gemma sur Mac Apple Silicon pour des tâches texte, image et audio en utilisant LoRA et PEFT avec des checkpoints Hugging Face. Il prend en charge l'entraînement multimodal (captioning, VQA, ASR, instruction/completion) à partir de CSV locaux et peut streamer des jeux de données volumineux depuis GCS ou BigQuery sans copier des téraoctets sur le disque. Le système charge des checkpoints Gemma 3n/4 compatibles, exporte des arbres de poids fusionnés en HF/SafeTensors, et impose des paramètres de traitement d'image comme image_token_budget pour assurer la cohérence entraînement/inférence. L'installation exige Python 3.10+, macOS 12.3+ avec Python arm64 et PyTorch MPS, et la configuration se fait via un assistant CLI qui génère config.ini et expose des commandes prepare, finetune, evaluate et export. Le dépôt fournit des outils additionnels (visualisation, streaming Granary, diagnostics, tests CI), des conseils pour MPS et dépannage, et est distribué sous licence MIT.

06:03

Cloudflare targets 2029 for full post-quantum security

Cloudflare accélère sa feuille de route post-quantique et vise une sécurité post-quantique complète, y compris l'authentification, d'ici 2029. Des avancées récentes—une preuve zéro-connaissance de Google sur un algorithme améliorant l'attaque contre les courbes elliptiques et une estimation d'Oratomic montrant qu'un ordinateur à atomes neutres pourrait casser P-256 avec environ 10 000 qubits—ont considérablement raccourci l'horizon du risque. Les progrès conjoints en matériel (notamment atomes neutres), correction d'erreurs et logiciels quantiques ont réduit les ordres de grandeur nécessaires pour bâtir des ordinateurs quantiques capables de casser la cryptographie actuelle. Cloudflare souligne que la priorité doit désormais être mise sur l'authentification post-quantique et la rotation ainsi que la désactivation des clés longue durée, car une authentification compromise ouvrirait un accès catastrophique aux systèmes. L'entreprise recommande d'exiger le support post-quantique dans les achats, d'encourager une coordination gouvernementale pour la migration, et assure qu'elle activera par défaut des protections post-quantiques pour ses clients sans coût supplémentaire.

06:03

Xilem – An experimental Rust native UI framework

Le projet présente deux composants expérimentaux en Rust: Masonry, une bibliothèque de base pour construire des GUIs natives avec un arbre de widgets retenu et des passes d'événements et de mise à jour, et Xilem, un framework réactif de haut niveau inspiré de React, SwiftUI et Elm. Xilem fournit un arbre de vues léger qui reconstruit l'interface en fonction des changements et propose des backends pour le web et pour Masonry, avec des points d'entrée distincts masonry/ et xilem/. L'architecture s'appuie sur winit pour la création de fenêtres, Vello et wgpu pour le rendu 2D, Parley et Fontique pour la pile textuelle, et AccessKit pour l'intégration des APIs d'accessibilité. Le dépôt inclut des exemples prêts à l'emploi (par exemple to_do_mvc), des instructions de démarrage et de build, des exigences pour Linux/BSD, une flake Nix optionnelle et la version minimale de Rust vérifiée est 1.92. Le développement se coordonne publiquement sur le Zulip Linebender, les contributions sont acceptées par pull request, et le code est principalement sous licence Apache 2.0 avec quelques fichiers d'exemples soumis à d'autres licences.

06:03

The Clock

L'auteur s'est inspiré d'un projet existant pour concevoir une horloge visuelle visant à minimiser les présupposés culturels en se basant uniquement sur des faits physiques observables. Le dispositif prend le Soleil comme point d'ancrage et représente la Terre par un cercle avec un repère local, une zone jour/nuit et la possibilité d'indiquer l'effet de l'heure d'été pour marquer le midi solaire et la durée du jour. Des anneaux concentriques supplémentaires représentent des subdivisions du jour pour les heures, minutes et secondes qui tournent continuellement afin d'offrir une granularité temporelle sans imposer de système de numération. Le sens de rotation a été choisi pour être familier aux utilisateurs en adoptant l'orientation horaire depuis une vue méridionale, et plusieurs repères locaux peuvent être ajoutés pour afficher simultanément différents fuseaux horaires. Un anneau orbital et un anneau calendaire montrent la progression de l'année et des mois, et l'auteur note que des observateurs extraterrestres pourraient déduire le fonctionnement en observant les mouvements, tout en constatant que la conception reste fondamentalement terrestre et conserve certaines conventions humaines.

06:02

US and Iran agree to provisional ceasefire

Les États-Unis et l'Iran ont convenu mardi d'un cessez-le-feu conditionnel de deux semaines incluant la réouverture temporaire du détroit d'Hormuz, après une médiation de dernière minute menée par le Pakistan. L'accord est intervenu quelques heures avant un ultimatum du président américain visant à bombarder des infrastructures iraniennes, menace qu'il a finalement suspendue en échange de l'ouverture complète, immédiate et sûre du détroit. Le processus de négociation reste incertain en raison de versions divergentes d'un plan en dix points publié par Téhéran, notamment une mention de l'enrichissement absente de la version anglaise, et d'attaques ponctuelles qui ont continué dans la région. Israël a approuvé le cessez-le-feu tout en excluant qu'il couvre les combats contre le Hezbollah, et le Pakistan a invité Washington et Téhéran à des pourparlers à Islamabad auxquels l'Iran a dit qu'il participerait. La perspective d'une désescalade a provoqué une baisse des prix du pétrole et une hausse des marchés, mais plusieurs gouvernements ont appelé à la prudence et à des négociations durables pour garantir une paix stable.

06:02

Show HN: Brutalist Concrete Laptop Stand (2024)

L'auteur, amateur d'architecture brutaliste, a fabriqué un lourd support d'ordinateur portable en béton brut reproduisant une surface texturée et un coin endommagé évoquant la décadence urbaine. L'objet intègre une prise secteur trois broches, deux ports USB de 2,1 A, un pot à plantes encastré contenant une plante chaîne de perles, ainsi qu'un porte-stylos artificiellement rouillé. La structure comprend une armature en acier visible et un câble factice corrodé pour l'effet, le métal ayant été oxydé par des traitements de corrosion et la tige d'armature brossée puis rustée au sel et peroxyde. La fabrication a nécessité deux coulées de béton avec un mélange volontairement hétérogène et un ponçage pour exposer le gravier, ainsi que l'utilisation d'un outil vibrant pour éliminer les bulles d'air dans le moule. L'auteur se déclare satisfait du résultat esthétique malgré le poids important du support, qui a dû être déplacé sur un chariot.

06:02

A database of analog cameras that can be 3D printed

La plateforme répertorie des modèles de boîtiers et d'appareils photo conçus pour l'impression 3D. Chaque fiche contient un champ nom, une description et des liens vers le site, la vidéo et les fichiers d'impression. Une interface de recherche et de filtres permet de sélectionner des appareils selon des critères. Si aucune fiche ne correspond aux critères choisis, un message indique qu'aucun résultat n'a été trouvé et propose d'ajuster la recherche. La page comprend également une section d'aide et de questions fréquentes pour guider l'utilisateur.