1WESTON(1)                   General Commands Manual                  WESTON(1)
2
3
4

NAME

6       weston - the reference Wayland server
7

SYNOPSIS

9       weston
10

DESCRIPTION

12       weston  is  the reference implementation of a Wayland server. A Wayland
13       server is a display server, a window manager, and a compositor  all  in
14       one.  Weston  has  several  backends as loadable modules: it can run on
15       Linux KMS (kernel modesetting via DRM), as an X client, or  inside  an‐
16       other Wayland server instance.
17
18       Weston  supports fundamentally different graphical user interface para‐
19       digms via shell plugins. Two plugins are provided: the  desktop  shell,
20       and the tablet shell.
21
22       When  weston is started as the first windowing system (i.e. not under X
23       nor under another Wayland server), it should be done with  the  command
24       weston-launch  to  set  up proper privileged access to devices. If your
25       system supports the logind D-Bus API and the  support  has  been  built
26       into weston as well, it is possible to start weston with just weston.
27
28       Weston also supports X clients via XWayland, see below.
29

BACKENDS

31       drm-backend.so
32              The  DRM backend uses Linux KMS for output and evdev devices for
33              input.  It supports multiple monitors in a unified desktop  with
34              DPMS. See weston-drm(7), if installed.
35
36       wayland-backend.so
37              The  Wayland backend runs on another Wayland server, a different
38              Weston instance, for example. Weston shows up as a single  desk‐
39              top window on the parent server.
40
41       x11-backend.so
42              The  X11 backend runs on an X server. Each Weston output becomes
43              an X window. This is a cheap way to test  multi-monitor  support
44              of a Wayland shell, desktop, or applications.
45
46       rdp-backend.so
47              The  RDP  backend  runs  in memory without the need of graphical
48              hardware. Access to the desktop is done by using the RDP  proto‐
49              col.  Each  connecting client has its own seat making it a cheap
50              way to test multi-seat support. See weston-rdp(7), if installed.
51

SHELLS

53       Each of these  shells  have  its  own  public  protocol  interface  for
54       clients.   This  means that a client must be specifically written for a
55       shell protocol, otherwise it will not work.
56
57       Desktop shell
58              Desktop shell is like a modern X  desktop  environment,  concen‐
59              trating  on  traditional  keyboard and mouse user interfaces and
60              the familiar desktop-like window management. Desktop shell  con‐
61              sists  of  the  shell  plugin  desktop-shell.so  and the special
62              client weston-desktop-shell which provides the wallpaper, panel,
63              and screen locking dialog.
64
65       Fullscreen shell
66              Fullscreen  shell  is  intended  for a client that needs to take
67              over whole outputs, often all outputs.  This  is  primarily  in‐
68              tended  for running another compositor on Weston. The other com‐
69              positor does not need  to  handle  any  platform-specifics  like
70              DRM/KMS or evdev/libinput.  The shell consists only of the shell
71              plugin fullscreen-shell.so.
72
73       IVI-shell
74              In-vehicle infotainment shell is a special  purpose  shell  that
75              exposes a GENIVI Layer Manager compatible API to controller mod‐
76              ules, and a very simple shell  protocol  towards  clients.  IVI-
77              shell  starts  with  loading ivi-shell.so, and then a controller
78              module which may launch helper clients.
79

XWAYLAND

81       XWayland requires a special X.org server to be installed. This X server
82       will  connect  to  a  Wayland server as a Wayland client, and X clients
83       will connect to the X server. XWayland provides backwards compatibility
84       to X applications in a Wayland stack.
85
86       XWayland  is  activated by instructing weston to load the XWayland mod‐
87       ule, see EXAMPLES.  Weston starts listening on a new X display  socket,
88       and  exports  it in the environment variable DISPLAY.  When the first X
89       client connects, Weston launches a special X server as a Wayland client
90       to handle the X client and all future X clients.
91
92       It  has also its own X window manager where cursor themes and sizes can
93       be chosen using XCURSOR_PATH and  XCURSOR_SIZE  environment  variables.
94       See ENVIRONMENT.
95

OPTIONS

