Et si vous pouviez lancer un véritable environnement Linux directement depuis votre navigateur, sans installer Nix, Docker ou une machine virtuelle sur votre PC ? C’est exactement ce que propose Trynix, un projet open source qui permet de démarrer des paquets issus de l’histoire de nixpkgs dans une machine Linux x86_64 exécutée directement dans l’onglet du navigateur.
💡 À retenir
Trynix permet de retrouver et d’exécuter des paquets Linux historiques depuis votre navigateur. Le système repose sur QEMU WebAssembly, récupère les dépendances depuis les caches Nix et ne nécessite ni installation locale ni serveur distant pour faire tourner le système invité.
🐧 Un Linux complet dans un onglet
Trynix ne se contente pas d’afficher une simulation de terminal. Le projet démarre une véritable machine virtuelle x86_64 Linux directement dans votre navigateur grâce à une combinaison assez impressionnante de technologies WebAssembly et de virtualisation.
Le principe est simple : vous choisissez un paquet et une version provenant de nixpkgs, Trynix retrouve les dépendances nécessaires, les récupère depuis le cache NixOS puis démarre l’environnement Linux dans votre onglet.
Une fois l’environnement lancé, les chemins des paquets sont placés dans le PATH du système invité. Vous pouvez alors utiliser les programmes depuis une véritable console Linux.
📦 Plus de 310 000 versions historiques à portée de clic
L’une des particularités les plus intéressantes de Trynix est son accès à l’historique de nixpkgs. Le projet référence actuellement plus de 310 000 versions de paquets.
Cela ouvre une possibilité assez rare : tester une ancienne version d’un logiciel dans un environnement proche de celui dans lequel elle était réellement disponible, sans modifier votre installation Linux actuelle.
🕰️ Une véritable machine à remonter le temps pour Linux
Vous pouvez par exemple rechercher une ancienne version d’un interpréteur, d’un compilateur ou d’un utilitaire et tenter de la lancer dans votre navigateur. Toutes les versions historiques ne disposent évidemment pas nécessairement d’un binaire exploitable pour l’architecture visée.
🐍 Tester une ancienne version de Python sans toucher à votre machine
Imaginez que vous deviez vérifier le comportement d’un vieux projet utilisant Python 3.6.2. Normalement, installer cette version sur votre système actuel peut rapidement devenir pénible : dépendances anciennes, conflits avec les versions modernes et environnement à nettoyer ensuite.
Avec Trynix, le principe consiste simplement à charger l’environnement correspondant dans le navigateur puis à ouvrir le shell fourni par la machine virtuelle.
$ python3 –version
Python 3.6.2
$ echo « Hello from Trynix! »
Hello from Trynix!
L’intérêt n’est donc pas uniquement de lancer des logiciels récents. Trynix peut aussi servir à reproduire rapidement un environnement ancien pour comprendre, tester ou diagnostiquer un comportement.
⚙️ Comment Trynix arrive-t-il à faire cela ?
Le fonctionnement de Trynix repose sur plusieurs briques open source qui travaillent ensemble.
Le projet utilise notamment QEMU compilé pour WebAssembly afin de faire fonctionner une machine virtuelle x86_64 directement dans le navigateur. Le système invité n’est donc pas exécuté sur un serveur Trynix distant.
Pour obtenir les logiciels, Trynix s’appuie sur l’écosystème Nix. Le projet nixpkgs-multiverse permet de faire correspondre un attribut et une version à un chemin du store déjà construit par Hydra.
🧩 La recette technique
nixpkgs historique → résolution du paquet → chemin du store → récupération depuis le cache Nix → navigateur → QEMU WebAssembly → environnement Linux x86_64.
Le navigateur récupère ainsi les fichiers nécessaires depuis les caches configurés. Grâce au mécanisme de cache du navigateur, les lancements suivants peuvent être beaucoup plus rapides lorsque les données nécessaires sont déjà présentes localement.
⚡ Pourquoi le démarrage peut être aussi rapide
Le premier lancement dépend fortement du paquet demandé, de sa taille et de la vitesse de téléchargement. Une fois les données importantes présentes dans le cache du navigateur, Trynix peut démarrer certains environnements très rapidement.
Le projet utilise également un snapshot de migration pour éviter de repartir systématiquement d’un démarrage à froid complet de la machine virtuelle.
Le README du projet indique qu’un shell peut être disponible en quelques secondes lorsque le cache est chaud. En revanche, les composants volumineux peuvent toujours demander beaucoup plus de temps à télécharger.
🐌 Mais il ne faut pas s’attendre à un Linux ultra-rapide
Il faut garder en tête que Trynix fait tourner une machine Linux x86_64 dans un navigateur. Ce n’est donc pas une alternative destinée à remplacer une véritable installation Linux pour un usage quotidien.
La taille du paquet et de ses dépendances joue également un rôle important. Pour de gros composants, le téléchargement peut prendre une à deux minutes, notamment lors du premier lancement.
⚠️ Le cache fait toute la différence
Trynix est particulièrement intéressant pour des tests ciblés et des environnements relativement petits. Plus l’environnement est lourd, plus le téléchargement initial risque de réduire l’intérêt du démarrage instantané.
🖥️ Une console Linux, pas un bureau complet
Trynix vise avant tout les outils en ligne de commande. L’expérience ressemble donc davantage à l’ouverture d’un shell Linux qu’au lancement d’un bureau graphique complet.
C’est justement ce qui rend le projet intéressant pour les développeurs : compiler un programme, tester une version d’un interpréteur, vérifier un comportement ou expérimenter avec un outil sans modifier son environnement principal.
🔗 Une URL peut devenir votre environnement de test
Trynix possède une autre fonctionnalité particulièrement pratique : l’état de l’environnement peut être conservé dans l’URL.
Les informations nécessaires pour reconstruire l’environnement, notamment les paquets, les chemins du store et les éventuels caches binaires supplémentaires, peuvent ainsi être transportées dans un lien.
Il devient alors possible de partager un environnement de test avec un simple lien plutôt que de demander à quelqu’un d’installer toute une chaîne d’outils.
🔗 Un lien plutôt qu’une installation
Pour une démonstration, un bug reproductible ou une expérience ponctuelle, cette approche peut considérablement simplifier le partage d’un environnement.
🤖 Et maintenant, Trynix peut aussi servir à tester des Pull Requests
Le projet va encore plus loin avec une GitHub Action capable de commenter un lien sur une Pull Request afin de permettre le démarrage dans le navigateur de ce qui a déjà été construit.
L’idée est particulièrement intéressante pour les projets open source : plutôt que de demander au reviewer de cloner le dépôt, installer les dépendances et reproduire manuellement l’environnement, un lien Trynix peut servir de point d’entrée vers l’environnement correspondant.
Attention toutefois : l’Action ne construit pas elle-même les paquets et ne les met pas en cache. Elle fournit principalement le lien permettant d’accéder à des chemins déjà disponibles dans les caches concernés.
🔐 Attention avant de cliquer sur n’importe quel lien
Le fait qu’un environnement Linux soit lancé dans votre navigateur ne signifie pas qu’il faut faire confiance aveuglément à n’importe quelle URL Trynix.
Le système de signature permet notamment de vérifier l’origine des chemins par rapport à la clé du cache configuré, mais cela ne constitue pas une garantie absolue sur la fiabilité de la personne qui a publié ou partagé le lien.
🔒 Réflexe sécurité
Comme pour tout environnement de code partagé en ligne, vérifiez la provenance du lien et les caches binaires utilisés avant d’exécuter quelque chose que vous ne connaissez pas.
🧪 Un projet qui montre jusqu’où peut aller le navigateur
Trynix est surtout intéressant pour ce qu’il démontre : un navigateur moderne peut désormais accueillir des environnements qui, il y a quelques années encore, auraient semblé totalement incompatibles avec une simple page Web.
Entre WebAssembly, QEMU, les caches binaires de Nix et les capacités de stockage du navigateur, Trynix transforme progressivement l’onglet du navigateur en un petit laboratoire Linux portable.
Pour les développeurs, les mainteneurs et les passionnés de Linux, l’intérêt est évident : expérimenter avec différentes versions de logiciels sans contaminer son système principal.
🎯 Le verdict HexaOS
Trynix n’a pas vocation à remplacer une vraie machine Linux, mais ce n’est absolument pas son objectif. Sa force est ailleurs : rendre accessibles des environnements Linux historiques en quelques clics, directement depuis un navigateur.
Pour reproduire un bug ancien, tester une version précise d’un paquet ou partager rapidement un environnement avec un développeur, l’idée est aussi simple qu’ingénieuse.
📌 À retenir
- Plus de 310 000 versions de paquets référencées dans l’index.
- Linux x86_64 exécuté directement dans le navigateur.
- Utilisation de QEMU + WebAssembly.
- Accès aux paquets historiques de nixpkgs.
- Pas besoin d’installer Nix, Docker ou une VM localement.
- Possibilité de partager un environnement avec une URL.
- Intégration possible avec GitHub Actions pour les Pull Requests.
- Projet open source sous licence MIT.
Source : projet Trynix sur GitHub et documentation de son créateur.

