Add --version option
[profile/ivi/weston-ivi-shell.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 __weston_native_backend__
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 .TP
170 .B \-\-use\-pixman
171 Use the pixman renderer.  By default weston will try to use EGL and
172 GLES2 for rendering.  Passing this option will make weston use the
173 pixman library for software compsiting.
174 .
175 .\" ***************************************************************
176 .SH FILES
177 .
178 If the environment variable is set, the configuration file is read
179 from the respective path, or the current directory if neither is set.
180 .PP
181 .BI $XDG_CONFIG_HOME /weston.ini
182 .br
183 .BI $HOME /.config/weston.ini
184 .br
185 .I ./weston.ini
186 .br
187 .
188 .\" ***************************************************************
189 .SH ENVIRONMENT
190 .
191 .TP
192 .B DISPLAY
193 The X display. If
194 .B DISPLAY
195 is set, and
196 .B WAYLAND_DISPLAY
197 is not set, the default backend becomes
198 .IR x11-backend.so .
199 .TP
200 .B WAYLAND_DEBUG
201 If set to any value, causes libwayland to print the live protocol
202 to stderr.
203 .TP
204 .B WAYLAND_DISPLAY
205 The name of the display (socket) of an already running Wayland server, without
206 the path. The directory path is always taken from
207 .BR XDG_RUNTIME_DIR .
208 If
209 .B WAYLAND_DISPLAY
210 is not set, the socket name is "wayland-0".
211
212 If
213 .B WAYLAND_DISPLAY
214 is already set, the default backend becomes
215 .IR wayland-backend.so .
216 This allows launching Weston as a nested server.
217 .TP
218 .B WAYLAND_SOCKET
219 For Wayland clients, holds the file descriptor of an open local socket
220 to a Wayland server.
221 .TP
222 .B XCURSOR_PATH
223 Set the list of paths to look for cursors in. It changes both
224 libwayland-cursor and libXcursor, so it affects both Wayland and X11 based
225 clients. See
226 .B xcursor
227 (3).
228 .TP
229 .B XCURSOR_SIZE
230 This variable can be set for choosing an specific size of cursor. Affect
231 Wayland and X11 clients. See
232 .B xcursor
233 (3).
234 .TP
235 .B XDG_CONFIG_HOME
236 If set, specifies the directory where to look for
237 .BR weston.ini .
238 .TP
239 .B XDG_RUNTIME_DIR
240 The directory for Weston's socket and lock files.
241 Wayland clients will automatically use this.
242 .
243 .\" ***************************************************************
244 .SH DIAGNOSTICS
245 Weston has a segmentation fault handler, that attempts to restore
246 the virtual console or ungrab X before raising
247 .BR SIGTRAP .
248 If you run
249 .BR weston " under " gdb (1)
250 from an X11 terminal or a different virtual terminal, and tell gdb
251 .IP
252 handle SIGSEGV nostop
253 .PP
254 This will allow weston to switch back to gdb on crash and then
255 gdb will catch the crash with SIGTRAP.
256 .
257 .\" ***************************************************************
258 .SH BUGS
259 Bugs should be reported to the freedesktop.org bugzilla at
260 https://bugs.freedesktop.org with product "Wayland" and
261 component "weston".
262 .
263 .\" ***************************************************************
264 .SH WWW
265 http://wayland.freedesktop.org/
266 .
267 .\" ***************************************************************
268 .SH EXAMPLES
269 .IP "Launch Weston with the DRM backend on a VT"
270 weston-launch
271 .IP "Launch Weston with the DRM backend and XWayland support"
272 weston-launch -- --modules=xwayland.so
273 .IP "Launch Weston (wayland-1) nested in another Weston instance (wayland-0)"
274 WAYLAND_DISPLAY=wayland-0 weston -Swayland-1
275 .IP "From an X terminal, launch Weston with the x11 backend"
276 weston
277 .
278 .\" ***************************************************************
279 .SH "SEE ALSO"
280 .BR weston-drm (7)
281 .\".BR weston-launch (1),
282 .\".BR weston.ini (5)