source: x/lib/webkitgtk.xml@ ec886f9a

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since ec886f9a was c5408a2, checked in by Douglas R. Reno <renodr@…>, 19 months ago

Add an entity for the gi-docgen URL and change several packages to use
it.

This should make the different URLs we had previously consistent with
one another, and ease maintenance burden.

This is only temporary though since eventually gi-docgen will become
part of the book, when Pierre's python-modules branch is brought into
trunk.

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