AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
WSL-style Linux machines on a Linux host.
Translation pending
Developer toolsGo · PythonGitHub @frostyardOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
NSpawn Subsystem for Linux: development environments for atomic hosts and people who want to keep the host clean
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
nsl — WSL-style Linux machines on a Linux host
Leave the host alone. Work in another distro.
Keep your development tools separate from your Linux host. You may need somewhere to apt install a project's dependencies, try a toolchain packaged for another distro, or run a service. nsl gives you persistent Linux machines for that work, as WSL does on Windows. Each machine is a whole distro with its own packages and services. It opens in the directory you were in, works on your files, and stops when you stop using it.Read the full README ↗Leave the host alone. Work in another distro.
Keep your development tools separate from your Linux host. You may need somewhere to apt install a project's dependencies, try a toolchain packaged for another distro, or run a service. nsl gives you persistent Linux machines for that work, as WSL does on Windows. Each machine is a whole distro with its own packages and services. It opens in the directory you were in, works on your files, and stops when you stop using it.
Create your first machine walks through creation, a login shell, running a command and stopping the VM.
Documentation: frostyard.github.io/nsl
/mnt appear at /mnt/host, and you have your own username, UID and GID with passwordless sudo. Host files →127.0.0.1, and Wayland applications open windows on your desktop. Ports → · Desktop applications →nsl ssh-config gives VS Code or any SSH client a host alias for a machine. Editors over SSH →--isolated puts a machine in a VM of its own, with no host files, desktop or host actions, for software you do not trust. Isolated machines →Machines are systemd-nspawn containers inside one small VM, launched with systemd-vmspawn and QEMU/KVM. The VM's root is replaceable and holds no user state; your machines live on its data disk. How nsl works →
An ordinary machine is trusted as you: it can read and write your home, including keys and tokens, just as WSL can. It cannot become root on the host or reach host sockets. Use --isolated for anything you would not run as yourself. Trust model →
nsl needs an x86-64 Linux host with KVM, systemd-vmspawn from systemd 259 or newer (as in Fedora 44 and Ubuntu 26.04 LTS), QEMU with UEFI firmware, virtiofsd and membership in the kvm group; Waypipe adds desktop windows. nsl doctor checks each requirement. Install →
It is pre-release. v0.4.0 was the first release of the current design; v0.3.0 and earlier are a retired prototype. The tested host is Snow Linux 13 with systemd 261.2, QEMU 10.0.13, virtiofsd 1.13.2 and GNOME Wayland. Windows are Wayland only, host file edits produce no inotify events in machines, and idle machines stop even when a service inside them is busy. Limits and troubleshooting →
Build from source covers the CLI, the images and the tests; make ci runs what CI runs. Decisions, designs, contracts and plans start at the documentation index, and agents start at AGENTS.md.
nsl is MIT licensed. Third-party license notices.
Obviously the original WSL is the biggest inspiration.
Other notable projects: