| .TH WESTON 1 "2012-11-27" "Weston __version__" |
| .SH NAME |
| weston \- the reference Wayland server |
| .SH SYNOPSIS |
| .B weston |
| . |
| .\" *************************************************************** |
| .SH DESCRIPTION |
| .B weston |
| is the reference implementation of a Wayland server. A Wayland server is a |
| display server, a window manager, and a compositor all in one. Weston has |
| several backends as loadable modules: it can run on Linux KMS (kernel |
| modesetting via DRM), as an X client, or inside another Wayland server |
| instance. |
| |
| Weston supports fundamentally different graphical user interface paradigms via |
| shell plugins. Two plugins are provided: the desktop shell, and the tablet |
| shell. |
| |
| When weston is started as the first windowing system (i.e. not under X nor |
| under another Wayland server), it should be done with the command |
| .B weston-launch |
| to set up proper privileged access to devices. If your system supports |
| the logind D-Bus API and the support has been built into weston as well, |
| it is possible to start weston with just |
| .BR weston . |
| |
| Weston also supports X clients via |
| .BR XWayland ", see below." |
| . |
| .\" *************************************************************** |
| .SH BACKENDS |
| .TP |
| .I drm-backend.so |
| The DRM backend uses Linux KMS for output and evdev devices for input. |
| It supports multiple monitors in a unified desktop with DPMS. See |
| .BR weston-drm (7), |
| if installed. |
| .TP |
| .I wayland-backend.so |
| The Wayland backend runs on another Wayland server, a different Weston |
| instance, for example. Weston shows up as a single desktop window on |
| the parent server. |
| .TP |
| .I x11-backend.so |
| The X11 backend runs on an X server. Each Weston output becomes an |
| X window. This is a cheap way to test multi-monitor support of a |
| Wayland shell, desktop, or applications. |
| .TP |
| .I rdp-backend.so |
| The RDP backend runs in memory without the need of graphical hardware. Access |
| to the desktop is done by using the RDP protocol. Each connecting |
| client has its own seat making it a cheap way to test multi-seat support. See |
| .BR weston-rdp (7), |
| if installed. |
| . |
| .\" *************************************************************** |
| .SH SHELLS |
| Each of these shells have its own public protocol interface for clients. |
| This means that a client must be specifically written for a shell protocol, |
| otherwise it will not work. |
| .TP |
| Desktop shell |
| Desktop shell is like a modern X desktop environment, concentrating |
| on traditional keyboard and mouse user interfaces and the familiar |
| desktop-like window management. Desktop shell consists of the |
| shell plugin |
| .I desktop-shell.so |
| and the special client |
| .B weston-desktop-shell |
| which provides the wallpaper, panel, and screen locking dialog. |
| .TP |
| Fullscreen shell |
| Fullscreen shell is intended for a client that needs to take over |
| whole outputs, often all outputs. This is primarily intended for |
| running another compositor on Weston. The other compositor does not |
| need to handle any platform-specifics like DRM/KMS or evdev/libinput. |
| The shell consists only of the shell plugin |
| .IR fullscreen-shell.so . |
| .TP |
| IVI-shell |
| In-vehicle infotainment shell is a special purpose shell that exposes |
| a GENIVI Layer Manager compatible API to controller modules, and a very |
| simple shell protocol towards clients. IVI-shell starts with loading |
| .IR ivi-shell.so , |
| and then a controller module which may launch helper clients. |
| . |
| .\" *************************************************************** |
| .SH XWAYLAND |
| XWayland requires a special X.org server to be installed. This X server will |
| connect to a Wayland server as a Wayland client, and X clients will connect to |
| the X server. XWayland provides backwards compatibility to X applications in a |
| Wayland stack. |
| |
| XWayland is activated by instructing |
| .BR weston " to load the XWayland module, see " EXAMPLES . |
| Weston starts listening on a new X display socket, and exports it in the |
| environment variable |
| .BR DISPLAY . |
| When the first X client connects, Weston launches a special X server as a |
| Wayland client to handle the X client and all future X clients. |
| |
| It has also its own X window manager where cursor themes and sizes can be |
| chosen using |
| .BR XCURSOR_PATH |
| and |
| .BR XCURSOR_SIZE " environment variables. See " ENVIRONMENT . |
| . |
| .\" *************************************************************** |
| .SH OPTIONS |
| . |
| .SS Weston core options: |
| .TP |
| \fB\-\^B\fR\fIbackend.so\fR, \fB\-\-backend\fR=\fIbackend.so\fR |
| Load |
| .I backend.so |
| instead of the default backend. The file is searched for in |
| .IR "__weston_modules_dir__" , |
| or you can pass an absolute path. The default backend is |
| .I __weston_native_backend__ |
| unless the environment suggests otherwise, see |
| .IR DISPLAY " and " WAYLAND_DISPLAY . |
| .TP |
| \fB\-\^c\fR\fIconfig.ini\fR, \fB\-\-config\fR=\fIconfig.ini\fR |
| Load |
| .IR config.ini " instead of " weston.ini . |
| The argument can also be an absolute path starting with a |
| .IR / . |
| If the path is not absolute, it will be searched in the normal config |
| paths, see |
| .BR weston.ini (5). |
| If also |
| .B --no-config |
| is given, no configuration file will be read. |
| .TP |
| .BR \-\-version |
| Print the program version. |
| .TP |
| .BR \-\^h ", " \-\-help |
| Print a summary of command line options, and quit. |
| .TP |
| \fB\-\^i\fR\fIN\fR, \fB\-\-idle\-time\fR=\fIN\fR |
| Set the idle timeout to |
| .I N |
| seconds. The default timeout is 300 seconds. When there has not been any |
| user input for the idle timeout, Weston enters an inactive mode. The |
| screen fades to black, monitors may switch off, and the shell may lock |
| the session. |
| A value of 0 effectively disables the timeout. |
| .TP |
| \fB\-\-log\fR=\fIfile.log\fR |
| Append log messages to the file |
| .I file.log |
| instead of writing them to stderr. |
| .TP |
| \fB\-\-xwayland\fR |
| Ask Weston to load the XWayland module. |
| .TP |
| \fB\-\-modules\fR=\fImodule1.so,module2.so\fR |
| Load the comma-separated list of modules. Only used by the test |
| suite. The file is searched for in |
| .IR "__weston_modules_dir__" , |
| or you can pass an absolute path. |
| .TP |
| .BR \-\-no-config |
| Do not read |
| .I weston.ini |
| for the compositor. Avoids e.g. loading compositor modules via the |
| configuration file, which is useful for unit tests. |
| .TP |
| \fB\-\^S\fR\fIname\fR, \fB\-\-socket\fR=\fIname\fR |
| Weston will listen in the Wayland socket called |
| .IR name . |
| Weston will export |
| .B WAYLAND_DISPLAY |
| with this value in the environment for all child processes to allow them to |
| connect to the right server automatically. |
| .TP |
| \fB\-\-wait-for-debugger\fR |
| Raises SIGSTOP before initializing the compositor. This allows the user to |
| attach with a debugger and continue execution by sending SIGCONT. This is |
| useful for debugging a crash on start-up when it would be inconvenient to |
| launch weston directly from a debugger. There is also a |
| .IR weston.ini " option to do the same." |
| . |
| .SS DRM backend options: |
| See |
| .BR weston-drm (7). |
| . |
| .SS Wayland backend options: |
| .TP |
| \fB\-\-display\fR=\fIdisplay\fR |
| Name of the Wayland display to connect to, see also |
| .I WAYLAND_DISPLAY |
| of the environment. |
| .TP |
| .B \-\-fullscreen |
| Create a single fullscreen output |
| .TP |
| \fB\-\-output\-count\fR=\fIN\fR |
| Create |
| .I N |
| Wayland windows to emulate the same number of outputs. |
| .TP |
| \fB\-\-width\fR=\fIW\fR, \fB\-\-height\fR=\fIH\fR |
| Make all outputs have a size of |
| .IR W x H " pixels." |
| .TP |
| .B \-\-scale\fR=\fIN\fR |
| Give all outputs a scale factor of |
| .I N. |
| .TP |
| .B \-\-use\-pixman |
| Use the pixman renderer. By default, weston will try to use EGL and |
| GLES2 for rendering and will fall back to the pixman-based renderer for |
| software compositing if EGL cannot be used. Passing this option will force |
| weston to use the pixman renderer. |
| . |
| .SS X11 backend options: |
| .TP |
| .B \-\-fullscreen |
| .TP |
| .B \-\-no\-input |
| Do not provide any input devices. Used for testing input-less Weston. |
| .TP |
| \fB\-\-output\-count\fR=\fIN\fR |
| Create |
| .I N |
| X windows to emulate the same number of outputs. |
| .TP |
| \fB\-\-width\fR=\fIW\fR, \fB\-\-height\fR=\fIH\fR |
| Make the default size of each X window |
| .IR W x H " pixels." |
| .TP |
| .B \-\-scale\fR=\fIN\fR |
| Give all outputs a scale factor of |
| .I N. |
| .TP |
| .B \-\-use\-pixman |
| Use the pixman renderer. By default weston will try to use EGL and |
| GLES2 for rendering. Passing this option will make weston use the |
| pixman library for software compsiting. |
| . |
| .SS RDP backend options: |
| See |
| .BR weston-rdp (7). |
| . |
| . |
| .\" *************************************************************** |
| .SH FILES |
| . |
| If the environment variable is set, the configuration file is read |
| from the respective path, or the current directory if neither is set. |
| .PP |
| .BI $XDG_CONFIG_HOME /weston.ini |
| .br |
| .BI $HOME /.config/weston.ini |
| .br |
| .I ./weston.ini |
| .br |
| . |
| .\" *************************************************************** |
| .SH ENVIRONMENT |
| . |
| .TP |
| .B DISPLAY |
| The X display. If |
| .B DISPLAY |
| is set, and |
| .B WAYLAND_DISPLAY |
| is not set, the default backend becomes |
| .IR x11-backend.so . |
| .TP |
| .B WAYLAND_DEBUG |
| If set to any value, causes libwayland to print the live protocol |
| to stderr. |
| .TP |
| .B WAYLAND_DISPLAY |
| The name of the display (socket) of an already running Wayland server, without |
| the path. The directory path is always taken from |
| .BR XDG_RUNTIME_DIR . |
| If |
| .B WAYLAND_DISPLAY |
| is not set, the socket name is "wayland-0". |
| |
| If |
| .B WAYLAND_DISPLAY |
| is already set, the default backend becomes |
| .IR wayland-backend.so . |
| This allows launching Weston as a nested server. |
| .TP |
| .B WAYLAND_SOCKET |
| For Wayland clients, holds the file descriptor of an open local socket |
| to a Wayland server. |
| .TP |
| .B WESTON_CONFIG_FILE |
| Weston sets this variable to the absolute path of the configuration file |
| it loads, or to the empty string if no file is used. Programs that use |
| .I weston.ini |
| will read the file specified by this variable instead, or do not read any |
| file if it is empty. Unset variable causes falling back to the default |
| name |
| .IR weston.ini . |
| .TP |
| .B XCURSOR_PATH |
| Set the list of paths to look for cursors in. It changes both |
| libwayland-cursor and libXcursor, so it affects both Wayland and X11 based |
| clients. See |
| .B xcursor |
| (3). |
| .TP |
| .B XCURSOR_SIZE |
| This variable can be set for choosing an specific size of cursor. Affect |
| Wayland and X11 clients. See |
| .B xcursor |
| (3). |
| .TP |
| .B XDG_CONFIG_HOME |
| If set, specifies the directory where to look for |
| .BR weston.ini . |
| .TP |
| .B XDG_RUNTIME_DIR |
| The directory for Weston's socket and lock files. |
| Wayland clients will automatically use this. |
| . |
| .\" *************************************************************** |
| .SH BUGS |
| Bugs should be reported to the freedesktop.org bugzilla at |
| https://bugs.freedesktop.org with product "Wayland" and |
| component "weston". |
| . |
| .\" *************************************************************** |
| .SH WWW |
| http://wayland.freedesktop.org/ |
| . |
| .\" *************************************************************** |
| .SH EXAMPLES |
| .IP "Launch Weston with the DRM backend on a VT" |
| weston-launch |
| .IP "Launch Weston with the DRM backend and XWayland support" |
| weston-launch -- --xwayland |
| .IP "Launch Weston (wayland-1) nested in another Weston instance (wayland-0)" |
| WAYLAND_DISPLAY=wayland-0 weston -Swayland-1 |
| .IP "From an X terminal, launch Weston with the x11 backend" |
| weston |
| . |
| .\" *************************************************************** |
| .SH "SEE ALSO" |
| .BR weston-drm (7) |
| .BR weston-rdp (7) |
| .\".BR weston-launch (1), |
| .\".BR weston.ini (5) |