top | item 28486133

Windows Subsystem for Linux GUI

618 points| anchpop | 4 years ago |github.com

457 comments

order
[+] reilly3000|4 years ago|reply
I wonder what Linux exclusive software they are hoping to support. Everything I use in my Ubuntu daily driver has a Windows build or corollary app. I get how ‘you never have to leave Windows’ is a nice thing for their business, but I don’t see this being a reason I would stop dual-booting. The only reason I run windows in the first place is for a few apps, mostly games. Otherwise I really enjoy the bloat-free, ad-free, telemetry-free, snappy, tractable, and undistracted experience that is Linux desktop computing.

It would be nice if they did something actually useful, like add native ext4 support.

[+] Stratoscope|4 years ago|reply
Even though our dev environment at work is Ubuntu, I greatly prefer running Windows on my ThinkPad X1 Extreme, because of the superior hardware support for the devices I use. Specifically:

• I spend a fair amount of time on Zoom calls (who doesn't?), and I like to use my Apple AirPods so I can move around while we talk. I was never was able to get these or any other Bluetooth headset to work on Ubuntu. They pair only as headphones with no microphone. On Windows they work "out of the box".

• I use a triple-monitor configuration with three 4K displays: the ThinkPad's internal 15" display and two 24" externals. In Ubuntu I can only get two displays to work. (BTW one external display is in landscape mode above the ThinkPad, and the other is to the left in portrait mode. I highly recommend this configuration - the portrait mode display is great for reading docs and especially PDF files.)

• I run the external displays at 200% scaling and the internal at 300% to match the differing pixel density. I didn't see any way to support this configuration in Ubuntu, much less be able to move an app window between displays and have it automatically update its scaling factor to match the display. This works "out of the box" in Windows.

So I run Windows on the hardware and Ubuntu with my dev tools like PyCharm and SmartGit in a VMware VM. (VMware works a lot better for this than VirtualBox - the display response is much snappier.)

Of course these are my own needs, and I have no quarrel with anyone who has different preferences. But I welcome anything Microsoft can do to make this an even smoother experience than it already is.

[+] accurrent|4 years ago|reply
To be honest, theres alot of research related software (including for visualization) that works on Linux only or has very poor support for windows. As a roboticist one example that comes to mind is the whole open source robotics ecosystem with ROS/Gazebo which is pretty linux only. Personally I've been using linux as a daily driver for 10+years now so its not a problem for me per-se, however I'm sure there are many who would be interested in seeing better windows support. I've heard of similar issues in the domain of particle physics and a few other niche research areas.
[+] jonathanlydall|4 years ago|reply
As someone who uses Windows as their main driver, I will personally find it a useful way to test/debug our Electron based app on Linux. Right now I’m using a full VM.

When you consider that Edge is available for Linux, MS could very well be using WSLg to develop it.

So it seems to me that this just makes it easier to anything you need to do on Linux, “on” Windows.

Of course making it easier for people on Windows to make software for Linux seems like a way to help Linux, which is a bit confusing to see MS do.

[+] II2II|4 years ago|reply
> I wonder what Linux exclusive software they are hoping to support.

It would be more of a case of how well certain software works, or how well that software works together, than one of supporting Linux exclusive software. There have been a variety of ways to run Unix software under Windows for decades. Quite often, there are quirks to deal with unless considerable effort has also been put into the Windows native version. I doubt that WSL will actually appeal to many existing Linux users, but it will probably prevent the slow flow of people from Windows to Linux.

I agree that native ext4 support would be more useful for people who dual boot.

[+] d_k_f|4 years ago|reply
Whenever you want to natively operate on files within WSL instead of going through the network share abstraction, this is definitely helpful. I'm running my git GUI (Sublime Merge) on the Linux side and am currently piping the UI through to Windows using VcxServe. If I can remove another dependency using this - great.
[+] alex_smart|4 years ago|reply
So even if a windows build is available, sometimes the user experience of linux-first software on windows can be subobtimal because of differences in filesystem and process model of the two operating systems. I much prefer using git and emacs within WSL than their windows builds.

> The only reason I run windows in the first place is for a few apps, mostly games

Another reason to use windows is if you are on a laptop and care about battery life. Browsers on Linux still don't have hardware accelerated video playback.

[+] gigel82|4 years ago|reply
IIRC, they were primarily interested in getting GPU acceleration (for ML tasks) to work in WSL2.

I presume getting GUI working on top of those GPU APIs was a trivial task (and maybe done by one of their interns or during a hackathon).

[+] phendrenad2|4 years ago|reply
I think it's mostly a "because they can". WSL is a no-brainer because developers are used to Unix shells and most programming languages are Unix-first, Windows-maybe. But WSLg feels like a weird experiment with no purpose.
[+] PennRobotics|4 years ago|reply
My networked workplace computer needs to be able to compile a Windows application plus peripherals running various other architectures. The Windows part happens best in Windows, while the other parts are remarkably painful to compile without Linux. And all the platforms can compile in parallel.
[+] WhyNotHugo|4 years ago|reply
I suspect this is to try to push large business/corporate clients to drop Linux.

Windows adds support for running Linux apps, then spreads some FUD about Linux, and convinces companies they need to ban dual-booting and only allow Windows internally.

It certainly does _sound_ like MS.

[+] reilly3000|4 years ago|reply
I was looking into this further because it’s sort of impacting my dual-boot workflow. I have ext4 media drives on Linux that aren’t viewable or readable from Windows, but Linux can at least read the NTFS drive. The third parties I’ve tried in the past for making Ext4 readable in Windows File Explorer have some sketchy security concerns and/or missing Win10 support.

It looks like using the method described in the link below it’s now possible to mount ext4 drives via WSL2 and even browse them in File Explorer:

https://superuser.com/a/1630438

It’s not clear if they are also writable or not, I’m off to try it!

[+] eitland|4 years ago|reply
Almost everything I use runs faster on Linux so even if it isn't Linux exclusive I'd very much prefer to run it on Linux.

VS Code brilliantly lets me develop on WSL2, IntelliJ is getting there but with these new developments it might become easier to run everything on Linux.

That said, IT at work not only tolerates Linux but actively support it so I might be back on Linux again very soon.

[+] jpalomaki|4 years ago|reply
If all your development is on Linux, it’a convenient to run IDE there as well.
[+] lancebeet|4 years ago|reply
I use WSL with VcXsrv on my work machine. For me, the biggest feature is that I can share clipboard between vim running in WSL and windows. It's also often significantly faster to get a program up and running in Linux than on Windows, especially if it has lots of dependencies.
[+] jbhouse|4 years ago|reply
you would be surprised at what a large effect the removal of friction can have. I bet this will convince a decent chunk of people that dual booting isn't worth it
[+] jvanderbot|4 years ago|reply
Well, ROS?

I can't tell you how many people want to mess around with the robot operating system but don't want to dive head first into Linux. Hell, my very large robotics company won't even give you a linux machine. You're forced to use Mac or Windows or build it yourself.

But in general, I haven't dual-booted my main machine since WSL got good, and I'm a linxu-first kind of person with a penchant for windows gaming.

[+] mcbuilder|4 years ago|reply
I have a Windows machine for my work at giant megacorp. I run Linux on my at home machines, but the honest to god I can't believe it's not Linux experience I've gotten from WSL has been great. I pretty much tab into my full screen Linux Window manager running in a X11 client window and get down to work.
[+] usrusr|4 years ago|reply
> Everything I use in my Ubuntu daily driver has a Windows build or corollary app.

And using them is an endless shuffle with fractured distribution and update. WSL gives you apt-get. And good luck when every port you use integrates with a different subset of the ca 5 SSH options that are in common use on Windows.

[+] eyelidlessness|4 years ago|reply
They’re supporting servers. That’s the whole story. They won business desktops but lost enterprise in the “anything that requires network access”, and want to continue to sell software to those customers. Making development less onerous supports that goal.
[+] Rd6n6|4 years ago|reply
I just really like the OS experience of Ubuntu. I’d rather run a windows vm but the gpu doesn’t play very nice sometimes
[+] merb|4 years ago|reply
the reverse would also be pretty useful. heck if they would pull off office for linux even when they would charge windows pro and a 365 license it would probably be welcomed.
[+] MikusR|4 years ago|reply
They made it specifically for machine learning
[+] ezoe|4 years ago|reply
Terminal emulator.
[+] apatheticonion|4 years ago|reply
I love WSL1. With WSL2 and the move to Hyper-V, I just decided to drop WSL and manage my own VM manually.

I use the remote development tools on VSCode that power WSL to make everything feel like it's running on the host directly, just like WSL2.

This way I don't have any confusion born from it pretending not to be a VM. No issues with network port mappings, dns stuff, who owns what binary and how does it execute? When is WSL2 running and when is it not? etc etc

Ultimately, I would rather run Linux on my desktop as a daily driver but the desktop experience is not quite there yet for me to live (at least) 8 hours a day in. Gnome 40 looks great though, can't wait too see what the future holds.

My dream is running Linux as a daily driver where the UI is more polished than MacOS. Windows will run in a VM and will be used for API calls for playing games (I wonder if we will ever see some kind of GPU sharing for virtualisation).

[+] phkahler|4 years ago|reply
>> Weston is the Wayland project reference compositor and the heart of WSLg. For WSLg, we've extended the existing RDP backend of libweston to teach it how to remote applications rather than monitor/desktop. We've also added various functionality to it, such as support for multi-monitor, cut/paste, audio in/out, etc...

Did they push those changes upstream? This seems like it could be another way to run GUI apps in containers on Linux too.

[+] pygar|4 years ago|reply
This is undoubtedly cool but I'm curious to know of a use case that would warrant installing this. Could this just have been a step in creating "Windows Subsystem for Android" [0] that they decided to release as its own layer?

The screenshot on the github page shows VSCode, Edge, Blender, Xcalc, Xclock and GNOME file manager which are all either available natively on windows or redundant.

[0] https://www.xda-developers.com/wundows-subsystem-android-ben...

[+] waych|4 years ago|reply
I've been using this for the several weeks on Windows 11 insider builds and its great!

For those asking comparing versus X forwarding, at least for my purposes, I've found X over a socket very limiting in that remote opengl basically stops at version 1.1. With WSLg my apps run on MESA version 4.5, meaning they actually run. I haven't even tried with the vGPU driver yet and its already a very nice improvement.

Would be even nicer if PCIe device assignment wasn't locked behind Windows Server licensing however.

[+] modeless|4 years ago|reply
> Please note that for the first release of WSLg, vGPU interops with the Weston compositor through system memory. If running on a discrete GPU, this effectively means that the rendered data is copied from VRAM to system memory before being presented to the compositor within WSLg, and uploaded onto the GPU again on the Windows side.

This is a pretty big limitation. Hopefully it can be addressed soon.

[+] AcerbicZero|4 years ago|reply
WSL seriously changed the amount of work I can do from my gaming PC, but I’m not sure if that’s actually a good thing based on my productivity over the past few months.

That aside it’s terrific to see MS putting something good into Windows rather than just removing things and taking choice away from the end user.

[+] CraftingLinks|4 years ago|reply
I just might switch to linux instead.
[+] sevensor|4 years ago|reply
As a WSL user at work, this addresses exactly zero of my problems with running Windows. Windows Defender is still going to randomly spin up and bring my machine to a halt. The Windows Start Menu with its ads is still there. There are still 15 pieces of device driver desktop experience crapware running in the background. The RAT required by our IT department is still resident. Adding GUI support doesn't move the needle: the missing feature is freedom.
[+] miohtama|4 years ago|reply
> The RAT required by our IT department is still resident

This sounds like organizational problem, not a technical problem. Have you considered applying a new position for another employer that allows to run Ubuntu/Red Hat/etc. environments?

[+] moonchrome|4 years ago|reply
While I do get the "dirty" feel running Windows and I fully agree that having crapware installed by device drivers is shady - the start menu ads seem to be gone (along with awful tiles) in Windows 11. I also rarely use start menu (powertoys launcher, although it's been crapping out on Win 11 recently with focus and such).

I recently built a desktop since my MBP would turn in to a jet engine if I try to spin up a non trivial docker compose and I went for windows because I wanted to game - started on Windows 10 and was appalled at the ammount of crap they had preinstalled and there with the OS. Windows 11 beta has been much better in this regard.

[+] themulticaster|4 years ago|reply
What's a RAT? I've never heard of it, and I'm afraid it's an not a googleable word. Remote Administration Tool? Something like Intel vPro?
[+] WhyNotHugo|4 years ago|reply
It sounds like you really just need Linux and can skip Windows.

FWIW, all this WSL stuff is mostly Microsoft trying to Extend, Embrace and Extinguish Linux.

[+] mikaeluman|4 years ago|reply
For me WSL has completely replaced dual booting setups.

There are still some quirks with integration such as certificates and more.

I really can’t wait for the GPU experience to be fully supported and also be able to use pytorch from within containers.

Microsoft is so far doing everything right with WSL IMO.

[+] vzaliva|4 years ago|reply
One could run Linux and use Wine to run some Windows apps. On the other hand one can run Windows and use WSL to run some Linux apps. Depending on the individual's needs which apps are important to have access to the decision could go either way. This is why Microsoft is investing in projects like this - to tip the scales and lure more users to run Windows as primary OS.

P.S. And then there is Google which wants you not to care about OS as long as it could launch Chrome browser, and to use web apps instead of native.

[+] pkulak|4 years ago|reply
Google has been doing this for years with ChromeOS and... it kinda works. It mostly works if you stick with their distro (Debian Stable - 1), but I've never been able to get their display forwarding tools to work anywhere else.

Seems like Linux is complicated enough without running it in a VM and forwarding everything up to to the host OS.

[+] tonoto|4 years ago|reply
you don't have to wait until Windows 11 for this nonsense. I am unfortunately locked at my current mission to be on a Windows laptop, my first Windows experience in years. As soon as I read up on wsl2 I installed it and inside installed the xrdp server and a corresponding lightweight environment, then just rdp into it (but every time the wsl gets restarted, you'll have to do a /etc/init.d/xrdp restart). Although, I can't wait until I get to a sane environment again. Without Windows and all headache it brings me...
[+] tambeb|4 years ago|reply
I haven't had any problems running all types of GUIs in WSL (1 & 2) through Xming for years now.
[+] ThinkBeat|4 years ago|reply
I will be the curmudgeon here I guess.

Microsoft has been following this strategy for a while. Announce something useful. I click in and look forward to start using it. How do I download it and get started?

Oh I need to install a beta version of Windows on my computer to use this feature. I dont want to do that.

Then weekly or biweekly new stories pop up and I hope it has had a proper release, but no, insider only.

I would prefer if MS announced, "tool under development to be released 03/25" and then "ready for production today". Synched so that you can get the correct version of windows to use the new tool/feature/framework.

It says it will ship with the next version of Windows, so it will ship in Windows 11 then?

I wish there was a meta tag on Hacker News that identified if a program, platform, airplane, city building, etc is vaporware, under real development or production ready / move in ready / book a flight ready etc etc.

[+] elif|4 years ago|reply
I made the switch from full-linux to WSL about a year ago. I never used windows outside of gaming but I got tired of putting up with minor hardware/driver frustrations on my particular laptop (surface).

I'm happy to report I have encountered zero issues. In fact, I don't think I've even used it for anything outside of emacs/cli.

I am kinda surprised by this link since I've been using the x version of emacs this whole time.

[+] TrispusAttucks|4 years ago|reply
Anyone else worrying about Windows swallowing up Linux?

I hope their intentions are altruistic.

[+] wvenable|4 years ago|reply
That seems like a very complex architecture. RDP client and server? That seems like a strange approach for a single machine solution.
[+] p0d|4 years ago|reply
I've been using linux for 20 years and my one frustration is missing Powerpoint. I recently joined the world of education and they are Powerpoint mad. Hats off to LibreOffice but Powerpoints look like they have been dragged through a hedge backwards. Is anyone solving this problem on linux locally or maybe wsl is the way for me to go?