source: x/installing/xwayland.xml@ 187200ac

12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 187200ac was 91318eb, checked in by Pierre Labastie <pierre.labastie@…>, 15 months ago

Add "setup" to meson commands

I've not been very consistent on typography, but it is a start

  • Property mode set to 100644
File size: 8.8 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 "&xorg-download-ftp;/xserver/xwayland-&xwayland-version;.tar.xz">
9 <!ENTITY xwayland-md5sum "96879f938a91b0441ea784220159d843">
10 <!ENTITY xwayland-size "1.2 MB">
11 <!ENTITY xwayland-buildsize "76 MB (add 358 MB for tests)">
12 <!ENTITY xwayland-time "0.2 SBU (with parallelism=4; add 1.0 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 &lfs113_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"/>, and
78 <xref linkend="xorg7-font"/> (only font-util)
79 </para>
80
81 <bridgehead renderas="sect4">Recommended</bridgehead>
82 <para role="recommended">
83 <xref linkend="libepoxy"/>,
84 <xref linkend="libtirpc"/>, and
85 <xref linkend="mesa"/>
86 </para>
87
88 <bridgehead renderas="sect4">Optional</bridgehead>
89 <para role="optional">
90 <xref linkend="git"/> (to download packages needed for the tests),
91 <xref linkend="libgcrypt"/>,
92 <xref linkend="nettle"/>,
93 <xref linkend="xmlto"/>,
94 <xref linkend="xorg7-legacy"/>
95 (only bdftopcf, for building fonts required for the tests),
96 <ulink url="https://gitlab.freedesktop.org/xorg/test/rendercheck">rendercheck</ulink> (for tests), and
97 <ulink url="https://wayland.pages.freedesktop.org/weston/">weston</ulink> (for tests)
98 </para>
99
100 <para condition="html" role="usernotes">
101 User Notes: <ulink url="&blfs-wiki;/xwayland"/>
102 </para>
103 </sect2>
104
105 <sect2 role="installation">
106 <title>Installation of Xwayland</title>
107
108 <para>
109 Install <application>xwayland</application> by running the following
110 commands:
111 </para>
112
113<screen><userinput>sed -i '/install_man/,$d' meson.build &amp;&amp;
114
115mkdir build &amp;&amp;
116cd build &amp;&amp;
117
118meson setup --prefix=$XORG_PREFIX \
119 --buildtype=release \
120 -Dxkb_output_dir=/var/lib/xkb \
121 .. &amp;&amp;
122ninja</userinput></screen>
123
124 <para>
125 Building the test framework needs some work. First,
126 <ulink url="https://wayland.pages.freedesktop.org/weston/">weston</ulink>
127 brings in several dependencies, but the number can be reduced by
128 disabling unneeded features. The <command>meson</command> command
129 for a stripped down build of <application>weston</application> is shown
130 in <ulink
131 url="https://gitlab.freedesktop.org/xorg/xserver/-/blob/xwayland-22.1/.gitlab-ci/debian-install.sh">
132 Upstream continuous integration build</ulink>.
133 </para>
134<!--
135 <para>
136 Furthermore, an X server needs to be running during the build of
137 <application>xts</application>. If not running the tests in a
138 graphical environment, you'll need to enable <command>Xvfb</command>
139 by removing the <parameter>-Dxvfb=false</parameter> above. The
140 instructions below expect this has been done.
141 </para>
142-->
143 <para>
144 Running the tests involves downloading two other frameworks, in addition
145 to the mentioned optional dependencies:
146 </para>
147
148<screen remap="test"><userinput>mkdir tools &amp;&amp;
149pushd tools &amp;&amp;
150
151git clone https://gitlab.freedesktop.org/mesa/piglit.git --depth 1 &amp;&amp;
152cat &gt; piglit/piglit.conf &lt;&lt; EOF &amp;&amp;
153<literal>[xts]
154path=$(pwd)/xts
155EOF</literal>
156
157git clone https://gitlab.freedesktop.org/xorg/test/xts --depth 1 &amp;&amp;
158
159export DISPLAY=:22 &amp;&amp;
160../hw/vfb/Xvfb $DISPLAY &amp;
161VFB_PID=$! &amp;&amp;
162cd xts &amp;&amp;
163CFLAGS=-fcommon ./autogen.sh &amp;&amp;
164make &amp;&amp;
165kill $VFB_PID &amp;&amp;
166unset DISPLAY VFB_PID &amp;&amp;
167popd</userinput></screen>
168
169 <para>
170 Then the tests can be run with:
171 </para>
172
173<screen remap="test"><userinput>XTEST_DIR=$(pwd)/tools/xts PIGLIT_DIR=$(pwd)/tools/piglit ninja test</userinput></screen>
174
175 <!-- The xfontset tests fail on my system -renodr -->
176 <para>
177 Now, as the <systemitem class="username">root</systemitem> user:
178 </para>
179
180<screen role="root" revision="sysv"><userinput>ninja install &amp;&amp;
181cat &gt;&gt; /etc/sysconfig/createfiles &lt;&lt; "EOF"
182<literal>/tmp/.X11-unix dir 1777 root root</literal>
183EOF</userinput></screen>
184
185<screen role="root" revision="systemd"><userinput>ninja install</userinput></screen>
186
187 <para>
188 If <xref linkend='xorg-server'/> is not installed and you do not plan
189 to install it later, you can install <command>Xvfb</command> from this
190 package. As the &root; user:
191 </para>
192
193<screen role="nodump"><userinput>install -vm755 hw/vfb/Xvfb /usr/bin</userinput></screen>
194
195 </sect2>
196
197 <sect2 role="commands">
198 <title>Command Explanations</title>
199
200 <para>
201 <command>sed -i '/install_man/,$d' meson.build</command>: Prevents
202 installing a manual page for <command>Xserver</command>,
203 which is also provided by <xref linkend='xorg-server'/>. Remove this
204 command if <xref linkend='xorg-server'/> is not installed and you
205 don't plan to install it later.
206 </para>
207
208 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
209 href="../../xincludes/meson-buildtype-release.xml"/>
210<!--
211 <para>
212 <parameter>-Dxvfb=false</parameter>: Prevents building the
213 <command>xvfb</command> program, which is also installed by
214 <xref linkend="xorg-server"/>. Remove this option if you do not plan to
215 install the X server.
216 </para>
217
218 <para>
219 <command>mkdir -pv /etc/X11/xorg.conf.d</command>: This directory is
220 needed to put configuration files for Xwayland. This command ensures
221 that it exists, as some applications might use it without first
222 creating it.
223 </para>
224-->
225 <para revision="sysv">
226 <command>cat &gt;&gt; /etc/sysconfig/createfiles...</command>: This
227 command creates the <filename class="directory">/tmp/.X11-unix</filename>
228 directory at startup, and ensures that the permissions and ownership
229 are correct as required by applications using Xwayland.
230 </para>
231
232 </sect2>
233
234 <sect2 role="content">
235 <title>Contents</title>
236
237 <segmentedlist>
238 <segtitle>Installed Program</segtitle>
239 <segtitle>Installed Library</segtitle>
240 <segtitle>Installed Directory</segtitle>
241
242 <seglistitem>
243 <seg>
244 Xwayland
245 </seg>
246 <seg>
247 None
248 </seg>
249 <seg>
250 None
251 </seg>
252 </seglistitem>
253 </segmentedlist>
254
255 <variablelist>
256 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
257 <?dbfo list-presentation="list"?>
258 <?dbhtml list-presentation="table"?>
259
260 <varlistentry id="Xwayland">
261 <term><command>Xwayland</command></term>
262 <listitem>
263 <para>
264 Allows X clients to run under wayland
265 </para>
266 <indexterm zone="xwayland Xwayland">
267 <primary sortas="b-Xwayland">Xwayland</primary>
268 </indexterm>
269 </listitem>
270 </varlistentry>
271 </variablelist>
272 </sect2>
273</sect1>
Note: See TracBrowser for help on using the repository browser.