Hacker News new | past | comments | ask | show | jobs | submit login

Yeah it's actually pretty damn good. Performance was better than it was with WSL1 for me, at least (especially IO). IIRC they are exploring USB passthrough using Hyper-V sockets, but it's still very early to actually talk about having that included[1]

Once they figure that out I might just as well be able to switch over and stop dual booting. I hate dual booting more than I hate Windows, so it would be an improvement.

[1] https://github.com/microsoft/WSL/issues/2195#issuecomment-74...




> Performance was better than it was with WSL1 for me, at least (especially IO).

WSL1 performance is better for CPU-bound problems

WSL2 only shines due to the VHDX approach. If WSL1 could use a VHDX or (gasp!) a native partition in a native linux format, it would smoke WSL2.


Probably, but it also introduced a lot of edge cases for compatibility issues. I thought it was a reasonable approach, though likely took more devs than just supporting the more tightly integrated VM environments.

I will say that Docker Desktop works MUCH more smoothly with WSL2 than the prior approach.

About the only issue I see now is about once a month I have to reboot because the magic localhost port mapping between docker, wsl-ubuntu and native host goes wonky. It's not so bad as long as I realize before diving into a rabbit hole to figure out why I can't connect to something.


WSL1 was more or less the reverse-equivalent of WINE as I understood it, more or less a translation layer for a subset of syscalls, the approach is awfully limited from the get go. Not sure how using a VHDX or partition would solve that. We'd be back to square one, with things like containers being unusable again.


> Not sure how using a VHDX or partition would solve that

The problem with WSL1 is limited to disk IO performance, because the compatibility layer that's easy to do with system calls isn't so easy to do with the filesystem.

> We'd be back to square one, with things like containers being unusable again.

It's complementary. WSL2 when you play with containers, WSL1 when you don't.

Personally, I don't bother with containers for about 90% of the development cycle - and it's just for testing before being deployed to a genuine linux, not some VM.

Also, if you want to run servers with WSL (say, postgres), having containers is the last of your problems.


Ah, different usecases then. I pretty much tend to go containers from A-Z for anything non-trivial, thus WSL1 was more or less useless for me. IO is also a big problem, just running a simple git status on a bigger project is a PITA.


It's not all that limited.

VHDX/partition would help significantly by not being NTFS and/or enabling a linux-style dentry cache.


I wouldn't call having only a subset of system calls, no containerization, no background services, no proper init system, no kernel modules, "not all that limited". But maybe that's just my use case.


I've never hit a system call I wanted but wasn't available on WSL. In fact the couple times I've been disappointed at the lack of a system call it was when I was booting linux.

No containerization: Agreed, this is a significant limit.

Background services work just fine, I don't know what you're getting at. I have cron and stuff going.

What's improper about the init system? I start services, I stop services, it seems fine.

No kernel modules: I feel like this is pretty niche.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: