This post is more than 2 years old.
I've got a few notes to share about Ubuntu on Windows. This will be a bit random, but hopefully it is helpful. First off - why am I writing about this now? As of a few weeks ago, Ubuntu is now available in the Windows Store,
First and foremost, you want to read the blog post by Scott Hanselman: Ubuntu now in the Windows Store: Updates to Linux on Windows 10 and Important Tips. If you've already installed Bash, scroll down to: TODOS IF YOU HAVE WSL AND BASH FROM EARLIER BETAS. His tips worked just fine for me. Note that when you copy your home directory to the desktop, it may take a while. Be sure to clean any trash you may have beforehand. Even with me doing that it took about five minutes for everything to copy.
Ok, so here's what threw me a bit. First - how do you use the new Ubuntu app? You can either run it from the Start menu, or just type
unbuntu in a regular command prompt.
How do you use it with Hyper? Previously I had configured Hyper to use c:\windows\system32\bash.exe. But I had a heck of a time actually finding ubuntu.exe. You can find it in a special "WindowsStore" folder, but when I tried that path, Hyper would fail on startup. Again, Scott Hanselman helped me out. Configure Hyper.js like so:
shell: 'cmd.exe', shellArgs: ['/c ubuntu'],
To configure Visual Studio Code's integrated terminal, you can just use ubuntu.exe:
And at that point, you're done, except for everything you had installed of course. For me, this was mainly Node and Node-related items. I used NVM (this guide helped) to get Node installed.
That's basically it. I still have the "old Bash" around and I'm going to keep it there until I'm sure everything is running ok.
As an aside - I've found Bash on Windows to be excellent. My only real complaint is that heavy file operations, like npm installs or Git calls on large projects, seem to be slower when compared to OSX. This seems to be more of an issue for installing big CLIs versus installs I'll do for a Node project. It isn't enough to really bug me, but I've definitely noticed it. I raised this when speaking to an engineer at MS Build, so hopefully it's something that can be improved in the future, but it certainly isn't enough to stop me from using it.