
Bash on Windows: The Good, the Bad and the Ugly - daw___
https://www.webreflection.co.uk/blog/2016/04/13/bash-on-ubuntu-on-windows
======
chmielewski
You are confusing bash with other packages (apt is not bash - if I installed
bash and it "came with" a package manager, I'd be suspicious... or in this
case, know that I'm using Ubuntu's bash). Your expressing dismay at lack of
anything further than coreutils seems odd.

------
dzdt
Can someone explain what MS bash will do (or potentially do) better than
mingw/msys?

~~~
JdeBP
It is _not_ Microsoft bash. It's this bash:

* [http://packages.ubuntu.com/trusty/bash](http://packages.ubuntu.com/trusty/bash)

Alongside many of these:

* [http://packages.ubuntu.com/trusty/](http://packages.ubuntu.com/trusty/)

With that in mind, the differentiator from git bash, MSYS, Cygwin, and so
forth should become clearer.

~~~
dzdt
What differentiator? They are all using the same source code. Msys, Cygwin,
now Microsoft all provide a whole ecosystem of gnu tools. (Git just repackages
msys, I think.)

My level of understanding of the difference between cygwin and msys is that,
when you build an executable, cygwin requires its own dll's to run it while
msys uses the system dll's. The result is with cygwin you have full posix
while with msys some things that Windows does in a non-posixy way are missing
or wonky. But it is much easier to distribute msys-built binaries.

So what is the differentiator with the Microsoft version? That they are
hooking it up to Ubuntu package management?

~~~
JdeBP
You're missing the difference between this:

* [http://packages.ubuntu.com/source/trusty/bash](http://packages.ubuntu.com/source/trusty/bash)

and what I actually pointed to, which was this:

* [http://packages.ubuntu.com/trusty/bash](http://packages.ubuntu.com/trusty/bash)

Your second sentence reveals that you're not getting the differentiator. To
get this, read the blurbs and what the Microsoft developers themselves
emphasize about this. It's pretty much the very first thing mentioned every
time. Sometimes, its even in the headline.

* [https://news.ycombinator.com/item?id=11391891](https://news.ycombinator.com/item?id=11391891) (in the third sentence)

* [https://blogs.msdn.microsoft.com/commandline/2016/04/06/bash...](https://blogs.msdn.microsoft.com/commandline/2016/04/06/bash-on-ubuntu-on-windows-download-now-3/) (in the first sentence)

* [https://blogs.windows.com/buildingapps/2016/03/30/run-bash-o...](https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/) (in the fourth paragraph, repeated in the fifth)

* [http://blog.dustinkirkland.com/2016/04/howto-ubuntu-on-windo...](http://blog.dustinkirkland.com/2016/04/howto-ubuntu-on-windows.html) (in the first sentence)

* [http://www.hanselman.com/blog/DevelopersCanRunBashShellAndUs...](http://www.hanselman.com/blog/DevelopersCanRunBashShellAndUsermodeUbuntuLinuxBinariesOnWindows10.aspx) (in the URL!)

~~~
dzdt
So what I get from that is that, like cygwin, and unlike msys, the target is
full linux userspace compatibility. So is it essentially like MS is bundling
cygwin as a windows system library?

------
brudgers
Curses is the GUI for Bash. Anyone tied getting it to work yet?

------
JdeBP
There are several problems with this article. In no particular order, here are
some:

* The "only missing platform" statement is incorrect. The Bourne Again shell is not part of the BSDs, for starters. It's available through packages/ports. But it's not part of the operating system. If, however, one is including add-on softwares that can be installed by the user; then by that measure Windows was _not a "missing platform" in the first place_, add-on Unix-like shells (not solely the Bourne Again shell, either) having been available for Windows for decades.

* "all it matters is that we are going to have a universal scripting language" \-- As I mentioned at [https://news.ycombinator.com/item?id=11417487](https://news.ycombinator.com/item?id=11417487) in fact what matters is that the range of tools _expands_ , and does the _opposite_ of shrinking to just one shell.

* "nothing that requires even most basic UI will work" \-- This is demonstrated false by a video of Ubuntu X11 applications running on the Windows NT Linux subsystem; which is on Hacker News at [https://news.ycombinator.com/item?id=11466270](https://news.ycombinator.com/item?id=11466270) .

* The answer to “how .. do I install node.js that is not the 0.10 legacy version that apt-get is offering me?“ is in fact "Use something newer than the Ubuntu 14.04 LTS that you're installing from by default." Contrast [http://packages.ubuntu.com/trusty/nodejs](http://packages.ubuntu.com/trusty/nodejs) with [http://packages.ubuntu.com/xenial/nodejs](http://packages.ubuntu.com/xenial/nodejs) . And stop abusing "legacy" to mean "old", while you're about it.

* "everything runs as root by default" \-- Incorrect, and this is in the release notes. [http://askubuntu.com/questions/754942/](http://askubuntu.com/questions/754942/)

* "You can see on the left the Bash on Windows console full of errors after installing PyGTK" \-- Ironically, both of the images clearly show something that is not that; but is, rather, a console full of errors after attempting to install _udev_. Indeed, the image clearly shows the installer stating that "python-gtk2 is already the newest version". It should not be surprising that the Linux "plug and play manager" doesn't install on the Windows NT kernel. Indeed, it should not be too surprising also that an install procedure that requires 14.04's upstart in order to succeed is not going to work too well on a system where upstart won't work. [https://news.ycombinator.com/item?id=11416376](https://news.ycombinator.com/item?id=11416376)

* "I’m not sure how to copy and paste if not through the mouse" \-- This is just a matter of M. Giammarchi not being familiar with the Windows keyboard shortcuts for pulling up the system menu for a console window and selecting "Edit/Mark" and "Edit/Paste", which are just specific instances of the general shortcuts listed in [https://support.microsoft.com/en-gb/kb/126449](https://support.microsoft.com/en-gb/kb/126449) and which have been there for a long time. Then of course there are [http://withinrafael.com/new-experimental-console-features-in...](http://withinrafael.com/new-experimental-console-features-in-windows-threshold/) , [https://blogs.windows.com/buildingapps/2014/10/07/console-im...](https://blogs.windows.com/buildingapps/2014/10/07/console-improvements-in-the-windows-10-technical-preview/) , and [https://technet.microsoft.com/en-gb/library/mt427362.aspx](https://technet.microsoft.com/en-gb/library/mt427362.aspx) .

