Last year I started experimenting with Linux on Windows (WSL) and wrote about it in this post. Back then I'd just set up the environment, used it for small side projects and was going to see if it could work as my main dev environment. As promised here's the report of how I got on.
WSL FTW
TLDR - this is now my main dev environment! I've been doing all my work on it day in day out, have switched over to booting from Windows and haven't loaded up my native Linux environment for months.
It's been fairly smooth sailing. As always with any computer environment there's things to setup and deal with although was pleasantly suprised that there weren't more issues when compared to, say, Mac or Linux.
Windows Apps, Linux Terminal
For normal Windows experience and command line Linux everything just worked. Very few issues that I hadn't experienced with normal Linux. Things just worked and had the benefit of Windows apps.
Linux Apps
Initially I didn't think I'd need to setup Linux apps. That was until I tried to run end to end tests with cypress. These need access to, among other things, Chrome. After a bunch of searching found these two articles (article 1 , stack overflow). Following those instructions I also added this commit to my config files.
This update also meant I had access to Linux apps - although for the majority (all?) of what I do Windows apps have been more than enough.
Coding in Windows
I thought with the tightly integrated terminal apps I thought I'd end up doing some powershell/windows coding. I haven't touched it. Maybe one day!
Conclusion
I'm reporting back - it's a success! WSL works as a day to day dev environment for me. Very few issues, love the stability of the apps from Windows but delighted to be on the command line with Linux.