Cómo ejecutar el escritorio nativo de Ubuntu en Windows 10

Windows 10 ya se ejecuta en 500 millones de dispositivos

La verdadera razón por la que Canonical y Microsoft llevaron Ubuntu a Windows 10 fue para permitir a los administradores de sistemas y desarrolladores utilizar Bash y otros programas de shell de Linux, como make, gawk y grep, en Windows. Los usuarios de Linux, que son hackers por naturaleza, se pusieron inmediatamente a trabajar para llevar los escritorios gráficos de Linux a Windows Subsystem for Linux (WSL).

Sí, ya se puede ejecutar el escritorio Unity de Ubuntu en Windows 10.

¿Adivina qué? Lo han conseguido.

Un programador guatemalteco que se hace llamar por el handle de GitHub Guerra24, ha «conseguido ejecutar Unity dentro de WSL, esto demuestra que es totalmente capaz de ejecutar un Entorno de Escritorio completo».

Esto no es fácil de hacer, y está muy lejos de ser un escritorio Linux completo, pero es un comienzo. Si quieres ejecutar el escritorio Linux de Ubuntu en Windows 10 para trabajar, te recomiendo que lo hagas a través de un programa de máquina virtual (VM) como VirtualBox de Oracle. Pero, si sólo quieres divertirte y afinar tus habilidades de programación de escritorio, tú también puedes probar a ejecutar Ubuntu en Windows 10 de forma nativa.

Para empezar con este proyecto hoy, necesitas estar ejecutando la versión beta de Windows 10 Fast Ring. Con el lanzamiento público de la actualización de Windows 10 Anniversary Update, todo el mundo podrá probarlo.

¿Y cómo lo haces? Después de actualizar Windows 10, sigue conmigo.

Primero debes activar el Modo Desarrollador de Windows 10 a través de Configuración > Actualización & seguridad > Para desarrolladores. A continuación, busca «Características de Windows» y elige «Activar o desactivar las características de Windows» y activa el Subsistema de Windows para Linux (Beta).

Después, para instalar Bash, debes abrir el Símbolo del sistema de Windows y escribir «bash». Se te pedirá que aceptes los términos del servicio y que descargues Ubuntu. La descarga típica de Ubuntu es un poco menos de un gigabyte. Así que, si tienes una conexión a Internet lenta, prepárate para esperar. Una vez instalado, estarás ejecutando una versión de espacio de usuario de Ubuntu 14.04 sobre WSL.

Técnicamente, no estás ejecutando Linux. Puede parecer Linux y chillar como Tux, el pingüino de Linux; pero no es Linux. Eso es porque el espacio de usuario de Ubuntu no se ejecuta en un núcleo de Linux, sino en WSL. WSL proporciona los ganchos de la API para que las aplicaciones de Ubuntu y Linux parezcan Linux, pero no es lo mismo. Esto será importante a medida que avancemos.

Una vez que tengas Ubuntu instalado, necesitarás actualizarlo. Eso se hace desde el shell Bash ejecutando los siguientes comandos:

1. apt-get update

2. apt-get upgrade

Ahora, vuelve a cambiar a Windows 10 e instala un Xserver compatible con Windows. Esto es lo que Ubuntu utiliza para mostrar una interfaz gráfica. Los mejores para nuestros propósitos son vcxsrv o Xming.

Luego, tienes que decirle a Ubuntu sobre el Xserver para que pueda usarlo. Para ello puedes introducir el siguiente comando en el shell:

DISPLAY=:0.0

Ahora, cualquier programa gráfico de Linux se mostrará en Windows 10. Mejor aún, si vas a seguir trabajando con software gráfico de Linux en WSL, haz que WSL se prepare automáticamente para los programas gráficos colocando el comando en el archivo de configuración de Bash: «.bashrc». Una forma fácil de hacerlo es utilizar el comando echo para escribirlo con el siguiente comando del shell.

echo «export DISPLAY=:0.0» >> ~/.bashrc

Después de esto, podrás ejecutar programas gráficos de Linux, como Firefox, o de escritorio… pero no se ejecutarán bien ni durante mucho tiempo. Eso es porque WSL no incluye soporte para sockets. Los sockets son lo que usan Unix y Linux para comunicarse entre servicios. En el escritorio de Linux, la forma por defecto de implementar sockets es el sistema de mensajería D-Bus. Sin D-Bus, muchos programas gráficos de escritorio de Linux no funcionan tan bien, si es que lo hacen.

WSL, sin embargo, soporta el protocolo de red TCP y un usuario de Reddit llamado ShaRose ha encontrado una manera de hacer que D-Bus utilice tcp en lugar de sockets. ¿Perfecto? No. Pero funciona.

Para habilitarlo, ejecuta el siguiente comando:

sudo sed -i ‘s/<listen>.*<\/listen>/<listen>tcp:host=localhost,port=0<\/listen>/’ /etc/dbus-1/session.conf

Esto usó el editor de flujos sed para cambiar el archivo de configuración de D-Bus para que de aquí en adelante use tcp en lugar de sockets. ¿El resultado final? Las aplicaciones que necesitan D-Bus ahora se ejecutarán en WSL.

En el siguiente paso, es el momento de instalar los programas gráficos de escritorio. Esto se hace ejecutando estos programas desde Bash:

  • apt-get install ubuntu-desktop
  • apt-get install unity
  • apt-get install compiz-core
  • apt-get install compizconfig-settings-manager

El primer comando instala los programas básicos del escritorio de Ubuntu. Esto incluirá programas de usuario final como LibreOffice, La siguiente instrucción instala el escritorio Unity. Los dos últimos comandos instalan, Compiz, un gestor de composiciones gráficas OpenGL y su front-end ccsm. El siguiente paso será utilizar ccsm para configurar el escritorio.

Antes de que puedas utilizar una interfaz gráfica de escritorio en Ubuntu en Windows 10 necesitas utilizar el Compiz Config Setting Manager (ccsm) para configurar la pantalla correctamente.

Después de que todos estos programas estén instalados, ejecuta ccsm desde Bash. Desde la interfaz de ccsm, tendrás que habilitar los siguientes plugins de Compiz:

General:

  • Comandos
  • Composite
  • Copiar a textura
  • OpenGL

Desktop:

  • Complemento Unity de Ubuntu

Carga de imágenes:

  • PNG

Utilidad:

  • Caja de herramientas de la biblioteca Compiz
  • Gestión de ventanas
  • Mover ventana
  • Colocar ventana
  • Cambiar tamaño de la ventana
  • Escalar
  • Snapping Windows

Ahora, para poner en marcha este espectáculo, cierra ccsm y saca la interfaz de Unity ejecutando compiz desde Bash.

En un minuto más o menos deberías tener Unity funcionando.

Ahora, no vayas con falsas expectativas. No va a funcionar bien. Pero, en mi sistema de prueba de Windows 10, un escritorio ASUS con un procesador i7 3770 de tercera generación, y 8GBs de RAM, se ejecutó lo suficientemente bien que estoy seguro de que alguien eventualmente encontrará una manera de conseguir el escritorio de Ubuntu para ejecutar útilmente en WSL.

Ahora, si me disculpan me voy a ver si puedo conseguir Quake, el viejo juego de disparos en primera persona, corriendo en WSL. Estoy «así» de cerca de conseguir que funcione.

Historias relacionadas:

  • Cómo empezar con Ubuntu y Bash en Windows 10
  • Ubuntu (no Linux) en Windows: Cómo funciona
  • Microsoft y Canonical se asocian para llevar Ubuntu a Windows 10

Deja una respuesta

Tu dirección de correo electrónico no será publicada.