How to run GUI apps on Windows Subsystem for Linux - WSL

I have been a fan of the linux bash terminal ever since I discovered how OP can it get. I desperately wished the windows cousin of the terminal aka command prompt or the new found powershell was that capable. Although I loved how several things turned out to be awesome and I so wanted to switch to linux distributions but only one annoying thing stopped me, MS Office. The day MS Office or something similarly capable gets onto the linux side of things, I'd surely dive in to switch. But until then, I'd love the little flavour of Linux in the form of WSL on the windows I've already got in my hands.

The WSL is kinda like the terminal only OS version of the Linux distributions that they are offering currently. But I installed the Kali and Ubuntu versions and they look pretty good to me. I wanted to somehow run GUI based apps on the system. There are thing which are made for linux and which just run seamlessly and in their best form on the Linux, hence I was looking for the way to run GUI apps like your everyday gedit or leafpad or something heavy like umbrello, on the WSL. After looking into the depths of Internet, I finally found a pretty easy to do work around for this adventure.

So, without further adieu, let's begin.


  1. Download VcXsrv from the sourceforge website. It's an open source software. What it basically does is, it hosts the display output from a remote server. It's based on a very old Linux protocol to perform remote computing.
  2. Install it using either the Default options or Choose whatever you feel like choosing. I opted for multiple windows and installed it normally with everything else.
  3. Next, open the WSL distribution that you've installed and type 'export DISPLAY=' or you can use ':1' if it doesn't work. But usually it works with the before said option.
  4. Now, say you want to run gedit and it is installed in your WSL. Then type 'gedit' in the terminal and just wait for the output on your Windows side.
  5. Make sure the X server is running before you try opening any app from the linux terminal.
Here what happens is that, the windows runs an X server. The server takes the display output which is hosted on the local host aka the IP that we have used aka on your own machine. Also ensure that you allow the X server app to run the private networks at least. Also the access control can be enabled and disabled depending on how you plan to use this work around.  You can not only run linux apps from your WSL but if you say have a remote Raspberry Pie running as a remote server you can also get the display output from it using SSH connection. Since we are running on a localhost here, we don't need to have an SSH connection, as its not over a network connection and probably way faster than getting any output from remote server connected with network connection.

If you are wondering how to enable and use WSL, first you need to enable it in the windows features. You can find the full detailed tutorial about the same here from the official Microsoft website.

Do comment and share your thoughts about it! I'd love to know what do you think. Also, I'd keep updating it quite often so do follow the Website to get all the updates by clicking here.

Also, a minor headsup.... Obsessed is free to read on Kindle Unlimited! Do check it out. I'd be glad to read your reviews!
Share :

Are you getting regular fresh content updates? If not click on the button below.


Post a Comment

Do comment and share your thoughts.