97   Weston core options:
98       -Bbackend.so, --backend=backend.so
99              Load  backend.so  instead  of  the  default backend. The file is
100              searched for in /usr/lib64/weston, or you can pass  an  absolute
101              path.  The default backend is drm-backend.so unless the environ‐
102              ment suggests otherwise, see DISPLAY and WAYLAND_DISPLAY.
103
104       -cconfig.ini, --config=config.ini
105              Load config.ini instead of weston.ini.  The argument can also be
106              an  absolute  path  starting with a /.  If the path is not abso‐
107              lute, it will be searched in the normal config  paths,  see  we‐
108              ston.ini(5).   If  also  --no-config  is given, no configuration
109              file will be read.
110
111       --debug
112              Enable debug protocol extension weston_debug_v1 which any client
113              can use to receive debugging messages from the compositor.
114
115              WARNING:  This  is  risky  for  two reasons. First, a client may
116              cause a denial-of-service blocking the compositor  by  providing
117              an  unsuitable  file  descriptor, and second, the debug messages
118              may expose sensitive information.  Additionally this will expose
119              weston-screenshooter interface allowing the user to take screen‐
120              shots of the  outputs  using  weston-screenshooter  application,
121              which  can  lead  to silently leaking the output contents.  This
122              option should not be used in production.
123
124       -lscope1,scope2, --logger-scopes=scope1,scope2
125              Specify to which log scopes should subscribe to. When no  scopes
126              are supplied, the log "log" scope will be subscribed by default.
127              Useful to control which streams to write data  into  the  logger
128              and can be helpful in diagnosing early start-up code.
129
130       -fscope1,scope2, --flight-rec-scopes=scope1,scope2
131              Specify  to  which scopes should subscribe to. Useful to control
132              which streams to write data into  the  flight  recorder.  Flight
133              recorder has limited space, once the flight recorder is full new
134              data will overwrite the old data. Without any scopes  specified,
135              it  subscribes  to  'log'  and  'drm-backend' scopes. Passing an
136              empty value would disable the flight recorder entirely.
137
138       --version
139              Print the program version.
140
141       -h, --help
142              Print a summary of command line options, and quit.
143
144       -iN, --idle-time=N
145              Set the idle timeout to N seconds. The default  timeout  is  300
146              seconds.  When  there  has  not been any user input for the idle
147              timeout, Weston enters an inactive mode.  The  screen  fades  to
148              black,  monitors may switch off, and the shell may lock the ses‐
149              sion.  A value of 0 effectively disables the timeout.
150
151       --log=file.log
152              Append log messages to the file file.log instead of writing them
153              to stderr.
154
155       --xwayland
156              Ask Weston to load the XWayland module.
157
158       --modules=module1.so,module2.so
159              Load  the comma-separated list of modules. Only used by the test
160              suite. The file is searched for in /usr/lib64/weston, or you can
161              pass an absolute path.
162
163       --no-config
164              Do  not  read weston.ini for the compositor. Avoids e.g. loading
165              compositor modules via the configuration file, which  is  useful
166              for unit tests.
167
168       -Sname, --socket=name
169              Weston  will  listen  in the Wayland socket called name.  Weston
170              will export WAYLAND_DISPLAY with this value in  the  environment
171              for  all  child  processes to allow them to connect to the right
172              server automatically.
173
174       --wait-for-debugger
175              Raises SIGSTOP before initializing the compositor.  This  allows
176              the  user  to  attach  with a debugger and continue execution by
177              sending SIGCONT. This is useful for debugging a crash on  start-
178              up  when it would be inconvenient to launch weston directly from
179              a debugger. There is also a weston.ini option to do the same.
180
181   DRM backend options:
182       See weston-drm(7).
183
184   Wayland backend options:
185       --display=display
186              Name of the Wayland display to connect to, see also WAYLAND_DIS‐
187              PLAY of the environment.
188
189       --fullscreen
190              Create a single fullscreen output
191
192       --output-count=N
193              Create N Wayland windows to emulate the same number of outputs.
194
195       --width=W, --height=H
196              Make all outputs have a size of WxH pixels.
197
198       --scale=N
199              Give all outputs a scale factor of N.
200
201       --use-pixman
202              Use the pixman renderer.  By default, weston will try to use EGL
203              and GLES2 for rendering and will fall back to  the  pixman-based
204              renderer  for software compositing if EGL cannot be used.  Pass‐
205              ing this option will force weston to use the pixman renderer.
206
207   X11 backend options:
208       --fullscreen
209
210       --no-input
211              Do not provide any input devices. Used  for  testing  input-less
212              Weston.
213
214       --output-count=N
215              Create N X windows to emulate the same number of outputs.
216
217       --width=W, --height=H
218              Make the default size of each X window WxH pixels.
219
220       --scale=N
221              Give all outputs a scale factor of N.
222
223       --use-pixman
224              Use  the pixman renderer.  By default weston will try to use EGL
225              and GLES2 for rendering.  Passing this option will  make  weston
226              use the pixman library for software compsiting.
227
228   RDP backend options:
229       See weston-rdp(7).
230

