trynix arranca cualquier paquete de Nix en el navegador con una VM WebAssembly
El proyecto de Farid Zakaria sirve una máquina virtual x86_64 Linux mediante qemu compilado a WebAssembly y permite bootear paquetes de Nix de los últimos 13 años desde una URL.
Farid Zakaria ha publicado trynix.dev, un sitio que arranca paquetes de Nix de los últimos 13 años dentro del navegador. Por debajo hay una máquina virtual x86_64 Linux construida sobre qemu compilado a WebAssembly. No hay servidor de por medio: el sistema corre entero en la pestaña.
Las imágenes son direccionables por URL. Se elige el paquete en la query, se pulsa Load y aparece una shell interactiva contra esa máquina. El ejemplo que da el propio autor es Python 3.6.2, la versión de 2017, que queda levantada en unos segundos sin que nadie haya preparado un contenedor ni una instancia en la nube.
Zakaria describe el trabajo como su "magnum opus of Nix work", y la pieza que lo hace posible es qemu-wasm, el port de qemu a WebAssembly que ya lleva un tiempo circulando. Sobre esa base, trynix resuelve la parte aburrida: resolver el paquete, montarlo y darte una consola. Cualquiera que haya peleado con un entorno de hace cinco años entiende el atractivo.
De la demo a la integración con GitHub
Lo interesante no es solo el juguete. Zakaria ha montado trynix-preview, una GitHub Action que comenta en un pull request un enlace para bootear el build de esa PR en el navegador. Su descripción es literal: "No servers, just browsers".
Para quien revisa cambios en un repositorio de Nix, eso cambia el flujo. En lugar de reconstruir el entorno en local o esperar a un runner, el revisor abre un enlace y comprueba el resultado del build tal y como quedó. La misma idea se puede extender a cualquier cosa que Nix empaquete, que hoy es casi todo.
El coste está en el navegador: hay que descargar la imagen y el rendimiento de qemu dentro de WebAssembly no es el de una máquina nativa. El proyecto no publica cifras de cuánto tarda ni de cuánto pesa cada entorno, así que la experiencia variará según el paquete y la conexión.
Lo que sí queda claro es hacia dónde apunta: entornos reproducibles que se comparten como un enlace, sin infraestructura detrás. Para equipos que mantienen paquetes antiguos o que quieren que un revisor vea un build sin montarlo, es una vía bastante más barata que cualquier alternativa al uso.

