Ubuntu now available from the Windows Store!


Today, we’re excited to announce that Canonical’s Ubuntu Linux Distro is now available in the Windows Store and can be downloaded and installed on any Windows 10 Insider build >= #16215!

Note: Because Windows 10 Insider builds are essentially weekly snapshots of the next version of Windows 10 as it’s being built, this feature will eventually become available to anyone who runs Windows 10 Fall Creators Update or later.

I first mentioned that we were working to enable you to find and download Linux distro’s via the Windows Store via this blog post.

There are several benefits in replacing our existing installation mechanism with a Windows Store based installation mechanism:

  • Faster & more reliable downloads: The Windows Store employs a sophisticated block-based download mechanism that minimizes the size of apps being downloaded, resulting in faster and more reliable downloads
  • Install distros side-by-side: WSL has been enhanced to support the installation of multiple distro’s alongside one another
  • Run multiple distro’s simultaneously: Not only can you install distro’s side-by-side, but you can now run more than one distro simultaneously

In that same post, I also announced that we were also working with SUSE and Fedora to bring their Linux distro’s to the Windows Store. Both SUSE and Fedora are nearing completion and will arrive in the store over the next week or two.

We would like to extend our sincerest thanks to the great teams at Canonical, SUSE and Fedora for all their patience, hard work & support as we worked together to plan, build & publish their distro packages in the Windows Store.

Stay tuned here, and to my Twitter feed @richturn_ms for further news!

Quick FAQ

Answering several common questions arriving via several different channels:

Q1) What happens if I already have the current/legacy Ubuntu distro installed & then install Ubuntu (or any other distro) from the store?
A1) The Store distros will install alongside the current/legacy distro, and any other store distros. Each distro will also run alongside but isolated from one another.

Q2) Should I continue to run the current/legacy distro or move to the new Store distros
A2) You can continue to run the current/legacy distro, but we do encourage you to move to using the store distros as your primary distros, because the current/legacy distro will be deprecated at some point.

Q3) How do I launch the new Ubuntu distro?
A3) You can launch the new store based distros via the start menu tile created for each distro.

You can also launch distros via the command-line. In general, new store-delivered distros can be launched by typing the distros name (possibly with a version number suffix) at the command-line. So, to launch the new Ubuntu distro enter "ubuntu" at the Cmd/PowerShell command-line or via Start-Run, etc.

Q4) How do I uninstall my legacy distro?
A4) Once you're done backing up any important data/files/config from your legacy distro (e.g. by copying your files to /mnt/c/tmp/WSL-backup/ etc.), you can uninstall it using lxrun /uninstall from Cmd/PowerShell.

Updated Docs!

Be sure to head over to the official WSL install guide which is being updated by @virtualscooley to reflect these new changes!


