XWAYLAND(1)

โœจ XWAYLAND(1) โœจ

Okay bestie, welcome to the Xwayland page ๐Ÿฆ‹ This one lives in the General Commands Manual, and it's giving X server energy for Wayland ๐Ÿ’–

๐Ÿ“– NAME

Xwayland is an X server for running X clients under Wayland. โœจ

๐ŸŽ€ SYNOPSIS

Xwayland [option ...]

๐Ÿ’… DESCRIPTION

Okay so Xwayland is an X server AND a Wayland client, which is honestly so iconic ๐Ÿ‘‘ It's basically a proxy that sits between old-school X clients that don't speak the Wayland protocols and the Wayland server. ๐Ÿซถ

Usually the Wayland server spawns Xwayland automatically, and it runs rootless so X clients blend right in with the rest of the Wayland desktop. Lowkey perfect. โœจ You can launch Xwayland non-rootless yourself, but that's mainly for testing, so don't get it twisted ๐Ÿ™ˆ

Like all the X servers, Xwayland takes the command line options from the Xserver(7) manual page. Those are all valid! Here are the extra ones Xwayland supports too ๐ŸŒธ

โš™๏ธ OPTIONS

  • -decorate โ€” Adds decorations to the Xwayland root window when running rootful. ๐ŸŽ€
This does nothing if Xwayland was built without libdecor support (optional).
This is NOT compatible with rootless mode (-rootless).
  • -enable-ei-portal โ€” Turns on support for the XDG portal for input emulation. ๐Ÿงš
A Wayland compositor running nested should NOT use this with Xwayland.

This does nothing if the compositor doesn't support the relevant XDG portal, or if Xwayland wasn't compiled with EI and OEFFIS support.

  • -fullscreen โ€” Makes the Xwayland window fullscreen when running rootful. ๐Ÿ”ฅ
Not compatible with rootless mode (-rootless).
  • -geometry WxH โ€” Sets the Xwayland window geometry to WxH when running rootful. ๐Ÿฆ‹
Not compatible with rootless mode (-rootless).
  • -glamor [gl|es|off] โ€” Picks the rendering API for Glamor acceleration. The possible options are gl and es. If Xwayland was compiled with Glamor support, this tells it to use ONLY the API you requested. If you set this to off, it works the same as the -shm option. Without this option and without -shm, Xwayland tries OpenGL first, and falls back to GL ES if the GL version is less than 2.1. ๐Ÿ’œ
Not compatible with the -shm option.
  • -hidpi โ€” Adjusts to the scale of the outputs when running rootful in windowing mode. โœจ
Not compatible with rootless mode (-rootless).
  • -host-grab โ€” Disables host keyboard shortcuts and confines the pointer when running rootful. ๐Ÿซฃ This relies on the protocol for inhibiting compositor keyboard shortcuts and on the protocol for pointer locking and confinement, so it may do nothing if your Wayland compositor doesn't support those protocols.

To release the keyboard and pointer, press [CTRL]+[SHIFT] together. ๐Ÿ”‘

Not compatible with rootless mode (-rootless).
  • -initfd fd โ€” Adds the given fd as a listen socket for initializing X clients. This one is for Wayland servers that run Xwayland on-demand, so they can spawn special X clients that need to finish first before other regular X clients can connect, like xrdb. ๐ŸŒˆ
  • -listen fd โ€” Deprecated, so use -listenfd instead. ๐Ÿ’€
  • -listenfd fd โ€” Adds the given fd as a listen socket. The Wayland server uses this to hand Xwayland the socket where X clients connect. ๐Ÿงš
  • -noTouchPointerEmulation โ€” Disables touch pointer emulation. This lets the Wayland compositor run its own pointer emulation for X11 clients that don't support touch input. ๐Ÿ‘†
  • -force-xrandr-emulation โ€” Forces extra non-native modes to be exposed when viewporter isn't supported by the Wayland compositor. ๐Ÿ“
  • -nokeymap โ€” Tells Xwayland to ignore the keymap set by the Wayland compositor. ๐Ÿ™…โ€โ™€๏ธ

By default, Xwayland (like any Wayland client) uses the keymap the Wayland compositor sets through the standard Wayland protocol. This option is for specific situations where you want the X11 clients to control the keymap in Xwayland instead.

  • -output name โ€” Picks which output fullscreen rootful Xwayland should go on. The name has to match an existing Wayland output, and you can find those names with wayland-info. ๐Ÿ–ฅ๏ธ

If no matching output is found, the Wayland compositor decides where the fullscreen rootful Xwayland window goes.

This does nothing if Xwayland isn't running fullscreen rootful.
  • -rootless โ€” Runs Xwayland rootless, so X clients blend seamlessly with Wayland clients on a Wayland desktop. ๐Ÿฆ‹ That also means the Wayland server has to be an X window manager too.
  • -shm โ€” Forces the shared memory backend, instead of glamor (if it's available), for passing buffers to the Wayland server. ๐Ÿ’พ
Not compatible with the -glamor option.
  • -verbose [n] โ€” Sets the verbosity level for info printed on stderr. If you don't give an n value, every time you use this option bumps the verbosity up by one. If you DO give an n, the verbosity gets set to that exact number. The default verbosity level is 0. ๐Ÿ“ข
  • -version โ€” Shows the server version and exits. ๐ŸŽ€
  • -wm fd โ€” The Wayland server uses this to hand Xwayland the socket where the X window manager client connects, when Xwayland is running with -rootless. ๐Ÿ‘‘

๐ŸŒธ ENVIRONMENT

  • WAYLAND_DISPLAY โ€” the name of the display of the Wayland server. ๐Ÿ–ฅ๏ธ
  • XWAYLAND_NO_GLAMOR โ€” Disables glamor and DRI3 support in Xwayland, for testing purposes. ๐Ÿงช

๐Ÿ”— SEE ALSO

General information: X(7), wayland-info(7) ๐Ÿ’œ


Slay, you made it through the whole page ๐Ÿ’…โœจ Xwayland is X Version 11, from xorg-server 24.1.14, and it's still XWAYLAND(1) forever ๐Ÿซถ๐ŸŒˆ

๐Ÿ“ฆ where this page comes from