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 kiosk shell.
21
22       Weston also supports X clients via XWayland, see below.
23

BACKENDS

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

SHELLS

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

XWAYLAND

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

OPTIONS

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

FILES

226       If the environment variable is set, the configuration file is read from
227       the respective path.
228
229       $XDG_CONFIG_HOME/weston.ini
230       $HOME/.config/weston.ini
231

ENVIRONMENT

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

BUGS

280       Bugs   should   be   reported   to   the  freedesktop.org  bugzilla  at
281       https://bugs.freedesktop.org with product "Wayland" and component  "we‐
282       ston".
283

WWW

285       http://wayland.freedesktop.org/
286

EXAMPLES

288       Launch Weston with the DRM backend on a VT
289              weston
290
291       Launch Weston with the DRM backend and XWayland support
292              weston --xwayland
293
294       Launch Weston (wayland-1) nested in another Weston instance (wayland-0)
295              WAYLAND_DISPLAY=wayland-0 weston -Swayland-1
296
297       From an X terminal, launch Weston with the x11 backend
298              weston
299

SEE ALSO

301       weston-bindings(7),  weston-debug(1), weston-drm(7), weston-rdp(7), we‐
302       ston.ini(5)
303
304
305
306Weston 11.0.1                     2019-03-23                         WESTON(1)
Impressum