Wayland and weston

Posted on Apr 10, 2023
  • Wayland
  • see overview: Wayland Weston overview
  • Wayland is a communication protocol that specifies the communication between a display server and its clients, from wikipedia
  • Weston is the reference implementation of a Wayland compositor, from weston github.

  • Weston
  • backends, from “man weston”
  • drm-backend.so: The DRM backend uses Linux KMS for output and evdev devices for input
  • wayland-backend.so: The  Wayland  backend  runs on another Wayland server, a different Weston instance
  • x11-backend.so: The X11 backend runs on an X server
  • rdp-backend.so: The  RDP backend runs in memory without the need of graphical hardware.
  • to run weston from wsl2, use wayland-backend.so.
  • to run weston for rdp connection, use rdp-backend.so
  • all for drm connector, see “/sys/class/drm”
  • modules/shell
  • all *.so are located at usr/lib/weston for modules and shell in weston.ini
  • weston terminal
  • scale: scale text for high DPI screen
  • GDK setting for GTK application from application level
  • export GDK_BACKEND=wayland
  • #To scale UI elements by an integer only factor
  • #GTK3/4 does not support fractional scaling currently, so fractional factors will be ignored
  • export GDK_SCALE=1
  • #GDK_DPI_SCALE can be used to scale text only
  • export GDK_DPI_SCALE=1.2
  • composition level
  • “[output]” on weston.ini, only work for drm and X11. set “scale=1.5”.