The Windows Subsystem for Linux in the Microsoft Store is now generally available on Windows 10 and 11
Today the Windows Subsystem for Linux (WSL) in the Microsoft Store is dropping its “Preview” label and becomes generally available with our latest release! We are also making the Store version of WSL the default for new users who run
wsl --install and easily upgradeable by running
wsl --update for existing users. Using the Store version of WSL allows you to get updates to WSL much faster compared to when it was a Windows component.
In response to the WSL community’s requests, WSL in the Store will now also be available on Windows 10 in addition to Windows 11. So, Windows 10 users will also be able to enjoy all of the latest features for WSL including systemd and Linux GUI app support!
What’s new in the Store version of WSL?
There are 100s of bug fixes and improvements that you can read through on our release notes page to see all the improvements that we’ve put into the Store version of WSL. In this blog post I’ll highlight some of the significant changes that you might see as a user upgrading to the Store version for the first time.
- You can opt in for systemd support
- Windows 10 users can now use Linux GUI apps! This was previously only available to Windows 11 users
wsl --installnow includes:
- Direct installation from the Microsoft Store by default
--no-launchoption to not launch the distro after installing
--web-downloadoption which will download the distro through our GitHub releases page rather than through the Microsoft Store
wsl --mountnow includes:
--vhdoption to make mounting VHD files easier
--nameoption to make naming the mountpoint easier
wsl --exportnow include:
--vhdoption to import or export to a VHD directly
wsl --import-in-placeto take an existing .vhdx file and register it as a distro
wsl --versionto print your version information more easily
wsl --updatenow includes:
- Opening the Microsoft Store page by default
--web-downloadoption to allow updates from our GitHub release page
- Better error printing
- All of WSLg and the WSL kernel are packaged into the same WSL package, meaning no more extra MSI installs!
The Store version of WSL is now the default version of WSL
As part of this release, we are also backporting WSL functionality to Windows 10 and 11 to make the Store version of WSL the default experience. These changes are:
wsl.exe --installwill now automatically install the Store version of WSL, and will no longer enable the “Windows Subsystem for Linux” optional component, or install the WSL kernel or WSLg MSI packages as they are no longer needed (The Virtual machine platform optional component will still be enabled, and by default Ubuntu will still be installed).
- wsl.exe –install` also now includes:
--inboxInstalls WSL using the optional Windows component instead of using the Microsoft Store
--enable-wsl1Enables WSL 1 support during the install of the Microsoft Store version by also enabling the “Windows Subsystem for Linux” optional component
--no-distributionDo not install a distribution when installing WSL
--no-launchDo not automatically launch the distro after install
--web-downloadDownload the most recent version of WSL from the internet instead of the Microsoft Store.
wsl.exe --updatewill now check for and apply updates for the WSL MSIX package from the Microsoft Store, rather than updating the WSL kernel MSI
- When running WSL using the Windows optional component version, once a week we will show a message on start up indicating that you can upgrade to the Store version by running
How to get the latest generally available version
The easiest way to get all these improvements is to get the latest backport. Currently it is available to seekers only, and will be pushed automatically to devices in mid-December. To get this update please go to Windows Settings and click “Check for Updates”. If you see a message saying a new update is available please install it. You will need to be running Windows 10 version 21H1, 21H2, or 22H2, or on Windows 11 21H2 with all of the November updates applied. You will know you have this update when you check that KB5020030 is installed on Windows 10, or KB5019157 on Windows 11.
Once you have the right Windows version, if you’re a new user you can just run
wsl --install and you will be set up right away to use WSL. If you’re an existing user run
wsl --update to update to the latest Store version. You can always check if you’re on the Store version by running
wsl --version which will show you the version number, and will fail if you’re using the in-Windows version of WSL.
Alternatively you can also visit our releases page on GitHub to see the latest WSL builds and install them manually.
These are the current known issues for users that are in the Store version of WSL, but not in the inbox version:
- When running in session 0 session (Such as inside of a GitHub action, or when SSHing into the Windows machine) the Store version of WSL will not start
What this means for WSL 1 and the in-Windows version of WSL
Support for running WSL 1 distros still requires the “Windows Subsystem for Linux” optional component. This can be enabled during install by running
wsl --install --enable-wsl1, or manually at anytime. Additionally, the in-Windows version of WSL will still receive critical bug fixes, but the Store version of WSL is where new features and functionality will be added.
Understanding WSL names
Now with the Store version of WSL, there are a lot of names to keep track of! Here’s the clear explanation on them. There are two types of WSL distros: “WSL 1”, and “WSL 2” type distros. These matter for how your distro runs and behaves, as they have different architectures. WSL 2 distros have faster file system performance and use a real Linux kernel, but require virtualization. You can learn more about WSL 1 and WSL 2 distros here. There is also the “in-Windows” version of WSL as a Windows Optional component, and WSL in the Microsoft Store as the “Store version of WSL”. These matter for how WSL is serviced on your machine, and what latest updates and features you’ll get. This is just a change on how WSL is serviced, the user experience and product is the same. Learn more here.
With this update our goal is to simplify our versioning story. Since WSL 2 is the default distro type, and the Store version of WSL is the default install location, you can just say: WSL is an app in the Microsoft Store that lets you run actual Linux that integrates directly into Windows.
If you find technical issues please file them at the WSL GitHub repo, and for general questions the WSL team and I are on Twitter. Check out our WSL docs for tutorials, best practices and more info on how to use WSL. Our goal is to move as many people as we can to use the Store version of WSL, as it gives the best experience with the latest features. We look forwards to hearing your feedback, and thank you for supporting us. Happy coding!
That is very cool!
I remember a day when I was talking with some colleagues that one day Windows would be able to run Linux terminals.
Now we can install it easily using the Store.
So what does this mean for existing Win10 installs? Do I need to uninstall the old or will it be fixed during install of the new?
just run “wsl –update” if you already have wsl installed. but make sure you are on 22H2 and have the KB5020030 update. you also need to opt-in systemd usage by having “/etc/wsl.conf” include this:
Thank you. Does that opt-in need to be done before the update?
The feature (systemd support) is coming from the Windows Store version (previously only on Windows 11).
tl;dr, opt-in after you update
so which one should it be? Store wsl or Github wsl?
which one gets updated first?
Depends how quickly they iterate into the store considering GitHub is where they publish the code as well.
Train of thought would say GitHub but there’s nothing stopping them from building the package publishing to the Store and GitHub afterwards.
I’d say because support for installing from GitHub is now part of WSL itself, they should be fairly in sync.
Excellent timing for this blog post – I just installed WSL2 on my new Windows 11 laptop and I thought the process was different to last time around 😂👍 The one thing I did notice was kicking it off from Windows Store doesn’t seem to work as far as I can tell, it still needs the `wsl.exe –install` command in PowerShell?
What does this mean for those of us with IT policies that mean we can’t install things from the Store? The Store is entirely blocked on my work devices.
I need to test this again: https://github.com/microsoft/WSL/issues/4197#issuecomment-1267249665
But probably the problem still exists 🙁 Because of this we can’t use repositories from NTFS in WSL console.
Will Windows Subsystem for Android eventually be available for Windows 10 as well?
What if I have the Windows version of WSL2 and Windows Store is blocked? It seems as if I need to install the store version to be able to download from GitHub instead of Store? :-/
ok, the key here is to install https://www.catalog.update.microsoft.com/Search.aspx?q=KB5020030 … this is the thing that will be rolled out in mid-december? wslg is now working… I am running wsl from store, and can tell it to use github with –update –web-download … happy user 🙂
After upgrading my existing inbox WSL to the Store version on my Windows 10 install (using wsl –update). I see that the Windows feature “Windows Subsystem for Linux” is still enabled.
How I understand it this windows feature is the inbox version of WSL, so should I (and may I) disable this windows feature now that I’m using the store version?
If you use
wsl --versionand showing some version, then you are using the Microsoft Store version now.
I did upgrade to the Store version, my question was about the use (if any) of the WSL Windows feature after I’ve upgraded WSL to the store version.
I assumed that would work, based on what the post says a fresh install of the Store version does (“and will no longer enable the ‘Windows Subsystem for Linux’ optional component”), but I did it and then trying to run wsl complains with “This application requires the Windows Subsystem for Linux Optional Component. The system may need to be restarted so the changes can take effect.” I’m in Windows 10, for what it’s worth. So maybe the optional component is not needed only in Windows 11? I reinstalled the component and now I can run wsl again. My distro is still there.
Does your distro run as a WSL 1 or WSL 2 instance? Reason why I’m asking is that the Windows feature is still needed if running a WSL 1 instance:
quote from blog post:
Support for running WSL 1 distros still requires the “Windows Subsystem for Linux” optional component. This can be enabled during install by running wsl –install –enable-wsl1, or manually at any time.
But does disabling this windows feature (when using the store version), simply disable WSL 1 support, leaving WSL 2 support intact, or will it also “harm” my WSL 2 instances?
How about Win11 22H2?
I already install the Store version of WSL but there’s no “–enable-wsl1” option.