I like WSL2 because I get to share my GPU with Linux. Great for Plex transcoding and Stable Diffusion.
I have a real Linux install with Hyper-V. Other than some Hyper-V guest integrations, there's no Windows specific customizations. No GPU access, but only very specific software needs that.
Every system makes tradeoffs. If you find yourself continually fighting to get something to support your specific workflow, it is usually best to be open to adjusting your workflow. Or swap to a different solution.
In my experience, WSL 2 with Node, Terminal and VSCode has felt like a first class experience. It's miles ahead of WSL 1, which was theoretically a great idea, but failed in practice.
> It's miles ahead of WSL 1, which was theoretically a great idea, but failed in practice.
Indeed. Do you know what technical factors made WSL1 undesirable in practice? Why were the disk performance issues insurmountable? Why was it so hard to maintain? The reverse, WINE, is arguably very successful.
it's the common curse for emulators - Cygwin, Wine, WSL1 - subset of features of supported and not always right/can be done right. And you always chasing the origin with a lot of efforts.
I highly doubt things like mounting filesystems ( I do run BTRFS for LXD in my WSL2 system) or other just-slightly-beyond-posix things would work reliably or at all with such kind of emulation that WSL1 do. In other words - it would never be Linux enough as native Linux (with VM type of WSL2).
I.e. I still use both WSL1+WSL2, but WSL1 is basically a very small shim when I need some socat/grep/shell & where it needs to share networking with main system, while main work is much better in WSL2.
Don't use Windows filesystem not even Docker for Desktop from within WSL2 instance. Install Docker within WSL2 instance itself (like regular linux). WSL1 supposedly gives better performance when accessing Windows file system.
I remove all Windows auto mounts and use only VS Code remote sessions and not VS Code WSL2 sessions.
WSL2 is more than fast enough. See phoronix site (well respected linux benchmarker).
Plenty of people develop using wsl2 - perhaps the author should have asked for advice instead of writing a ranty blog post pointing out tradeoffs that are easy to work around for a big benefit
I didn't completely understand why you want to run your project in WSL but keep necessary files on the Windows side of the filesystem? It mentions PHPStorm, but you can just run that in WSL instead of running it on the Windows side and losing the ability to watch files.
One of the selling points of WSL was the close integration between Windows and Linux.
I liked the original WSL because it delivered close integration in the filesystem (e.g. Linux applications used the Windows filesystem) but the filesystem interface in Windows is slow compared to the filesystem in Linux. For the work I did it was OK but the headline number for how long it takes to compile a kernel was awful with WSL 1 and Microsoft felt the need to rebuild WSL.
So WSL 2 is just "run Linux in a VM and use a bunch of Microsoft-supplied hacks to couple Linux and Windows" and that is just death... Microsoft can't couple Linux to Windows effectively any more than Microsoft could make a Dropbox clone that worked 1/4 as well as Dropbox or make a Steam clone that works at all. (Ok, I have occasionally installed an app from the Windows store, it sorta works on a new machine from the store and just after you make a feature upgrade, but after a little bit of use the metadata database gets corrupted and I can't install anything anymore... And the idiots at Microsoft tell me I should nuke my whole account and spend hours reinstalling and reconfiguring all the applications I actually use just so I can install one crapplet from the Windows Store that I need for my printer.)
If I want to run Linux in a VM I can just run Linux in a VM and configure it so it works correctly. For me WSL 2 is Kryptonite because it makes it very easy to make a broken Linux configuration but impossible to make a good one.
I have had the exact opposite experience than what you describe, and I use WSL 2 and the Windows Store daily.
the integration between WSL 2 and Windows is alive and well, I assure you.
most times I hear of something like this at work, like very odd problems I've never seen before, I will sit with the person and observe what they do before problems come up. every single time it is because they have some custom thing they do or apply or install "to all [their] windows systems out of the box" which "makes things better" somehow, but in reality always seems to make things break. these people are always smart people who knew very well how Windows worked 20 years ago and are unaware of just how much has changed in those two decades. damn near everything has changed, FYI. the old ways no longer work in a lot of cases.
those old tweaks mostly cause problems today. I'll show them what to do to stop windows from doing whatever it was that it did back then, in the rare event that windows still does the same things, and magically a lot of their issues simply stop being issues immediately.
your mileage may vary, but if you have problems, I would look closely at any customizations you've made, if any. maybe you've made none, I don't know. I no longer make any, and I no longer have the problems I hear others having.
As a contractor WSL2 is a boon if you have to use a firm supplied laptop - just install WSL2 and windows terminal, both of which are from Microsoft so its all kosher from a security theatre point of view.
You then have a standard terminal and Ubuntu environment wherever you go, and have some niceties like being able to call windows apps from Linux, and be able to run windows junk like netsh from bash and process its output.
Literally below the page that the table was taken from (emphasis mine):
>As you can tell from the comparison table above, the WSL 2 architecture outperforms WSL 1 in several ways, with the exception of performance across OS file systems, which can be addressed by storing your project files on the same operating system as the tools you are running to work on the project.
So,
>That was surprisingly slow.
It wasn't (surprising). And,
>In other words: WSL 2 is slow.
No. Depends on what you're doing. Kinda gave up the article here.
The only concern I have with WSL 2 is RAM usage and disk usage.
The RAM gradually increases its capacity and The disk uses half of the total capacity but have actual empty space. I guess this is by design but I couldn't play or install anymore games without shutting down the WSL or releasing some disk space.
I have a real Linux install with Hyper-V. Other than some Hyper-V guest integrations, there's no Windows specific customizations. No GPU access, but only very specific software needs that.