v0.3 · arm64 + amd64 · linux

A blazing fast
Docker alternative
that won't melt
your Pi.

No daemons. No root. No surprises. One commit gives everyone on your team — and that Pi in the closet — an identical shell.

~/myproject — lagoon init
What packages do you need?
searching nixos.org... 12 matches found
python311 ff
❯ ffmpeg nixpkgs
fftw
firefox
Network access inside sandbox?
yes
no
──────────────────────────────
packages python311 ffmpeg cowsay
nixpkgs 26eaeac4 (pinned)
network off
Write lagoon.toml?
yes
no
enter confirm    ↑↓ select    q quit
created lagoon.toml
! commit it: git add lagoon.toml && git commit

install in one line · requires linux + bubblewrap + nix

curl -fsSL https://raw.githubusercontent.com/imraghavojha/lagoon/main/install.sh | bash
— lagoon is built on —
Nix
bubblewrap
Go
Bubbletea
Cobra
Raspberry Pi
Linux
features

Everything you need.
Nothing you don't.

Heavyweight reproducibility with a featherweight footprint.

Instant warm starts

After the first run, lagoon shells open in milliseconds. No daemon. No container pull. Just your environment, immediately.

Secure by default

Network off unless you ask. Host filesystem invisible. Env variables wiped. Exit and leave absolutely zero trace.

Pinned forever

A locked nixpkgs commit means the same command in 2027 gives you the same binary as today. No drift. Ever.

Hot reloading

Live reload built in. lagoon watch monitors your project for changes and restarts your command automatically with a 300ms debounce.

Tamper detection

Cryptographic safety. lagoon check fingerprints every nix store path to prove byte-for-byte that your environment remains unchanged. Reset baseline with --reset.

Memory limits

Cap sandbox memory via systemd-run (e.g., -m 512m). Ideal for shared machines and dense Pi clusters.

ARM-first

Built for Raspberry Pi 4/5. First run compiles from source on ARM — after that, cache hits make it instant.

One config, any machine

"It works on my machine. And yours." One committed file, infinite identical shells — including that Pi in the closet.

Offline exports

Snapshot environments to .nar files with lagoon save and lagoon load. Deploy to air-gapped machines without a registry.

Full-stack services

lagoon up starts all services in your [up] config, multiplexes their output with colored prefixes, and exposes them at real localhost ports. Ctrl+C stops all.

Docker export

Ship your environment as a Docker image. lagoon docker > myimage.tar builds a layered OCI image — no daemon required. Load it anywhere with docker load.

Start faster. Stay lighter.

Warm cache shell startup on a Raspberry Pi 4. Lower is better.

Warm cache · Time to interactive shell · Raspberry Pi 4 · Ubuntu 24.04 LTS
Shell ready time comparison
lagoon v0.3
280ms
Docker v25.0
15.4s
Dev Containers VS Code
24s+

It works on my machine. And yours.

One file. Commit it. Everyone — your teammates, your CI, that Pi in the closet — runs the exact same environment.


The nixpkgs pin is bundled in the binary. You never touch it.
Find package names at search.nixos.org ↗

# lagoon.toml — commit this
 
packages = ["python3", "nodejs", "ffmpeg"]
 
# same binary in 2027
nixpkgs_commit = "26eaeac4..."
nixpkgs_sha256 = "1knl8dcr..."
 
# "minimal" = no network | "network" = on
profile = "minimal"
 
# optional: runs on every shell entry
on_enter = "source .venv/bin/activate"
 
# optional: services for lagoon up
[up]
web = "node server.js"
api = "python3 manage.py runserver"

Secure by default.

No file, network, or host env access unless you explicitly enable it. Exit the sandbox and leave zero trace.

🐳 Other tools
$ docker run -it python bash
Pulling from library/python...
Status: Downloaded newer image
 
✗ host HOME leaks in
✗ daemon running in background
✗ requires root / docker group
✗ image drifts over time
🌊 lagoon
$ lagoon shell
✓ environment ready (estimated from benchmarks on raspberry pi 4)
 
✓ network off (profile: minimal)
✓ host filesystem invisible
✓ no daemon, no root required
✓ pinned — identical in 2027
get started

Reproducible sandboxes in 60 seconds.

Linux (arm64 or amd64), bubblewrap, nix. That's all you need.

Install lagoon → Read the docs