Rendered at 17:49:43 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
bee_rider 4 minutes ago [-]
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.
rao-v 1 hours ago [-]
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.
bketelsen 40 minutes ago [-]
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.
0x457 48 minutes ago [-]
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?
pkulak 29 minutes ago [-]
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.
bketelsen 42 minutes ago [-]
you could, and if that's your preference https://nspawn.org is just right.
0x457 38 minutes ago [-]
Neat, I wasn't aware of this tool. I just either run nixosContainer in systemd-nspawn or OCI image in systemd-nspawn.
delusional 46 minutes ago [-]
Claude told him to do it this way.
nateb2022 34 minutes ago [-]
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.
thayne 1 hours ago [-]
How does this compare to distrobox?
bketelsen 54 minutes ago [-]
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.
31 minutes ago [-]
rpcope1 1 hours ago [-]
So you've just basically reimplemented LXC?
pkulak 1 hours ago [-]
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?
ktm5j 56 minutes ago [-]
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?
nurettin 40 minutes ago [-]
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?
pkulak 36 minutes ago [-]
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.
failbuffer 21 minutes ago [-]
Just a reminder that the Hacker News community generally frowns on caustic dialog. Let's make sure this place doesn't turn into slashdot. :-)
pkulak 18 minutes ago [-]
Agreed. Edited. I do feel like I was just following the existing tone set by OP, but no excuse.
27 minutes ago [-]
graemep 1 hours ago [-]
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.
bketelsen 49 minutes ago [-]
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.
dingaling911 51 minutes ago [-]
Looks very cool.
Now all you have to do is run NSL under WSL.
bketelsen 47 minutes ago [-]
challenge accepted!
varispeed 1 hours ago [-]
The project is cool, but please use human written text.
The website's Claudisms are unbearable.
RandomGerm4n 1 hours ago [-]
There's already Distrobox, which does exactly the same thing but isn't slop.
KyleGospo 24 minutes ago [-]
This handles use cases Distrobox can't, they both have a place.
the_real_cher 1 hours ago [-]
IS it LXC containers or docker? Or are you running a custom chroot namespace setup?
bketelsen 48 minutes ago [-]
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.
mhitza 1 hours ago [-]
Haven't checked the actual project but he does state he uses systemd-nspawn. Which is it's own kind of container runtime.
smw 1 hours ago [-]
He runs a systemd-nspawnd container in a "small vm", so neither really?
Anyway, should this be called LSL or WSLL? Or maybe LSWSL.
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.
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.
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.
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.
Now all you have to do is run NSL under WSL.
The website's Claudisms are unbearable.