late.sh – Le BBS ressuscité en SSH, avec NetHack dedans
Vous tapez dans votre terminal ssh late.sh et c’est tout. Votre clé SSH fait alors office de carte de membre et vous voilà dans un salon peuplé de gens qui tapent sur leur clavier depuis un peu partout sur la planète. C’est ce qu’a imaginé Mateusz Piórowski, un dev polonais, qui a passé ces derniers mois à ressusciter le BBS.
Vous atterrissez dans THE LATE BAR, un vrai décor en ASCII où vous marchez en utilisant les flèches du clavier ou les touches hjkl. Vous vous asseyez avec s, vous faites coucou avec w, et la touche i ouvre la ligne de saisie pour parler. Y’a un barman, un jukebox, un salon à côté, des habitués affalés aux tables et une porte mystérieuse marquée DOORS…
THE LATE BAR, vu depuis la démo web en lecture seule de late.sh
Le reste du club tient dans le même terminal avec une radio qui tourne en fond, un tableau ASCII collaboratif dont chaque case garde le nom de qui l’a peinte, des profils pour dire sur quoi vous bossez, un fil de news et une arcade avec 2048, sudoku, nonogrammes et solitaire. Il y a même un bonsaï qui pousse pendant que vous codez.
Mais je reviens un peu sur cette porte mystérieuse dont je vous parlais juste avant… Derrière se cachent ce qu’on appelle les door games. Pour les moins de 40 ans, dans les années 90, un “door” c’était le jeu externe qu’un BBS lançait pour vous, le temps de votre session. C’était le cœur social de ces machines, et si vous voulez goûter un peu à l’ambiance de l’époque,
vous en donnera un bon aperçu. Le bien inspiré Piórowski les a donc remis en ligne ! Et ce sont les vrais, hein, pas des remakes.
On y trouve par exemple NetHack, Dope Wars, Dungeon Crawl Stone Soup ou encore Usurper. Chaque jeu a sa crate Rust dédiée qui lance le vrai binaire Unix sur un PTY et vous le proxifie dans votre session SSH.
Vous pouvez également faire tout tourner chez vous en clonant le dépôt puis en faisant un make start, puis vous connecter en ssh localhost -p 2222. Un CLI compagnon gèrera alors la lecture audio en local avec un visualiseur synchronisé.
Côté vie privée, sachez que le serveur garde l’empreinte de votre clé, et pas la clé publique entière, et vos scores comme vos messages n’y sont rattachés que par cette empreinte. Il n’y a aucun log d’IP ni d’analytics mais si vous restez méfiant vous pouvez générer une clé jetable et vous connecter avec :
ssh-keygen -t ed25519 -f ~/.ssh/late_throwaway
ssh -o IdentitiesOnly=yes -i ~/.ssh/late_throwaway late.sh
Après c’est pas l’open, source, puisque le code est publié sous licence FSL-1.1-MIT. Vous pouvez donc lire, auditer, modifier, forker et contribuer, mais pas monter un service public concurrent. Quoi qu’il en soit, chaque version bascule ensuite sous licence MIT, 2 ans après sa sortie. Piórowski assume ça très bien et le documente dans son dépôt.

L’autre limite, c’est la taille car toute l’infra tourne sur un seul nœud Kubernetes plafonné à 1000 connexions simultanées, donc autant dire que le service va rapidement être victime de son succès
Mais moi j’ai trouvé ça super cool, c’est pour ça que je vous le partage. Je vous ai montré
Soft Serve pour héberger son Git en SSH
,
The Lounge pour garder IRC en vie
,
Ascii Patrol pour jouer en caractères
… et voilà maintenant un salon complet qui revient !
Bref, ssh late.sh et vous verrez bien ce que ça donne !

Leave a Comment