source: x/lib/webkitgtk.xml@ 4115817

xry111/soup3
Last change on this file since 4115817 was 4115817, checked in by Xi Ruoyao <xry111@…>, 20 months ago

webkitgtk: port to libsoup3

  • Property mode set to 100644
File size: 13.2 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 webkitgtk-download-http "https://webkitgtk.org/releases/webkitgtk-&webkitgtk-version;.tar.xz">
8 <!ENTITY webkitgtk-download-ftp " ">
9 <!ENTITY webkitgtk-md5sum "466351cf35e4f742590919380b5dee93">
10 <!ENTITY webkitgtk-size "25 MB">
11 <!ENTITY webkitgtk-buildsize "988 MB (133 MB installed)">
12 <!ENTITY webkitgtk-time "32 SBU (using parallelism=4, estimated 117 SBU using one core)">
13]>
14
15<sect1 id="webkitgtk" xreflabel="WebKitGTK-&webkitgtk-version;">
16 <?dbhtml filename="webkitgtk.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>WebKitGTK-&webkitgtk-version;</title>
23
24 <indexterm zone="webkitgtk">
25 <primary sortas="a-WebKitGTK">WebKitGTK</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to WebKitGTK</title>
30
31 <para>
32 The <application>WebKitGTK</application> package is a port of the
33 portable web rendering engine <application>WebKit</application> to the
34 <application>GTK+ 3</application> and <application>GTK+ 2</application>
35 platforms.
36 </para>
37
38 &lfs112_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&webkitgtk-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&webkitgtk-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &webkitgtk-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &webkitgtk-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &webkitgtk-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &webkitgtk-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73
74<!--
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
77 <listitem>
78 <para>
79 Required patch:
80 <ulink url="&patch-root;/webkitgtk-&webkitgtk-version;-upstream_fix-1.patch"/>
81 </para>
82 </listitem>
83 </itemizedlist>
84-->
85
86 <bridgehead renderas="sect3">WebKitGTK Dependencies</bridgehead>
87
88 <bridgehead renderas="sect4">Required</bridgehead>
89 <para role="required">
90 <xref linkend="cairo"/>,
91 <xref linkend="cmake"/>,
92 <xref linkend="gst10-plugins-base"/>,
93 <xref linkend="gst10-plugins-bad"/>,
94 <xref linkend="gtk3"/>,
95 <xref linkend="icu"/>,
96 <xref linkend="lcms2"/>,
97 <xref linkend="libgudev"/>,
98 <xref linkend="libsecret"/>,
99 <xref linkend="libsoup3"/>,
100 <xref linkend="libtasn1"/>,
101 <xref linkend="libwebp"/>,
102 <xref linkend="mesa"/>,
103 <xref linkend="openjpeg2"/>,
104 <xref linkend="ruby"/>,
105 <xref linkend="sqlite"/>,
106 <xref linkend="which"/>, and
107 <xref linkend="wpebackend-fdo"/>
108 </para>
109
110 <bridgehead renderas="sect4">Recommended</bridgehead>
111 <para role="recommended">
112 <xref linkend="enchant"/>,
113 <xref linkend="geoclue2"/>,
114 <xref linkend="gobject-introspection"/>,
115 <xref linkend="hicolor-icon-theme"/>, and
116 <xref linkend="libnotify"/>
117 </para>
118
119 <bridgehead renderas="sect4">Optional</bridgehead>
120 <para role="optional">
121 <xref linkend="bubblewrap"/>,
122 <xref linkend="gtk-doc"/>,
123 <xref linkend="gtk4"/>,
124 <xref linkend="harfbuzz"/>,
125 <xref linkend="wayland"/>,
126 <xref linkend="woff2"/>,
127 <ulink url="https://ccache.dev/">ccache</ulink>,
128 <ulink url="https://sourceforge.net/projects/hunspell/files/Hyphen/">Hyphen</ulink>,
129 <ulink url="https://github.com/AOMediaCodec/libavif">libavif</ulink>,
130 <ulink url="https://gnome.pages.gitlab.gnome.org/libmanette/">libmanette</ulink>, and
131 <ulink url="https://github.com/flatpak/xdg-dbus-proxy">xdg-dbus-proxy</ulink>
132 </para>
133
134 <para condition="html" role="usernotes">
135 User Notes: <ulink url="&blfs-wiki;/webkitgtk"/>
136 </para>
137 </sect2>
138
139 <sect2 role="installation">
140 <title>Installation of WebKitGTK</title>
141
142 <bridgehead renderas="sect3">Installation of
143 <application>WebKitGTK</application></bridgehead>
144
145<!--
146 <para>
147 Fix an issue causing a crash viewing some web pages:
148 </para>
149
150<screen><userinput>patch -Np1 -i ../webkitgtk-&webkitgtk-version;-upstream_fix-1.patch</userinput></screen>
151-->
152
153 <para>
154 Install <application>WebKitGTK</application> by running the
155 following commands:
156 </para>
157
158<screen revision="systemd"><userinput>mkdir -vp build &amp;&amp;
159cd build &amp;&amp;
160
161cmake -DCMAKE_BUILD_TYPE=Release \
162 -DCMAKE_INSTALL_PREFIX=/usr \
163 -DCMAKE_SKIP_RPATH=ON \
164 -DPORT=GTK \
165 -DLIB_INSTALL_DIR=/usr/lib \
166 -DUSE_LIBHYPHEN=OFF \
167 -DENABLE_GAMEPAD=OFF \
168 -DENABLE_MINIBROWSER=ON \
169 -DUSE_WOFF2=OFF \
170 -DUSE_WPE_RENDERER=ON \
171 -DENABLE_BUBBLEWRAP_SANDBOX=OFF \
172 -Wno-dev -G Ninja .. &amp;&amp;
173ninja</userinput></screen>
174
175<screen revision="sysv"><userinput>mkdir -vp build &amp;&amp;
176cd build &amp;&amp;
177
178cmake -DCMAKE_BUILD_TYPE=Release \
179 -DCMAKE_INSTALL_PREFIX=/usr \
180 -DCMAKE_SKIP_RPATH=ON \
181 -DPORT=GTK \
182 -DLIB_INSTALL_DIR=/usr/lib \
183 -DUSE_LIBHYPHEN=OFF \
184 -DENABLE_GAMEPAD=OFF \
185 -DENABLE_MINIBROWSER=ON \
186 -DUSE_WOFF2=OFF \
187 -DUSE_WPE_RENDERER=ON \
188 -DENABLE_JOURNALD_LOG=OFF \
189 -DENABLE_BUBBLEWRAP_SANDBOX=OFF \
190 -Wno-dev -G Ninja .. &amp;&amp;
191ninja</userinput></screen>
192
193 <para>
194 This package does not have a working testsuite. However, there is a
195 usable basic graphical web browser in the build directory,
196 <application>build/bin/MiniBrowser</application>. If launching it fails,
197 there is a problem with the build.
198 </para>
199
200<!-- Since we're using Ninja now instead of autotools, this isn't valid anymore
201 <note><para>
202 When installing, the Makefile does some additional compiling and linking.
203 If you do not have Xorg in /usr, the LIBRARY_PATH and PKG_CONFIG_PATH
204 variables need to be defined for the root user. If using sudo to assume
205 root, use the -E option to pass your current environment variables for the
206 install process.
207 </para></note>
208-->
209
210 <para>
211 Now, as the <systemitem class="username">root</systemitem> user:
212 </para>
213
214<screen role="root"><userinput>ninja install</userinput></screen>
215
216<!-- Documentation is for API 4.0 in 2.36.7 release.
217 Maybe we'll have 4.1 doc in 2.38. -->
218<!--
219install -vdm755 /usr/share/gtk-doc/html/webkit{2,dom}gtk-4.0 &amp;&amp;
220install -vm644 ../Documentation/webkit2gtk-4.0/html/* \
221 /usr/share/gtk-doc/html/webkit2gtk-4.0 &amp;&amp;
222install -vm644 ../Documentation/webkitdomgtk-4.0/html/* \
223 /usr/share/gtk-doc/html/webkitdomgtk-4.0</userinput></screen>
224-->
225 </sect2>
226
227 <sect2 role="commands">
228 <title>Command Explanations</title>
229
230<!-- <para>
231 <command>sed ... TextCheckerEnchant.cpp</command>: This command
232 is needed to allow the build to complete with enchant-2.x.
233 </para> -->
234
235 <para>
236 <parameter>-DUSE_LIBHYPHEN=OFF</parameter>: This switch disables the
237 default automatic hyphenation implementation. You need to install
238 <ulink
239 url="https://sourceforge.net/projects/hunspell/files/Hyphen/">Hyphen</ulink>
240 if you wish to enable it (replacing OFF with ON or just removing
241 the switch).
242 </para>
243
244 <para>
245 <parameter>-DENABLE_GAMEPAD=OFF</parameter>: This switch disables
246 gamepad support. Remove this switch if you have
247 <ulink url="https://gnome.pages.gitlab.gnome.org/libmanette/">libmanette</ulink>
248 installed and wish to enable it.
249 </para>
250
251 <para>
252 <parameter>-DENABLE_MINIBROWSER=ON</parameter>: This switch enables
253 compiling and installing the MiniBrowser.
254 </para>
255
256 <para>
257 <parameter>-DUSE_WPE_RENDERER=ON</parameter>: This switch uses the WPE
258 renderer, which is recommended by upstream.
259 </para>
260
261 <para>
262 <parameter>-DENABLE_BUBBLEWRAP_SANDBOX=OFF</parameter>: Remove this
263 switch if the optional packages <xref linkend="bubblewrap"/> and
264 <ulink url="https://github.com/flatpak/xdg-dbus-proxy">xdg-dbus-proxy</ulink>
265 are installed.
266 </para>
267
268 <para revision="sysv">
269 <parameter>-DENABLE_JOURNALD_LOG=OFF</parameter>: This switch disables using the
270 systemd journal for logging errors and debugging information since it
271 is not available on SysV systems.
272 </para>
273
274 <para>
275 <option>-DUSE_LIBNOTIFY=OFF</option>: Use this switch if you do not
276 have <application>libnotify</application> installed.
277 </para>
278
279 <para>
280 <option>-DUSE_SYSTEM_MALLOC=ON</option>: This switch enables building
281 against the system installed <application>malloc</application>.
282 </para>
283
284 <para>
285 <option>-DENABLE_GEOLOCATION=OFF</option>: Use this switch if you don't
286 want to install <xref linkend="geoclue2"/>.
287 </para>
288
289 <para>
290 <option>-DENABLE_GTKDOC=ON</option>: Use this switch if <xref
291 linkend="gtk-doc"/> is installed and you wish to rebuild and install the
292 API documentation.
293 </para>
294
295 <para>
296 <option>-DUSE_WOFF2=ON</option>: Use this switch if the optional
297 package <xref linkend="woff2"/> is installed. This adds additional
298 support for fonts.
299 </para>
300
301 <!-- Uncomment once GTK4 support works, or when it doesn't require
302 a development version of libsoup.
303 <para>
304 <option>-DUSE_GTK4=ON</option>: Use this switch if <xref linkend="gtk4"/>
305 is installed and you wish to build GTK4 support.
306 </para>
307 -->
308
309 </sect2>
310
311 <sect2 role="content">
312 <title>Contents</title>
313
314 <segmentedlist>
315 <segtitle>Installed Program</segtitle>
316 <segtitle>Installed Libraries</segtitle>
317 <segtitle>Installed Directories</segtitle>
318
319 <seglistitem>
320 <seg>
321<!-- Moved to /usr/libexec/webkit2gtk-4.1, so shouldn't appear here
322 jsc,
323 MiniBrowser, and -->
324 WebKitWebDriver
325 </seg>
326 <seg>
327 libjavascriptcoregtk-4.1.so and
328 libwebkit2gtk-4.1.so
329 </seg>
330 <seg>
331 /usr/include/webkitgtk-4.1 and
332 /usr/lib{,exec}/webkit2gtk-4.1
333<!-- /usr/share/gtk-doc/html/webkit{2,dom}gtk-4.0 -->
334 </seg>
335 </seglistitem>
336 </segmentedlist>
337
338 <variablelist>
339 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
340 <?dbfo list-presentation="list"?>
341 <?dbhtml list-presentation="table"?>
342
343<!--
344 <varlistentry id="jsc">
345 <term><command>jsc</command></term>
346 <listitem>
347 <para>
348 is a command-line utility that allows you to run JavaScript programs
349 outside of the context of a web browser.
350 </para>
351 <indexterm zone="webkitgtk jsc">
352 <primary sortas="b-jsc">jsc</primary>
353 </indexterm>
354 </listitem>
355 </varlistentry>
356
357 <varlistentry id="MiniBrowser">
358 <term><command>MiniBrowser</command></term>
359 <listitem>
360 <para>
361 is a very simple graphical browser.
362 </para>
363 <indexterm zone="webkitgtk MiniBrowser">
364 <primary sortas="b-MiniBrowser">MiniBrowser</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368-->
369 <varlistentry id="WebKitWebDriver">
370 <term><command>WebKitWebDriver</command></term>
371 <listitem>
372 <para>
373 allows debugging and automation of web pages and browsers
374 </para>
375 <indexterm zone="webkitgtk WebKitWebDriver">
376 <primary sortas="b-WebKitWebDriver">WebKitWebDriver</primary>
377 </indexterm>
378 </listitem>
379 </varlistentry>
380
381 <varlistentry id="libjavascriptcoregtk-4.1">
382 <term>
383 <filename class="libraryfile">libjavascriptcoregtk-4.1.so</filename>
384 </term>
385 <listitem>
386 <para>
387 contains core JavaScript API functions used by
388 <command>jsc</command> and
389 <filename class="libraryfile">libwebkit2gtk-4.1</filename>
390 </para>
391 <indexterm zone="webkitgtk libjavascriptcoregtk-4.1">
392 <primary sortas="c-libjavascriptcoregtk-4.1">libjavascriptcoregtk-4.1.so</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
397 <varlistentry id="libwebkit2gtk-4.1">
398 <term><filename class="libraryfile">libwebkit2gtk-4.1.so</filename></term>
399 <listitem>
400 <para>
401 contains the <application>WebKit2</application> API functions
402 </para>
403 <indexterm zone="webkitgtk libwebkit2gtk-4.1">
404 <primary sortas="c-libwebkit2gtk-4.1">libwebkit2gtk-4.1.so</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 </variablelist>
410
411 </sect2>
412
413</sect1>
Note: See TracBrowser for help on using the repository browser.