Frostyard's NSL Brings WSL-Style Machines to Linux, at v0.4.0 and 34 Stars
Software / news
Frostyard's NSL Brings WSL-Style Machines to Linux, at v0.4.0 and 34 Stars
Each machine is a systemd-nspawn container inside one small QEMU VM, and the project's own README lists five limits, including no file-change events from the host.

Frostyard released v0.4.0 of NSL, a tool that gives a Linux host persistent Linux machines in the way Windows Subsystem for Linux does for Windows. The project is MIT licensed, and its GitHub repository showed 34 stars, 1 fork and no open issues on 30 September 2026, the day the Show HN post was on the front page.
The project page says v0.4.0 is "the first release of this design" and that there is no stable release yet.
How NSL is built
Each machine is a whole distribution with its own packages and services. It runs as a systemd-nspawn container inside one small virtual machine, according to the project page, and starts when you use it. The repository says the VM uses QEMU with KVM and is launched by systemd-vmspawn. The VM root holds no user state, and machines live on its data disk.
Creating one looks like nsl create debian --distro debian:13. Running nsl from a project directory opens a shell in the default machine, on the same files. The host's $HOME and other directories appear at /mnt/host, and the machine keeps the host user's name, UID and GID with passwordless sudo. Dev servers in a machine can be reached on 127.0.0.1 on the host. An --isolated flag starts a dedicated VM with no access to host resources.
NSL runs as the existing user, and the documentation says it needs no administrative privileges or changes to system configuration.
What it needs and what it supports
The requirements are specific, and the first one narrows the audience to x86-64 machines with hardware virtualisation switched on.
| Requirement | Detail from the README |
|---|---|
| Host | x86-64 Linux with KVM |
| Tools | systemd-vmspawn, QEMU with UEFI firmware, virtiofsd |
| Permissions | membership of the kvm group |
| Desktop windows | Waypipe |
Seven signed distributions are supported: Debian 13, Ubuntu 26.04 LTS, Fedora 44, CentOS Stream 10, Arch, and openSUSE Tumbleweed and Leap. The README says they are rebuilt weekly and verified against the Frostyard publishing workflow.
Limits the README lists
The README says the tool is pre-release software and was tested primarily on Snow Linux 13. It lists three further constraints: only Wayland windows are supported, host file edits produce no inotify events inside machines, and idle machines stop even when services are running in them.
The inotify limit is the one a developer would meet first. A file watcher inside a machine, such as a dev server that reloads on save, will not see edits made from an editor on the host. The README gives no workaround.
The comparison with WSL is the project's own framing. Microsoft's tool runs on Windows, while the repository describes NSL as aimed at atomic Linux hosts.
For Linux desktops, the same reporting beat covered the Dutch government's DAWO NixOS desktop pilot, and Google's mid-2034 end date for ChromeOS updates.
The project page gives no dated roadmap and no stable-release date.
Sources
More in Software
- 01Ponytail Hits 151,400 GitHub Stars on a Claim of 54% Less Code, Measured by Its AuthorThe plugin tells coding agents to write the minimum. Its benchmark used Claude Haiku 4.5 on one FastAPI template, four runs per ticket, and its tracker has 98 open issues.
- 02OpenDLSS-NR Reimplements Nvidia's DLSS 5 Network in Vulkan, but You Supply the WeightsThe MIT-licensed repository claims byte-for-byte parity with Nvidia's network, yet ships no weights, so the claim cannot be reproduced from the repo alone.
- 03Mozilla Shuts Down Solo AI Website Builder; All Sites Deleted Nov. 30The export ZIP leaves out image source files, Pro subscribers get prorated refunds from Oct. 1, and Mozilla points users to Wix, Squarespace, WordPress, Bolt and Lovable.
- 04IANA Says Example.com's Animated Redesign Is About Bandwidth, Not LooksKim Davies told a Google engineer the page was split to save bytes on automated traffic. Commenters measured 713 bytes of HTML plus 2.15 kB of script and are not convinced.