WSLg — Ejecutar aplicaciones GUI de Linux en Windows
Configura la integración gráfica de WSL2 (WSLg) para que las aplicaciones de escritorio Linux se abran como ventanas nativas de Windows. Sin servidor X externo ni VcXsrv.
En el pasado, ejecutar una app GUI de Linux desde WSL significaba instalar VcXsrv o X410, configurar la variable de entorno DISPLAY y ajustar el cortafuegos de Windows. Desde que WSLg (WSL GUI) llegó (Windows 11 + WSL 0.65+), todo eso desapareció — las apps de Linux simplemente se abren como ventanas de Windows.
Creo que WSLg es uno de esos cambios que parecen pequeños hasta que los usas. Antes la configuración de un servidor X en Windows era un procedimiento de media hora lleno de puntos de fallo; ahora simplemente funciona, porque lo que antes era infraestructura manual hoy es transparente.
Esta guía habilita WSLg en Windows 11 22H2+ + WSL 2 + Ubuntu 24.04 y explica cómo ejecutar aplicaciones GUI de Linux habituales (Firefox, gedit, GIMP, depuradores gráficos).
Resumen
wsl --version— si aparecen tantoWSL version 2.0+comoWSLg 1.0+, ya estás listowsl --updatepara la versión más recientesudo apt install -y x11-apps→xcalc— si se abre una calculadora como ventana de Windows, ¡éxito!- No se necesita configurar DISPLAY — WSLg lo inyecta automáticamente
- Las apps Wayland obtienen
WAYLAND_DISPLAY, las X11 obtienenDISPLAY=:0— ambos configurados por ti
Requisitos previos
- Windows 11 22H2+ (Windows 10 21H2+ también funciona, pero el 11 tiene mejor estabilidad/rendimiento)
- WSL 2 + Ubuntu 24.04 (otras distribuciones funcionan — Debian, Fedora, etc.)
- Controlador de GPU reciente (NVIDIA/AMD/Intel — WSLg usa vGPU)
1. Cómo funciona WSLg (brevemente)
[App GUI Linux] ──Wayland/X11──> [Compositor de sistema WSLg]
│
▼
[Windows RDP]
│
▼
[Escritorio Windows]
- La app de Linux se comporta como un cliente Wayland o X11 normal
- WSLg ejecuta un compositor
Westony reenvía mediante RDP a Windows - Desde el lado de Windows, la app es solo un cliente RDP — sin servidor X separado
2. Verificación — ¿ya funciona?
wsl --version
# WSL version: 2.x.x
# WSLg version: 1.x.x ← ambos presentes significa OKSi WSLg no aparece en la lista, actualiza:
wsl --update
wsl --shutdownPrueba:
# Dentro de WSL Ubuntu
sudo apt update && sudo apt install -y x11-apps
xcalc # o xeyes / xclockUna ventana GUI en Windows significa éxito.
Si no aparece nada, consulta §8 Resolución de problemas.
3. Apps GUI de uso frecuente
3.1 Firefox
sudo apt install -y firefox
firefoxNavega por sitios HTTPS y usa DevTools a través del Firefox de WSL Ubuntu. La aceleración GPU es limitada comparada con Safari de macOS o Firefox nativo de Windows, por lo que los sitios pesados se sienten ligeramente más lentos.
3.2 Editores de texto (gedit, gnome-text-editor)
sudo apt install -y gnome-text-editor
gnome-text-editor /etc/hostsÚtil para edición rápida con sudo cuando prefieres una GUI a nano.
3.3 Edición de imágenes (GIMP)
sudo apt install -y gimp
gimpNo tan rápido como Photoshop, pero la compilación para Linux funciona tal cual.
3.4 Depurador gráfico (ddd, gdb-gui)
sudo apt install -y ddd
ddd ./my_programSi usas VS Code Remote-WSL, realmente no necesitas ddd, pero está ahí si quieres un depurador gráfico clásico.
3.5 Wireshark (análisis de red)
sudo apt install -y wireshark
sudo wiresharkCaptura la interfaz de red virtual de WSL. Para capturar el tráfico del host Windows directamente, necesitas configuración adicional (wsl --networkingMode=mirrored — Windows 11 22H2+).
4. Wayland vs X11 — selección automática
WSLg soporta ambos protocolos y ambas variables de entorno se configuran automáticamente:
echo $DISPLAY
# :0
echo $WAYLAND_DISPLAY
# wayland-0- Wayland primero — las apps GTK/Qt modernas seleccionan Wayland automáticamente (
GDK_BACKEND=waylandpor defecto) - Fallback a X11 — las apps sin soporte Wayland caen a
DISPLAY=:0
Fuerza un protocolo concreto para una app específica:
# Forzar X11
GDK_BACKEND=x11 firefox
# Forzar Wayland
GDK_BACKEND=wayland firefox5. Aceleración GPU
WSLg expone una vGPU (GPU virtualizada) para aceleración OpenGL/Vulkan. Las cargas de trabajo CUDA también funcionan.
Comprobación
sudo apt install -y mesa-utils
glxinfo | grep "OpenGL renderer"
# OpenGL renderer string: D3D12 (NVIDIA GeForce RTX ...) — GPU del host expuestaCasos de uso
- Apps 3D como Blender / Maya
- Visualización de ML (TensorBoard, Plotly Dash)
- Juegos (rendimiento limitado, pero funcionan)
CUDA: el controlador WSL de NVIDIA se instala en el lado Windows (https://developer.nvidia.com/cuda/wsl). Dentro de Linux solo necesitas
nvidia-cuda-toolkit.
6. Audio, micrófono, webcam
WSLg también conecta PulseAudio automáticamente — la salida de audio se enruta a la salida predeterminada de Windows.
sudo apt install -y pavucontrol
speaker-test -c 2 # prueba de altavoz izquierdo/derechoLos micrófonos y webcams son más complicados:
- Micrófono: abre
pavucontrol→ pestaña Grabación → el micrófono de Windows aparece (normalmente bien) - Webcam: WSLg no soporta directamente cámaras USB. Usa usbipd-win para conectar dispositivos USB
7. Anclar apps de Linux al menú Inicio de Windows
WSLg las registra automáticamente:
Win → busca "Firefox" → aparece la entrada Firefox (Ubuntu) → haz clic y WSL arranca y Firefox se abre.
Las apps visibles vienen de ~/.local/share/applications/*.desktop (Linux). Registra una app personalizada escribiendo tu propio archivo .desktop:
cat > ~/.local/share/applications/my-app.desktop <<'EOF'
[Desktop Entry]
Type=Application
Name=My Tool
Exec=/usr/local/bin/mytool
Icon=utilities-terminal
EOFReinicia WSL y aparece en el menú Inicio.
8. Resolución de problemas
xcalc se ejecuta pero no aparece ninguna ventana
- ¿Muestra
wsl --versionuna línea conWSLg version? wsl --update·wsl --shutdowny reintenta- Actualiza el controlador de GPU del host (WSLg 1.0.62+ tiene fallback de software mesa, pero algunas configuraciones siguen necesitando una GPU)
Las fuentes están rotas (▢▢▢ para texto no latino)
sudo apt install -y fonts-noto-cjk fonts-nanum
fc-cache -fvEl portapapeles no se sincroniza
WSLg sincroniza el portapapeles de texto en ambas direcciones automáticamente. Si deja de funcionar:
- ¿La app usa Wayland o X11? Las apps Wayland ocasionalmente pierden el portapapeles
- Fuerza
GDK_BACKEND=x11y reintenta
Advertencias del tipo «GTK theme not found»
sudo apt install -y adwaita-icon-themeFalta el tema GTK predeterminado. Poco frecuente; ocurre en algunas imágenes Ubuntu mínimas.
Algunas teclas no llegan a la app GUI
Los acordes Ctrl+Shift o las teclas del IME coreano los captura Windows primero. Soluciones:
- Desactiva el IME de Windows (Win + Espacio para cambiar a inglés)
- O instala
ibus/fcitx5dentro de Linux y escribe en coreano completamente en Linux
La app va lenta (retraso visible en la UI)
- La aceleración GPU puede haber caído a software — comprueba con
glxinfo | grep -i hardware - Actualiza el controlador de GPU
- WSL2 puede estar escaso de RAM — configura
memory=8GBen.wslconfig(wsl-tuning)
9. Limitaciones
- Solo Windows 11 / WSL 2 — sin soporte para WSL 1
- Sin bandeja del sistema / widgets — los iconos de bandeja de Linux no aparecen
- Múltiples monitores está bien; el escalado fraccionario es complicado — con escalado al 125%/150% algunas apps se ven borrosas
- Inicio automático / daemons en segundo plano — para iniciar un servicio systemd de Linux al arrancar Windows, necesitas configuración adicional (
systemctl --user+ Task Scheduler de Windows)
10. Qué sigue
- Ajuste de WSL: memoria / CPU / red — /windows/wsl-tuning
- Docker en WSL2 — /windows/docker-wsl2
- Configuración de Windows Terminal — /windows/windows-terminal-setup
- Contenedor de desarrollo multiplataforma: /multi-os/dev-container
Referencias
- WSLg GitHub
- Documentación oficial de WSL
- usbipd-win — conectar dispositivos USB
Registro de cambios
- 2026-05-16: Primer borrador. Habilitación de WSLg · apps GUI habituales · aceleración GPU · audio/micrófono · integración en el menú Inicio · seis casos de resolución de problemas.