<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Daniel Cosenza&apos;s Blog — WSL</title><description>A real Linux kernel and userland running alongside Windows — architecture, integration, and daily use.</description><link>https://danielcosenza.com/</link><language>en-us</language><lastBuildDate>Fri, 17 Jul 2026 00:00:00 GMT</lastBuildDate><atom:link href="https://danielcosenza.com/categories/wsl/rss.xml" rel="self" type="application/rss+xml"/><item><title>WSL Auto-Proxy: Importing Windows Proxy State Without Leaking Credentials</title><link>https://danielcosenza.com/posts/wsl-auto-proxy/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-auto-proxy/</guid><description>What WSL&apos;s automatic proxy discovery can transfer from Windows to Linux, where individual tools still diverge, and how to debug enterprise proxies safely.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>proxy</category><category>networking</category><category>enterprise</category></item><item><title>Consistent WSL Backups: Quiescing Databases Before Exporting a Distribution</title><link>https://danielcosenza.com/posts/wsl-backup-consistency/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-backup-consistency/</guid><description>Why a successful tar export can still contain application-inconsistent data, and how to build a WSL backup you can actually restore from.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>backup</category><category>databases</category><category>consistency</category></item><item><title>WSL 2 Boot Lifecycle: From wsl.exe to the Utility VM and Distribution init</title><link>https://danielcosenza.com/posts/wsl-boot-lifecycle/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-boot-lifecycle/</guid><description>What starts when the first Linux process launches in WSL 2, which configuration is read at each stage, and why a distro can fail before the shell even appears.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>boot</category><category>utility-vm</category><category>init</category></item><item><title>Sharing Data Between WSL Distributions Without Copying It Through Windows</title><link>https://danielcosenza.com/posts/wsl-cross-distro-mounts/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-cross-distro-mounts/</guid><description>Using explicit mounts and clear ownership boundaries instead of pointing multiple WSL distributions at the same fragile private state.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>distribution</category><category>mount</category><category>sharing</category></item><item><title>Running a Custom WSL 2 Kernel Without Losing the Supported Rollback Path</title><link>https://danielcosenza.com/posts/wsl-custom-kernel/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-custom-kernel/</guid><description>Building or selecting a compatible WSL 2 kernel, configuring .wslconfig correctly, and keeping a working path back to Microsoft&apos;s default kernel.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>kernel</category><category>wslconfig</category><category>modules</category></item><item><title>Microsoft Defender and WSL: Visibility Across Windows and Linux Boundaries</title><link>https://danielcosenza.com/posts/wsl-defender-integration/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-defender-integration/</guid><description>What enterprise endpoint protection can observe and enforce inside WSL, and why Linux package hygiene and least privilege still matter regardless.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>defender</category><category>security</category><category>enterprise</category></item><item><title>WSL, Dev Drive, and Filesystem Placement: Choosing Performance Without Losing Interop</title><link>https://danielcosenza.com/posts/wsl-dev-drive-performance/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-dev-drive-performance/</guid><description>Why the WSL ext4 disk, NTFS DrvFs, and ReFS Dev Drive serve genuinely different build and Windows-tool workflows, not interchangeable options.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>dev-drive</category><category>performance</category><category>filesystem</category></item><item><title>WSL DNS Tunneling: Resolving Through Windows Without a Fragile Virtual-Network Packet</title><link>https://danielcosenza.com/posts/wsl-dns-tunneling/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-dns-tunneling/</guid><description>Why DNS resolution breaks behind VPNs in classic WSL networking, how tunneling changes the path, and which config assumptions stop applying.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>dns</category><category>vpn</category><category>tunneling</category></item><item><title>DrvFs Metadata and Case Sensitivity: When Windows Files Behave Like Linux Files</title><link>https://danielcosenza.com/posts/wsl-drvfs-metadata-case/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-drvfs-metadata-case/</guid><description>How DrvFs mount metadata and per-directory case sensitivity interact with Windows ACLs, permissions, and tools on /mnt/c.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>drvfs</category><category>case-sensitivity</category><category>metadata</category></item><item><title>Managing WSL at Enterprise Scale with Intune and WSL Policy</title><link>https://danielcosenza.com/posts/wsl-enterprise-intune/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-enterprise-intune/</guid><description>Controlling WSL versions, mounts, networking, and nested virtualization through Intune and the WSL ADMX template without blocking real developer work.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>intune</category><category>policy</category><category>enterprise</category></item><item><title>.wslconfig vs. wsl.conf: Two Configuration Scopes That Should Not Be Mixed</title><link>https://danielcosenza.com/posts/wsl-global-vs-distro-config/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-global-vs-distro-config/</guid><description>A field guide to global WSL 2 VM settings versus per-distribution boot, automount, networking, and interop configuration.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>wslconfig</category><category>configuration</category><category>wsl-conf</category></item><item><title>WSL 2 and the Hyper-V Firewall: Where Mirrored Networking Is Actually Filtered</title><link>https://danielcosenza.com/posts/wsl-hyperv-firewall/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-hyperv-firewall/</guid><description>How Windows firewall policy reaches WSL traffic under mirrored networking, and why Linux iptables rules alone cannot describe the real host exposure.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>firewall</category><category>mirrored-networking</category><category>hyper-v</category></item><item><title>WSL Import-in-Place: Registering an Existing ext4.vhdx Without Repacking It</title><link>https://danielcosenza.com/posts/wsl-import-in-place/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-import-in-place/</guid><description>When wsl --import-in-place is the right migration tool, how it differs from a tar import, and how to avoid registering your only copy of the disk.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>import</category><category>vhdx</category><category>migration</category></item><item><title>Mounting Physical Linux Disks in WSL 2 Without Damaging Them</title><link>https://danielcosenza.com/posts/wsl-mount-physical-disk/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-mount-physical-disk/</guid><description>A safe procedure for wsl --mount covering Windows disk ownership, filesystem support, read-only inspection, and clean detachment.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>mount</category><category>disk</category><category>filesystem</category></item><item><title>Recovering a Broken WSL Distribution with Safe Mode and the Debug Shell</title><link>https://danielcosenza.com/posts/wsl-safe-mode-debug-shell/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-safe-mode-debug-shell/</guid><description>Separating VM startup, distribution boot, systemd, and fstab failures so you can repair a broken WSL distro without deleting its data.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>safe-mode</category><category>debug-shell</category><category>recovery</category></item><item><title>WSL&apos;s Security Boundary: Linux Convenience Is Not a Separate Trust Zone</title><link>https://danielcosenza.com/posts/wsl-security-boundary/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-security-boundary/</guid><description>How Windows interop, mounted drives, networking, and enterprise policy actually shape WSL&apos;s threat model, and why it isn&apos;t a sandbox for untrusted code.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>security</category><category>threat-model</category><category>enterprise</category></item><item><title>Store WSL vs. Inbox WSL: Why the Servicing Channel Changes Available Features</title><link>https://danielcosenza.com/posts/wsl-store-vs-inbox/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-store-vs-inbox/</guid><description>How the Microsoft Store WSL package decouples updates from full Windows releases, and why that affects available features, policy, and troubleshooting.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>store</category><category>updates</category><category>servicing</category></item><item><title>Systemd in WSL: Service Lifetime, Idle Shutdown, and the Limits of a Workstation VM</title><link>https://danielcosenza.com/posts/wsl-systemd-shutdown/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-systemd-shutdown/</guid><description>Why enabling systemd in WSL does not guarantee daemon permanence, and how services should actually handle WSL&apos;s own lifecycle events.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>systemd</category><category>shutdown</category><category>services</category></item><item><title>USB in WSL 2: How usbipd-win Attaches Devices over USB/IP</title><link>https://danielcosenza.com/posts/wsl-usbipd-architecture/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-usbipd-architecture/</guid><description>Why WSL cannot expose arbitrary USB devices directly, and how Windows binding, USB/IP transport, and Linux drivers fit together in usbipd-win.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>usbipd</category><category>usb</category><category>devices</category></item><item><title>WSLENV and Path Translation Across the Windows-Linux Process Boundary</title><link>https://danielcosenza.com/posts/wsl-wslenv-path-translation/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-wslenv-path-translation/</guid><description>How WSLENV selectively crosses environment variables between Windows and WSL and translates paths without corrupting separators or leaking secrets.</description><pubDate>Sun, 12 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>wslenv</category><category>interop</category><category>path</category></item><item><title>How WSL2&apos;s Virtual Disk Actually Grows (and Why It Won&apos;t Shrink on Its Own)</title><link>https://danielcosenza.com/posts/wsl-disk-virtualization/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-disk-virtualization/</guid><description>Each WSL2 distro lives inside a dynamically-expanding .vhdx file that grows with use but never shrinks back down automatically after deletions.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>disk</category><category>vhdx</category></item><item><title>How WSL Actually Packages and Distributes Linux Distros</title><link>https://danielcosenza.com/posts/wsl-distro-packaging/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-distro-packaging/</guid><description>WSL distros reduce to a root filesystem tarball plus small registration metadata, which is exactly what makes import, export, and custom distros work.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>distribution</category><category>packaging</category></item><item><title>Fixing &apos;Access Is Denied&apos; Errors in WSL After an Update</title><link>https://danielcosenza.com/posts/wsl-fix-access-denied-after-update/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-access-denied-after-update/</guid><description>Working through the specific, common causes of post-update WSL permission errors instead of reflexively reaching for chmod 777 or broad workarounds.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>permissions</category><category>troubleshooting</category></item><item><title>Fixing WSL2 Clock Drift After Sleep or Hibernation</title><link>https://danielcosenza.com/posts/wsl-fix-clock-drift/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-clock-drift/</guid><description>Why WSL2&apos;s internal VM clock falls behind Windows after sleep or hibernation, and the specific steps to force it back into sync reliably.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>clock</category><category>time-sync</category></item><item><title>Fixing a WSL Distro That Won&apos;t Start or Hangs on &apos;Installing&apos;</title><link>https://danielcosenza.com/posts/wsl-fix-distro-wont-start/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-distro-wont-start/</guid><description>Working through Windows features, firmware virtualization, kernel version, and disk space in order to find why a WSL distro hangs or refuses to start.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>troubleshooting</category><category>distribution</category></item><item><title>Fixing Docker Desktop&apos;s WSL2 Backend Integration Issues</title><link>https://danielcosenza.com/posts/wsl-fix-docker-desktop-integration/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-docker-desktop-integration/</guid><description>Working through Docker Desktop&apos;s specific WSL2 integration points, from backend mode to per-distro toggles, when containers fail with confusing errors.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>docker</category><category>wsl2</category><category>containers</category></item><item><title>Fixing High vmmem Memory Usage in WSL2</title><link>https://danielcosenza.com/posts/wsl-fix-high-memory-vmmem/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-high-memory-vmmem/</guid><description>Diagnosing whether high vmmem usage is a genuine leak or reclaimable page cache, and setting a deliberate .wslconfig memory ceiling that actually fits your workload.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>memory</category><category>performance</category></item><item><title>Fixing WSL2 Networking and DNS Resolution Failures</title><link>https://danielcosenza.com/posts/wsl-fix-networking-dns/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-networking-dns/</guid><description>Isolating whether a WSL2 networking failure is DNS configuration, VPN interference, or the networking mode itself, before reaching for a fix.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>networking</category><category>dns</category></item><item><title>Fixing Slow File I/O When Working on /mnt/c from WSL2</title><link>https://danielcosenza.com/posts/wsl-fix-slow-file-io-mnt/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-slow-file-io-mnt/</guid><description>Confirming that /mnt/c&apos;s cross-filesystem overhead is the actual cause of slow WSL2 file I/O, then moving the project to fix it structurally, not cosmetically.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>performance</category><category>filesystem</category></item><item><title>Fixing a WSL2 Virtual Disk That Won&apos;t Shrink After Deleting Files</title><link>https://danielcosenza.com/posts/wsl-fix-vhdx-disk-not-shrinking/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-vhdx-disk-not-shrinking/</guid><description>Deleting files inside WSL2 does not shrink the Windows-side .vhdx automatically. That is expected dynamic-disk behavior, fixed with diskpart compaction.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wsl2</category><category>disk-space</category><category>vhdx</category></item><item><title>Fixing WSLg Graphics Rendering and Display Issues</title><link>https://danielcosenza.com/posts/wsl-fix-wslg-graphics-issues/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-fix-wslg-graphics-issues/</guid><description>Working through WSLg&apos;s compositor, GPU driver, and RDP transport layers separately to isolate a blank window, a crash, or visual corruption.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>fix</category><category>wslg</category><category>graphics</category><category>gui</category></item><item><title>How WSLg Gets a Linux GUI Window Onto Your Windows Desktop</title><link>https://danielcosenza.com/posts/wsl-gui-apps-wslg/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-gui-apps-wslg/</guid><description>WSLg runs a real Wayland compositor and audio server inside WSL, remoting individual application windows to Windows over RDP&apos;s RAIL protocol.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wslg</category><category>gui</category><category>wayland</category></item><item><title>The History of WSL: From a Cancelled Android Project to a Real Linux Kernel</title><link>https://danielcosenza.com/posts/wsl-history/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-history/</guid><description>WSL&apos;s path from a cancelled Android-compatibility project through syscall translation to a genuine, Microsoft-maintained Linux kernel in a lightweight VM.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>history</category><category>wsl</category><category>windows</category><category>linux</category></item><item><title>How to Back Up and Restore a WSL Distro</title><link>https://danielcosenza.com/posts/wsl-howto-backup-restore-distro/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-backup-restore-distro/</guid><description>Exporting a WSL distro&apos;s entire state to a portable file, and restoring it later on the same machine after a problem or on an entirely different one.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>backup</category><category>migration</category></item><item><title>How to Compact a WSL2 Virtual Disk to Reclaim Disk Space</title><link>https://danielcosenza.com/posts/wsl-howto-compact-vhdx/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-compact-vhdx/</guid><description>A complete diskpart walkthrough for shrinking a WSL2 distro&apos;s .vhdx file after deleting large data, since Windows never reclaims that space on its own.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>disk-space</category><category>vhdx</category></item><item><title>How to Set Up Docker with the WSL2 Backend</title><link>https://danielcosenza.com/posts/wsl-howto-docker-setup/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-docker-setup/</guid><description>Configuring Docker Desktop to use WSL2 as its backend, integrating specific distros, and verifying containers run on WSL2&apos;s real kernel, not a separate VM.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>docker</category><category>wsl2</category><category>containers</category></item><item><title>How to Enable systemd in WSL2</title><link>https://danielcosenza.com/posts/wsl-howto-enable-systemd/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-enable-systemd/</guid><description>Turning on systemd support in a specific WSL2 distro, applying the required restart correctly, and verifying services actually manage correctly afterward.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>systemd</category><category>configuration</category></item><item><title>How to Access Files Between Windows and WSL Correctly</title><link>https://danielcosenza.com/posts/wsl-howto-file-access-windows-linux/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-file-access-windows-linux/</guid><description>Both directions of WSL file access, plus the performance-driven rule for deciding which filesystem a given project&apos;s files should actually live on.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>filesystem</category><category>files</category></item><item><title>How to Set Up GPU-Accelerated CUDA Workloads in WSL2</title><link>https://danielcosenza.com/posts/wsl-howto-gpu-cuda-setup/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-gpu-cuda-setup/</guid><description>Setting up an NVIDIA GPU for CUDA-accelerated machine learning in WSL2, from Windows-side driver installation through verifying real acceleration.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>cuda</category><category>gpu</category><category>machine-learning</category></item><item><title>How to Install WSL on Windows</title><link>https://danielcosenza.com/posts/wsl-howto-install/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-install/</guid><description>Getting WSL2 and a Linux distro running from a clean Windows install using the single-command path, plus what to check if it doesn&apos;t work the first time.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl</category><category>installation</category><category>windows</category></item><item><title>How to Install and Manage Multiple Linux Distros in WSL</title><link>https://danielcosenza.com/posts/wsl-howto-multiple-distros/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-multiple-distros/</guid><description>Running several separate Linux distros side by side under WSL, installing new ones, switching between them, and setting a specific one as your default.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl</category><category>distribution</category><category>multi-distro</category></item><item><title>How to Configure and Switch WSL2&apos;s Networking Mode</title><link>https://danielcosenza.com/posts/wsl-howto-networking-mode/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-networking-mode/</guid><description>Switching between WSL2&apos;s default NAT networking and mirrored networking mode, and verifying which one actually solves your specific reachability problem.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>networking</category><category>configuration</category></item><item><title>How to Run Linux GUI Applications on Windows with WSLg</title><link>https://danielcosenza.com/posts/wsl-howto-run-gui-apps/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-run-gui-apps/</guid><description>Installing and running a graphical Linux application directly on the Windows desktop through WSLg, with no separate X server setup or remote desktop session.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wslg</category><category>gui</category><category>linux</category></item><item><title>How to Use VS Code with WSL via the Remote-WSL Extension</title><link>https://danielcosenza.com/posts/wsl-howto-vscode-remote/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-vscode-remote/</guid><description>Edit and debug code inside a WSL distro from Windows VS Code without copying files across operating systems or sacrificing Linux filesystem performance.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>vscode</category><category>wsl2</category><category>development</category></item><item><title>How to Configure WSL2 Resource Limits with .wslconfig</title><link>https://danielcosenza.com/posts/wsl-howto-wslconfig-resource-limits/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-howto-wslconfig-resource-limits/</guid><description>Setting memory, CPU, swap, and networking behavior for every WSL2 distro on your machine from the one central, global .wslconfig file.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>howto</category><category>wsl2</category><category>wslconfig</category><category>configuration</category></item><item><title>How WSL Lets Linux and Windows Executables Call Each Other</title><link>https://danielcosenza.com/posts/wsl-interop-executables/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-interop-executables/</guid><description>The specific interop layer that lets a WSL shell launch Windows executables and Windows shells launch Linux commands, translating paths and streams both ways.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>interop</category><category>processes</category></item><item><title>The Linux Kernel Microsoft Actually Maintains for WSL2</title><link>https://danielcosenza.com/posts/wsl-kernel-maintenance/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-kernel-maintenance/</guid><description>WSL2 runs Microsoft&apos;s own open-source Linux kernel fork, patched for its virtualized environment and updated independently of any distro&apos;s kernel package.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>kernel</category><category>linux</category></item><item><title>Microsoft Cancels Project Astoria, Its Android-on-Windows Bridge</title><link>https://danielcosenza.com/posts/wsl-news-astoria-cancelled/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-astoria-cancelled/</guid><description>Microsoft shelved its Android-app bridge for Windows 10 Mobile in February 2016, consolidating on a single iOS-focused bridge just weeks before WSL&apos;s own reveal.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>history</category><category>windows</category></item><item><title>WSL Graduates Out of Beta in the Fall Creators Update</title><link>https://danielcosenza.com/posts/wsl-news-ga-fall-creators-update/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-ga-fall-creators-update/</guid><description>Eighteen months after its reveal, WSL gained full Microsoft support, multi-distro Store installs, and Windows Server compatibility, ending its beta status.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>windows</category></item><item><title>GPU Compute Comes to WSL2, Enabling Real ML Workloads</title><link>https://danielcosenza.com/posts/wsl-news-gpu-compute-preview/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-gpu-compute-preview/</guid><description>Microsoft&apos;s Build 2020 GPU compute announcement, followed by NVIDIA&apos;s CUDA preview, let machine learning frameworks use a physical GPU from inside WSL2.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>gpu</category><category>machine-learning</category></item><item><title>Installing WSL Goes From a Multi-Step Process to One Command</title><link>https://danielcosenza.com/posts/wsl-news-install-single-command/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-install-single-command/</guid><description>The wsl --install command, shipped via KB5004296 in mid-2021, collapsed WSL&apos;s previously multi-step manual setup process into a single line.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>windows</category></item><item><title>WSL Reaches 1.0 as a Standalone Microsoft Store App</title><link>https://danielcosenza.com/posts/wsl-news-store-ga/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-store-ga/</guid><description>WSL dropped its Preview label in the Microsoft Store on November 22, 2022, decoupling its update cycle from Windows and letting improvements ship independently.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl</category><category>microsoft-store</category></item><item><title>Microsoft and Canonical Bring systemd Support to WSL</title><link>https://danielcosenza.com/posts/wsl-news-systemd-support-announced/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-systemd-support-announced/</guid><description>Microsoft and Canonical&apos;s September 2022 announcement closed one of WSL&apos;s longest-standing gaps: software expecting systemd as PID 1 finally worked.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>systemd</category></item><item><title>Windows 11 Launches With WSL2 as a Default, Integrated Experience</title><link>https://danielcosenza.com/posts/wsl-news-windows11-launch/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-windows11-launch/</guid><description>Windows 11&apos;s October 5, 2021 launch made Linux compatibility via WSL2 part of the platform&apos;s core story, not an optional add-on developers had to seek out.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>windows-11</category><category>wsl2</category></item><item><title>Microsoft Announces WSL2, Replacing Syscall Translation With a Real Kernel</title><link>https://danielcosenza.com/posts/wsl-news-wsl2-announced/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-wsl2-announced/</guid><description>At Build 2019, Microsoft revealed WSL2, an entirely different architecture running a genuine Linux kernel inside a purpose-built lightweight virtual machine.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wsl2</category><category>windows</category></item><item><title>WSLg Ships, Letting Linux GUI Apps Run Directly on the Windows Desktop</title><link>https://danielcosenza.com/posts/wsl-news-wslg-released/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-news-wslg-released/</guid><description>Announced at Build 2020 and previewed to Insiders in spring 2021, WSLg let a Linux GUI application&apos;s window appear on the Windows desktop like any native app.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>news</category><category>wslg</category><category>gui</category><category>windows</category></item><item><title>Why WSL Didn&apos;t Support systemd at First, and How It Works Now</title><link>https://danielcosenza.com/posts/wsl-systemd-support/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-systemd-support/</guid><description>WSL distros ran without systemd for years, breaking software expecting PID 1 init. Here is why that gap existed and how it was architecturally closed.</description><pubDate>Sat, 11 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>systemd</category><category>init</category></item><item><title>How WSL Bridges Two Completely Different Filesystems</title><link>https://danielcosenza.com/posts/wsl-filesystem-bridge/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-filesystem-bridge/</guid><description>WSL&apos;s cross-OS file access translates between Linux and Windows filesystem semantics at the protocol level, and that translation has a real performance cost.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>filesystem</category><category>9p</category></item><item><title>How GPU Compute Actually Reaches WSL2&apos;s Linux Environment</title><link>https://danielcosenza.com/posts/wsl-gpu-compute/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-gpu-compute/</guid><description>The specific GPU paravirtualization mechanism, built jointly by Microsoft and NVIDIA, that lets WSL2 run CUDA workloads at near-native performance.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>gpu</category><category>cuda</category></item><item><title>How WSL2 Actually Manages Memory (and Why vmmem Grows)</title><link>https://danielcosenza.com/posts/wsl-memory-management/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-memory-management/</guid><description>WSL2&apos;s VM claims memory dynamically as Linux needs it and has historically been slow to release it back, plus what .wslconfig actually lets you control.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>memory</category><category>performance</category></item><item><title>WSL2&apos;s Networking Modes: NAT and Mirrored, Explained</title><link>https://danielcosenza.com/posts/wsl-networking-modes/</link><guid isPermaLink="true">https://danielcosenza.com/posts/wsl-networking-modes/</guid><description>WSL2&apos;s original NAT networking isolates it from your LAN by default; mirrored mode, added later, takes a fundamentally different approach with real tradeoffs.</description><pubDate>Fri, 10 Jul 2026 00:00:00 GMT</pubDate><category>WSL</category><category>deep-dive</category><category>wsl2</category><category>networking</category></item></channel></rss>