Does this change anything for people using Bash on Ubuntu on Windows? It seems like they just added the ability to change distros and install through Windows Store (but otherwise no changes), right?
There are some decent improvements heading to WSL soon (as part of the Windows 10 Creators Update). I'm waiting until the ability to access network drives is added in (which should be part of the aforementioned update) before using WSL again.
The MSDN blog post [1] says that it will download distribution updates much faster and also support side-by-side distribution installs when installed from the store (ie, you could have both Ubuntu and Fedora installed side-by-side).
It changes how you manage it. Instead of "lxrun" command you use "ubuntu".
And directories where it stores the data are managed by Windows Store (so root file system lives in %localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs, distro image is in %ProgramFiles%\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_16.0.4.0_x64__79rhkp1fndgsc\install.tar.gz).
Note that this is the same WSL/Bash subsystem that has been available in Windows for a little while now, it's just an easier way to enable it without jumping through as many hoops.
Seems to me that the only thing here that's new is that you can actually find Ubuntu in the store.
If you're on the latest non-insider Windows 10, you can do the same steps (enable "windows subsystem for linux" in the os features) and then just open a command-line window and type "bash". That'll download ubuntu from the store and set it up as a subsystem.
An extra thing I like about using WSL, that I hadn't foreseen when I started trying it, is that because the Ubuntu environment is a bit separate from the Windows environment. It feels a bit like working in a VM but then fast. For instance, if you change .bashrc or apt install something, the host Windows environment does not change. This is lovely because it allows me to experiment. If I totally screw stuff up and make my Ubuntu unusable, I just wipe the entire linux subsystem installation and start from scratch. For Linux newbies like me this is very nice.
I guess Docker gives you even better freedom-to-fiddle on native Linux, but it's a good step in the same direction for us Windows coders.
I have an irrational urge to switch distros now. It's been a while since I've used anything but Ubuntu or RHEL. Anyone have any recommendations? is Arch still awesome?
You can use it today: switch the machine to Developer Mode and visit the Windows Features settings page to enable the Windows Subsystem for Linux and it will auto-install Ubuntu.
(It's getting added to the store to make it an easier choice between Ubuntu, OpenSUSE, and Fedora user spaces in the Fall Creators Update.)
Are there any really good terminal emulators for Windows though? I guess I could run an X server then run a normal terminal app.
All the ones I see people recommending for Windows typically suck. They're slow or "weird" - I guess because Windows doesn't expose a first-class way to implement your own terminal?
conemu for 'native' and terminator works with mobaxterm's x server. (mobaxterm also has a terminal, but i don't use it for local shells; its ssh is quite decent.)
Incidentally I was troubleshooting a new designer machine that uses our dockerised Linux app. On Windows. The problem was that git converted all newlines to Windows format, breaking... absolutely everything. For the first time I've seen bash refusing to even look at my scripts.
19 comments
[ 6.5 ms ] story [ 106 ms ] thread[1] https://blogs.msdn.microsoft.com/commandline/2017/07/10/ubun...
And directories where it stores the data are managed by Windows Store (so root file system lives in %localappdata%\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs, distro image is in %ProgramFiles%\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_16.0.4.0_x64__79rhkp1fndgsc\install.tar.gz).
If you're on the latest non-insider Windows 10, you can do the same steps (enable "windows subsystem for linux" in the os features) and then just open a command-line window and type "bash". That'll download ubuntu from the store and set it up as a subsystem.
An extra thing I like about using WSL, that I hadn't foreseen when I started trying it, is that because the Ubuntu environment is a bit separate from the Windows environment. It feels a bit like working in a VM but then fast. For instance, if you change .bashrc or apt install something, the host Windows environment does not change. This is lovely because it allows me to experiment. If I totally screw stuff up and make my Ubuntu unusable, I just wipe the entire linux subsystem installation and start from scratch. For Linux newbies like me this is very nice.
I guess Docker gives you even better freedom-to-fiddle on native Linux, but it's a good step in the same direction for us Windows coders.
I've switched from Macbook OS to Windows 10 and love it, but I need a *nix type environment!
(It's getting added to the store to make it an easier choice between Ubuntu, OpenSUSE, and Fedora user spaces in the Fall Creators Update.)
All the ones I see people recommending for Windows typically suck. They're slow or "weird" - I guess because Windows doesn't expose a first-class way to implement your own terminal?
https://github.com/mintty/wsltty
https://github.com/Maximus5/ConEmu
It's not a terminal in the sense you might be thinking of, but it's a useful tool in getting a decent terminal environment on Windows.
http://cmder.net/
Hyper also has a Windows port if you're into that kind of thing.
https://hyper.is/
https://youtu.be/PivpCKEiQOQ?t=169
In the long run their only goal has to be to get rid of competition.. ie: no ubuntu, no linux.
So in my mind anything they do regarding linux is bad news.