I used WSL extensively at a couple of previous jobs. Sometimes IT only gives you the choice of Windows or Mac. I’m quite happy to have a Linux machine at my current job, but WSL has gotten the job done for me when I lacked that option.
My company mandates Windows laptops but I mostly work with Linux VMs hosted on our servers. WSL2 and Visual Studio Code (with Remote SSH and WSL2 plug-ins) are the best things that happened to Windows in years. Without these tools I would simply be unable to work.
My personal computer is Windows mainly because of gaming and game dev, but WSL means I don’t have to dual boot to tinker on a web project or something. In a way, it killed the Linux desktop for me, but I still use Linux as much as ever. With Docker as well.
it killed the Linux desktop for me
As it was designed to do
I don’t understand the pointless hate over wsl. Sure, it doesn’t replace Linux. It also doesn’t have to… Just having access to basic nix functionality from a windows desktop is still a useful feature. It makes stuff like putty mostly obsolete. It let’s windows users unpack tarballs without 7zip. It let’s developers play video games while “compiling”. It’s just an all-around convenient tool to have.
Maybe Microsoft wanted it to replace the Linux desktop, but since when has anyone really cared about what Microsoft wanted :P
Yeah, I don’t see what the big deal is. I won’t be switching from Windows anytime soon, for various reasons, but I very much appreciate being able to have access to a local linux environment without having to dual boot.
WSL + Docker is all I need :-)
Seriously, with the VSCode integration to control everything from your IDE.
Yeah, I don’t get it either.
While technically different (VM vs compatibility layer), WSL and Wine fill the same role. I have yet to see lots of people bashing Wine for being incomplete and imperfect.
Yeah, I can’t emphasize enough how it can’t replace Linux. And it doesn’t even always work that well for stuff that you’d expect to be able to work there.
I use Windows for my mostly-for-gaming desktop and because I’m very lazy with dual booting, I usually just use WSL if I wanna do some small thing. Or even some not so small thing. I tried to get stable diffusion working using it. I strongly dislike using the windows command line (I do all my professional dev on Linux and it’s what I’m most comfortable with), so I tried to use the Linux instructions with WSL. Did not go well. Wasted more time than I should have trying to make it work before I just gave up on that idea.
Not the first time I hit some weird WSL incompatibility either. I really should know better.
I spend like 80% of my work day in WSL. Using a Linux image that 100% matches the production environment, docker and k8s integration, and using VScode easily with WSL.
The big thing that makes is work is all I need is a command line.
Same, I have completely integrate WSL into my workflow. I use devcontainers with VScode and docker in WSL directly skipping docker in windows. It’s great
You’re right. It’s a great tool to have, and a much more efficient way to do lots of things than running a linux VM.
It is a Linux VM though. At least that’s what I’ve heard.
Yes, with WSL2, it’s implemented as a VM on hyper-v. But, that should be treated as an implementation detail, it’s a very light VM, compared to your usual linux VM. And you get the tight integration with the windows side of the machine for free, without fuss.
It’s very cool that you can have a workflow that starts in powershell, then executes commands in the bash shell, and the results stream right into powershell.
Is that still true with WSL2? It absolutely was with 1, but when 2 came out everyone said: Forget that we ever had WSL1.
I work at Oracle and leverage WSL for for some things. It works… but I wish I could just use Linux. WSL is full of gotchas and weird bugs. Performance is not good either.
WSL2 is essentially a VM, and doesn’t seem to have any weird bugs or gotcha’s anymore (at least for command line programs). I don’t use it for work, but playing around with it as a hobby, it seems fairly solid.
I use WSL2. It has bugs. DNS stops working when you connect to a VPN, which I have to do every day for all of my work. To fix that you can either modify the resolv conf (which gets wiped out on every startup) and then chattr it to prevent it from being deleted (this still didn’t quite work for me). Or you can install wsl-vpnkit and pipe all of your network traffic through another container.
I have been working in docker and rancher desktop, both of which have integrations with WSL but with other caviats and bugs. I basically have a bunch of very highly specific steps written up for other employees for “how to get this working with WSL” because it is so buggy.
I feel so vinticated reading somebody else going through the DNS hell WSL2+VPN DNS issues. It is a nightmare in professional environments and for the life of me I cannot get my resolv to stop reverting after a while. Thanks for the tip on wsl-vpnkit, much harder to convince VM teams to spin you up a remote dev environment than to just use WSL sometimes.
Tinkering around to get things working is a part of the authentic Linux experience. Performance is 95% to Ubuntu 20.0.4 so not sure what you mean by that. resolv.conf won’t get wiped out if you put
[networking] generateResolvConf = false
in your /etc/wsl.conf file.
A more modern solution is outlined here which you will want to adjust if you’re using something other than Cisco.
I’ve been using Linux for 15 years. Tinkering with WSL is not as fruitful as tinkering with Linux.
The link you provided for DNS is exactly the solution I was describing in my original post. It never worked for me, though. We have a custom DNS setup in-house and simply setting the nameserver doesn’t work. It is far too much of a hassle, so we just spin up wsl-vpnkit when we need network access.
Mac users and Linux native users don’t have these issues and everything works out of the box.
The performance I get when compiling and running integration tests through Rancher desktop integration on WSL is abysmal. Taking 30+ minutes to complete whereas for other employees on Macs see things done in under 5 minutes. Not sure if there is a WSL specific firewall / networking issue or what. If you look up “WSL2 poor network performacne” you’ll see dozens of open GitHub issues. It is very non-deterministic. Some days it runs great, other days it is terrible.
I assume I’ll have a million of other replies coming along that link me to random benchmarks and articles about how great WSL2 is, but I’m telling you, I use it every single day at my job as a software engineer. It has problems. I’m grateful it exists and you can hack it just enough to work (sometimes), but it is nothing like using Linux natively.
I use WSL2 a lot and it does have weird “uniquenesses”.
I think most actual Linux users saw this as expanded access to the Linux environment, and easier ways for Windows users to dip their toes in. That was the feel i got from the general community at the time.
Transcript:
[Miracle of the word wide web meme template]
“Thanks to the miracle of windows subsystem for linux…”
“…I can use the Linux terminal from the comfort of windows”
[Computer monitor showing windows update screen]
“Marvelous”How can downvotes be negative?
Simples, its so positive that the negative becomes positive.
no no you have a point
Your guess is as good as mine haha
the worst thing about windows is that you can’t natively change the window manager or desktop environment. that is so backwards. they even removed the ability to move the taskbar wherever you want. this is so weird.
Cant move the taskbar? Do you mean in windows 11, cos its possible in windows 10. If so i have just another reason to be glad i didnt make the move
Yeah, Windows 11 removed the ability to move your taskbar around, can only be at the bottom of the screen now.
There’s a popular patcher application for this problem called ExplorerPatcher
We should not have to fight back the OS of our computers.
Indeed, but “your” computer is merely loaned from mr. Nadella
The computer is yours. The OS is not.
They also removed the ability to disable window stacking in the enterprise version. When I got Win 11 for my home pc I use it just to force myself to get it instinctively.
Wait, window stacking as in, one symbol on the taskbar for multiple opened windows of a browser for example?
They removed the classic theme and I’m still pissed because you can’t quite get it back.
WSL is nice if you want to build things/run software for Linux, otherwise… just use Linux. Also it’s a nice way to run Docker without paying for it.
Personally, I think WSL is a great start point to introduce users in Windows to take the first step to Linux. Me myself and several people from what I know starts from WSL and end up using Linux full-time
Weird how tribal people are. Let people enjoy things for God’s sake. I use all combinations of macOS, Windows, Fedora, Ubuntu (server + on WSL), Pop_OS!, and what not. Different horses for different courses, and I like each one of these in their ways they excel at.
it’s fun to fling shit at the other side on the internet, regardless of what you truly think. has been for 30 years. how is that difficult to understand?
Be the change you want to see. Stop the division!
People who get out, see the world, meet people from other places tend to be far less tribal. Early career, I could have easily been a paid Microsoft Evangelist (is that still a real job title?). Eventually I was forced to begrudgingly learn a whole bunch of other things, then I became obsessed with OSS, shunning my former tribe every chance I got. At some point I just stopped caring about everything. Language, tabs vs spaces, design patterns, IDE, frameworks, I just don’t care any more. I still have my go-tos if I’m starting fresh but, if the direction of the wind changes, it doesn’t bother me a bit.
I shit on windows because I have had terrible experiences with windows. I dual boot a hackintosh with win10 and win10 is more unstable despite using it less. I use linux on my laptop and headless stuff and the only problems I have are ones that I create.
Enjoying Windows is like thanking your home invader.
It’s a VM. With this tech, Linux will only be more powerful
love combining linux with the worst parts of windows
They were really trying to pander to developers back then… What shows it best is their ad for windows terminal that I swear has more production value than most of Nike’s advertisements. You know you’re desperate when you go this hard on advertising a bloody terminal
Hey now, as someone who works in a 100% Microsoft shop, WSL2 and the Windows Terminal are the only things keeping me sane. Please MS, keep pandering.
I second this. WSL and windows terminal are both part of my daily toolbox and I love them both dearly.
Absolutely love the new Terminal app - anyone having to work on windows machines knows much value it finally adds over the ancient cmd/pwshell.
This is one of the core apps I install on any windows rig now
Being very familiar with bash/zsh etc, and somewhat forced to use Windows, I’ve tried to learn use PowerShell. My impression is basically, what? Why would I do this? The design is intriguing but the verbosity is awful.
It is not meant just for powershell; it combines all the shells on windows plus support of fit, bash/zsh in WSL.
I use Linux daily for development and a MacBook for a laptop; having to go from extensive terminals back to shitty blue windows was painful.
The new Terminal has been the best addition MS has added to windows in a long while.
Sure, I gather that the topic is something other than regular PowerShell. This is actually the first I’ve heard of it. I’ll check it out, thanks!
Well, if something in Windows did need an ad for developers, it’s the terminal. Advertising it here was the correct choice.
But that ad is ridiculous, because it shows absolutely nothing of value. It’s all emotion-based “look how nice it looks” stuff.
But that ad is ridiculous, because it shows absolutely nothing of value.
I think I disagree with you here. The ad shows:
- Ligature support
- Themeing
- Integration with WSL
- that Windows Terminal is open source (“Check out our github!” at 0:21)
- Hyperlink support
- Unicode support (implied by the emoji)
- Some sort of package manager specifically for Windows Terminal extensions? (0:20)
Which are all features that could conceivably be valued by developers. At the very least it gets across the point that “Yeah, CMD is shit, but fear not! Now there’s a first-party terminal that doesn’t suck!”. There’s no denying that all of this is presented in an “emotion-based” format as you put it, but I would argue that it’s a good balance between informative and entertaining. Heck, I much prefer it to the ads you get nowadays on youtube where you can’t even tell what they hell they’re trying to sell to you.
This is incredible. How much money did they spend on a terminal ad?
So true :'-) I used WSL on my company computer. Somehow I managed to snake through corporate restrictions on administration settings and WSL had practicaly full access to system. I even managed to make xserver and GUI apps working :-)
These days you don’t even need to do that, thanks to the wslg project microshaft has developed it has Wayland and pulseaudio inbuilt.
I don’t understand how Linux could make Linux obsolete
Or were they talking about the original WSL, where it was an implementation instead of a specialized VM
If anything, WSL2 made me realize that I didn’t need Windows. now, I’m a Linux user for almost 2 years.