a6aa9cb3225b0f906d38b34ea4d094d065f8fa29
[profile/ivi/weston.git] / man / weston.man
1 .TH WESTON 1 "2012-11-27" "Weston __version__"
2 .SH NAME
3 weston \- the reference Wayland server
4 .SH SYNOPSIS
5 .B weston
6 .
7 .\" ***************************************************************
8 .SH DESCRIPTION
9 .B weston
10 is the reference implementation of a Wayland server. A Wayland server is a
11 display server, a window manager, and a compositor all in one. Weston has
12 several backends as loadable modules: it can run on Linux KMS (kernel
13 modesetting via DRM), as an X client, or inside another Wayland server
14 instance.
15
16 Weston supports fundamentally different graphical user interface paradigms via
17 shell plugins. Two plugins are provided: the desktop shell, and the tablet
18 shell.
19
20 When weston is started as the first windowing system (i.e. not under X nor
21 under another Wayland server), it should be done with the command
22 .B weston-launch
23 to set up proper privileged access to devices.
24
25 Weston also supports X clients via 
26 .BR XWayland ", see below."
27 .
28 .\" ***************************************************************
29 .SH BACKENDS
30 .TP
31 .I drm-backend.so
32 The DRM backend uses Linux KMS for output and evdev devices for input.
33 It supports multiple monitors in a unified desktop with DPMS. See
34 .BR weston-drm (7),
35 if installed.
36 .TP
37 .I wayland-backend.so
38 The Wayland backend runs on another Wayland server, a different Weston
39 instance, for example. Weston shows up as a single desktop window on
40 the parent server.
41 .TP
42 .I x11-backend.so
43 The X11 backend runs on an X server. Each Weston output becomes an
44 X window. This is a cheap way to test multi-monitor support of a
45 Wayland shell, desktop, or applications.
46 .
47 .\" ***************************************************************
48 .SH SHELLS
49 .TP
50 Desktop shell
51 Desktop shell is like a modern X desktop environment, concentrating
52 on traditional keyboard and mouse user interfaces and the familiar
53 desktop-like window management. Desktop shell consists of the
54 shell plugin
55 .I desktop-shell.so
56 and the special client
57 .B weston-desktop-shell
58 which provides the wallpaper, panel, and screen locking dialog.
59 .TP
60 Tablet shell
61 Tablet shell is a graphical user interface aimed for tablet-like
62 devices, where usually the only input method is a touch screen.
63 It does not support freely floating windows or many other desktop
64 features, but intends to provide a natural interface on tablets.
65 Tablet shell consists of the shell plugin
66 .I tablet-shell.so
67 and the special client
68 .B weston-tablet-shell
69 which provides the basic user interface.
70 .
71 .\" ***************************************************************
72 .SH XWAYLAND
73 XWayland requires a special X.org server to be installed. This X server will
74 connect to a Wayland server as a Wayland client, and X clients will connect to
75 the X server. XWayland provides backwards compatibility to X applications in a
76 Wayland stack.
77
78 XWayland is activated by instructing
79 .BR weston " to load " xwayland.so " module, see " EXAMPLES .
80 Weston starts listening on a new X display socket, and exports it in the
81 environment variable
82 .BR DISPLAY .
83 When the first X client connects, Weston launches a special X server as a
84 Wayland client 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 be
87 chosen using
88 .BR XCURSOR_PATH
89 and
90 .BR XCURSOR_SIZE " environment variables. See " ENVIRONMENT .
91 .
92 .\" ***************************************************************
93 .SH OPTIONS
94 .
95 .SS Weston core options:
96 .TP
97 \fB\-\^B\fR\fIbackend.so\fR, \fB\-\-backend\fR=\fIbackend.so\fR
98 Load
99 .I backend.so
100 instead of the default backend. The file is searched for in
101 .IR "__weston_modules_dir__" ,
102 or you can pass an absolute path. The default backend is 
103 .I drm-backend.so
104 unless the environment suggests otherwise, see
105 .IR DISPLAY " and " WAYLAND_DISPLAY .
106 .TP
107 .BR \-\-version
108 Print the program version.
109 .TP
110 .BR \-\^h ", " \-\-help
111 Print a summary of command line options, and quit.
112 .TP
113 \fB\-\^i\fR\fIN\fR, \fB\-\-idle\-time\fR=\fIN\fR
114 Set the idle timeout to
115 .I N
116 seconds. The default timeout is 300 seconds. When there has not been any
117 user input for the idle timeout, Weston enters an inactive mode. The
118 screen fades to black, and depending on the shell in use, a screensaver
119 may activate, monitors may switch off, and the shell may lock the session.
120 .TP
121 \fB\-\-log\fR=\fIfile.log\fR
122 Append log messages to the file
123 .I file.log
124 instead of writing them to stderr.
125 .TP
126 \fB\-\-modules\fR=\fImodule1.so,module2.so\fR
127 Load the comma-separated list of modules. Only used by the test
128 suite. The file is searched for in
129 .IR "__weston_modules_dir__" ,
130 or you can pass an absolute path.
131 .TP
132 \fB\-\^S\fR\fIname\fR, \fB\-\-socket\fR=\fIname\fR
133 Weston will listen in the Wayland socket called
134 .IR name .
135 Weston will export
136 .B WAYLAND_DISPLAY
137 with this value in the environment for all child processes to allow them to
138 connect to the right server automatically.
139 .SS DRM backend options:
140 See
141 .BR weston-drm (7).
142 .
143 .SS Wayland backend options:
144 .TP
145 \fB\-\-display\fR=\fIdisplay\fR
146 Name of the Wayland display to connect to, see also
147 .I WAYLAND_DISPLAY
148 of the environment.
149 .TP
150 \fB\-\-width\fR=\fIW\fR, \fB\-\-height\fR=\fIH\fR
151 Make the desktop size
152 .IR W x H " pixels."
153 .
154 .SS X11 backend options:
155 .TP
156 .B \-\-fullscreen
157 .TP
158 .B \-\-no\-input
159 Do not provide any input devices. Used for testing input-less Weston.
160 .TP
161 \fB\-\-output\-count\fR=\fIN\fR
162 Create
163 .I N
164 X windows to emulate the same number of outputs.
165 .TP
166 \fB\-\-width\fR=\fIW\fR, \fB\-\-height\fR=\fIH\fR
167 Make the default size of each X window
168 .IR W x H " pixels."
169 .
170 .\" ***************************************************************
171 .SH FILES
172 .
173 If the environment variable is set, the configuration file is read
174 from the respective path, or the current directory if neither is set.
175 .PP
176 .BI $XDG_CONFIG_HOME /weston.ini
177 .br
178 .BI $HOME /.config/weston.ini
179 .br
180 .I ./weston.ini
181 .br
182 .
183 .\" ***************************************************************
184 .SH ENVIRONMENT
185 .
186 .TP
187 .B DISPLAY
188 The X display. If
189 .B DISPLAY
190 is set, and
191 .B WAYLAND_DISPLAY
192 is not set, the default backend becomes
193 .IR x11-backend.so .
194 .TP
195 .B WAYLAND_DEBUG
196 If set to any value, causes libwayland to print the live protocol
197 to stderr.
198 .TP
199 .B WAYLAND_DISPLAY
200 The name of the display (socket) of an already running Wayland server, without
201 the path. The directory path is always taken from
202 .BR XDG_RUNTIME_DIR .
203 If
204 .B WAYLAND_DISPLAY
205 is not set, the socket name is "wayland-0".
206
207 If
208 .B WAYLAND_DISPLAY
209 is already set, the default backend becomes
210 .IR wayland-backend.so .
211 This allows launching Weston as a nested server.
212 .TP
213 .B WAYLAND_SOCKET
214 For Wayland clients, holds the file descriptor of an open local socket
215 to a Wayland server.
216 .TP
217 .B XCURSOR_PATH
218 Set the list of paths to look for cursors in. It changes both
219 libwayland-cursor and libXcursor, so it affects both Wayland and X11 based
220 clients. See
221 .B xcursor
222 (3).
223 .TP
224 .B XCURSOR_SIZE
225 This variable can be set for choosing an specific size of cursor. Affect
226 Wayland and X11 clients. See
227 .B xcursor
228 (3).
229 .TP
230 .B XDG_CONFIG_HOME
231 If set, specifies the directory where to look for
232 .BR weston.ini .
233 .TP
234 .B XDG_RUNTIME_DIR
235 The directory for Weston's socket and lock files.
236 Wayland clients will automatically use this.
237 .
238 .\" ***************************************************************
239 .SH DIAGNOSTICS
240 Weston has a segmentation fault handler, that attempts to restore
241 the virtual console or ungrab X before raising
242 .BR SIGTRAP .
243 If you run
244 .BR weston " under " gdb (1)
245 from an X11 terminal or a different virtual terminal, and tell gdb
246 .IP
247 handle SIGSEGV nostop
248 .PP
249 This will allow weston to switch back to gdb on crash and then
250 gdb will catch the crash with SIGTRAP.
251 .
252 .\" ***************************************************************
253 .SH BUGS
254 Bugs should be reported to the freedesktop.org bugzilla at
255 https://bugs.freedesktop.org with product "Wayland" and
256 component "weston".
257 .
258 .\" ***************************************************************
259 .SH WWW
260 http://wayland.freedesktop.org/
261 .
262 .\" ***************************************************************
263 .SH EXAMPLES
264 .IP "Launch Weston with the DRM backend on a VT"
265 weston-launch
266 .IP "Launch Weston with the DRM backend and XWayland support"
267 weston-launch -- --modules=xwayland.so
268 .IP "Launch Weston (wayland-1) nested in another Weston instance (wayland-0)"
269 WAYLAND_DISPLAY=wayland-0 weston -Swayland-1
270 .IP "From an X terminal, launch Weston with the x11 backend"
271 weston
272 .
273 .\" ***************************************************************
274 .SH "SEE ALSO"
275 .BR weston-drm (7)
276 .\".BR weston-launch (1),
277 .\".BR weston.ini (5)