Getting that same quality of experience under VirtualBox was nightmarish. Longer boot times, shared clipboard/filesystems were always breaking, random stuff related to hardening made update difficult.
Which one? Secondary? And the primary does not work at all?
WSL, on the other hand, has been nothing but trouble.
EDIT: At least compared to WSL1. However WSL2 also has some advantages in that it can reclaim unused memory and suspend the VM when not in use.
I believe the "Linux Integration Services" for Hyper-V are actually mainlined at this point so I would expect most things to work. Setting up RDP for enhanced desktop sessions is the only painful thing I remember.
a) It comes default with some network binding magic (ok, just configuration) that makes your WSL env almost actually behave like localhost. I know you can configure this yourself, but it's nice out of the box. (on the other hand, sometimes is this exactly the opposite of what you want...)
b) My main machine is a bit RAM constrained, and WSL2 will "magically" reclaim RAM when I close the consoles (unless I left something running...). Once again, not the biggest win, especially if you spec'd out your machine to run VMs, but still nice.
I think WSL2's biggest wins are not for 'full out development'. But it's nice when you need want to jump in and poke at something quickly in Linux land. The startup time for the console/VM is fast enough (~1-2 seconds), and the cleanup is good enough I can quickly jump between, without having a VM actually hanging around all the time.
I'm sure the file system integration is useful for some usecases... classic one would be if someone emails you data files or something. You download in your browser in Windows and then can access pretty seamlessly from WSL.
I think I would summarize WSL's advantages as being a bunch of little quality of life advantages that are very much suited for Windows dominant workflows that periodically jump into Linux.
There are all sorts of other disadvantages though - I would not recommend anyone who has a comfortable VM based workflow to ditch for WSL. An example of an uncomfortably stupid rough edge would be periodically time-desyncing: https://github.com/microsoft/WSL/issues/4149 . I shit you not, my workaround is to manually adjust my linux time forward and back with `sudo date --set "${INCREMENT} seconds" until it gets close enough that OAuth doesn't shit itself.
- WSL1 shares the same network interfaces and addresses as the host, no proxying like WSL2
- Significantly less RAM usage
- No time sync bug
I use WSL2 for some docker based projects.
There are some issues still: GUI apps are still a pain to set up (but they're fixing this), there are some networking issues (e.g., accessing servers running on Linux), file path issues on some apps (like I guess git here), etc. I never personally experienced any of the git issues cited, and I use it regularly from the Ubuntu command line. Overall, I very highly recommend WSL2 now, Microsoft hit a home run with VSCode with devs and IMO WSL2 is turning out into another.
I'm what is called a "vacataire", which means I'm also not in the position of asking the school IT departement to enable stuff on the computers for the classes…
Likewise for WSL2.
I hope modern computers with a capable processor are all shipped with virtualization enable at firmware level, because Hyper-V can be used for tons of things in recent Windows.
So having a Linux VM in Hyper-V isn't opening up much new attack surface.
https://www.microsoft.com/security/blog/2020/07/08/introduci...
https://docs.microsoft.com/en-us/windows-hardware/design/dev...
https://techcommunity.microsoft.com/t5/virtualization/virtua...
If you click through "capable hardware" to here[1], you'll see the list of requirements for VBS, including:
> Virtualization-based security (VBS) requires the Windows hypervisor, which is only supported on 64-bit IA processors with virtualization extensions, including Intel VT-X and AMD-v.
So it will never be the case on x86/IA32
1: https://docs.microsoft.com/en-us/windows-hardware/design/dev...
https://www.techrepublic.com/article/how-virtualisation-is-c...
Note that this benefit applies to the deprecated WSL 1 only, WSL2 actually runs a VM underneath so it requires the same hoops that a VM would require.
Microsoft understood that they only care about having some kind of POSIX support, and nowadays being Linux compatible is more relevant than straight POSIX, as the BSDs and IllumniOS also found out with their compatibility layers.
Also, it's a thing on Windows/PCs.
But that's restricting it to people that use the preinstalled OS, which is strange, because of how fitting it is to install your own copy of GNU/Linux.
But maybe they also need to work with stuff thats Windows only. Say they need to produce media assets with the Adobe suite.
Not everything is vimmable.
... Or I could just install WSL.
What's the problem with Microsoft having an answer to this?
Because as proven by macOS and now WSL adoption, GNU/Linux would never have taken off if PCs already had a mature set of POSIX toys, given that its users care 0% about GNU/Linux, and would be deploying to HP-UX, Solaris, Aix, Irix, Tru64 just as well.
Setup is much less hassle, startup is much faster (one or two seconds) and resource usage is much lower than running Linux in a VM.
Also little things like VScode (running as Windows UI application) automatically detecting WSL and setting itself up to connect to the WSL side. To do the same for a VM requires at least to configure the SSL ports on the VM.
With VSCode I can switch between working in WSL and windows easily, without needing a desktop GUI to write code in. There's no startup cost, I'm immediately in the correct environment for that project. I've found it very useful since it came out.
In general I think using Calc (or Google Sheets) instead of Excel is a bad idea for a business. Word processing and spreadsheets - sure (although there might be some things specific to Word/PPT that I am not aware of). But Excel is a very specific piece of software and should not be thought of as a general “spreadsheet tool.”
I am not sure that one anecdotal blogpost supports the idea that industries are moving from Excel to Python. It is more likely that people are productionizing Excel spreadsheets with Python these days, instead of C++ or Java.
https://news.ycombinator.com/item?id=25015679
(And I know from experience that 2003- versions of Excel don't.)
I'm open to suggestions but it simply seems crazy difficult to do this outside of Windows. WSL lets me jump into *nix quickly when I need it for whatever reason. I don't need a desktop machine. Why not just use WSL?
In some cases I need to test something that's Linux-only -- an idea or a GitHub project that just doesn't run on Windows -- and it's easier to jump into a WSL console than boot a VM. But on the other hand, I don't do that frequently enough to just keep a VM running all the time. (Plus there's VM idle RAM usage, and I can't use Hyper-V [which can reduce VM RAM] due to host performance concerns)
EPM prohibits us from creating virtual machines, but WSL2 is possible. So a lot of devs at our shop (at least the 5% or so who are using WIN) use this setup.
Personally - I do this on my private machine - I switched, because with the EPM software I wanted to separate my work machine from my private efforts, as I just do not like Accenture to be able to read all mails, read all files and install arbitrary software on a machine that I have private data on. Before we got acquired my employer allowed private use, we were admins on the machines and there was no spyware installed - so only using one machine for work and private stuff was feasible.
WSL2 is basically just a Linux VM, though (I think it actually uses Hyper-V containers which seem to occupy some weird space between Linux container and VMs)
Just those using Virtual Box for free not.
Most people using it are also using servers. Is ESXi on desktops/workstations anything other than very niche?
Where they are used is orthogonal to having knowledge.
Managing VMware installations requires having that knowledge.