As announced yesterday Microsoft has now divulged Windows 10 users will soon be able to run Bash within their Microsoft operating system environment.
Microsoft's Build 2016 developer conference session "Running Bash on Ubuntu on Windows!" ran this morning, where presenters demonstrated the bash shell running natively - they were keen to emphasise "natively" - within Windows, clicking Cortana, typing 'bash' and pressing enter.
There was no pre-launched virtual machine by the presenter. More impressively, the presenter demonstrated apt-get and other Linux command-line utilities being executed, even fetched and installed.
Microsoft announced these repositories were courtesy of Ubuntu Linux.
Unfortunately, Microsoft was lighter on technical detail as to how all this was happening. One opinion by those viewing the presentation was Microsoft has implemented a layer of Linux APIs into its operating system. Certainly, Microsoft was keen to point out the Ubuntu tools were running in "user space", side-by-side with Windows apps and tools.
Yet, if these are natively running within Windows itself, why title the session "Running Bash on Ubuntu on Windows!" instead of the simpler "Running Bash on Windows!"? The "Ubuntu" part of the equation is still not fully explained or understood.
My theory yesterday was a possible "Ubuntu mode" coming in Windows, much like the former "Windows XP mode" of Windows 7, whereby a virtual machine is in play but is seamlessly integrated with the host operating system such that apps launch from it and display in windows - not a virtualised desktop - next to host applications.
Further questions exist about the Ubuntu repository being used. Is it a specialised Windows-built repository, by Canonical, for Microsoft? Or genuinely the Ubuntu Linux repository, indicating binary compatibility has been achieved - whereby you can take a Linux executable file and copy it over to Windows and run it without modification?
Microsoft isn't giving away the detail yet. It announced a new "Command Line" blog to cover these topics and more, but as of right now, this blog contains a single "Hello world!" post, inviting the blog owner to edit it or delete it.
Whatever the case may be, it is important to understand this is a command-line facility only. Microsoft is not proposing any GUI compatibility with Linux at this time.