{"id":5566,"date":"2020-05-19T09:08:10","date_gmt":"2020-05-19T16:08:10","guid":{"rendered":"https:\/\/devblogs.microsoft.com\/commandline\/?p=5566"},"modified":"2020-05-19T10:13:53","modified_gmt":"2020-05-19T17:13:53","slug":"the-windows-subsystem-for-linux-build-2020-summary","status":"publish","type":"post","link":"https:\/\/devblogs.microsoft.com\/commandline\/the-windows-subsystem-for-linux-build-2020-summary\/","title":{"rendered":"The Windows Subsystem for Linux BUILD 2020 Summary"},"content":{"rendered":"<p>This year at an all virtual BUILD conference we had many exciting announcements for the Windows Subsystem for Linux (WSL)! This blog post gives you a summary of all the WSL news, including what\u2019s available now and what you can expect in the future.<\/p>\n<h2>WSL\u2019s BUILD news at a glance<\/h2>\n<ul>\n<li>Available this month \n<ul>\n<li><a href=\"#wsl2-availibility\">Support for WSL 2 distros is coming this month in the Windows 10 May 2020 Update<\/a><\/li>\n<li><a href=\"#docker-desktop\">Docker Desktop released a new version using WSL 2 as their backend<\/a><\/li>\n<\/ul>\n<\/li>\n<li>Current roadmap: What\u2019s coming to WSL \n<ul>\n<li><a href=\"#wsl-install\">You&#8217;ll soon be able to install WSL with a single command. Just open a Windows Terminal and enter <code>wsl.exe --install<\/code><\/a><\/li>\n<li><a href=\"#wsl2-default\">WSL 2 will be the new default when installing for the first time<\/a><\/li>\n<li><a href=\"#wsl-gpu\">WSL will support GPU Compute workflows<\/a><\/li>\n<li><a href=\"#wsl-gui\">Adding Linux GUI app support to WSL is on our roadmap<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Please read on below for the details for each item.<\/p>\n<h2>Available this month<\/h2>\n<h3 class=\"x-hidden-focus\" id=\"wsl2-availibility\">\n  Support for Windows Subsystem for Linux 2 (WSL 2) distros is coming this month in the Windows 10 May 2020 Update\n<\/h3>\n<p>4 years ago, at Build 2016, Microsoft surprised the world by announcing Windows Subsystem for Linux \u2013 WSL (also known at the time as \u201cBash on Ubuntu on Windows\u201d). WSL enables Windows users to run native, unmodified Linux command-line tools and apps directly in Windows, alongside all their favorite Windows apps and tools. WSL usage has grown enormously from initially just a few thousand people downloading the first preview build to more than 3.5 million monthly active devices today!<\/p>\n<p>However, we wanted WSL to do more &#8211; to run all Linux apps and tools, and to run apps and tools faster. At Build 2019, the WSL team unveiled the first preview of WSL 2, which utilizes new capabilities in Windows\u2019 Hypervisor Platform to run distros and tools in containers, <a href=\"https:\/\/devblogs.microsoft.com\/commandline\/shipping-a-linux-kernel-with-windows\/\">atop a real Linux kernel image that is built and delivered by Microsoft<\/a>, hosted in a lightweight VM, which boots from cold in less than 2s! This means that WSL 2 delivers full system call compatibility with a real Linux kernel and is 3-6x faster compared to earlier versions of WSL. You can easily set the version of any WSL distro to be using WSL 2 with the command: <code>wsl.exe --set-version &lt;distroName&gt; 2<\/code>.<\/p>\n<p>The response from the community has been huge and, frankly, positively overwhelming \u2013 sincerest thanks to everyone who ran WSL 2, filed issues, and asked for features, you\u2019ve helped us make WSL2 even better than we hoped it could be!<\/p>\n<h3 class=\"x-hidden-focus\" id=\"docker-desktop\">\n  Docker Desktop released a new version using WSL 2 as their backend\n<\/h3>\n<p>WSL 2\u2019s new capabilities have not gone unnoticed by our partners either!<\/p>\n<p>Shortly after WSL 2 was announced, Docker Inc. <a href=\"https:\/\/www.docker.com\/blog\/docker-hearts-wsl-2\/\">decided to host Docker Desktop for Windows atop WSL 2<\/a>! Following a successful preview period, Docker has announced that Docker Desktop for Windows will now default to run atop WSL 2 when installed on the Windows 10 May 2020 update, which will bring <a href=\"https:\/\/www.docker.com\/blog\/docker-desktop-for-windows-home-is-here\/\">Docker Desktop to Windows Home users as well<\/a>.<\/p>\n<p>This change to host Docker on WSL 2 will result in containers booting up faster, while consuming fewer resources on the host machine due to WSL 2\u2019s more lightweight footprint vs. full VMs.<\/p>\n<p>You can learn more about the <a href=\"https:\/\/docs.docker.com\/docker-for-windows\/wsl-tech-preview\/\">Docker Desktop WSL 2 backend here<\/a>.<\/p>\n<h2>Current roadmap: What\u2019s coming to WSL<\/h2>\n<h3 class=\"x-hidden-focus\" id=\"wsl-install\">\n  You&#8217;ll soon be able to install WSL with a single command. Just open a Windows Terminal and enter `wsl.exe &#8211;install`\n<\/h3>\n<p>One common complaint about WSL is that it\u2019s not easy to find and enable. We agree, which is why we\u2019re working on some improvements to the wsl.exe command-line tool to help you install WSL. Soon you will be able to simply install WSL by entering: <code>wsl.exe --install<\/code> in your command-line!<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLInstall.png\" alt=\"Image WSLInstall\" width=\"890\" height=\"484\" class=\"aligncenter size-full wp-image-5649\" srcset=\"https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLInstall.png 890w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLInstall-300x163.png 300w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLInstall-768x418.png 768w\" sizes=\"(max-width: 890px) 100vw, 890px\" \/><\/p>\n<p>This command will be added to every Windows machine so that all you need to do is open a Terminal window elevated with administrator privileges and run <code>wsl.exe --install<\/code>. From there the WSL optional components will be enabled, and your specified distro will be downloaded and installed for you automatically upon restart.<\/p>\n<p>You can expect to see initial releases of this feature in the next few months in the Windows Insiders Fast Ring.<\/p>\n<h3 class=\"x-hidden-focus\" id=\"wsl2-default\">\n  WSL 2 will be the new default when installing for the first time\n<\/h3>\n<p>We\u2019re also introducing the change to make WSL 2 the new default distribution type when installing WSL for the first time. WSL 2 brings significant improvements and we found that the majority of our users on Insider branches are using WSL 2 distros. When developing <code>wsl.exe --install<\/code> it made sense for it to default to what people are using: WSL 2, and we\u2019ve included this as well for any new installations of WSL when enabling the \u2018Windows Subsystem for Linux\u2019 optional component. You\u2019ll see these changes in the Insiders Fast ring in the next few months alongside the <code>wsl.exe --install<\/code> improvement.<\/p>\n<h3 class=\"x-hidden-focus\" id=\"wsl-gpu\">\n  WSL will support GPU Compute workflows\n<\/h3>\n<p>Adding <a href=\"https:\/\/github.com\/microsoft\/WSL\/issues\/327\">CUDA<\/a> and\/or <a href=\"https:\/\/github.com\/microsoft\/WSL\/issues\/829\">GPU Compute support<\/a> to WSL has been our #1 most requested feature since our first release! Over the last 3+ years, the WSL, Virtualization, DirectX, Windows Driver teams, and our silicon partners have been working hard on a complex engineering feat to deliver this capability.<\/p>\n<p>This is why we\u2019re thrilled to announce that we will start previewing GPU compute support for WSL in Windows 10 Insider builds within the next few months!<\/p>\n<p>Initially, the GPU compute capability will support two scenarios:<\/p>\n<ul>\n<li><a href=\"https:\/\/developer.nvidia.com\/cuda\/wsl\">NVIDIA CUDA<\/a>\n<ul>\n<li>Supports existing Linux tools &amp; workflows used by professionals <\/li>\n<\/ul>\n<\/li>\n<li><a href=\"https:\/\/aka.ms\/directml\">DirectML<\/a> \n<ul>\n<li>Initially targeting beginners and students, leveraging DirectX 12 capable GPUs from several vendors <\/li>\n<li>The team will be releasing a preview package of TensorFlow with a DirectML backend enabling hardware agnostic acceleration of AI &amp; ML workloads across the breadth of Windows hardware &#8211; DirectML will also support native Windows too, including TensorFlow on Windows!<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Once this preview is released, you will simply need to ensure that you have the latest Windows Insider Fast build, WSL 2 installed, install the correct driver for your GPU from the hardware vendor, and then you\u2019ll be ready to start developing, training and testing your machine learning and AI models inside of WSL!<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLMLGif.gif\" alt=\"WSL ML gif\" width=\"1731\" height=\"950\" class=\"aligncenter size-full wp-image-5650\" \/><\/p>\n<p>This change will be released to the Windows Insiders Fast ring in the next few months. For all the details of what this change means and how it was made possible, please read <a href=\"https:\/\/devblogs.microsoft.com\/directx\/directx-heart-linux\/\">the DirectX Developer blog post<\/a>.<\/p>\n<h3 class=\"x-hidden-focus\" id=\"wsl-gui\">\n  Adding Linux GUI app support to WSL is on our roadmap\n<\/h3>\n<p>One of our other most prolific requests is to support not just command-line apps, but Linux GUI apps as well. For example, some users want to run their preferred Linux GUI text editor or IDE in a Linux environment and work on their code stored locally within their distro\u2019s filesystem, or simply develop Linux GUI apps on their Windows machine.<\/p>\n<p>Our goal is for you to be able to run Linux GUI apps on your desktop seamlessly alongside your Windows apps. This will enable you to use Linux apps to edit, build, and run your code, visualize data plots in Python, or even use applications that are optimized for a Linux environment.<\/p>\n<p>At BUILD we demonstrated an early version of this work, running a few GUI sample apps directly from WSL such as <code>Eye of Gnome<\/code>, <code>gedit<\/code> and the <code>mpv<\/code> media player. These apps connected to a wayland server running inside of WSL, which communicated with a RDP client on the Windows host. You can see a screenshot of this in action below where we\u2019re running the GNOME file manager in WSL and Outlook side by side.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName.png\" alt=\"Image WSLGUIApps\" width=\"1920\" height=\"1080\" class=\"aligncenter size-full wp-image-5648\" srcset=\"https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName.png 1920w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName-300x169.png 300w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName-1024x576.png 1024w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName-768x432.png 768w, https:\/\/devblogs.microsoft.com\/commandline\/wp-content\/uploads\/sites\/33\/2020\/05\/WSLGUIAppsNoName-1536x864.png 1536w\" sizes=\"(max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p>These changes are on the WSL\u2019s team roadmap and you can expect to hear more about this work by holiday 2020.<\/p>\n<h2>Stay Involved<\/h2>\n<p>To summarize, once you update to the Windows 10 May 2020 Update you\u2019ll have full support for WSL 2 distros! If you join the Windows Insiders Fast Ring you\u2019ll be ready to start receiving the latest WSL features including the new install experience and GPU compute within the next few months.<\/p>\n<p>There\u2019s lots of exciting news and features coming to WSL, so please stay tuned to this blog for the details of any big announcements. You can follow me on Twitter <a href=\"https:\/\/twitter.com\/craigaloewen\">@craigaloewen<\/a> or <a href=\"https:\/\/twitter.com\/i\/lists\/1131397802204864512\/members\">members of the WSL team<\/a> that are on Twitter for any news there as well. Please check out <a href=\"https:\/\/blogs.windows.com\/windowsdeveloper\/?p=55728\">Kevin Gallo\u2019s blog post<\/a> for all of the Windows developer focused news from BUILD. Thank you for supporting WSL!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This year at an all virtual BUILD conference we had many exciting announcements for the Windows Subsystem for Linux (WSL)! This blog post gives you a summary of all the WSL news, including what\u2019s available now and what you can expect in the future. WSL\u2019s BUILD news at a glance Available this month Support for [&hellip;]<\/p>\n","protected":false},"author":2191,"featured_media":5648,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1,9],"tags":[],"class_list":["post-5566","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-commandline","category-bash-on-ubuntu-on-windows"],"acf":[],"blog_post_summary":"<p>This year at an all virtual BUILD conference we had many exciting announcements for the Windows Subsystem for Linux (WSL)! This blog post gives you a summary of all the WSL news, including what\u2019s available now and what you can expect in the future. WSL\u2019s BUILD news at a glance Available this month Support for [&hellip;]<\/p>\n","_links":{"self":[{"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/posts\/5566","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/users\/2191"}],"replies":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/comments?post=5566"}],"version-history":[{"count":0,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/posts\/5566\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/media\/5648"}],"wp:attachment":[{"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/media?parent=5566"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/categories?post=5566"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/devblogs.microsoft.com\/commandline\/wp-json\/wp\/v2\/tags?post=5566"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}