Comments (73)

  1. Eric Blade says:

    Can you also install to a location other than your user directory?

    1. Distros from the store are extracted to a different location on your system drive. We'll be looking to allow you to install-to/move-to a non-system drive in a future release.

      1. Eric Blade says:

        That's great. I hope it will make the next major update, with the ability to put it on a different drive. At the *very* least, I need to be able to set aside a portion of a larger drive and mount it inside the distro .. i just plain need a ton of space for my linux command line, and I don't want to move my Windows user directory, off of my SSD. If store distros (and store apps!) could be moved to a different drive, already, then that would work fine. Or if I could junction mount into it. I just need a way to be able to get about 100 gigs of free space to the WSL installation, whatever way that might be. And I really hope it makes the next major. 🙂 because I am not willing to go to a non-supported release on my main developer machine that I need working all the time 🙂

        1. Aaron says:

          Why not just create a symbolic link from your user dir to the other drive?

          1. Generally because users want to move the potentially many GB of disk space used to store the distro & all the apps & tools installed upon it, off their C: drive.

        2. Yep - we're very keen to allow you to install/move your distro's to non-system drives too. Requires some more work to make this experience really solid though.

          Many "normal" store apps can be moved to non-system drives; WSL is a somewhat unusual case though & we have to do some more work for make the store app infrastructure handle our unusual behavior.

          1. Erkin Alp Güney says:

            Let WSL (bridging subsystem) install to system drive and user-installed distributions to any drive. This lessens necessary changes.

      2. mark says:

        This would be quite nice. I have nothing at all against /mnt/c but it may be nice to be able to link it into another directory path too upon user discretion/decision.

  2. Khurram says:

    How this will affect the existing "Bash on Ubuntu on Windows" ? Its home folder, installed tools / apps etc?

    Should we keep it? Uninstall it?

    1. As per the FAQ I appended to the bottom of the post, we encourage you to move to the new distro's. Store distro's are installed independently, alongside one another (and alongside legacy distro instance). Once you're done with your legacy distro, you're free to uninstall & reclaim disk space.

      1. Klaus Agnoletti says:

        Hi Rich

        How do I move my homedir and settings (especially) from the legacy ubuntu to the Windows store one? Actually, I just want to move my .ssh. And also I would like to not chroot into the Ubuntu homedir, so I installed mintty with legacy Ubuntu. Can I still do that or something similar?

        Thanks. I've literally bought my first Windows PC just to run WSL. I've been a Linux user for 20 years but never really saw what to do with Windows. Before now that is.

        /klaus

        1. I suggest you create a tarball of your home folder contents that you want to keep. Copy the tarball to somewhere on your Windows filesystem (e.g. /mnt/c/temp/) and then copy it into your new distro and untar.

          Welcome to Windows ... the party's just getting started 😀

  3. David Burela [MSFT] says:

    When I messed up my distro (quite frequently) and want to reset it. Currently I just do `lxrun /uninstall /full /y ; lxrun /install`
    what will be the easy way to reinstall it via the store. Open the store, click uninstall, click install again?

    1. Open the store app. Search for your favorite distro, hit install.

      If you want to just nuke & reset an installed "store distro", just run, for example, `Ubuntu /clean` (see `Ubuntu /?` for more).

  4. Gavin Groom says:

    Windows just keeps getting better and better. Seriously, I look forward to using it every day!

    1. Glad you like it 🙂

  5. Erkin Alp Güney says:

    It should have been placed in Operating Systems subsection.

  6. Dave says:

    Have the file change event issues been resolved? As a web developer the largest, most fundamental barrier I have to developing on windows is that all my Node toolchain depends on automatically detecting changes in files (to recompile etc). This previously didn't work when I tried it in the developer programme

  7. Erkin Alp Güney says:

    Will we get free RHEL? If so, this would really be "get one OS, get other for free".

  8. Shafiq says:

    Hey Rich, thanks for posting this.

    A couple of things.
    Firstly, I don't mean to be a pedant, but it would be great if you double-check your usage of apostrophes, mainly you've written distro's when you actually meant to write distros.

    Now that that's out of the way, I'll get down to my actual question:
    Where will the distro from the store be installed to? We have enterprise antivirus software and knowing where it's being installed to would be helpful in multiple ways.
    Also, your previous comment about being able to install the distro to a specific directory would be very helpful in this situation.

    All in all, bringing Linux to Windows has been an incredible step forward, and I am personally very thankful to all those that have helped in making this a reality.

    Shafiq.

    1. Old habits die hard. I'll fix shortly.

      The APPX that contains the distro itself is installed to a hidden, protected folder on your system drive. The distro is then expanded for each user into a hidden, protected, per-user, app-private data folder. Thus, if your AV supports Windows 10 and Windows 10 apps, it should support WSL better now than in the past.

      Many thanks - we all appreciate the wonderful support of our community 🙂

      1. Since you've not yet to comply after wastefully acknowledging the error at length, I more than second the motion in the following manner: As a cnsequence of abuse, "distros" should be fully written as 'distributions'. I personally would hate to see more perm's infiltrate Microsoft communities such as 'stribs, dissyz, or (automotive-heavenLords forbid us) 'dizzies' also become frequent fixtures.

  9. JonT says:

    (N00b here) It is not clear to me. Will Gnome or another graphic interface be available in this environment ?

  10. Is this available only on 64bit installations, like the initial WSL?

    1. Yes. WSL depends on some x64 instructions at this time.

  11. Keith Miller says:

    Thanks so much, Bash for Windows has been great so far. I'm using it straight from my Jetbrains IDEs.

    Two questions: any word on this issue getting fixed?

    https://github.com/Microsoft/BashOnWindows/issues/111

    And I've tried setting this up as a Visual Studio External Tool, but 'C:\Windows\System32\bash.exe' has the following error: "The command is not a valid executable." Any ideas?

    Thanks again!

    1. It's on the backlog for consideration for our next release. We'll update status if it makes the cut.

      Re. VS: When running a 32-bit app (VS) that needs to invoke a 64-bit process (bash.exe), you'll need to refer to it via the sysnative redirection folder: e.g.: `C:\Windows\sysnative\bash.exe`

      http://www.samlogic.net/articles/sysnative-folder-64-bit-windows.htm

      1. Keith Miller says:

        Thanks!

  12. swarfega says:

    I know that in past videos and blogs, the developers have stated that they are concentrating on getting the bash command line and apps working before considering GUI environments and software. Will this Store based addition solve that in a way that perhaps WSL cant.

    1. Nope - we've still got our hands full supporting all the command-line scenarios. GUI support is a LOOONG way down our priority list.

      1. Erkin Alp Güney says:

        X11 support is not problem as there are X clients for Windows. However, same thing cannot be done for Wayland.

  13. jvert says:

    How do I submit my own Linux distro to the store? I could not find any documentation on that.

    1. You'll need to partner with us to do so. It's not a massive task, but it's also non-trivial. Email richturn at you know where .com to discuss.

  14. sba says:

    What about people running WSL on RS2 (Creators Update)? They can't install the Store version of the distro. My understanding is that this means the non-Store distros cannot be deprecated... while there are still any copies of RS2 running...

    Can you please clarify this?

    1. WSL is a beta feature. I'll remain as-is for Creators Update users for quite a while, but will be deprecated more quickly for Insiders & Fall Creators Update (FCU) users.

      1. sba says:

        Do you mean that "what we have today, that isn't installed from the store, and runs both on RS2 and RS3" will disappear, and be replaced by "something installed from the store, that will run only on RS3"? What will happen to existing installs on RS2? Nothing other than 1) they won't be supported (it's a beta anyway) 2) it will not be possible to update anymore?

        Please clarify.

  15. mark says:

    Thanks for the update Rich,

    The *nix subsystem, as I call it, has made win10 for me more usable
    than before (I am primarily a Linux user). Essentially all my code
    works fine under Linux and Windows for the most part; there are a
    few oddities here and there, e. g. lspci does not "behave" in the
    same way. But no worries, I am sure that core functionality will
    eventually work.

    A while ago, I think you also wrote that other distributions may
    also work; e. g. that the subsystem is not specific to ubuntu
    or anything else. I think you mentioned Fedora and OpenSuse.

    I wonder if other, smaller distributions could also work. In theory
    they should be very, very similar. Most of the time the only
    difference is the package-manager - the rest, well, it stays the
    same. Coreutils be coreutils, grep, sed, awk - all be the same
    between different linux distributions.

    I guess it will take a while before e. g. Fedora and OpenSuse
    are available, and I think that with limited resources, you guys
    do not want to spend too much time into smaller distributions,
    which I can understand. But do you think that the general system
    could allow for people to also use different distribution variants
    eventually? I am thinking of Slackware, GoboLinux or NixOS here
    mostly. The awkward thing is that ... if these actually work on
    Windows (the *nix subsystem), then people would not even have to
    dual-boot really. Almost everything could work just fine for
    them; xming works quite well. I got gvim, geany, gedit to work
    so far... still working on kde konsole, the input freezes but
    I guess this is some other problem, dbus-related, so not
    related to win10 at all.

    PS: By the way great idea for the FAQ! Helps to keep information
    updated even lateron. 🙂

    1. Hey Mark. Thanks for your kind words 🙂

      WSL's kernel syscalls don't know or care what binary is being run, much less which distro! The infrastructure knows what a package is, but doesn't know or care which distro they contain. Essentially this means that WSL should be able to run any user-mode distro package. To get said packages into the store, vendors will have to work with us in partnership (there is some paperwork etc. involved)

      Fedora, openSUSE and SLES are VERY close to availability in the store.

      Note that X/GUI apps are not supported. We don't do anything to prevent them running; we're just not spending time & effort making them run well. If they work for you, great! 🙂 If not, please file issues, but don't expect rapid fixes 😉

  16. elGordo says:

    When you say "the current/legacy distro will be deprecated at some point", you are referring to the current bash on Windows stuff, correct? I think you should be very clear as to what is going to become deprecated. Thanks!

    1. Yes, the current Ubuntu distro that you install when you first run Bash.exe or via `lxrun /install` in Windows 10 Anniversary or Creators Update. We'll be much more specific in our docs: https://msdn.microsoft.com/commandline/wsl

  17. Jeet Ray says:

    Hello!
    How might I call the Ubuntu executable through the command line, so I may use it on a program such as "Cmder" or "ConEmu", such as "%windir%\system32\bash.exe ~ -c zsh -new_console:p" ?
    Thank you!

      1. Jeet Ray says:

        Ah! Right; thank you!

  18. T says:

    Hi Rich, Still loving WSL on AU, looking forward to CU reaching me.

    You mention in Q3 that different distros will be launched by typing their name at the prompt or via the Run command. Does this follow to launching from a directory in Windows Explorer? That is, currently bash can be opened at a directory already open in Explorer by typing "bash" in the address bar, this is a feature I use quite a bit as I like to mix how I navigate to directories depending on how I am already working at a given point in time, to reduce the context switch I guess - will this still work by typing "ubuntu" or "fedora" instead?

    Thanks. And thanks for keeping us updated and providing great community information and contact on this project, in this regard I find it one of Microsoft's best!

    1. Yes: https://1drv.ms/i/s!Arh0dsS9lbmuloYZnfdtPuo_k29iqA 🙂

      Thanks for your kind words. Glad all the hard work is making a difference for our community & users 🙂

  19. Samurai Ken says:

    Unfortunately, this doesn't install cleanly for me. I get the following error : https://www.screencast.com/t/L2PKtDK2YfI2 .

    "Installing, this may take a few minutes...
    Installation Failed!
    Error: 0x8007007e
    Press any key to continue..."

    1. Do you have Insider build > 16215 installed?
      Have you got the WSL feature enabled?

      It's likely you're missing one of the above. We're working with our distro' partners to add additional error checking to their distro packages.

  20. Cyber Pandit says:

    is it only for window 10 only ?

    1. Yes, Windows 10 Insider builds > 16215 are required.

  21. Ken Benson says:

    I can't get the Ubuntu. It keeps saying I don't have x64 which is a load of ****. My system screen has no problem informing me I have x64 and 12 GB of Ram on an i7-6500 (laptop) CPU. I'll try again in a week, maybe it'll work by then.

    1. Could you please run the following two commands from Cmd/PowerShell and paste the results into a reply comment?

      wmic OS get OSArchitecture
      wmic cpu get caption

      Thanks.

  22. Subrata says:

    Unable to open graphical application like gedit, mathematica, matlab , even through ssh

    1. We don't support X/GUI apps in WSL, but you MAY get lucky with some apps. You'll need to run an XServer in Windows. There are examples of how to do this: http://tinyurl.com/yaxgszf8.

  23. Anton says:

    Installing, this may take a few minutes...
    Installation Failed!
    Error: 0x8007007e
    Press any key to continue...

    1. Please make sure you're running the appropriate Windows Insider build, and that you've enabled the WSL optional component. We're adding additional error checking to the launcher to catch these situations and provide more helpful error messages at runtime.

  24. Ace Pace says:

    Could you provide a version portable way to run the ubuntu shell as a standalone program?
    With the legacy LFW, we could do
    %windir%\system32\bash.exe

    But now that'd require something of the sort of either directly executing
    C:\Program Files\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_1604.2017.711.0_x64__79rhkp1fndgsc\ubuntu.exe
    Which doesn't work or running as a wrapper with cmd.

    Other than this, awesome as always, been using it instead of a VM since the first beta.

    1. For a number of reasons, Store delivered apps cannot be invoked by directly executing their executables.

      If you want to execute a distro via the command-line, you can do so via the per-distro "execution-alias". For Ubuntu, this is "Ubuntu". For openSUSE, it's "openSUSE-42", etc.

      Alternatively, you can launch your "default distro" via "bash.exe" or "wsl.exe", and you can enumerate and configure your default distro using "wslconfig".

      I'll be blogging more about this very shortly.

  25. AcePace says:

    Another "silly" question. The legacy LFW shell had an icon for the console, under %userprofile\AppData\Local\lxss. Could we get a distro specific icon for the new shells?

    1. Yes, each distro will have its own start-menu tile icons and there's a fix bubbling up through our build system to make Console display the appropriate distro icon. Should hit Insider builds in the next couple of weeks.

  26. Can we expect Kali distro?

    1. If you'd like this, please ask the Kali maintainers to reach out to me and we'll get discussions started! 🙂

  27. Thomas Wolff says:

    How is Ubuntu invoked, i.e., on system level, not using the Start Menu icon?

    1. Whether you invoke a distro by clicking the tile or executing the command-line "execution alias" (e.g. "Ubuntu"), the distro's launcher app is executed which takes care of launching a new instance or attaching to an existing instance is already open.

  28. Nitzan Carmi says:

    Thanks! it looks very promising!
    I just started using the app, but couldn't find an option to copy & paste lines from outside the shell into the shell (like URLs, for example)?
    otherwise, it makes it pretty hard to work with git...

    1. "Add copy & paste via the keyboard" didn't make the schedule for Fall Creators Update, but it's on our roadmap. In the meantime, you can paste text into the Bash Console by right clicking your mouse/trackpad.

  29. Erkin Alp Güney says:

    Do you plan unified service management (managing systemd services on an svchost instance)? This will make service management considerably easier on WSL-enabled computers.

    1. fpqc says:

      Currently systemd does not start on an LX Instance startup. WSL uses a custom and minimalistic init binary that sets up communications to the Windows Console through the LxBus (see blogpost). In the future, as more and more necessary kernel surface is added, that init daemon may be rewritten as a systemd service specifically for communicating and interoperability with Windows through the LxBus (see the video on the blogpost about interoperability and the bus). At that point, this might be a good request to make, but we're not there yet on systemd, so right now you'll have to roll your own initscripts for the daemons you want to run.

  30. Ian McCausland says:

    Hey, I was wondering if you could tell me how to replace bash.exe with ubuntu.exe when running the integrated shell in VSCode. I can't seem to get it to work.

    1. Funny you should ask ... In this tweet, I showed how to setup VS Code to run Suse. Same thing for Ubuntu: https://twitter.com/richturn_ms/status/888568715431731200

Skip to main content