Un reset CSS bien argumenté qui met en lumière certaines propriétés CSS intéressantes.
— Permalink

Le 17 janvier 2026 était publié un journal au titre cryptique « Le grand secret de LinuxFr.org ». Son contenu se limite à pointer un tableau (le voici au format Markdown ou en image) et huit vers énigmatiques par un piètre rimailleur. Et pour renforcer l’aspect mékeskidi, une prédiction à propos d’un second secret.
Comment en est-on arrivé là ? Quel rapport avec LinuxFr.org ? Quel est ce grand secret ? Et le second ? Y avait-il des éléments cachés dans des éléments cachés dans des éléments cachés ? Voilà ce qui sera détaillé dans la suite.
Avertissement : évidemment si vous allez lire la suite, vous gâchez le plaisir de la recherche de la réponse par vous-même. Si vous lisez cette dépêche longtemps après sa publication, la résolution devrait rester inchangée.
Je suis, entre autres choses, un amateur de jeux de société, de jeux de rôle, de petits jeux quotidiens (comme Sutom (MIT) ou Le Mot (GPL v3) ou ClueBySam (gratuit, code propriétaire), de petits jeux de réflexion comme GNOME Sudoku (GPLv3+), habitué à recourir à dcode.fr (CC By) pour coder/décoder sur divers jeux (ou à CyberChef (Apache 2) pour des choses plus orientées sécurité) ou de participer à de longues séries d’énigmes genre calendrier de l’Avent (dernièrement celles du ChocoCervo (gratuit à but caritatif, code propriétaire) ou celles de Professeur Zwolle (payant et code propriétaire).
Dans la dernière édition de ce dernier, qui s’est terminée mi-novembre 2025, il y avait une grille codée à résoudre et j’avais adoré le principe de cette énigme à tiroirs. Je me suis demandé qu’elle serait la difficulté à en faire une similaire, voire en augmentant la densité de l’information stockée dans la grille. Bref début décembre 2025, j’ai commencé à remplir une grille (entre diverses résolutions de calendriers de l’Avent orientés énigmes/jeux ou bien sécurité).
Mi-décembre j’avais obtenu le résultat quasi final, mais j’avais du mal à résoudre moi-même l’énigme, donc il fallait réduire sa difficulté et ma motivation a baissé avec une fin d’année compliquée. Et début 2026, en rediscutant avec des amis de l’énigme en préparation, la motivation est revenue, j’ai fini de retester en une soirée, découvert une typo qui a nécessité des corrections de dernière minute, et le lendemain, tout était prêt pour la publication.
J’avais produit mon beau tableau Markdown pour publier directement sur LinuxFr.org (c’était un peu l’idée initiale). J’admire donc le résultat de mon copier-coller. Et le résultat est illisible, car le tableau est assez grand avec 26 lignes et 51 colonnes. Et surtout la dernière ligne contient du texte assez large dans chaque colonne, si on n’affiche pas le texte verticalement. Ce que ne permet pas LinuxFr.org. Bon, de toute façon, c’est nettement plus facile à résoudre dans un tableur genre LibreOffice (MPL 2.0) et j’ai d’ailleurs rapidement suggéré de l’utiliser en réglant la largeur des colonnes sauf la première à 0,7 cm par exemple, et d’ajuster l’affichage du texte en vertical pour la dernière ligne. Voir par exemple le rendu en image.
Vient ensuite le petit poème (que je vais amputer involontairement initialement en le terminant par « mater » au lieu de « materas », nuisant à la rime certes, mais sans effet sur la résolution) :
Il y aura du blanc, il y aura du noir.
Criards sont ⚫ et ⚪, parce qu’ils braillent.
Qu’un fond de la même couleur leur aille.
Similitude des drapeaux, vers un espoir ?
Bariolés ils finiront néanmoins blancs.
Tout comme la ponctuation qui n’en est pas.
Mêmes six dans une colonne, des éléments
D’autres parties à chercher, ensuite materas.
Normalement, avec le titre, le tableau bariolé cryptique plein de symboles et les vers bizarres, le lectorat comprend qu’il s’agit d’une énigme à résoudre, pour découvrir un « grand secret du site » donc. Voire un second secret.
La variété dans le tableau est le signe qu’il y a différentes choses à trouver, donc on peut commencer de différentes façons.
Les amateurs de jeu ont sans doute déjà reconnu un picross (Wikipédia nous dira qu’il est « connu sous de nombreux autres noms : Crucipixel ; Edel ; FigurePic ; gameLO; Grafilogika ; Griddlers ; Hanjie ; Illust-Logic ; Japanese Crosswords ; Japanilaiset Ristikot ; Japanese Puzzels ; Kare Karala! ; Logic Art ; Logic Square ; Logicolor ; Logigraphe ; Logik-Puzzles ; Logimage ; Nonograms ; Oekaki Logic ; Oekaki-Mate ; Paint by numbers ; Paint Logic ; Pic-a-Pix ; Pikurosu ; Pixel Puzzles ; Puzzle Giapponese ; Puzzle Japones ; Shchor Uftor ; Tsunami ; Pictopix. »). Pour les autres, j’avais donné un indice avec « Une façon de commencer est de regarder ce qui est lisible et qui flèche la résolution. » Dans le coin supérieur gauche, on voit les mots WIKIPEDIA et PICROSS qui sont pointés par des flèches.
| W | I | K | I | P | E | D | I | A | 📖 |
| ⤒ | ⤒ | B | j | Y | W | R | y | ⤒ | ⤒ |
| 🦙 | 🖱️ | K | c | m | l | ♾️ | l | 💾 | 📬 |
| 💽 | 🐧 | Y | W | 5 | z | I | G | ⤓ | ⤓ |
| ⟶ | ⟶ | ⟶ | P | I | C | R | O | S | S |
Un autre indice était le vers « Il y aura du blanc, il y aura du noir. ». Effectivement on va avoir besoin de cases noires et blanches (plutôt gris clair et foncé pour pouvoir lire le contenu en pratique), et pas que pour le picross. On va aussi s’aider de « ⚫ et ⚪ (…) Qu’un fond de la même couleur leur aille. » (donc les ronds noirs sont des cases noires et les ronds blancs des cases blanches. Et enfin on va s’aider de « drapeaux (…) ils finiront néanmoins blancs », donc les drapeaux sont des cases blanches, et de « Tout comme la ponctuation », dont la « ponctuation » (voire plus loin, mais on parle ici des cases contenant des points et des tirets) est aussi sur des cases blanches.
Ne reste plus qu’à résoudre le picross. Et on découvre un QR-code 50x25 (en fait 25x25 les cases étant dédoublées). Il a été produit ainsi avec le paquet go-qrcode (licence Expat), -t pour la sortie texte, -s pour la taille, -d pour éviter la bordure :
qrcode -t -d -s 33 "1 Le site " > qrcode.txt
Ce qui donne un 33x33 mais 25x25 sans le cadre. Avec une petite moulinette de 48 lignes assez basique nommée pycross-me.py je l’ai converti en un picross. Et une dernière commande vient remplacer les blancs (espaces) par des @ et les noirs par des espaces pour faciliter la lecture dans un tableau ensuite.
./pycross-me.py qrcode.txt |sed -e 's/" "/"@"/g' -e 's/"█"/" "/g' > qrcode.csv
Le qrcode.txt :
██ ██ ██████ ██
██████████ ██ ████ ██ ██ ██████████
██ ██ ██ ████ ████ ██ ██ ██
██ ██ ████████████ ██████ ██ ██
██ ██ ████ ████ ████ ██ ██ ██
██████████ ██ ██████████ ██ ██████████
██ ██ ██ ██ ██ ██
████████████████ ██ ████ ████ ████████████████
████ ██ ██ ████████████ ██ ████
████ ██ ██████ ████ ██████ ██████ ██
██ ██ ██ ██ ████████ ████ ██ ██ ██
██ ██ ████████ ██████ ██████ ████████
██████ ████ ██ ████ ██ ██ ████ ██
████████ ██ ██ ██ ██ ██████████
████ ██ ██ ██ ██████ ██████████
████████ ████ ████████████ ██ ██
██ ████ ██ ██ ██ ██
████████████████ ██ ████ ██████ ██ ██
██████ ██ ██ ██ ████
██████████ ████ ██ ██████ ████
██ ██ ██ ██████ ██ ████
██ ██ ██ ██ ████████ ████
██ ██ ██ ████ ██ ██ ████ ██
██████████ ██████ ██████ ██ ██ ████████
██████████ ████ ██████
Bref ce qu’il fallait trouver dans cette sous-partie était « 1 Le site ».
La partie blanche était celle contenant WIKIPEDIA et PICROSS précédemment évoquée, plus quelques émojis pour décorer (dont un lama déchaîné et un manchot, et divers moyens de stockage d’information).
On ne conservant que la partie noire dans cette partie on a ce qui suit :
| c | m | l | l | b | i | B | ❌ | k | Y | W | 5 | z |
| G | x | ⏹️ | ||||||||||
| c | y | B | j | Y | W | R | y | Z | ||||
| ✅ | M | K | c | m | l | ♾️ | l | b | ||||
| B | k | Y | W | 5 | z | I | G | x | ||||
| c | y | B | ||||||||||
| Y | W | ⏹️ | R | ⚫ | ⚫ | y | Z | X | M | | K | 🥾 |
On peut noter que c’est une des rares zones comportant des minuscules. Et la raison est qu’on peut y lire la phrase cmllbiBkYW5zIGxlcyBjYWRyZXMK répétée deux fois, qui est nettement plus lisible si on devine qu’il s’agit d’un codage base64 :
$ echo cmllbiBkYW5zIGxlcyBjYWRyZXMKcmllbiBkYW5zIGxlcyBjYWRyZXMK|base64 -d
rien dans les cadres
rien dans les cadres
Bref ça ne sert à rien.
D’abord la partie en blanc :
| B | R | 🕶️ | W | P | 🐧 | P | A | R | 👩🦯 |
| A | I | E | I | ||||||
| L | L | L | |||||||
| E | B | 📖 | |||||||
| R | 📖 | A | I | 🦙 | L | L | ⚪ | E |
On a donc une dame avec une canne blanche, des lunettes noires, deux fois Braille, un « WP (pour Wikipédia) pareil » (que pour Picross), et les habituels manchot et lama déchaîné. Bref c’est un indice pour une autre partie, mais pas de réponse en vue si je puis dire.
Alors la partie en noir :
| P | 🐙 | 4 | s | 🍂 | a | S | s | 3 | Z | c | 🌲 | l |
| i | R | s | ||||||||||
| r | L | @ | u | T | ♾️ | r | ❌ | E | ||||
| C | | @ | ✅ | d | r | e | ⚫ | s | ||||
| A | r | i | e | n | À | Y | ⚫ | t | ||||
| o | U | v | ||||||||||
| R | m | @ | i | 5 | 🦀 | C | o | U | 🥖 | c | O | u |
Une fois les émojis décoratifs retirés, on peut lire « P4s aSs3Z cl4iR sUr L (sic) @uTrEs C@dres y A rien À Y tRoUvER m@i5 CoUcOu » (la fôte n’était pas voulue) pour « Pas assez clair sur les autres cadres ? Y a rien à trouver, mais coucou. »
D’abord la partie en blanc :
| T | A | A | H | T | A | A | H | M |
| A | A | H | ||||||
| A | A | H | ||||||
| A | A | |||||||
| O | T | I | T | A | A | H | ||
| 🎶 | 🎵 | I | R | T | I | T | I | T |
Qu’il faut lire comme du code morse avec des tirets longs dits « taah » et des points courts dits « ti » (et des notes de musique pour suggérer les sons).
taah taah -> M
taah taah taah -> O
ti taah ti -> R
ti ti ti -> S
ti -> E
Super, on a « morse » codé en morse. Et on n’a rien appris.
Puis la partie en noir :
| a | W | w | g | b | i | d | 5 | I | G | E | g | d |
| J | ✅ | h | ||||||||||
| W | 1 | l | b | n | Q | g | c | m | ||||
| l | b | i | B | ⏹️ | k | Y | W | 5 | ||||
| I | G | 🟦 | 🔴 | 🟢 | ⏸️ | H | x | |||||
| c | y | B | ||||||||||
| Y | | W | R | y | Z | X | 🦣 | M | ⚫ | K | 🍄 |
Encore des minuscules et encore du base64.
echo aWwgbid5IGEgdnJhaW1lbnQgcmllbiBkYW5zIGxlcyBjYWRyZXMK|base64 -d
il n’y a vraiment rien dans les cadres
Dans la partie en blanc, on peut lire (après remise en forme) « message pour l’intelligence naturelle ou artificielle qui lira cette phrase ce n’est pas ce qu’il faut avec les blancs voir plutôt les non-lettres sinosn (sic) » (la typo est involontaire).
Dans la partie en noir, on peut lire (après remise en forme) :
D’abord vient le numéro d’un système avant le systemd.
Puis une pause car besoin d’espace.
Ensuite une lettre qui ne doit pas être confondue avec le zéro.
Suivi d’un langage de programmation orienté données et statistiques.
Arrive une arobase mais plus simple.
Puis la première lettre du langage de templates utilisé jusqu’en deux-mille onze > par le site.
Décidons une nouvelle pause.
Tout est au point, alors mettons-en deux.
Les réponses étant 5 (System V), espace, o, r, a, t (Templeet), espace, :.
L’élément est donc « 5 orat : ».
On aurait pu faire le braille dès le début, sans résoudre le picross. Il était indiqué par « ⚫ et ⚪, parce qu’ils braillent. »
Les ronds noirs (avec l’aide des ronds blancs pour savoir où sont situés les 3 lignes et 2 colonnes codant un caractère braille) permettent de lire de haut en bas et de gauche à droite le message « 3 aux contribu » (la première zone code un chiffre, la seconde est entièrement blanche donc vide donc espace, et les suivantes codent des lettres).
On aurait pu faire le morse dès le début, sans résoudre le picross. Le vers parle de « ponctuation qui n’en est pas » et il faut donc y voir du morse dans les parties comportant des points et des tirets. On peut déchiffrer « 2 vit grâce » (la première zone code un chiffre, la seconde est◽donc espace, et les suivantes codent des lettres).
On aurait pu faire les drapeaux dès le début, sans résoudre le picross. Le vers parle de « Similitude des drapeaux ». Il faut remarquer que dans le premier groupe de six ils ont en commun un partage en 4. Le second groupe ne comporte que des drapeaux blancs, donc espace. Et chacun des autres groupes va coder une lettre, la première lettre commune des pays concernés. Le message à trouver était donc « 4 tions du lect ».
On aurait pu faire les six dès le début, sans résoudre le picross. Les derniers vers non encore utilisés sont
Mêmes six dans une colonne, des éléments
D’autres parties à chercher, ensuite materas.
Une petite observation montre qu’il existe une colonne avec six fois le caractère Unicode☝🏼. On cherche donc des mains et des doigts. Et si leurs emplacements dessinent les lettres v, o, u et s. Le message à trouver était donc « 6 vous »
Les six éléments trouvés et remis dans l’ordre donne la phrase suivante : « Le site vit grâce aux contributions du lectorat : vous ». Ce qui est effectivement le grand secret de LinuxFr.org, site qui vit par et pour vous. Il figure d’ailleurs en première phrase sur la page pour proposer un contenu.
Et voici une visualisation de la solution complète de la grille :
![]()
Au moment où j’ai écrit le journal, je me suis dit que la résolution pourrait être longue et difficile, qu’une personne seule aurait dû mal à la faire, qu’elle aurait besoin de l’aide, des suggestions, des pistes, des idées, des erreurs, des indices et de la motivation apportée par d’autres personnes. Que sur un site contributif les personnes allaient s’entraider et se nourrir des questions/réponses des autres via les commentaires. Et c’est bien, selon moi, le second grand secret derrière LinuxFr.org. Je ne pouvais que pressentir les commentaires qui viendraient par la suite sous le journal d’annonce de l’énigme.
Voici mes quelques impressions retour sur la création d’une telle énigme :
Ce n’est pas la première fois que j’organise un jeu de ce type sur le site, il y a eu plusieurs fois des chasses aux œufs durant des vacances autour de Pâques (en 2020 et 2021). C’est la première fois que cela prend cette forme d’une énigme mystérieuse. Peut-être qu’il y en aura d’autres ainsi, peut-être pas, cela dépend de vos retours, de la motivation et de l’inspiration. Et de l’envie éventuelle de tester d’autres formes (un escape game ? Quelque chose basé sur le site lui-même ? Ou bien en dehors en utilisant des ressources libres genre OpenStreetMap ou OpenFoodFacts ?). De faire quelque chose en partenariat avec l’April, qui a déjà fait un jeu de l’oie et un espace game ?
Commentaires : voir le flux Atom ouvrir dans le navigateur
Mots de passe, Wi-Fi public, phishing, MFA : les gestes essentiels pour protéger efficacement vos données personnelles lors de la navigation en ligne.
Cet article Comment sécuriser vos données lorsque vous naviguez en ligne est apparu en premier sur Linformatique.org.
Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.
✍ Guillaume Belfiore, le dimanche 25 janvier 2026.
Des suites bureautiques alternatives, il en existe plusieurs. Mais au-delà du modèle open source, la promesse d’un environnement collaboratif entièrement chiffré reste très rare. C’est sur ce point que l’entreprise française CryptPad entend se différencier.
✍ Guillaume Belfiore, le lundi 19 janvier 2026.
Lancée début janvier, la consultation publique sur l’open source européen n’est pas passée inaperçue. Celle-ci a collecté déjà près de 600 réponses en seulement quelques jours, émanant d’organisations, de sociétés ou de citoyens.
✍ Reynald Fléchaux, le lundi 19 janvier 2026.
Une circulaire en préparation doit renforcer le poids de la DSI de l’Etat dans les achats numériques du secteur public. Et les transformer en levier de souveraineté.
✍ Magali Garnero, le mercredi 14 janvier 2026.
Leurs milliards de profits financent un lobbying contre toute réglementation. S’en libérer, c’est reprendre le contrôle sur nos outils et nos données.
Voir aussi:
Commentaires : voir le flux Atom ouvrir dans le navigateur

A very detailed & insightful explanation of Stack Overflow surprising architecture, from their lead architect in 2016.
Un clone de WORDLE, mais en français, par le créateur du jeu FEZ, open-source : https://github.com/renaudbedard/wordle-fr
Il existe aussi d'autre versions versions en ligne de ce jeu : il y a LE MOT, SUTOM et LeMOT.
Comet est un addon de sources pour Stremio, comme StreamFusion que j’ai déjà présenté. Seulement là où SF cible le contenu francophone, Comet va ratisser large.
Le premier addon Stremio pour proxyfier les flux Debrid, permettant l’utilisation du service Debrid sur plusieurs IP en même temps avec le même compte !
Limite de connexion maximale basée sur l’IP
Tableau de bord d’administration avec gestion de la bande passante, statistiques et plus…
Scrapers pris en charge : Jackett, Prowlarr, Torrentio, Zilean, MediaFusion, Debridio, StremThru, AIOStreams, Comet, Jackettio, TorBox, Nyaa, BitMagnet, TorrentsDB et Peerflix
Système de cache avec SQLite / PostgreSQL
Scraper en arrière-plan ultra-rapide
Classement intelligent des torrents propulsé par RTN
Support du proxy pour contourner les restrictions des services Debrid
Services Debrid supportés : Real-Debrid, All-Debrid, Premiumize, TorBox, Debrid-Link, Debrider, EasyDebrid, OffCloud et PikPak
Torrents directs pris en charge
Support Kitsu (anime)
Filtre de contenu adulte
Support du protocole ChillLink
Il permet donc de lire des contenus depuis des débrideurs ou depuis du torrenting direct (avec VPN !).
Comet (GitHub | Discord) est présenté par g0ldy comme l’addon le plus rapide pour Stremio, tout simplement parce qu’il constitue un cash des métadonnées des .torrents à partir des sources configurées.

On me confirme que les stats des caches de débrideurs – By Service Provider – sont fluctuantes et non révélatrices, on peut en avoir des milliers comme quasi rien. Testé avec AD, RD, TB et Premiumize, mêmes soucis de stats dans tous les cas. Mais c’est qu’une statistique, en lecture sous Stremio le contenu est bien trouvé.
Certains en ont des 10aines de millions de .torrents en attente d’ajout en base de données. Je débute et relance souvent l’outil donc il ne bosse pas beaucoup et j’ai pas mis beaucoup de sources vu que c’est un test. Et accessoirement, indexer tout le contenu VO de la Terre ne m’intéresse pas (certains indexent un dump de RARBG de quelques Po).
Comet est un indexeur de liens (sources) depuis tous les scrapers indiqués dans la description. C’est un addon de sources pour Stremio, avec filtres de résolution et langues notamment.

Et on peut multiplier les instances, j’ai par exemple un BitMagnet publique et mon instance (elle aussi relancée il y a peu donc pas encore beaucoup de contenu indexé).
Sans compter que mon pauvre Lincstation N1 se mange tout mon setup en ce moment vu que je réinstalle les autres machines. Il est bien brave avec son petit CPU ^^
Et comme g0dly trouvait qu’il ne gavait pas assez son Comet, il a décidé de lancer très récemment (encore en test dirons-nous) un réseau CometNet de partage de métadonnées entre instances (publiques et/ou privées).

Pour ne parler que de FRENCH/MULTi, Comet peut être un bon complément voire une alternative à StreamFusion, à condition d’avoir les bonnes sources. On peut aussi parier dessus, par exemple via BitMagnet, pour les trackers francophones qui disent vouloir publier leurs contenus en DHT.
Dans ce cas, pas la peine d’indexer la planète. Si vous voulez du tout cuit : stremiofr.com propose une instance dédiée à la VF.
L’installation est simple, en Docker. Attention, mes paramètres CometNet (dans le .env) sont des tests et ils évoluent tous les jours en ce moment vu que c’est en plein développement/test.
:beta pour les dernières MàJ de CometNet, :latest sinon
services:
comet:
container_name: comet
#image: g0ldyy/comet:latest
image: g0ldyy/comet:beta
restart: always
ports:
- "9237:8000"
- "8765:8765" # CometNet P2P port
environment:
DATABASE_TYPE: ${DATABASE_TYPE:-postgresql}
DATABASE_URL: ${DATABASE_URL:-comet:comet@postgres:5432/comet}
COMETNET_ENABLED: "True"
FASTAPI_WORKERS: "1"
env_file:
- .env
volumes:
- /mnt/Docker/stremio/comet/data:/data
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:8000/health"]
interval: 5s
timeout: 5s
retries: 5
start_period: 10s
depends_on:
postgres:
condition: service_healthy
postgres:
container_name: comet-postgres
image: postgres:18-alpine
restart: always
environment:
POSTGRES_USER: comet
POSTGRES_PASSWORD: comet
POSTGRES_DB: comet
command:
- "postgres"
- "-c"
- "shared_buffers=128MB"
- "-c"
- "effective_cache_size=384MB"
- "-c"
- "maintenance_work_mem=64MB"
- "-c"
- "checkpoint_completion_target=0.9"
- "-c"
- "wal_buffers=8MB"
- "-c"
- "random_page_cost=1.1"
- "-c"
- "effective_io_concurrency=200"
- "-c"
- "work_mem=8MB"
- "-c"
- "max_connections=100"
volumes:
- /mnt/Docker/stremio/comet/postgres:/var/lib/postgresql/
healthcheck:
test: ["CMD-SHELL", "pg_isready -U comet -d comet"]
interval: 5s
timeout: 5s
retries: 5
Et donc le .env
ADDON_ID=stremio.comet.fast
ADDON_NAME=Comet
FASTAPI_HOST=0.0.0.0
FASTAPI_PORT=8000
FASTAPI_WORKERS=1
USE_GUNICORN=True
GUNICORN_PRELOAD_APP=True
EXECUTOR_MAX_WORKERS=1
PUBLIC_BASE_URL=https://stremio-comet.xxx.xxx
ADMIN_DASHBOARD_PASSWORD=xxx
PUBLIC_METRICS_API=False
DATABASE_TYPE=postgresql
DATABASE_FORCE_IPV4_RESOLUTION=False
DATABASE_URL=comet:comet@postgres:5432/comet
DATABASE_PATH=data/comet.db
DATABASE_BATCH_SIZE=20000
DATABASE_STARTUP_CLEANUP_INTERVAL=3600
PROXY_DEBRID_STREAM=True
PROXY_DEBRID_STREAM_PASSWORD=xxx
METADATA_CACHE_TTL=2592000 # 30 days
TORRENT_CACHE_TTL=2592000 # 30 days
LIVE_TORRENT_CACHE_TTL=604800 # 7 days
DEBRID_CACHE_TTL=86400 # 1 day
DEBRID_CACHE_CHECK_RATIO=1 # Minimum ratio (0.5 = 5%) of cached torrents/total torrents required to skip re-checking availability on the debrid service.
METRICS_CACHE_TTL=60 # 1 minute
SCRAPE_LOCK_TTL=300 # 5 minutes - Duration for distributed scraping locks
SCRAPE_WAIT_TIMEOUT=30 # 30 seconds - Max time to wait for other instance to complete scraping
BACKGROUND_SCRAPER_ENABLED=True
BACKGROUND_SCRAPER_CONCURRENT_WORKERS=1 # Number of concurrent workers for scraping (adjust depending on whether you are often ratelimited by scrapers)
BACKGROUND_SCRAPER_INTERVAL=3600 # Interval between scraping cycles in seconds
BACKGROUND_SCRAPER_MAX_MOVIES_PER_RUN=100 # Maximum number of movies to scrape per run
BACKGROUND_SCRAPER_MAX_SERIES_PER_RUN=100 # Maximum number of series to scrape per run
CATALOG_TIMEOUT=30 # Max time to fetch catalog pages (seconds)
ANIME_MAPPING_ENABLED=True
ANIME_MAPPING_REFRESH_INTERVAL=432000 # Seconds between background anime mapping refreshes when using database cache (<=0 disables)
RATELIMIT_MAX_RETRIES=2 # Maximum number of retries for 429 Too Many Requests errors. Set to 0 to disable retries.
RATELIMIT_RETRY_BASE_DELAY=1.0 # Base delay in seconds for exponential backoff (e.g., 1.0 -> 1s, 2s, 4s, 8s...)
SCRAPE_PROWLARR=True
PROWLARR_URL=https://prowlarr.xxx.xxx
PROWLARR_API_KEY=xxx
PROWLARR_INDEXERS=[] # Leave empty to automatically use all configured/healthy indexers. Or specify a list of indexer IDs.
# Shared Settings
INDEXER_MANAGER_TIMEOUT=30 # Max time to get search results (seconds) - Shared by both
INDEXER_MANAGER_WAIT_TIMEOUT=30 # Max time to wait for the indexer manager to initialize (seconds)
INDEXER_MANAGER_UPDATE_INTERVAL=900 # Time in seconds between indexer updates (default: 900s / 15m)
# ============================== #
# Torrent Settings #
# ============================== #
GET_TORRENT_TIMEOUT=5 # Max time to download .torrent file (seconds)
DOWNLOAD_TORRENT_FILES=True # Enable torrent file retrieval from magnet link
MAGNET_RESOLVE_TIMEOUT=60 # Max time to resolve a magnet link (seconds)
DOWNLOAD_GENERIC_TRACKERS=False # Enable downloading generic trackers list at startup (for scraped torrents without trackers, doesn't work well most of the time)
# ============================== #
# Scraping Configuration #
# ============================== #
# Multi-Instance Scraping Support:
# - Single URL: Use a simple string for one instance (default behavior)
# - Multiple URLs: Use JSON array format for multiple instances
# - Example single: COMET_URL=https://comet.feels.legal
# - Example multi: COMET_URL='["https://comet1.example.com", "https://comet2.example.com"]'
#
# Scraper Context Modes:
# Each SCRAPE_* setting can control when scrapers are used:
# - true/both: Used for live scraping AND background scraping (default)
# - live: Only used for live scraping (when users request content)
# - background: Only used for background scraping (automatic content pre-caching)
# - false: Completely disabled
#
# Examples:
# SCRAPE_COMET=both # Used for both live and background scraping
# SCRAPE_TORRENTIO=live # Fast live scraping only
# SCRAPE_ZILEAN=background # Background cache building only
# SCRAPE_NYAA=false # Completely disabled
# SCRAPE_JACKETT=live # Jackett for live scraping only
# SCRAPE_PROWLARR=background # Prowlarr for background scraping only
SCRAPE_COMET=True
COMET_URL=["https://comet.feels.legal", "https://comet.stremiofr.com/"]
SCRAPE_ZILEAN=True
ZILEAN_URL=https://zileanfortheweebs.midnightignite.me
SCRAPE_STREMTHRU=True
STREMTHRU_SCRAPE_URL=https://stremthru.13377001.xyz
STREMTHRU_URL=https://stremthru.13377001.xyz
SCRAPE_BITMAGNET=True
#BITMAGNET_URL=https://bitmagnetfortheweebs.midnightignite.me
BITMAGNET_URL='["https://bitmagnetfortheweebs.midnightignite.me", "http://192.168.0.196:3333"]'
BITMAGNET_MAX_CONCURRENT_PAGES=5
BITMAGNET_MAX_OFFSET=15000 # Maximum number of entries to scrape
SCRAPE_TORRENTIO=True
TORRENTIO_URL=https://torrentio.strem.fun
SCRAPE_MEDIAFUSION=True
MEDIAFUSION_URL=https://mediafusion.elfhosted.com
MEDIAFUSION_API_PASSWORD= # API password for MediaFusion instances that require authentication
MEDIAFUSION_LIVE_SEARCH=True
SCRAPE_JACKETTIO=True
JACKETTIO_URL=https://jackettio.stremiofr.com/xxx
SCRAPE_NYAA=True
NYAA_ANIME_ONLY=True
NYAA_MAX_CONCURRENT_PAGES=5
SCRAPE_ANIMETOSHO=True
ANIMETOSHO_ANIME_ONLY=True
ANIMETOSHO_MAX_CONCURRENT_PAGES=8
SCRAPE_TORBOX=True
TORBOX_API_KEY=xxx
SCRAPE_TORRENTSDB=True
SCRAPE_PEERFLIX=True
DISABLE_TORRENT_STREAMS=False # When true, torrent-only requests return a friendly message instead of magnets
TORRENT_DISABLED_STREAM_NAME=[INFO] Comet # Stremio stream name shown when torrents are disabled
TORRENT_DISABLED_STREAM_DESCRIPTION=Pas de torrenting en direct # Description shown to users in Stremio
REMOVE_ADULT_CONTENT=False
RTN_FILTER_DEBUG=True # Set to True to log why torrents are excluded by RTN (debug only, verbose!)
DIGITAL_RELEASE_FILTER=False # Filter unreleased content
TMDB_READ_ACCESS_TOKEN=xxx
COMETNET_ENABLED=True
COMETNET_ADVERTISE_URL=wss://cometnet.xxx.xxx
COMETNET_KEYS_DIR=/data/cometnet/keys
COMETNET_POOLS_DIR=/data/cometnet/pools
# Network Discovery
COMETNET_BOOTSTRAP_NODES='["wss://cometnet-beta.feels.legal", "wss://cometnet.streamproxy.xyz", "wss://cometnet.selfhosting.sterzeck.com.br", "wss://https://cometnet.at16.co.uk/"]'
#COMETNET_BOOTSTRAP_NODES='["wss://cometnet-beta.feels.legal", "wss://cometnet.streamproxy.xyz"]'
COMETNET_MANUAL_PEERS=[] # JSON array: '["wss://friend.example.com:8765"]'
# Peer Management
COMETNET_MAX_PEERS=100
COMETNET_MIN_PEERS=3
# Contribution Mode: full (default) | consumer | source | leech
COMETNET_CONTRIBUTION_MODE=full
# Optional: Trust Pools (JSON array of pool IDs)
# COMETNET_TRUSTED_POOLS='["my-community"]'
# NAT Traversal (for home connections)
COMETNET_UPNP_ENABLED=True
# Gossip
COMETNET_GOSSIP_FANOUT=3
COMETNET_GOSSIP_INTERVAL=1.0
COMETNET_GOSSIP_MESSAGE_TTL=5
COMETNET_GOSSIP_MAX_TORRENTS_PER_MESSAGE=1000
COMETNET_GOSSIP_CACHE_TTL=300
COMETNET_GOSSIP_CACHE_SIZE=10000
# Validation
COMETNET_GOSSIP_VALIDATION_FUTURE_TOLERANCE=60
COMETNET_GOSSIP_VALIDATION_PAST_TOLERANCE=300
COMETNET_GOSSIP_TORRENT_MAX_AGE=604800
# Peer Discovery
COMETNET_PEX_BATCH_SIZE=20
COMETNET_PEER_CONNECT_BACKOFF_MAX=300
COMETNET_PEER_MAX_FAILURES=5
COMETNET_PEER_CLEANUP_AGE=604800
COMETNET_ALLOW_PRIVATE_PEX=False
COMETNET_SKIP_REACHABILITY_CHECK=False
COMETNET_REACHABILITY_RETRIES=5
COMETNET_REACHABILITY_RETRY_DELAY=10
COMETNET_REACHABILITY_TIMEOUT=10
# Transport
COMETNET_TRANSPORT_MAX_MESSAGE_SIZE=10485760
COMETNET_TRANSPORT_MAX_CONNECTIONS_PER_IP=3
COMETNET_TRANSPORT_PING_INTERVAL=30.0
COMETNET_TRANSPORT_CONNECTION_TIMEOUT=120.0
COMETNET_TRANSPORT_MAX_LATENCY_MS=10000.0
COMETNET_TRANSPORT_RATE_LIMIT_ENABLED=True
COMETNET_TRANSPORT_RATE_LIMIT_COUNT=20
COMETNET_TRANSPORT_RATE_LIMIT_WINDOW=1.0
# NAT Traversal
COMETNET_UPNP_ENABLED=False
COMETNET_UPNP_LEASE_DURATION=3600
# Reputation System
COMETNET_REPUTATION_INITIAL=100.0
COMETNET_REPUTATION_MIN=0.0
COMETNET_REPUTATION_MAX=10000.0
COMETNET_REPUTATION_THRESHOLD_TRUSTED=1000.0
COMETNET_REPUTATION_THRESHOLD_UNTRUSTED=50.0
COMETNET_REPUTATION_BONUS_VALID_CONTRIBUTION=0.001
COMETNET_REPUTATION_BONUS_PER_DAY_ANCIENNETY=10.0
COMETNET_REPUTATION_PENALTY_INVALID_CONTRIBUTION=50.0
COMETNET_REPUTATION_PENALTY_SPAM_DETECTED=100.0
COMETNET_REPUTATION_PENALTY_INVALID_SIGNATURE=500.0


En prime, on a les statistiques de flux.

![]()
Cette revue de presse sur Internet fait partie du travail de veille mené par l’April dans le cadre de son action de défense et de promotion du logiciel libre. Les positions exposées dans les articles sont celles de leurs auteurs et ne rejoignent pas forcément celles de l’April.
✍ Amine Baba Aissa, le dimanche 18 janvier 2026.
Alors que le dispositif avait suscité de nombreuses critiques au sein d’associations en France, la CNAF a choisi de ne pas renoncer à son algorithme de contrôle des allocataires et vient de déployer un nouveau modèle de «data mining». Cette fois, l’organisme mise sur une communication plus transparente et a décidé
✍ Dan Israel, le jeudi 15 janvier 2026.
L’encyclopédie en ligne, gratuite et coopérative, a été lancée le 15 janvier 2001. Avec 65 millions d’articles en 326 langues, son succès a dépassé toutes les attentes, malgré les critiques régulière…"
✍ Bertrand Lemaire, le mercredi 14 janvier 2026.
Le 28 janvier 2026, Software Heritage fêtera ses dix ans à l’Unesco. Morane Gruenpeter, directrice de la verticale Open-Science, et Bastien Guerry, responsable des partenariats, présentent cette initiative qui vise à préserver le patrimoine applicatif quelque soit le sort des éditeurs ou les feuilles de route de ceux-ci.
✍ Thierry Noisette, le lundi 12 janvier 2026.
La Commission propose jusqu’au 3 février aux développeurs, entreprises et communautés open source, administrations et chercheurs de contribuer à la future stratégie européenne d’écosystème numérique ouvert. En identifiant les obstacles à l’adoption de l’open source et en suggérant des mesures concrètes.
Et aussi:
Commentaires : voir le flux Atom ouvrir dans le navigateur
David Ramasseul 17/01/2026 à 21:46, Mis à jour le 17/01/2026 à 21:59
Le journal britannique The Times révèle qu'une ancienne analyste de la Banque d'Angleterre a écrit à l'actuel gouverneur de l'institution pour l'inciter à travailler sur les risques économiques et sociaux de la divulgation d'une présence extraterrestre.
Mieux vaut prévenir que guérir. Le dicton est aussi valable en économie même si la prédiction en question semble encore un peu improbable. The Times, vénérable quotidien britannique, assure que la Banque d’Angleterre est incitée à étudier les conséquences financières et les dispositifs à mettre en place en cas d’annonce par la Maison Blanche de l’existence d’une vie extraterrestre, voire de sa présence sur Terre.
« Une puissance ou d’une intelligence supérieure à tout gouvernement »
C’est l’un des anciens experts de l’institution qui est à l’origine de cette demande. Helen McCaw a occupé jusqu’en 2012 le poste d’analyste principale en sécurité financière à la banque centrale britannique, où elle se préparait aux événements susceptibles d’avoir un impact sur l’économie. Dans un courrier adressé à Andrew Bailey, le gouverneur de la Banque d’Angleterre, elle l’exhorte « à prévoir des mesures d’urgence au cas où la Maison Blanche confirmerait un jour que nous ne sommes pas seuls dans l’univers. »
Helen McCaw craint qu’une telle annonce ne provoque « une onde de choc sur les marchés et des faillites bancaires ainsi que des troubles sociaux. » Mais, l’analyste va beaucoup plus loin et semble convaincu que la Maison Blanche suit un agenda précis fondé sur des données concrètes : « Le gouvernement des États-Unis semble être à mi-chemin d’un processus pluriannuel visant à déclassifier et à divulguer des informations sur l’existence d’une intelligence non humaine technologiquement avancée responsable des phénomènes anormaux non identifiés (PAN) », affirme-t-elle. Et elle poursuit : « Si le phénomène PAN s’avère être d’origine non humaine, nous devrons peut-être reconnaître l’existence d’une puissance ou d’une intelligence supérieure à tout gouvernement et dont les intentions sont potentiellement inconnues. »
OpenProject est un outil de collaboration et de gestion de projet polyvalent. Il est axé sur la souveraineté et la confidentialité des données. La version 17.0 apporte notamment l'édition collaborative de documents en temps réel.
![]()
OpenProject est une plateforme depuis laquelle les parties tenantes d'un projet peuvent se coordonner et collaborer. Les projets sont découpés en tâches appelées lots de travaux et organisées hiérarchiquement ou en séquence, puis planifiées. Le suivi se fait par la mise à jour du statut et des propriétés de chaque lot de travaux, de sa création jusqu'à sa réalisation.
De nombreux modules destinés à la collaboration et au suivi sont disponibles :
Il peut aussi s'interfacer avec d'autres logiciels :
OpenProject est développé en Ruby et JavaScript en utilisant Ruby on Rails. Il est sous licence GPLv3. Il est basé sur un fork de Redmine.
Les sorties se font en général au rythme d'une par mois.
Deux options sont possibles pour utiliser OpenProject :
Le prix et les fonctionnalités sont les mêmes, et il est possible de passer d'un type d'hébergement à l'autre facilement.
OpenProject propose plusieurs éditions :
Il est possible de tester la version Enterprise Premium pendant 14 jours.
La version 17.0.0 a été publiée mercredi 14 janvier 2026.
Le module Documents a été repensé pour inclure de la collaboration en temps réel. Les équipes peuvent maintenant éditer des documents en même temps et voir les changements de chacun au fur et à mesure, directement dans OpenProject.
![]()
Cela facilite l'écriture à plusieurs de concepts, de spécifications, de contrats ou de documents de planification tout en restant étroitement connectés au projet. Les documents peuvent référencer et lier des lots de travaux existants.
Ce nouveau module Documents se base sur BlockNote, un éditeur de texte open source moderne aussi utilisé dans d'autres initiatives comme openDesk et LaSuite.
Ces fonctionnalités ont été ajoutées :
![]()
L'interface de la page d'accueil d'un projet est désormais divisée en deux parties : « Vue d'ensemble ( Overview ) » et « Tableau de bord ( Dashboard ) ». Les équipes peuvent ainsi appréhender rapidement les informations générales sur le projet ainsi que les détails opérationnels.
![]()
La création de projet bénéficie d'une sélection de modèle améliorée rendant la création de nouveaux projets plus facile, notamment pour les utilisateurs sans connaissances techniques approfondies. Ces modifications préparent le terrain pour un futur assistant de création de projet en plusieurs étapes.
![]()
Les projets peuvent être regroupés en programmes, tandis que les portefeuilles offrent une vue d'ensemble de toutes les initiatives en cours. Ceci est particulièrement précieux pour les bureaux de gestion de projet (PMO), les organisations du secteur public et les équipes travaillant avec des méthodologies telles que PM² ou PMflex.
![]()
Pour 2026, les développements vont s'orienter vers l'amélioration de l'existant bien sûr, mais aussi :
N'hésitez pas à tester OpenProject en l'essayant en ligne pendant 14 jours ou en l'installant vous même. Si vous avez des retours ou des demandes de fonctionnalités, vous pouvez vous inscrire sur notre instance community.openproject.org et contribuer à améliorer OpenProject.
Commentaires : voir le flux Atom ouvrir dans le navigateur
Ce tutoriel explique comment installer FossFLOW en local (self-hosted) pour créer des diagrammes isométriques 3D directement dans votre navigateur Web.