source: x/lib/gtk4.xml@ f8635807

11.1 11.2 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/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since f8635807 was f8635807, checked in by Xi Ruoyao <xry111@…>, 2 years ago

gtk4: remove reference to json-glib and rest

They were used for Google Cloud Print service. The service has shut
down since 2021, so the upstream has removed those:

https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3729

  • Property mode set to 100644
File size: 14.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 gtk4-download-http "&gnome-download-http;/gtk/&gtk4-minor;/gtk-&gtk4-version;.tar.xz">
8 <!ENTITY gtk4-download-ftp "&gnome-download-ftp;/gtk/&gtk4-minor;/gtk-&gtk4-version;.tar.xz">
9 <!ENTITY gtk4-md5sum "41c25ca304052f1a592f698f83922e23">
10 <!ENTITY gtk4-size "22 MB">
11 <!ENTITY gtk4-buildsize "499 MB (69 MB installed, add 10 MB for tests)">
12 <!ENTITY gtk4-time "1.1 SBU (using parallelism=4, add 0.2 SBU for tests)">
13]>
14
15<sect1 id="gtk4" xreflabel="GTK-&gtk4-version;">
16 <?dbhtml filename="gtk4.html"?>
17
18 <sect1info>
19 <date>$Date$</date>
20 </sect1info>
21
22 <title>GTK-&gtk4-version;</title>
23
24 <indexterm zone="gtk4">
25 <primary sortas="a-gtk4">GTK-4</primary>
26 </indexterm>
27
28 <sect2 role="package">
29 <title>Introduction to GTK 4</title>
30
31 <para>
32 The <application>GTK 4</application> package contains libraries used for
33 creating graphical user interfaces for applications.
34 </para>
35
36 &lfs110a_checked;
37
38 <bridgehead renderas="sect3">Package Information</bridgehead>
39 <itemizedlist spacing="compact">
40 <listitem>
41 <para>
42 Download (HTTP): <ulink url="&gtk4-download-http;"/>
43 </para>
44 </listitem>
45 <listitem>
46 <para>
47 Download (FTP): <ulink url="&gtk4-download-ftp;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download MD5 sum: &gtk4-md5sum;
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download size: &gtk4-size;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Estimated disk space required: &gtk4-buildsize;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated build time: &gtk4-time;
68 </para>
69 </listitem>
70 </itemizedlist>
71
72 <bridgehead renderas="sect3">GTK 4 Dependencies</bridgehead>
73
74 <bridgehead renderas="sect4">Required</bridgehead>
75 <para role="required">
76 <xref linkend="fribidi"/>,
77 <xref linkend="gdk-pixbuf"/>,
78 <xref linkend="graphene"/>,
79 <xref linkend="iso-codes"/>,
80 <xref linkend="libepoxy"/>,
81 <xref linkend="libxkbcommon"/>,
82 <xref linkend="pango"/>,
83 <xref linkend="wayland-protocols"/>
84 </para>
85
86 <bridgehead renderas="sect4">Recommended</bridgehead>
87 <para role="recommended">
88 <xref linkend="adwaita-icon-theme"/> (default for some gtk4 settings keys),
89 <xref linkend="ffmpeg"/>,
90 <xref linkend="gst10-plugins-bad"/>,
91 <xref linkend="hicolor-icon-theme"/> (needed for tests and for defaults), and
92 <xref linkend="librsvg"/>
93 </para>
94
95 <bridgehead renderas="sect4">Recommended (Required if building GNOME)</bridgehead>
96 <para role="recommended">
97 <xref linkend="gobject-introspection"/>
98 </para>
99
100 <bridgehead renderas="sect4">Optional</bridgehead>
101 <para role="optional">
102 <xref linkend="colord"/>,
103 <xref linkend="cups"/>,
104 <xref linkend="gtk-doc"/>,
105 <xref role="runtime" linkend="highlight"/>
106 (runtime, only used by <command>gtk4-demo</command> for syntax
107 highlighting of demo source code),
108 <xref linkend="sassc"/>,
109 <xref linkend="tracker3"/>,
110 <ulink url="https://gitlab.gnome.org/ebassi/gi-docgen">gi-docgen</ulink>,
111 <ulink url="https://gitlab.gnome.org/World/libcloudproviders">libcloudproviders</ulink>, and
112 <ulink url="https://vulkan.lunarg.com/sdk/home">vulkan</ulink>
113 </para>
114
115 <para condition="html" role="usernotes">
116 User Notes: <ulink url="&blfs-wiki;/gtk4"/>
117 </para>
118 </sect2>
119
120 <sect2 role="installation">
121 <title>Installation of GTK 4</title>
122
123 <para>
124 Install <application>GTK 4</application> by running the following
125 commands:
126 </para>
127
128<screen><userinput>mkdir build &amp;&amp;
129cd build &amp;&amp;
130
131meson --prefix=/usr --buildtype=release -Dbroadway-backend=true .. &amp;&amp;
132ninja</userinput></screen>
133
134 <para>
135 To run the tests, issue: <command>meson test --setup x11</command>. If you
136 are in a Wayland session, replace x11 with wayland. A few tests may fail.
137 </para>
138<!-- [pierre]: 4.6.0, wayland: 727 ok; 2 Expected Fail; 1 Fail; 1 Skipped -->
139
140 <para>
141 Now, as the <systemitem class="username">root</systemitem> user:
142 </para>
143
144<screen role="root"><userinput>ninja install</userinput></screen>
145 </sect2>
146
147 <sect2 role="commands">
148 <title>Command Explanations</title>
149
150 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
151 href="../../xincludes/meson-buildtype-release.xml"/>
152
153 <para>
154 <parameter>-Dbroadway-backend=true</parameter>: This switch enables the
155 HTML5 GDK backend.
156 </para>
157
158 <para>
159 <option>-Dcloudproviders=enabled</option>: Use this switch if you have
160 <ulink url="https://gitlab.gnome.org/World/libcloudproviders">libcloudproviders</ulink>
161 installed and wish to enable support for cloud providers in a file
162 chooser window.
163 </para>
164
165 <para>
166 <option>-Dsysprof=enabled</option>: Use this switch if you have
167 <xref linkend="sysprof"/> installed and wish to enable tracing support for
168 GTK4-based applications.
169 </para>
170
171 <para>
172 <option>-Dtracker=enabled</option>: Use this switch if you have
173 <xref linkend="tracker3"/> installed and wish to use search functionality
174 when running a file chooser.
175 </para>
176
177 <para>
178 <option>-Dcolord=enabled</option>: Use this switch if you have
179 <xref linkend="colord"/> installed and wish to use colord with the CUPS
180 printing backend.
181 </para>
182
183 <para>
184 <option>-Dgtk_doc=true</option>: Use this switch if you have
185 <xref linkend="gtk-doc"/> installed and wish to generate the API
186 reference documentation.
187 </para>
188
189 </sect2>
190
191 <!--Optional section-->
192 <sect2 role="configuration">
193 <title>Configuring GTK 4</title>
194
195 <sect3 id="gtk4-config">
196 <title>Config Files</title>
197 <para>
198 <filename>~/.config/gtk-4.0/settings.ini</filename> and
199 <filename>/usr/share/gtk-4.0/settings.ini</filename>
200 </para>
201
202 <indexterm zone="gtk4 gtk4-config">
203 <primary sortas="e-AA.home-gtk4-settings.ini">~/.config/gtk-4.0/settings.ini</primary>
204 </indexterm>
205
206 <indexterm zone="gtk4 gtk4-config">
207 <primary
208 sortas="e-usr-share-path-settings.ini">/usr/share/gtk-4.0/settings.ini</primary>
209 </indexterm>
210 </sect3>
211
212 <sect3><title>Configuration Information</title>
213
214 <para>
215 <application>GTK 4</application> themes change the way a
216 <application>GTK 4</application> application looks. An icon theme can
217 be used to change the icons that appear on the application's toolbar.
218 If you have installed a <application>GTK 4</application> theme (e.g.
219 the Adwaita theme built in <application>GTK 4</application>),
220 an icon theme (such as <xref linkend="oxygen-icons5"/>) and/or a font
221 (<xref linkend="dejavu-fonts"/>), you can set your preferences in
222 <filename>~/.config/gtk-4.0/settings.ini</filename>, or the default
223 system-wide configuration file (as the
224 <systemitem class="username">root</systemitem> user), in
225 <filename>/usr/share/gtk-4.0/settings.ini</filename>. For the local
226 user, an example is:
227 </para>
228
229<screen><userinput>mkdir -pv ~/.config/gtk-4.0
230cat &gt; ~/.config/gtk-4.0/settings.ini &lt;&lt; "EOF"
231<literal>[Settings]
232gtk-theme-name = <replaceable>Adwaita</replaceable>
233gtk-icon-theme-name = <replaceable>oxygen</replaceable>
234gtk-font-name = <replaceable>DejaVu Sans 12</replaceable>
235gtk-cursor-theme-size = <replaceable>18</replaceable>
236gtk-xft-antialias = <replaceable>1</replaceable>
237gtk-xft-hinting = <replaceable>1</replaceable>
238gtk-xft-hintstyle = <replaceable>hintslight</replaceable>
239gtk-xft-rgba = <replaceable>rgb</replaceable>
240gtk-cursor-theme-name = <replaceable>Adwaita</replaceable></literal>
241EOF</userinput></screen>
242
243 <para>
244 There are many settings keys, some with default values. You can find
245 them at <ulink
246 url="https://developer.gnome.org/gtk4/stable/GtkSettings.html">Settings:
247 GTK 4 Reference Manual</ulink>.
248 </para>
249
250 </sect3>
251 </sect2>
252
253 <sect2 role="content">
254 <title>Contents</title>
255
256 <segmentedlist>
257 <segtitle>Installed Programs</segtitle>
258 <segtitle>Installed Libraries</segtitle>
259 <segtitle>Installed Directories</segtitle>
260
261 <seglistitem>
262 <seg>
263 gtk4-broadwayd,
264 gtk4-builder-tool,
265 gtk4-demo,
266 gtk4-demo-application,
267 gtk4-encode-symbolic-svg,
268 gtk4-icon-browser,
269 gtk4-launch,
270 gtk4-print-editor,
271 gtk4-query-settings,
272 gtk4-update-icon-cache, and
273 gtk4-widget-factory
274 </seg>
275 <seg>
276 libgtk-4.so
277 </seg>
278 <seg>
279 /usr/include/gtk-4.0,
280 /usr/lib/gtk-4.0, and
281 /usr/share/gtk-4.0
282 </seg>
283 </seglistitem>
284 </segmentedlist>
285
286 <variablelist>
287 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
288 <?dbfo list-presentation="list"?>
289 <?dbhtml list-presentation="table"?>
290
291 <varlistentry id="gtk4-broadwayd">
292 <term><command>gtk4-broadwayd</command></term>
293 <listitem>
294 <para>
295 provides support for displaying GTK 4 applications in a web
296 browser using HTML5 and web sockets
297 </para>
298 <indexterm zone="gtk4 gtk4-broadwayd">
299 <primary sortas="b-gtk4-broadwayd">gtk4-broadwayd</primary>
300 </indexterm>
301 </listitem>
302 </varlistentry>
303
304 <varlistentry id="gtk4-builder-tool">
305 <term><command>gtk4-builder-tool</command></term>
306 <listitem>
307 <para>
308 performs various operations on GtkBuilder .ui files
309 </para>
310 <indexterm zone="gtk4 gtk4-builder-tool">
311 <primary sortas="b-gtk4-builder-tool">gtk4-builder-tool</primary>
312 </indexterm>
313 </listitem>
314 </varlistentry>
315
316 <varlistentry id="gtk4-demo">
317 <term><command>gtk4-demo</command></term>
318 <listitem>
319 <para>
320 is a simple program that demonstrates some of the tasks that can be
321 done with GTK 4
322 </para>
323 <indexterm zone="gtk4 gtk4-demo">
324 <primary sortas="b-gtk4-demo">gtk4-demo</primary>
325 </indexterm>
326 </listitem>
327 </varlistentry>
328
329 <varlistentry id="gtk4-demo-application">
330 <term><command>gtk4-demo-application</command></term>
331 <listitem>
332 <para>
333 is a simple GTK 4 application which is useful for testing
334 </para>
335 <indexterm zone="gtk4 gtk4-demo-application">
336 <primary sortas="b-gtk4-demo-application">gtk4-demo-application</primary>
337 </indexterm>
338 </listitem>
339 </varlistentry>
340
341 <varlistentry id="gtk4-encode-symbolic-svg">
342 <term><command>gtk4-encode-symbolic-svg</command></term>
343 <listitem>
344 <para>
345 converts symbolic SVG icons into special PNG files. GTK 4 can load
346 and recolor these PNGs, just like original SVGs, but loading them
347 is much faster
348 </para>
349 <indexterm zone="gtk4 gtk4-encode-symbolic-svg">
350 <primary sortas="b-gtk4-encode-symbolic-svg">gtk4-encode-symbolic-svg</primary>
351 </indexterm>
352 </listitem>
353 </varlistentry>
354
355 <varlistentry id="gtk4-icon-browser">
356 <term><command>gtk4-icon-browser</command></term>
357 <listitem>
358 <para>
359 is a utility to explore the icons in the current icon theme. It
360 shows icons in various sizes, their symbolic variants when
361 available, as well as a description of the icon and its context
362 </para>
363 <indexterm zone="gtk4 gtk4-icon-browser">
364 <primary sortas="b-gtk4-icon-browser">gtk4-icon-browser</primary>
365 </indexterm>
366 </listitem>
367 </varlistentry>
368
369 <varlistentry id="gtk4-launch">
370 <term><command>gtk4-launch</command></term>
371 <listitem>
372 <para>
373 launches an application using the given name. The name should match
374 the application .desktop file name (as seen in
375 <filename class="directory">/usr/share/applications</filename>),
376 with or without the '.desktop' extension
377 </para>
378 <indexterm zone="gtk4 gtk-launch">
379 <primary sortas="b-gtk4-launch">gtk4-launch</primary>
380 </indexterm>
381 </listitem>
382 </varlistentry>
383
384 <varlistentry id="gtk4-print-editor">
385 <term><command>gtk4-print-editor</command></term>
386 <listitem>
387 <para>
388 is a simple program to demonstrate printing using GTK 4
389 applications
390 </para>
391 <indexterm zone="gtk4 gtk4-print-editor">
392 <primary sortas="b-gtk4-print-editor">gtk4-print-editor</primary>
393 </indexterm>
394 </listitem>
395 </varlistentry>
396
397 <varlistentry id="gtk4-query-settings">
398 <term><command>gtk4-query-settings</command></term>
399 <listitem>
400 <para>
401 provides a complete listing of all settings related to GTK 4
402 </para>
403 <indexterm zone="gtk4 gtk4-query-settings">
404 <primary sortas="b-gtk4-query-settings">gtk4-query-settings</primary>
405 </indexterm>
406 </listitem>
407 </varlistentry>
408
409 <varlistentry id="gtk4-update-icon-cache">
410 <term><command>gtk4-update-icon-cache</command></term>
411 <listitem>
412 <para>
413 is an icon theme caching utility that creates mmap()able cache
414 files for icon themes
415 </para>
416 <indexterm zone="gtk4 gtk4-update-icon-cache">
417 <primary sortas="b-gtk4-update-icon-cache">gtk4-update-icon-cache</primary>
418 </indexterm>
419 </listitem>
420 </varlistentry>
421
422 <varlistentry id="gtk4-widget-factory">
423 <term><command>gtk4-widget-factory</command></term>
424 <listitem>
425 <para>
426 is a program to view GTK 4 themes and widgets
427 </para>
428 <indexterm zone="gtk4 gtk4-widget-factory">
429 <primary sortas="b-gtk4-widget-factory">gtk4-widget-factory</primary>
430 </indexterm>
431 </listitem>
432 </varlistentry>
433
434 <varlistentry id="libgtk-4">
435 <term><filename class="libraryfile">libgtk-4.so</filename></term>
436 <listitem>
437 <para>
438 contains functions that provide an API to implement graphical user
439 interfaces
440 </para>
441 <indexterm zone="gtk4 libgtk-4">
442 <primary sortas="c-libgtk-4">libgtk-4.so</primary>
443 </indexterm>
444 </listitem>
445 </varlistentry>
446 </variablelist>
447 </sect2>
448</sect1>
Note: See TracBrowser for help on using the repository browser.