Run any Nix package ever shipped, right in your browser tab

Any Nix package, live in the browser

Run any Nix package ever shipped, right in your browser tab

trynix.dev boots a Linux VM in your browser and gives you a shell with any of over 310,000 Nix package versions on PATH. No installation, no server—just static files and a public cache. It leverages nixpkgs-multiverse to skip evaluation and fetch exact store paths, then runs them via a WebAssembly Linux kernel. You can even share your own store paths, as long as the cache serves CORS headers. The site pre-fetches a VM snapshot for near-instant startup, making it a practical tool for reviewing PRs, sharing reproducible bug reports, and exploring software archaeology.

The Nix cache has quietly served an open CORS header for years, waiting to be ~~abused~~ used.
  1. yjftsjthsd-h

    > we can run a Linux kernel in WebAssembly.

    For a moment I thought someone did a port of Linux to wasm, but this is actually x86_64 Linux in a wasm qemu (with JIT, granted, which I suppose blurs the line). That's probably a lot more practical.

    ---

    I'm stoked about the idea of using this for code review / bug reproduction / tutorials / demos. Obviously nix already gives you the reproducibility side of things, but running on any host system with zero setup and robust sandboxing should really improve its practical usefulness. Native nix doesn't give you "try this software by clicking a link and it works without installing anything", nor " here's some completely untrusted code someone wants you to run, and that's ~fine because it's in a browser tab".

  2. easterncalculus

    Seems very cool. I'm wondering what the next step would be for performance here. Trying python as suggested is quite slow so far.

    ~ # time python3 hello.py

    Hello World!

    real 0m 5.48s

    user 0m 4.11s

    sys 0m 1.24s

  3. orangea

    > The first time you run a binary, it is translated from x86_64 to WebAssembly and that takes time.

    If the binary is running under a real x64 linux kernel running in qemu, wouldn't that imply that the binary is never translated to wasm?

More from this day

2026-09-06