How to Run Linux GUI Applications on Windows with WSLg
A complete walkthrough installing and running a graphical Linux application directly on your Windows desktop — no separate X server setup, no remote desktop session, just a window that opens like any other.
WSLg makes running a Linux graphical application as simple as running any command-line tool inside WSL — this walks through actually doing it.
Step 1: confirm WSLg is available on your system
echo $DISPLAY
echo $WAYLAND_DISPLAY
Both should return a value on a current WSL2 installation with WSLg enabled — if empty, run wsl --update and ensure you’re on Windows 11 or a sufficiently recent Windows 10 build with WSLg support.
Step 2: install a GUI application inside your distro
sudo apt update
sudo apt install gimp
Any GUI application installable through your distro’s normal package manager works — no special “WSL-compatible” version is needed.
Step 3: launch it directly from the WSL terminal
gimp
The application’s window appears directly on your Windows desktop, just like a native Windows application — no separate remote desktop client or X server configuration required.
Step 4: interact with it exactly like a native window
The window can be resized, moved, minimized, and alt-tabbed to individually, integrated into the normal Windows desktop experience rather than appearing inside some separate contained “Linux desktop” window.
Step 5: test audio if the application uses it
sudo apt install vlc
vlc
Audio from Linux GUI applications routes through WSLg’s bundled PulseAudio server out to your normal Windows audio output — playing a test file confirms this path is working correctly.
Step 6: run a GPU-accelerated graphical application
sudo apt install glxgears
glxgears
This confirms whether GPU-accelerated rendering specifically (as opposed to basic 2D windowing) is working — useful as a quick test before relying on WSLg for a more demanding graphical or GPU-compute-adjacent application.
Step 7: copy and paste between Windows and Linux GUI applications
Clipboard sharing between Windows applications and WSLg-hosted Linux GUI applications works by default — copying text or images in one environment and pasting into the other should work without any additional configuration.
Step 8: troubleshoot if a specific application doesn’t render correctly
If a specific application shows a blank window, crashes on launch, or displays incorrectly while other GUI applications work fine, this blog’s dedicated WSLg troubleshooting guide walks through isolating the specific cause systematically.
Why this capability changes what “just use WSL” can mean
Before WSLg, needing a Linux GUI application meant reaching for a separate VM or dual-boot setup — being able to run it directly alongside native Windows applications, sharing clipboard and audio seamlessly, meaningfully expands WSL’s practical usefulness beyond command-line and server-style development work into genuinely full-featured Linux desktop application use.