FILES

232       If the environment variable is set, the configuration file is read from
233       the respective path.
234
235       $XDG_CONFIG_HOME/weston.ini
236       $HOME/.config/weston.ini
237

ENVIRONMENT

239       DISPLAY
240              The X display. If DISPLAY is set,  and  WAYLAND_DISPLAY  is  not
241              set, the default backend becomes x11-backend.so.
242
243       WAYLAND_DEBUG
244              If  set to any value, causes libwayland to print the live proto‐
245              col to stderr.
246
247       WAYLAND_DISPLAY
248              The name of the display (socket) of an already  running  Wayland
249              server,  without  the  path.  The directory path is always taken
250              from XDG_RUNTIME_DIR.  If WAYLAND_DISPLAY is not set, the socket
251              name is "wayland-0".
252
253              If  WAYLAND_DISPLAY  is already set, the default backend becomes
254              wayland-backend.so.  This allows launching Weston  as  a  nested
255              server.
256
257       WAYLAND_SOCKET
258              For  Wayland clients, holds the file descriptor of an open local
259              socket to a Wayland server.
260
261       WESTON_CONFIG_FILE
262              Weston sets this variable to the absolute path of the configura‐
263              tion  file  it loads, or to the empty string if no file is used.
264              Programs that use weston.ini will read  the  file  specified  by
265              this  variable  instead, or do not read any file if it is empty.
266              Unset variable causes falling  back  to  the  default  name  we‐
267              ston.ini.
268
269       XCURSOR_PATH
270              Set  the  list  of paths to look for cursors in. It changes both
271              libwayland-cursor and libXcursor, so it affects both Wayland and
272              X11 based clients. See xcursor (3).
273
274       XCURSOR_SIZE
275              This  variable  can be set for choosing an specific size of cur‐
276              sor. Affect Wayland and X11 clients. See xcursor (3).
277
278       XDG_CONFIG_HOME
279              If set, specifies the directory where to look for weston.ini.
280
281       XDG_RUNTIME_DIR
282              The directory for  Weston's  socket  and  lock  files.   Wayland
283              clients will automatically use this.
284

BUGS

286       Bugs   should   be   reported   to   the  freedesktop.org  bugzilla  at
287       https://bugs.freedesktop.org with product "Wayland" and component  "we‐
288       ston".
289

WWW

291       http://wayland.freedesktop.org/
292

EXAMPLES

294       Launch Weston with the DRM backend on a VT
295              weston-launch
296
297       Launch Weston with the DRM backend and XWayland support
298              weston-launch -- --xwayland
299
300       Launch Weston (wayland-1) nested in another Weston instance (wayland-0)
301              WAYLAND_DISPLAY=wayland-0 weston -Swayland-1
302
303       From an X terminal, launch Weston with the x11 backend
304              weston
305

SEE ALSO

307       weston-bindings(7),  weston-debug(1), weston-drm(7), weston-rdp(7), we‐
308       ston.ini(5)
309
310
311
312Weston 10.0.1                     2019-03-23                         WESTON(1)
Impressum