Cómo ejecutar aplicaciones gráficas de escritorio de Linux desde Bash Shell de Windows 10

El shell Bash de Windows 10 no admite oficialmente las aplicaciones gráficas de escritorio de Linux. Microsoft dice que esta característica está diseñada solo para desarrolladores que desean ejecutar utilidades de terminal de Linux. Pero el «Subsistema de Windows para Linux» subyacente es más poderoso de lo que Microsoft permite.

Es posible ejecutar aplicaciones gráficas de Linux en Windows 10, pero tenga en cuenta que no es oficialmente compatible. No todas las piezas de software de Linux funcionan, y las aplicaciones gráficas son aún más complejas y menos probadas. Pero estos deberían volverse más estables con el tiempo a medida que Microsoft mejore el subsistema de Windows subyacente para Linux.

El shell Bash de Windows 10 solo admite binarios de 64 bits, por lo que no puede instalar y ejecutar software Linux de 32 bits.

Cómo funciona esto

Primero, analicemos exactamente cómo funciona esto para que pueda comprender un poco lo que estamos haciendo aquí.

Windows 10 incluye un “Subsistema de Windows para Linux” subyacente que permite que Windows 10 ejecute software de Linux al traducir las llamadas al sistema de Linux a llamadas al sistema de Windows.

Cuando ejecuta una distribución de Linux como Ubuntu, descarga e instala una imagen completa del espacio de usuario de Ubuntu en su computadora. Esto incluye exactamente los mismos binarios, o aplicaciones, que se ejecutarían en Ubuntu. Ese entorno «Bash en Ubuntu en Windows» funciona gracias al subsistema de Windows subyacente para Linux.

Relacionado:  Cómo localizar rápidamente el archivo EXE de un programa en Windows 10

Microsoft no quiere perder tiempo trabajando en software gráfico, ya que esta función está destinada a herramientas de desarrollo de línea de comandos. Pero la principal razón técnica por la que las aplicaciones gráficas no son compatibles es que requieren un «servidor X» para proporcionar esa interfaz gráfica. En un escritorio Linux típico, ese «servidor X» aparece automáticamente cuando arranca su computadora y muestra todo el escritorio y las aplicaciones que usa.

Pero intente abrir una aplicación gráfica de Bash en Windows, y se quejará de que no puede abrir una pantalla.

Sin embargo, existen aplicaciones de servidor X que puede instalar en un escritorio de Windows. Por lo general, se utilizan para representar aplicaciones Linux que se ejecutan en otras computadoras; el protocolo «X11» es bastante antiguo y fue diseñado con la capacidad de ejecutarse a través de una conexión de red.

Si instala una aplicación de servidor X en su escritorio de Windows y cambia una configuración en el shell Bash, las aplicaciones enviarán su salida gráfica a la aplicación de servidor X y aparecerán en su escritorio de Windows. Todo debería funcionar bien, asumiendo que esas aplicaciones no dependen de las llamadas al sistema Linux que el Subsistema de Windows para Linux aún no admite.

Paso uno: instalar un servidor X

Hay varios servidores X diferentes que puede instalar en Windows, pero recomendamos Xming . Descárguelo e instálelo en su PC con Windows 10.

El proceso de instalación es simple: puede aceptar la configuración predeterminada. A continuación, se iniciará y ejecutará automáticamente en la bandeja del sistema, esperando a que ejecute programas gráficos.

Paso dos: instale el programa

Puede instalar programas gráficos de escritorio de Linux como cualquier otro programa, utilizando el comando apt-get en el entorno Bash basado en Ubuntu. Por ejemplo, supongamos que desea instalar el editor vim gráfico basado en GTK. Ejecutaría el siguiente comando en la ventana Bash:

sudo apt-get install vim-gtk

Pasará por el proceso de instalación en la ventana de la línea de comandos, al igual que en Ubuntu.

Relacionado:  ¿Apagar Windows desde el símbolo del sistema causa daños?

Paso tres: configure la variable de entorno de visualización

Ahora, deberá configurar la variable de entorno «DISPLAY» para que apunte al servidor X que se ejecuta en su PC con Windows 10. Si no lo hace, las aplicaciones gráficas simplemente no se iniciarán.

Para hacer esto, ejecute el siguiente comando en el entorno Bash:

exportar DISPLAY =: 0

Esta configuración solo se aplica a su sesión Bash actual. Si cierra la ventana, Bash lo olvidará. Tendrá que ejecutar este comando cada vez que vuelva a abrir Bash y desee ejecutar una aplicación gráfica.

Paso cuatro: lanzar una aplicación

Ahora puede simplemente iniciar una aplicación gráfica escribiendo el nombre de su ejecutable, como escribiría cualquier otro comando. Por ejemplo, para iniciar vim-gtk, ejecutaría:

gvim

Es así de simple. Si la aplicación falla después de iniciarse, es posible que el subsistema de Windows para Linux no admita las llamadas al sistema Linux que requiere. No hay mucho que puedas hacer al respecto. Pero pruébalo, ¡y es posible que descubras que las aplicaciones que necesitas funcionan decentemente bien!

También puede combinar el tercer y cuarto paso, si lo desea. En lugar de exportar la variable DISPLAY una vez para una sesión completa de shell Bash, simplemente ejecutaría una aplicación gráfica con el siguiente comando:

DISPLAY =: comando 0

Por ejemplo, para iniciar gvim, ejecutaría:

PANTALLA =: 0 gvim

Remember, this isn’t officially supported, so you may run into errors with more complex applications. A virtual machine is a more reliable solution for running many graphical Linux desktop applications on Windows 10, but this is a neat solution for some of the simpler stuff.

Relacionado:  Cómo escribir un script por lotes en Windows