22 jun 2017

Usando Wayland en Ubuntu Linux

Quizá hayáis oído hablar de Wayland, un reemplazo al viejo y saturado Xorg. Fedora 25 ya lo usa por defecto, Ubuntu 17.10 lo ofrecerá como opción en el arranque y puede instalarse en otras distribuciones como Arch.

En este artículo veremos cómo instalarlo, las diferentes formas de usarlo e intentaremos hacer algunas comparativas de rendimiento.


  • Instalación
Wayland está disponible en los repositorios oficiales de Ubuntu 17.04 y posteriores (para este artículo yo he usado una versión preliminar de Ubuntu 17.10):
$ sudo apt install weston xwayland gnome-session-wayland

En versiones de Ubuntu anteriores a la 17.04 podéis usar su PPA:
$ sudo apt-add-repository ppa:wayland.admin/daily-builds && sudo apt update && sudo apt install weston xwayland gnome-session-wayland

  • Usando Wayland
Una vez instalado podemos usar Wayland de 3 maneras:
  1. Con una sesión de Gnome sobre Wayland: desde el gestor de login de Gnome selecciona la sesión Gnome Wayland
  2. Como una aplicación más dentro de una sesión Xorg: simplemente abre un terminal y escribe $ weston
  3. Con una sesión Weston: desde el gestor de login de Gnome selecciona la sesión Weston

Selección del tipo de sesión

  • Weston: un gestor de ventanas para Wayland
Si elegimos la opción 2 o 3 veremos Weston, un sencillo gestor de ventanas creado para mostrar las posibilidades de Wayland, donde probar algunas de sus características más llamativas como son la rotación o el cambio de opacidad de las ventanas.

Weston ejecutándose dentro de una sesión Gnome sobre Xorg
Weston ejecutándose en una sesión propia sobre Wayland
Weston consta de un panel superior con un reloj y un lanzador de aplicaciones, un fondo de pantalla y poco más. Se configura todo a través del archivo ~/.config/weston.ini, tenéis toda la información sobre cómo modificar este archivo en la Wiki de Arch, aquí os dejo el mío por si queréis usarlo como modelo (seguramente tendréis que cambiar las rutas de los lanzadores y la resolución de pantalla):

  1. [core]
  2. modules=xwayland.so
  3. [keyboard]
  4. keymap_layout=es
  5. numlock-on=true
  6. [output]
  7. name=VGA1
  8. mode=1280x1024
  9. transform=normal
  10. [launcher]
  11. icon=/usr/share/icons/hicolor/24x24/apps/org.gnome.Nautilus.png
  12. path=/usr/bin/nautilus
  13. [launcher]
  14. icon=/usr/share/icons/hicolor/24x24/apps/usd-xrandr.png
  15. path=/usr/bin/weston-terminal
  16. [launcher]
  17. icon=/usr/share/icons/hicolor/24x24/apps/goa-account-google.png
  18. path=/usr/bin/firefox
  19. [shell]
  20. animation=zoom
  21. close-animation=fade
  22. focus-animation=dim-layer
  23. allow-zap=true

Algunos atajos de teclado interesantes son Ctrl + Alt + Borrar para cerrar sesión, Super + botón central del ratón para rotar una ventana o Super + Alt + rueda del ratón para cambiar la opacidad. Podéis ver la lista completa de atajos de teclado en la Wiki de Arch.

  • Comparativa Wayland vs Xorg
Para ver si hay diferencias en el rendimiento he ejecutado una serie de tests que comparan el rendimiento de varias aplicaciones gráficas con el entorno Gnome con Wayland o Xorg, estos son los resultados:

GL Mark 2GLX GearsGTK PerfUnigine
Gnome - Wayland
516
3325
5,56
240
Gnome - Xorg
497
3378
3,69
237

Nota: todas las pruebas han sido realizadas usando el mismo hardware, la instalación por defecto y el driver gráfico nouveau.

De estos resultados lo más importante es que no hay diferencias significativas de rendimiento entre Wayland y Xorg.