During BUILD 2016, Microsoft said the upcoming Anniversary Update planned for Windows 10 this summer would include Linux-based Bash support for developers, allowing them to run Unix commands within the Windows environment. The company included Bash in Build 14316 released to the Insider Preview Fast ring last week, and now it appears that developers have latched onto that build and found a way to run Linux GUI apps through the new feature.
One developer named “w2qw” jumped on Reddit and revealed that he managed to get Ubuntu Linux-based Firefox and Vim running side by side with Windows 10 apps. This was accomplished by using both Bash and the Xming X Server for Windows, the latter of which is a server for developers to draw and manipulate graphical interfaces (windows) that can interact with a mouse and keyboard.
So how did w2qw get these Linux apps up and running? First developers need to enable Bash itself by launching the Settings app, choosing “Update & security,” going into the “For developers” section, and then selecting the “Developer mode” option. After that, go into “Windows features,” select “Turn Windows Features on or off,” and then check the box next to the “Windows Subsystem for Linux (Beta)” option. Developers can then install and run Bash in the command prompt after the computer restarts.
Once Bash is set up, developers merely need to install and set up the X Server on Windows 10. After that, go into the command prompt and run the following command using Bash to load up the Linux-based Firefox browser:
DISPLAY=:0 firefox
“Obviously it’s going to be slower than a native Windows/Linux application but probably better than VNC/X11 forwarding,” w2qw writes. Firefox crashes on every second page load but hey you can’t tell that from a screenshot?” Other Reddit users are also following these steps and are seeing Firefox frequently crashing.
In addition to Firefox, the developer also notes that he’s been trying to run Wine, but has stumbled across multiple issues. He managed to work around a copy but says that it’s “still not there” performance-wise. He admits he’s not real familiar with Wine, but believes there’s no real blocker in running the application.
Another Reddit user in the same thread reports that he managed to get a HyperV Ubuntu virtual machine (VM) running in the background and a virtual switch running between it and the Windows 10 machine. Even more, another user tried to run Xorg in Bash, but w2qw points out that this application must be run outside the Linux subsystem, as this subsystem does not have access to graphics drivers. Using the Xming server should work.
Finally, Reddit user pnosker reports that he tried running PyMOL but it often crashes and doesn’t display the right hand side file or commands. Gedit crashes while loading a file, and Nautilus will crash occasionally, but will actually allow the user to right-click on a file to open it. He even managed to apt-get install git and g++ to clone/compile protein design software ProtCAD, which reportedly runs “normally.”
“Most crashes are seemingly due to the Microsoft OpenGL 1.1.0 interface that’s built in,” pnosker writes. “Hopefully Microsoft will release a reasonable OpenGL implementation so we can run stuff more reliably.”
As seen in the Reddit post, developers are all over the new Bash support in Windows 10. And while developers can now run Linux command-line tools (sed, awk, grep, etc.) and Linux-first tools (Ruby, Git, Python, etc.), this feature is still in beta, so developers need to expect broken apps and a few “rough edges.” Things should get a lot smoother as Microsoft improves this feature with each build.
Thanks to Windows Clan for the tip!