source: x/installing/xwayland.xml@ 9c1319c

12.1 ken/TL2024 ken/tuningfonts lazarus plabs/newcss python3.11 rahul/power-profiles-daemon trunk xry111/llvm18
Last change on this file since 9c1319c was d239c12, checked in by Bruce Dubbs <bdubbs@…>, 7 months ago

Update to xwayland-23.2.2.

  • Property mode set to 100644
File size: 8.9 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY xwayland-download-http "&xorg-download-http;/xserver/xwayland-&xwayland-version;.tar.xz">
8 <!ENTITY xwayland-download-ftp " ">
9 <!ENTITY xwayland-md5sum "f45cb72193b9ef0c71abb6c398149d58">
10 <!ENTITY xwayland-size "1.2 MB">
11 <!ENTITY xwayland-buildsize "27 MB (add 364 MB for tests)">
12 <!ENTITY xwayland-time "0.2 SBU (with parallelism=4; add 1.7 SBU for tests, not including clone time)">
13]>
14
15<sect1 id="xwayland" xreflabel="Xwayland-&xwayland-version;">
16 <?dbhtml filename="xwayland.html"?>
17
18
19 <title>Xwayland-&xwayland-version;</title>
20
21 <indexterm zone="xwayland">
22 <primary sortas="a-xwayland">xwayland</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Xwayland</title>
27
28 <para>
29 The <application>Xwayland</application> package is an Xorg server
30 running on top of the wayland server. It has been separated from the
31 main Xorg server package. It allows running X clients inside a
32 wayland session.
33 </para>
34
35 &lfs120_checked;
36
37 <bridgehead renderas="sect3">Package Information</bridgehead>
38 <itemizedlist spacing="compact">
39 <listitem>
40 <para>
41 Download (HTTP): <ulink url="&xwayland-download-http;"/>
42 </para>
43 </listitem>
44 <listitem>
45 <para>
46 Download (FTP): <ulink url="&xwayland-download-ftp;"/>
47 </para>
48 </listitem>
49 <listitem>
50 <para>
51 Download MD5 sum: &xwayland-md5sum;
52 </para>
53 </listitem>
54 <listitem>
55 <para>
56 Download size: &xwayland-size;
57 </para>
58 </listitem>
59 <listitem>
60 <para>
61 Estimated disk space required: &xwayland-buildsize;
62 </para>
63 </listitem>
64 <listitem>
65 <para>
66 Estimated build time: &xwayland-time;
67 </para>
68 </listitem>
69 </itemizedlist>
70
71 <bridgehead renderas="sect3">Xwayland Dependencies</bridgehead>
72
73 <bridgehead renderas="sect4">Required</bridgehead>
74 <para role="required">
75 <xref linkend="libxcvt"/>,
76 <xref linkend="pixman"/>,
77 <xref linkend="wayland-protocols"/>,
78 <xref role='runtime' linkend="xorg7-app"/> (runtime), and
79 <xref linkend="xorg7-font"/> (only font-util)
80 </para>
81
82 <bridgehead renderas="sect4">Recommended</bridgehead>
83 <para role="recommended">
84 <xref linkend="libepoxy"/>,
85 <xref linkend="libtirpc"/>, and
86 <xref linkend="mesa"/>
87 </para>
88
89 <bridgehead renderas="sect4">Optional</bridgehead>
90 <para role="optional">
91 <xref linkend="git"/> (to download packages needed for the tests),
92 <xref linkend="libgcrypt"/>,
93 <xref linkend="nettle"/>,
94 <xref linkend="xmlto"/>,
95 <xref linkend="xorg7-legacy"/>
96 (only bdftopcf, for building fonts required for the tests),
97 <ulink url="https://gitlab.freedesktop.org/xorg/test/rendercheck">rendercheck</ulink> (for tests), and
98 <ulink url="https://wayland.pages.freedesktop.org/weston/">weston</ulink> (for tests)
99 </para>
100
101 </sect2>
102
103 <sect2 role="installation">
104 <title>Installation of Xwayland</title>
105
106 <para>
107 Install <application>xwayland</application> by running the following
108 commands:
109 </para>
110
111<screen><userinput>sed -i '/install_man/,$d' meson.build &amp;&amp;
112
113mkdir build &amp;&amp;
114cd build &amp;&amp;
115
116meson setup --prefix=$XORG_PREFIX \
117 --buildtype=release \
118 -Dxkb_output_dir=/var/lib/xkb \
119 .. &amp;&amp;
120ninja</userinput></screen>
121
122 <para>
123 Building the test framework needs some work. First,
124 <ulink url="https://wayland.pages.freedesktop.org/weston/">weston</ulink>
125 brings in several dependencies, but the number can be reduced by
126 disabling unneeded features. The <command>meson</command> command
127 for a stripped down build of <application>weston</application> is shown
128 in <ulink
129 url="https://gitlab.freedesktop.org/xorg/xserver/-/blob/xwayland-22.1/.gitlab-ci/debian-install.sh">
130 Upstream continuous integration build</ulink>.
131<!-- keep 22.1 above: they used to build it in gitlab-ci because debian
132 had an obsolete version of weston, but now they take weston from
133 debian so the command to build it has been removed. -->
134 </para>
135<!--
136 <para>
137 Furthermore, an X server needs to be running during the build of
138 <application>xts</application>. If not running the tests in a
139 graphical environment, you'll need to enable <command>Xvfb</command>
140 by removing the <parameter>-Dxvfb=false</parameter> above. The
141 instructions below expect this has been done.
142 </para>
143-->
144 <para>
145 Running the tests involves downloading two other frameworks, in addition
146 to the mentioned optional dependencies:
147 </para>
148
149<screen remap="test"><userinput>mkdir tools &amp;&amp;
150pushd tools &amp;&amp;
151
152git clone https://gitlab.freedesktop.org/mesa/piglit.git --depth 1 &amp;&amp;
153cat &gt; piglit/piglit.conf &lt;&lt; EOF &amp;&amp;
154<literal>[xts]
155path=$(pwd)/xts
156EOF</literal>
157
158git clone https://gitlab.freedesktop.org/xorg/test/xts --depth 1 &amp;&amp;
159
160export DISPLAY=:22 &amp;&amp;
161../hw/vfb/Xvfb $DISPLAY &amp;
162VFB_PID=$! &amp;&amp;
163cd xts &amp;&amp;
164CFLAGS=-fcommon ./autogen.sh &amp;&amp;
165make &amp;&amp;
166kill $VFB_PID &amp;&amp;
167unset DISPLAY VFB_PID &amp;&amp;
168popd</userinput></screen>
169
170 <para>
171 Then the tests can be run with:
172 </para>
173
174<screen remap="test"><userinput>XTEST_DIR=$(pwd)/tools/xts PIGLIT_DIR=$(pwd)/tools/piglit ninja test</userinput></screen>
175
176 <!-- The xfontset tests fail on my system -renodr -->
177 <para>
178 Now, as the <systemitem class="username">root</systemitem> user:
179 </para>
180
181<screen role="root" revision="sysv"><userinput>ninja install &amp;&amp;
182cat &gt;&gt; /etc/sysconfig/createfiles &lt;&lt; "EOF"
183<literal>/tmp/.X11-unix dir 1777 root root</literal>
184EOF</userinput></screen>
185
186<screen role="root" revision="systemd"><userinput>ninja install</userinput></screen>
187
188 <para>
189 If <xref linkend='xorg-server'/> is not installed and you do not plan
190 to install it later, you can install <command>Xvfb</command> from this
191 package. As the &root; user:
192 </para>
193
194<screen role="nodump"><userinput>install -vm755 hw/vfb/Xvfb /usr/bin</userinput></screen>
195
196 </sect2>
197
198 <sect2 role="commands">
199 <title>Command Explanations</title>
200
201 <para>
202 <command>sed -i '/install_man/,$d' meson.build</command>: Prevents
203 installing a manual page for <command>Xserver</command>,
204 which is also provided by <xref linkend='xorg-server'/>. Remove this
205 command if <xref linkend='xorg-server'/> is not installed and you
206 don't plan to install it later.
207 </para>
208
209 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
210 href="../../xincludes/meson-buildtype-release.xml"/>
211<!--
212 <para>
213 <parameter>-Dxvfb=false</parameter>: Prevents building the
214 <command>xvfb</command> program, which is also installed by
215 <xref linkend="xorg-server"/>. Remove this option if you do not plan to
216 install the X server.
217 </para>
218
219 <para>
220 <command>mkdir -pv /etc/X11/xorg.conf.d</command>: This directory is
221 needed to put configuration files for Xwayland. This command ensures
222 that it exists, as some applications might use it without first
223 creating it.
224 </para>
225-->
226 <para revision="sysv">
227 <command>cat &gt;&gt; /etc/sysconfig/createfiles...</command>: This
228 command creates the <filename class="directory">/tmp/.X11-unix</filename>
229 directory at startup, and ensures that the permissions and ownership
230 are correct as required by applications using Xwayland.
231 </para>
232
233 </sect2>
234
235 <sect2 role="content">
236 <title>Contents</title>
237
238 <segmentedlist>
239 <segtitle>Installed Program</segtitle>
240 <segtitle>Installed Library</segtitle>
241 <segtitle>Installed Directory</segtitle>
242
243 <seglistitem>
244 <seg>
245 Xwayland
246 </seg>
247 <seg>
248 None
249 </seg>
250 <seg>
251 None
252 </seg>
253 </seglistitem>
254 </segmentedlist>
255
256 <variablelist>
257 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
258 <?dbfo list-presentation="list"?>
259 <?dbhtml list-presentation="table"?>
260
261 <varlistentry id="Xwayland">
262 <term><command>Xwayland</command></term>
263 <listitem>
264 <para>
265 Allows X clients to run under wayland
266 </para>
267 <indexterm zone="xwayland Xwayland">
268 <primary sortas="b-Xwayland">Xwayland</primary>
269 </indexterm>
270 </listitem>
271 </varlistentry>
272 </variablelist>
273 </sect2>
274</sect1>
Note: See TracBrowser for help on using the repository browser.