News for hackers. Stuff that matters.

Show HN: NSL – WSL for Linux

https://frostyard.github.io/nsl/

One of the things that Windows really got right is WSL2. I drive an atomic Linux distro for daily use, but wanted a way to develop with multiple different distros with that same WSL UX. NSL is my answer. It is a faithful reproduction of the developer experience, powered by a single VM that hosts one or more systemd-nspawn containers with your development instances. Host file edits and port sharing come along for the ride, just like WSL. Take a look and tell me what you think... It's yet another step in my long journey to keep my host installation free from all the changing and breaking dev dependencies that force a reinstall every few months.
( 111 comments | 5 points | on HN )
Re:Show HN: NSL – WSL for Linux by thayne on Tuesday September 29, 2026 @12:20PM (#49895906)
How does this compare to distrobox?
Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @12:56PM (#49896422)
Distrobox mounts $HOME in the container at $HOME by default. WSL and NSL do not, and that's my preference. This means you can install tools that change your default path, change your dotfiles, etc, without affecting the host. The other obvious difference is that distrobox is powered by podman or docker, while NSL uses a VM that runs systemd-nspawn containers.
Re:Show HN: NSL – WSL for Linux by NekkoDroid on Tuesday September 29, 2026 @05:39PM (#49901046)
> WSL and NSL do not, and that's my preference.

To be fair, WSL mounts all your drives under /mnt/ by default, which I would argue isn't any better, arguably even worse.

Re:Show HN: NSL – WSL for Linux by jm4 on Tuesday September 29, 2026 @06:39PM (#49901780)
I was wondering the same thing. Distrobox mounts $HOME by default, but it’s trivial to give a distrobox its own $HOME.

Can you explain the advantages of systemd-nspawn containers versus podman/docker? I’m not familiar with systemd-nspawn, but I’m a regular user of distrobox and podman.

Re:Show HN: NSL – WSL for Linux by MrDrMcCoy on Thursday October 01, 2026 @11:41AM (#49923169)
Nspawn is a full system container engine with its own systemd environment, which makes it closer to LXC/Incus than Podman/Docker. You can do the single process thing in system containers or use a full init system in Docker/Podman, but the experience won't be as smooth.
Re:Show HN: NSL – WSL for Linux by varispeed on Tuesday September 29, 2026 @12:21PM (#49895912)
The project is cool, but please use human written text.

The website's Claudisms are unbearable.

Re:Show HN: NSL – WSL for Linux by the_real_cher on Tuesday September 29, 2026 @12:21PM (#49895908)
IS it LXC containers or docker? Or are you running a custom chroot namespace setup?
Re:Show HN: NSL – WSL for Linux by smw on Tuesday September 29, 2026 @12:33PM (#49896078)
He runs a systemd-nspawnd container in a "small vm", so neither really?
Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @01:01PM (#49896507)
none of the above. a single vm started by systemd-vmspawn which then starts one or more containers for your instances using systemd-nspawn. It ends up being fast and lightweight.
Re:Show HN: NSL – WSL for Linux by the_real_cher on Tuesday September 29, 2026 @03:45PM (#49899276)
Oh cool thanks for the info!

It's an interesting project.

Are these systemd containers comparable to lxc containers or better maybe?

This could be a really interesting alternative to fully featured LXC containers.

Ubuntu has a similar cli tool you probably know about called multi-pass but it just spins up Ubuntu distros.

The issue I had with multipass was how difficult it was to access and backup files, I guess it was meant for more of a disposable container.

Re:Show HN: NSL – WSL for Linux by mhitza on Tuesday September 29, 2026 @12:23PM (#49895956)
Haven't checked the actual project but he does state he uses systemd-nspawn. Which is it's own kind of container runtime.
Re:Show HN: NSL – WSL for Linux by graemep on Tuesday September 29, 2026 @12:27PM (#49896006)
This is most useful to people who run Linux as their daily driver so rather than saying its like WSL can you explain what it offers that existing Linux containers do not?

Its also sounds different from WSL which I thought is a VM rather than a container.

> It's yet another step in my long journey to keep my host installation free from all the changing and breaking dev dependencies that force a reinstall every few months.

Something that also require a bit of explanation. What do you do that makes this such a common problem.

Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @01:00PM (#49896485)
WSL2 uses a shared VM that does host integration (networking, shared files, permanent storage for each instance). NSL uses the same model but with Linux native technical implementations.

As for keeping my host clean - it's the developer's curse that always gets me. Install libWhatever3.2-dev because you need it to compile something, then don't realize until next time you open Chrome that it broke your system in some subtle way. There are dozens of ways to solve this like devcontainers, docker, incus, fully separate or remote vms. I like the WSL2 model so I wanted that same UX.

Re:Show HN: NSL – WSL for Linux by kevin_thibedeau on Tuesday September 29, 2026 @03:57PM (#49899427)
Stick non-distro libs into /usr/local and they can't break anything.
Re:Show HN: NSL – WSL for Linux by okanat on Wednesday September 30, 2026 @03:39PM (#49913309)
Hah! One would wish so but they do. `/usr/local` usually has preference over `/usr` and libraries that use a plugin architecture often break when you update but forget to recompile plugins.

And once you go into FFI for interpreted or JIT compiled languages it turns into hell. Both Python and Java creates huge headaches when you have multiple versions of the same libraries in various /usr subdirs.

I often helped lab students who read a simple `make; make install` tutorial for OpenCV and permanently messed up their Python installs.

Re:Show HN: NSL – WSL for Linux by graemep on Tuesday September 29, 2026 @02:41PM (#49898342)
So a single VM with multiple containers within it? Interesting, but I think you should make it immediately clear on your site. Persistence is not the USP because there are lots of ways that you can get persistent VMs or sandboxes.
Re:Show HN: NSL – WSL for Linux by rpcope1 on Tuesday September 29, 2026 @12:28PM (#49896021)
So you've just basically reimplemented LXC?
Re:Show HN: NSL – WSL for Linux by pkulak on Tuesday September 29, 2026 @12:48PM (#49896303)
Nope. This is a VM, with containers inside. And the containers weren't "re-implemented", it uses existing systemd containers. That's what I was able to learn by skimming the site for 30 seconds. Did you not even do that? And why even be so condescending to someone else's project?
Re:Show HN: NSL – WSL for Linux by ktm5j on Tuesday September 29, 2026 @12:53PM (#49896403)
Because it does seem like we already have tools that skin this particular cat, it's valid to wonder what value this project provides over existing solutions.. even if they chose the wrong example to compare it to. Why do you think that's condescending?
Re:Show HN: NSL – WSL for Linux by GlacierFox on Tuesday September 29, 2026 @06:29PM (#49901674)
The condescending way the comment was written...
Re:Show HN: NSL – WSL for Linux by ktm5j on Wednesday September 30, 2026 @09:41AM (#49908825)
Well I think that's being a little sensitive, frankly..
Re:Show HN: NSL – WSL for Linux by nurettin on Tuesday September 29, 2026 @01:09PM (#49896632)
LXC is a jail and qemu is an extra layer of emulation. Why pay that extra cost? Just because it serves a wsl image isn't really an answer. How is that worth the extra layer?
Re:Show HN: NSL – WSL for Linux by pkulak on Tuesday September 29, 2026 @01:13PM (#49896714)
EDIT to not be a dick about it: I think the key detail here is the difference in isolation between containers and VMs, and where emulation comes in.
Re:Show HN: NSL – WSL for Linux by failbuffer on Tuesday September 29, 2026 @01:28PM (#49897005)
Just a reminder that the Hacker News community generally frowns on caustic dialog. Let's make sure this place doesn't turn into slashdot. :-)
Re:Show HN: NSL – WSL for Linux by pkulak on Tuesday September 29, 2026 @01:31PM (#49897073)
Agreed. Edited. I do feel like I was just following the existing tone set by OP, but no excuse.
Re:Show HN: NSL – WSL for Linux by RandomGerm4n on Tuesday September 29, 2026 @12:35PM (#49896117)
There's already Distrobox, which does exactly the same thing but isn't slop.
Re:Show HN: NSL – WSL for Linux by KyleGospo on Tuesday September 29, 2026 @01:25PM (#49896958)
This handles use cases Distrobox can't, they both have a place.
Re:Show HN: NSL – WSL for Linux by mikae1 on Tuesday September 29, 2026 @07:37PM (#49902351)
> This handles use cases Distrobox can't

Which?

Re:Show HN: NSL – WSL for Linux by lproven on Wednesday September 30, 2026 @08:07AM (#49907719)
Already explained with examples upthread:

https://news.ycombinator.com/item?id=49896422

Re:Show HN: NSL – WSL for Linux by rao-v on Tuesday September 29, 2026 @12:36PM (#49896132)
I have to say this is nice packaging. It is weirdly not obvious how nice it is to cleanly use a different “machine” inside your desktop.

I never thought I’d prefer WSL to even my MacBook for working with remote servers and dev but somehow I do.

I of course know the many ways to roll something like this for myself, yes dev containers are better for many things etc. but it’s wierd how good the ergonomics of a WSL like container are.

Re:Show HN: NSL – WSL for Linux by snapplebobapple on Tuesday September 29, 2026 @04:05PM (#49899554)
Have you tried mise? It handled most of that for me because dev environment is exactly what is needed per project
Re:Show HN: NSL – WSL for Linux by rao-v on Tuesday September 29, 2026 @06:19PM (#49901549)
I use mise inside WSL. It's sort of a terminal into "workspace" for me. Should probably spin an orbstsck or whatever to do thisnon my macbook
Re:Show HN: NSL – WSL for Linux by lucideer on Wednesday September 30, 2026 @07:57AM (#49907619)
I'm very curious about this - as a mise user this seems like a redundant extra level of abstraction that I can't figure out the benefits of (& WSL definitely comes with at least some downsides).

From the OP I see:

> my long journey to keep my host installation free from all the changing and breaking dev dependencies that force a reinstall every few months

mise does this 100% for me (assuming we don't count mise itself as one of those dev dependencies). I'm struggling to think of what falls outside of it?

Re:Show HN: NSL – WSL for Linux by tonymet on Wednesday September 30, 2026 @03:44PM (#49913352)
i agree. you can quickly import distro images into named WSL VMs (distros) to keep things separated. and you get close-to-native performance (especially by disabling kernel mitigations)
Re:Show HN: NSL – WSL for Linux by lucideer on Thursday October 01, 2026 @08:39AM (#49920850)
not sure I follow the context of this comment - did you mean to reply to me?
Re:Show HN: NSL – WSL for Linux by tonymet on Thursday October 01, 2026 @10:13AM (#49921966)
No need for mise just run separate wsl “distros” (VMs ) eg Debian-node , debian-Claude by importing root images . I use alpine because each one is tiny
Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @01:10PM (#49896638)
Thanks for saying so! That's exactly why I wrote this. The UX of wsl2 is just right. There are a lot of other ways to accomplish this, but none touch that same experience.
Re:Show HN: NSL – WSL for Linux by dingaling911 on Tuesday September 29, 2026 @12:58PM (#49896459)
Looks very cool.

Now all you have to do is run NSL under WSL.

Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @01:02PM (#49896517)
challenge accepted!
Re:Show HN: NSL – WSL for Linux by 0x457 on Tuesday September 29, 2026 @01:02PM (#49896511)
I'm confused why VM + systemd-nspawn? From my understaing WSL 2 runs a single VM + something like systemd-nspawn per "linux installation", but it runs a VM because it needs linux kernel. Why not just do systemd-nspawn if you alread on linux?
Re:Show HN: NSL – WSL for Linux by pkulak on Tuesday September 29, 2026 @01:21PM (#49896861)
Way better isolation, is my guess. Plus, you can use a different kernel this way.

I used to poo-poo when people said that containers aren't a _real_ security boundary, at least for personal stuff, and not a multi-tenant server. But I bet even mid-tier LLMs can break out of LXC/Docker/nspawn at this point.

Re:Show HN: NSL – WSL for Linux by fhn on Tuesday September 29, 2026 @01:56PM (#49897558)
can they not break out of a VM?
Re:Show HN: NSL – WSL for Linux by pkulak on Tuesday September 29, 2026 @01:58PM (#49897584)
It's at least harder! Better chance it'll hit your 5-hour limit before it does. haha
Re:Show HN: NSL – WSL for Linux by esseph on Tuesday September 29, 2026 @02:17PM (#49897975)
See my response to the above comment
Re:Show HN: NSL – WSL for Linux by bloppe on Tuesday September 29, 2026 @02:53PM (#49898530)
CVEs for runc are much more frequent than CVEs for KVM. The attack surface area is bigger, and containers were never intended as a security boundary, but rather as a resource management tool.
Re:Show HN: NSL – WSL for Linux by dathinab on Tuesday September 29, 2026 @07:06PM (#49902050)
through just from scanning the feature side

> Your files and your account [..]

> Ports and windows on the host

it is quite likely that you can break out even with no linux containers related CVEs. --isolate does seem to fix that somehow but is explicit opt. in and "more painful to use" ... (which creates a UX challenge unlikely to end well from a security POV).

Re:Show HN: NSL – WSL for Linux by akdev1l on Tuesday September 29, 2026 @07:48PM (#49902437)
libkrun exists so we can just run containers inside a virtualized environment without special tooling
Re:Show HN: NSL – WSL for Linux by zenoprax on Tuesday September 29, 2026 @10:01PM (#49903485)
I was just testing this and it's not clear that it works out of the box. `krun` shows a different kernel than with `crun` but it doesn't reflect the dropped capabilities in the same way. I'm probably holding it wrong but I'm not sure what to look for at the moment.
Re:Show HN: NSL – WSL for Linux by esseph on Tuesday September 29, 2026 @02:16PM (#49897947)
Yes, and have.

---

"During a test conducted by Trail of Bits researcher Artem Dinaburg, a preview version of GPT 5.6-Cyber was tasked with breaking out of a Debian 12 virtual machine. Initially, the agent exploited a known Linux kernel vulnerability, CVE-2026-53359, by developing its own exploit. After the host was updated, the agent found another pathway through libslirp, chaining a known vulnerability (CVE-2026-9539) with a previously unassigned bug to gain arbitrary host memory access. Even after QEMU and libslirp were updated, the agent analyzed system components and constructed a new escape chain using three zero-day vulnerabilities and one KVM flaw that had not yet reached the distribution kernel.

These findings suggest that general-purpose VMs may not be adequate security boundaries for highly capable AI agents, especially in older systems with delayed security updates. Trail of Bits recommends using specialized isolation systems like Firecracker, restricting VM access, and implementing rapid patching to mitigate these risks."

---

https://www.scworld.com/brief/ai-agent-repeatedly-escapes-vi...

Re:Show HN: NSL – WSL for Linux by Already__Taken on Tuesday September 29, 2026 @11:00PM (#49903870)
So this is the death of "Stable" finally?
Re:Show HN: NSL – WSL for Linux by cookiengineer on Wednesday September 30, 2026 @02:01AM (#49904958)
Can confirm. My abliterated models kept breaking out of qemu VMs due to BIOS implementation quirks in qemu.

I'm using firecracker now with a very defensive systemd-as-separate-non-admin-user seccomp sandbox on top, which seems to hold them off long enough for me to see an agent going rogue and intervening.

Currently I still have hopes that eBPF sandboxing will help, but just a couple days ago my agent discovered a use after free bug in the ebpf kernel-side verifier... so there's that.

Re:Show HN: NSL – WSL for Linux by avadodin on Wednesday September 30, 2026 @04:55AM (#49906196)
> Plus, you can use a different kernel this way.

Any kernel could be the last to support old nVidia drivers for your $10k card.

Re:Show HN: NSL – WSL for Linux by okanat on Wednesday September 30, 2026 @03:27PM (#49913201)
That has to be the host kernel not the guest kernel. Old Nvidia systems without supported kernel drivers often lack IOMMU to forward PCIe memory, too. I wouldn't recommend using an outdated host kernel with 2026 AI-powered vulnerability scanners.

Windows (10 LTSC or 11 with dTPM) actually works better for old Nvidia systems with WSL. You even get CUDA libraries within WSL and security updates for the next 5 years.

Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @01:08PM (#49896607)
you could, and if that's your preference https://nspawn.org is just right.
Re:Show HN: NSL – WSL for Linux by bityard on Tuesday September 29, 2026 @03:43PM (#49899245)
I was surprised I hadn't heard of this as a separate tool from systemd-nspawn. Then I realized why... the GitHub repo shows version 0.6 released in 2022, then version 1.0.0 last week, followed by a flurry of releases up to 1.8.0 yesterday.

So basically, it's been all Claude'd up extremely recently.

That said, the landing page, docs, and git README are much higher quality than I normally see out of LLM-generated projects, so at least the author knows how to reign in the needless verbosity and write for a technical audience. So I will give him credit for that at least.

Re:Show HN: NSL – WSL for Linux by edu4rdshl on Thursday October 01, 2026 @08:26PM (#49928560)
nspawn maintainer here. Yes, it has been done with the help of AI (the README has a clear AI usage disclosure), but I have been writing Rust code since a very long time ago, before agentic coding was a thing (you can check my GH profile). Every change is reviewed by me, and the architecture/implementation is dictated by me as well.

Ideas/issues/PRs are welcome.

Re:Show HN: NSL – WSL for Linux by 0x457 on Tuesday September 29, 2026 @01:12PM (#49896682)
Neat, I wasn't aware of this tool. I just either run nixosContainer in systemd-nspawn or OCI image in systemd-nspawn.
Re:Show HN: NSL – WSL for Linux by edu4rdshl on Thursday October 01, 2026 @08:29PM (#49928574)
Any issues/features requests are welcome. Thanks for bringing it up here.
Re:Show HN: NSL – WSL for Linux by delusional on Tuesday September 29, 2026 @01:03PM (#49896538)
Claude told him to do it this way.
Re:Show HN: NSL – WSL for Linux by nateb2022 on Tuesday September 29, 2026 @01:15PM (#49896752)
I'd trust OP to make good architectural decisions/provide guidance even if AI mostly wrote the docs and UI. Looking into their GitHub, seems they are an engineering manager at Microsoft and contribute semi regularly to uBlue and Project Bluefin. Should be better quality than some random vibeslopper.
Re:Show HN: NSL – WSL for Linux by edu4rdshl on Thursday October 01, 2026 @08:29PM (#49928571)
Hi, nspawn maintainer here, that's not the case. I have been working with code/software architecture/design since a very long time before agentic coding was a thing. nspawn uses AI to help write code (the README has a clear AI usage disclosure) but every change is reviewed by me.

The architecture decisions, etc are dictated by me as well :)

If you have any suggestions, etc, they are welcome.

Re:Show HN: NSL – WSL for Linux by bee_rider on Tuesday September 29, 2026 @01:46PM (#49897371)
The name WSL has always struck me as a bit back area (LSW would seem to make more sense, since it is a Linux subsystem for Windows). I guess they mean it as a Windows Subsystem for Linuxing.

Anyway, should this be called LSL or WSLL? Or maybe LSWSL.

Re:Show HN: NSL – WSL for Linux by bityard on Tuesday September 29, 2026 @02:44PM (#49898376)
The naming is a bit awkward now, but an original design goal of the Windows NT kernel was the ability to host different types of OS "personalities" (userspace, essentially) on top of the Windows kernel, and these are called "subsystems." Win32 is one such subsystem, although there was no need to formally call it "Windows Subsystem for Win32" because everyone understood that it was just Win32 ported to NT.

The NT kernel designers came from VMS, and during development MS made various half-hearted promises that NT would be able to run VMS software as well but never actually followed through. If they had, there would likely have been a Windows Subsystem for VMS.

Re:Show HN: NSL – WSL for Linux by zokier on Tuesday September 29, 2026 @06:19PM (#49901550)
Notably there was Windows subsystem for OS/2 though
Re:Show HN: NSL – WSL for Linux by zamadatix on Tuesday September 29, 2026 @10:14PM (#49903571)
OS/2 subsystem, for Windows NT :). And a few others: https://helparchive.huntertur.net/document/52712
Re:Show HN: NSL – WSL for Linux by dspillett on Tuesday September 29, 2026 @02:07PM (#49897772)
It is continuing a historic naming "accident", the precedent having been set by Windows Services for UNIX and similar in the 90s/00s.
Re:Show HN: NSL – WSL for Linux by lukeh on Tuesday September 29, 2026 @07:33PM (#49902308)
It’s to do with trademark usage as I understand it.
Re:Show HN: NSL – WSL for Linux by bitwize on Wednesday September 30, 2026 @09:54AM (#49909016)
It's an issue because Linux is a trademark. Microsoft cannot call something a "Linux something" without infringing a trademark, but they can say something is "for Linux" the same way third-party companies could market e.g., WordPerfect for Windows. Hence Windows Subsystem for Linux, mirroring the old Windows Services for Unix:

https://en.wikipedia.org/wiki/Windows_Services_for_UNIX

It's a subsystem instead of "services" because WSL1 really was an NT subsystem: a "kernel personality" that knows how to interpret Linux system calls just like the DOS and OS/2 subsystems of early NT.

Re:Show HN: NSL – WSL for Linux by michaelastreiko on Tuesday September 29, 2026 @01:52PM (#49897495)
Nice flip of the WSL idea the other way — simple interop like this keeps a one-person stack from turning into a VM zoo.
Re:Show HN: NSL – WSL for Linux by bezko on Tuesday September 29, 2026 @02:02PM (#49897684)
someone has to ask the question: can you run lsl in wsl?
Re:Show HN: NSL – WSL for Linux by bita_nidir on Tuesday September 29, 2026 @02:33PM (#49898211)
I'll give this one a try, thanks for sharing!

FWIW, I'm currently using systemd-nspawn via mkosi: https://github.com/systemd/mkosi

It makes an image and runs it in separate namespace. It can start at bash or init. It's very fast but there seem to be a problem creating an Ubuntu image on Debian and vice versa.

Re:Show HN: NSL – WSL for Linux by codr1 on Tuesday September 29, 2026 @02:35PM (#49898237)
This is very cool. GG.
Re:Show HN: NSL – WSL for Linux by 28304283409234 on Tuesday September 29, 2026 @02:35PM (#49898241)
Always looking for a successor to https://developer.hashicorp.com/vagrant. Is this it?
Re:Show HN: NSL – WSL for Linux by teeskay on Tuesday September 29, 2026 @02:40PM (#49898327)
Just a recommendation that difference between docker container and nsl on homepage is worth it
Re:Show HN: NSL – WSL for Linux by naman_307 on Tuesday September 29, 2026 @05:19PM (#49900759)
Is the VM layer mostly for host hygiene, or are you also treating the instances as a real security boundary when something untrusted (deps or agent-written code) runs inside?
Re:Show HN: NSL – WSL for Linux by dathinab on Tuesday September 29, 2026 @06:57PM (#49901953)
How does it differ from existing tools kinda do exactly same, like e.g. toolbx. (And to a slightly lesser degree flatpack, snap, etc.)?

And what prevented adopting/supporting existing projects, instead of further tool ecosystem fragmentation? (kinda the same question, just differently phrased)

Re:Show HN: NSL – WSL for Linux by philips on Tuesday September 29, 2026 @08:31PM (#49902824)
Ha! I wrote the first commit to CoreOS's toolbox in 2014: https://github.com/coreos/toolbox/commit/dc4aa0b14bceafd6afa...

And then I read your comment and my first reaction was, oh, they typoed toolbox. But, nope, Red Hat created toolbx which confusingly has the CLI binary of `toolbox`: https://containertoolbx.org

Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @11:19PM (#49903986)
Hi Brandon!
Re:Show HN: NSL – WSL for Linux by philips on Tuesday September 29, 2026 @11:35PM (#49904075)
Oh, hey Brian! I like the project. How is it related to reproducible builds though?
Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @11:40PM (#49904104)
... it's not. Just another way to keep my host clean and do the dirty work somewhere else. Where did reproducible builds come through? Another comment?
Re:Show HN: NSL – WSL for Linux by philips on Wednesday September 30, 2026 @12:12AM (#49904277)
I just had never heard of "frostyard" and the github.com/frostyard page says: Foundation for Reproducible OS Technologies
Re:Show HN: NSL – WSL for Linux by bketelsen on Tuesday September 29, 2026 @11:23PM (#49904018)
Most of these tools you mention are designed to work best as an overlay to your $HOME. toolbx, distrobox, and to some extent flatpak and snap. NSL is built to give you the "pet" virtual machines with limited integration to the host - you can get to the host filesystem if you want, and you can use the host's Wayland session. I think a better comparison would be using NSL instead of using a remote computer or VM.
Re:Show HN: NSL – WSL for Linux by senectus1 on Tuesday September 29, 2026 @08:41PM (#49902905)
would really like a NixOS for this. would be interesting to play with and figure out.
Re:Show HN: NSL – WSL for Linux by Fnoord on Tuesday September 29, 2026 @09:01PM (#49903067)
'National security letter' for Linux?

I think I'll stick to Nix & Podman.

Re:Show HN: NSL – WSL for Linux by aj2048 on Tuesday September 29, 2026 @09:20PM (#49903210)
I've wanted a little more isolation than what distrobox can give me for a while now, and I did enjoy WSL when I used Windows. I've also never heard of Frostyard before, and the other repos look pretty interesting as well. Thanks for sharing!
Re:Show HN: NSL – WSL for Linux by frunklooper on Tuesday September 29, 2026 @10:58PM (#49903850)
Nobody wants this
Re:Show HN: NSL – WSL for Linux by ilvez on Wednesday September 30, 2026 @01:23AM (#49904688)
Exactly opposite, gonna test it out today for a pet project since I can let Claude go haywire inside if it needs to install any deps from systemside. Similar stuff exists, but this seems lightweight enough for experimentation.
Re:Show HN: NSL – WSL for Linux by bketelsen on Wednesday September 30, 2026 @05:34AM (#49906487)
I'd love to hear your thoughts on it afterwards, either here or as an issue on GitHub.
Re:Show HN: NSL – WSL for Linux by ilvez on Wednesday September 30, 2026 @06:23AM (#49906845)
Gladly (Y)

Will try to give it a spin later.

Re:Show HN: NSL – WSL for Linux by ilvez on Thursday October 01, 2026 @03:56AM (#49918971)
So I was working with some graphics related stuff and since I think I don't have GPU passthrough, then I could not use it directly this time.
Re:Show HN: NSL – WSL for Linux by isityettime on Wednesday September 30, 2026 @12:07AM (#49904242)
What differentiates this from distrobox?
Re:Show HN: NSL – WSL for Linux by tonymet on Wednesday September 30, 2026 @12:13AM (#49904278)
I now prefer WSL over Darwin, especially with agents because I can easily scope disposable "VMs" that have a clean terminal integration.

It's neat seeing this experience come to linux.

Sure you "could" do this with a bunch of tools, but it's the UX that matters.

Creative idea to fix something that nobody thought was broken, but actually was.

Re:Show HN: NSL – WSL for Linux by ocean2 on Wednesday September 30, 2026 @01:32AM (#49904738)
Have you measured the performance penalty when compiling code in one of the containers against compiling on the host system itself?
Re:Show HN: NSL – WSL for Linux by seabrookmx on Wednesday September 30, 2026 @02:06AM (#49905003)
I use incus/LXD for this, though it does require a bit of faffing around with the networking.

The benefit is that its super low overhead (no VM).

Re:Show HN: NSL – WSL for Linux by bketelsen on Wednesday September 30, 2026 @09:12AM (#49908471)
That was my go-to for the past 8+ years as well. In fact, a different angle on this same problem I wrote is Blincus: https://blincus.dev I think I lost the plot on it though and tried to do too much, automate too much.
Re:Show HN: NSL – WSL for Linux by zahlman on Wednesday September 30, 2026 @02:20AM (#49905125)
Why is this better than just spinning up another distro in a VM?
Re:Show HN: NSL – WSL for Linux by bketelsen on Wednesday September 30, 2026 @09:16AM (#49908517)
It really depends on how much of that other distro you really want/need. NSL's benefit for me is that it's headless unless I need a graphical app, then it shares the host's Wayland. My most common use case is an IDE inside a completely different distro from the host. If you want the whole desktop environment from your VM then NSL isn't your best route.
Re:Show HN: NSL – WSL for Linux by andai on Wednesday September 30, 2026 @05:04AM (#49906253)
Nice. Cool that it supports graphics too!

I'm a bit of an outsider here (I don't understand computer) but a few weeks ago I was wrestling with the question of deploying an application on many boxen. After looking into Docker (and unikernels, lol) I arrived at the conclusion that "the operating system is part of my application."

A very bloated "part", which I did not write, don't understand very well, and which spontaneously self-modifies. An OS is a big bag of global mutable state! Ew!

This made me very sad. (At which point I was informed that I had basically reinvented NixOS from first principles?)

Also something about "we don't break userspace -- that's libc's job!"

https://blog.hiler.eu/win32-the-only-stable-abi/

Re:Show HN: NSL – WSL for Linux by TonyStr on Wednesday September 30, 2026 @07:51AM (#49907576)
Haha, I was getting ready to bring up NixOS until you mentioned it.
Re:Show HN: NSL – WSL for Linux by lproven on Wednesday September 30, 2026 @08:02AM (#49907671)
I have never heard of "Snow Linux" before. The homepage is minimal:

https://snowlinux.org/

I submitted the Github page as a new story:

https://github.com/frostyard/snowdesktop

https://news.ycombinator.com/item?id=49907568

Re:Show HN: NSL – WSL for Linux by bketelsen on Wednesday September 30, 2026 @09:10AM (#49908441)
that repo is retired, now all the Frostyard atomic images build out of a single mkosi repo at https://github.com/frostyard/snosi. the website is https://frostyard.org - I'll take down the older snowlinux.org or redirect it. Thanks!
Re:Show HN: NSL – WSL for Linux by lproven on Wednesday September 30, 2026 @09:13AM (#49908486)
Holy cr4p that is a wall of text on the repo! :-o

Is that massive amount of bumf machine-generated?

Re:Show HN: NSL – WSL for Linux by bketelsen on Wednesday September 30, 2026 @09:30AM (#49908682)
the README is probably 50/50 hand written and LLM written. We haven't really done much to publicize the org yet, we were waiting for bootc to stabilize on Debian. Tomorrow is actually retirement day for the non-bootc installation paths so we may do some clean up in the future. Don't really have a burning need to become the next hot distro though. If atomic debian desktops and servers sound good we're here.
Re:Show HN: NSL – WSL for Linux by lproven on Wednesday September 30, 2026 @09:59AM (#49909099)
:-o

Gosh. OK then.

Re:Show HN: NSL – WSL for Linux by martijnvds on Wednesday September 30, 2026 @09:14AM (#49908495)
Snow Linux was a thing way back in the 90s: https://archive.org/details/snowlinux2.2

The company behind rebranded to SUE.

Re:Show HN: NSL – WSL for Linux by just60sec on Wednesday September 30, 2026 @11:41AM (#49910437)
Yeah, I can see why you'd want this. Being able to cobble it together with other tools is one thing. Having it ready to go without a bunch of setup is still a win.

Got a quick demo? Just opening an editor, running a dev server, and showing how you access the files would help me get a feel for it.

Re:Show HN: NSL – WSL for Linux by vaporup on Wednesday September 30, 2026 @02:20PM (#49912468)
Re:Show HN: NSL – WSL for Linux by bketelsen on Thursday October 01, 2026 @10:16AM (#49922008)
I hadn't seen this before, at first glance it looks interesting. I'll check it out, thanks!
Re:Show HN: NSL – WSL for Linux by vaporup on Thursday October 01, 2026 @06:33PM (#49927846)
At first glance the main difference seems to be that NSL uses virtual machines with systemd-vmspawn and sdme uses containers with systemd-nspawn
Re:Show HN: NSL – WSL for Linux by humanfromearth9 on Wednesday September 30, 2026 @03:00PM (#49912906)
Have you ever heard of Nix, direnv, Lorri, flakes, devShell etc.? Aren't containers overkill for most dev activities?
Re:Show HN: NSL – WSL for Linux by aniceperson on Thursday October 01, 2026 @08:09AM (#49920601)
this whole thing is a misunderstanding from legacy docker semantics. you can easily use namespaces in systemd as user in lighter ways, for example, keeping the rootfs but protecting home and binding a private tmpfs, or to bind a completely different rootfs, providing a vm-like experience. Please read the documentation before vibe coding; the name wsl for Linux just shows how lost you are.