For years, the Windows Subsystem (WSL) for Linux has made life easier for developers, system administrators, and hobbyists with one foot in the Windows world and one foot in the Linux world. First released in 2016, WSL is a tool for using Linux applications, utilities, and Bash command-line tools right inside Windows and without the overhead of a virtual machine (VM) or setup.
Then, in 2019, Microsoft introduced an evolution of WSL: WSL 2. This new version of the architecture, which enables the Windows Subsystem for Linux to run ELF64 Linux binaries on Windows using a real Linux kernel, changes the way , these Linux binaries interact with Windows and your computer’s hardware while providing the same user experience as in WSL 1. WSL 2 offers much faster file system performance and full system call compatibility, so you can run more apps like Docker!
This new version of WSL 2 uses Hyper-V features to create a lightweight virtual machine with a minimal Linux kernel. Expect better compatibility with Linux software, including Docker support, and a dramatic increase in file system performance.
Over the years, the WSL has received many updates. A major update added support for running Linux GUI applications through WSL. It brought features such as GPU hardware acceleration and audio/microphone support. A recent update to WSL saw the introduction of support for Systemd after its creator, Lennart Poettering, joined Microsoft. Poettering, a 41-year-old developer based in Berlin, is best known for his work with Systemd, but other of his projects have also been widely adopted.
Systemd is the default system and service manager for most Linux distributions. But Systemd is also a very controversial init system. Criticism of Systemd is mostly about feature creep, because the project would not conform to the do-one-thing-and-do-it-well philosophy of Unix systems in general. Other aspects, such as the use of binary logs (as opposed to human-readable text logs), have also drawn criticism. In addition, criticism has also been fueled by the discovery of “serious” security flaws.
WSL is leaving Windows to find a home in the Microsoft Store as a standalone app
Through Craig Loewen, Program Manager for the Windows Developer Platform, Microsoft has made two major announcements regarding the Windows Subsystem for Linux. Not only is the app in the Microsoft Store the default version, but it also loses its preview tag as it is now generally available for Windows 10 and Windows 11.
The change means that Microsoft will stop offering WSL as an optional component of Windows itself. The company says it brought the app to the Microsoft Store for Windows 10 users following community requests, pointing out that this means Windows 10 can now run Linux GUI apps.
Although the Windows Subsystem for Linux is now a program rather than a component of Windows, you still need to enable the optional virtual machine platform to use it. Microsoft says that while the app is now the default version, it’s still possible to visit the release page on GitHub to see the latest versions of WSL and install them manually.
The news came in a blog post written by Windows Developer Platform Program Manager Craig Loewen.
Today, the Microsoft Store’s Windows Subsystem for Linux (WSL) drops its “Prerelease” tag and becomes generally available with our latest release! We are also making the Store version of WSL the default version for new users to run wsl –install and easily scalable by running wsl –update for existing users. Using the Store version of WSL allows you to get WSL updates much faster than when it was a Windows component.
In response to requests from the WSL community, 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 the latest features of WSL, including the systemd app and Linux GUI support!
What’s new in the Store version of WSL?
There are hundreds of bug fixes and improvements, which you can read on our release notes page to see all the improvements we’ve made to the Store version of WSL. In this blog post, I’ll highlight some of the important changes you’ll see when a user upgrades to the Store version for the first time.
- You can sign up for system support
- Windows 10 users can now use Linux GUI apps! This was previously only available to Windows 11 users
- wsl –install now includes:
- A direct installation from the Microsoft Store by default
- the possibility — no launch to not start the distribution after installation
- the possibility –web download which will download the distribution via our GitHub release page instead of via the Microsoft Store
- wsl –mount now includes:
- the possibility — vhd to facilitate mounting of VHD files
- the possibility –name for easier naming of the mounting point
- wsl –import and wsl –export now includes:
- the possibility — vhd to import or export directly to a VHD
- Addition of wsl –import-in-place to take an existing .vhdx file and save it as a distribution
- Addition of wsl –version to more easily print your version information
- wsl –update now includes:
- opens the default Microsoft Store page
- the possibility — web download to allow updates from our GitHub release page
- Better false impression
- All WSLg and WSL core are bundled in the same WSL package, meaning no more extra MSI installations!
The Store version of WSL is now the standard version of WSL
As part of this release, we’re 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 optional “Windows Subsystem for Linux” component, nor will it install the WSL kernel or the WSLg MSI packages because they are no longer needed (the virtual machine, the optional component of platform will always be enabled and by default Ubuntu will always be installed).
- wsl.exe installation now also includes:
- — inbox installs WSL using the optional Windows component instead of using the Microsoft Store
- –enable-wsl1 enable support for WSL1 when installing the Microsoft Store version by also enabling the optional component “Windows Subsystem for Linux”
- — no distribution does not install distribution when installing WSL
- — no launch does not automatically start distribution after installation
- –web downloadDownloads the latest version of WSL from the Internet instead of the Microsoft Store.
- wsl.exe — update will now check for and apply updates to the WSL MSIX package from the Microsoft Store instead of updating the WSL MSI kernel
- When running WSL using the Windows optional component version, once a week we display a message at startup that you can upgrade to the Store version by running wsl –update.
How to get the latest generally available version
The easiest way to get all these upgrades is to get the latest backport. Currently, it is only available to researchers and will automatically roll out to devices in mid-December. To get this update, go to Windows settings and click “Check for updates”. If you see a notification that a new update is available, install it. You must be running Windows 10 version 21H1, 21H2 or 22H2 or Windows 11 21H2 with all November updates applied. You’ll know you have this update when you verify that KB5020030 is installed on Windows 10 or KB5019157 on Windows 11.
Once you have the correct version of Windows, you can simply run if you are a new user wsl –install and you will immediately be configured to use WSL. If you are an existing user, please run wsl –update to update to the latest version of the store. You can always check if you are on the Store version by running wsl –version which shows you the version number and fails if you are using the Windows version of WSL.
Have you used WSL before? The first or second version? What did you think of it?
If you used WSL 2, what Linux distribution did you try?
What do you think of Microsoft’s decision to offer this utility as a standalone app in the Microsoft Store instead of as part of Windows?
What do you think about Windows 10 now being able to run Linux GUI applications?