A look at Windows Subsystem for Linux (WSL) – a thing worked first time!

Hi everyone. It’s been a while, but I finally got around to it :). Here is the Windows Subsystem for Linux post and video! As usual, you can watch the video, read the post, or both depending on what you feel like.

Windows Subsystem for Linux – the video

The write-up

Setting up WSL

So, I started off the adventure by using Windows PowerShell. Eek. I’ve heard a lot about the super-long commands to do simple things, but until now I hadn’t really experienced it. It seems like a very different beast compared to Bash or other Unix/Linux shells. I had to do this to enable the optional WSL feature in Windows 10. All I needed was the simple:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Nice and dainty, just like I’d heard. After a bit of chugging and a quick reboot, I was pretty much ready to go. Next I opened the Microsoft Store, which opened impressively quickly! Then I just searched for and installed Debian GNU/Linux, which was as simple as installing anything else from the Microsoft Store. It also installed really quickly!

To initialise and install the Debian system, I just launched it and then set up a user account. After this, I had all of the standard Linux commands and packages at my disposal, at near-native speed on that machine.

I then used sudo to update the Debian system, as usual. I thought I had to launch as administrator, but I don’t believe that was necessary. Updating was slow, but not that slow given the sluggish nature of the laptop, so I’m fairly impressed :). It was certainly quicker than Cygwin on the same system.

Running graphical applications

While not something you’re supposed to be able to do, I’d heard it was possible to do this with Windows Subsystem for Linux, so I thought I’d have a go. So you need an extra installation on Windows – an X server – like with Cygwin. Xming seemed like a good idea, because someone else had tried it and said it worked. I left all the default options on during the install, and allowed access to it with the Windows Firewall.

Now I could try a graphical application, so I picked vim-gtk, because someone else tried it already – it seemed likely to work. I haven’t got much of an idea of how to use VIM, so I couldn’t do much with it, but it did work! It worked reasonably quickly too. All I had to do to enable the display was run:

export DISPLAY=:0

And then I could start vim-gtk, just like with Cygwin. I thought I’d try something more complicated next – Epiphany Browser. It took a while to install, but when it did, it did work, and almost flawlessly too. There were some mouse troubles, but I think that was Xming’s fault – overlapping Epiphany with the Debian terminal/console didn’t work and it didn’t want to let go of the window! Once I sorted that, it worked reasonably quickly, and I could load web pages easily and without issue. Xming is a few years old so it might not play well with Windows 10 would be my guess.


I am really quite amazed at how well this worked. It was easy, and there were almost no issues, even running graphical applications, which I’m not even supposed to be able to do!

That’s it for now, but stay tuned for upcoming posts here, and keep an eye out for a new video series on YouTube!


Tagged , , , . Bookmark the permalink.

About Hamish McIntyre-Bhatty

I'm a self-employed software developer working on Free Software projects, as well as studying for my degree with the Open University. Being pedantic when it comes to detail is fortunately useful for both of these things! A strong believer in free software, I have a few pay-for programs available under the GPLv3 and enjoy reporting bugs and helping to improve various open source projects, including volunteering at Wimborne Model Town to work on their river control system.

Leave a Reply

Your email address will not be published. Required fields are marked *