source: x/lib/gtk+3.xml@ a774e504

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 9.0 9.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 upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since a774e504 was a774e504, checked in by Xi Ruoyao <xry111@…>, 5 years ago

Update to gtk+-3.24.8

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@21454 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 17.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 gtk3-download-http "&gnome-download-http;/gtk+/&gnome-minor-24;/gtk+-&gtk3-version;.tar.xz">
8 <!ENTITY gtk3-download-ftp "&gnome-download-ftp;/gtk+/&gnome-minor-24;/gtk+-&gtk3-version;.tar.xz">
9 <!ENTITY gtk3-md5sum "eeedde01856238114dcf4df3ebc942a5">
10 <!ENTITY gtk3-size "21 MB">
11 <!ENTITY gtk3-buildsize "471 MB (including tests)">
12 <!ENTITY gtk3-time "1.8 SBU (using parallelism=4, add 0.3 SBU for tests)">
13]>
14
15<sect1 id="gtk3" xreflabel="GTK+-&gtk3-version;">
16 <?dbhtml filename="gtk3.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>GTK+-&gtk3-version;</title>
24
25 <indexterm zone="gtk3">
26 <primary sortas="a-GTK+3">GTK+3</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to GTK+ 3</title>
31
32 <para>
33 The <application>GTK+ 3</application> package contains
34 libraries used for creating graphical user interfaces for
35 applications.
36 </para>
37
38 &lfs84_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&gtk3-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&gtk3-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &gtk3-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &gtk3-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &gtk3-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &gtk3-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73
74 <bridgehead renderas="sect3">GTK+ 3 Dependencies</bridgehead>
75
76 <bridgehead renderas="sect4">Required</bridgehead>
77 <para role="required">
78 <xref linkend="at-spi2-atk"/>,
79 <xref linkend="fribidi"/>,
80 <xref linkend="gdk-pixbuf"/>,
81 <xref linkend="libepoxy"/>, and
82 <xref linkend="pango"/>
83<!-- does not seem to be needed anymore
84 <xref linkend="six"/>-->
85 </para>
86
87 <bridgehead renderas="sect4">Recommended</bridgehead>
88 <para role="recommended">
89 <xref linkend="adwaita-icon-theme"/> (default for some gtk+3 settings
90 keys, also needed for tests),
91 <xref linkend="hicolor-icon-theme"/> (needed for tests),
92 <xref linkend="iso-codes"/>,
93 <xref linkend="libxkbcommon"/>,
94 <xref linkend="wayland"/>, and
95 <xref linkend="wayland-protocols"/>
96 </para>
97
98 <bridgehead renderas="sect4">Recommended (Required if building GNOME)</bridgehead>
99 <para role="recommended">
100 <xref linkend="gobject-introspection"/>
101 </para>
102
103 <bridgehead renderas="sect4">Optional</bridgehead>
104 <para role="optional" revision="sysv">
105 <xref linkend="colord"/>,
106 <xref linkend="cups"/>,
107 <xref linkend="docbook-utils"/>,
108 <xref linkend="gtk-doc"/>,
109 <xref linkend="json-glib"/>,
110 <ulink url="http://icl.cs.utk.edu/papi/">PAPI</ulink>, and
111 <ulink url="http://ftp.acc.umu.se/pub/gnome/sources/rest/">rest</ulink>
112 </para>
113 <para role="optional" revision="systemd">
114 <xref linkend="colord"/>,
115 <xref linkend="cups"/>,
116 <xref linkend="docbook-utils"/>,
117 <xref linkend="gtk-doc"/>,
118 <xref linkend="json-glib"/>,
119 <xref linkend="pyatspi2"/> (for tests),
120 <xref linkend="rest"/>, and
121 <ulink url="http://icl.cs.utk.edu/papi/">PAPI</ulink>
122 </para>
123
124 <para condition="html" role="usernotes">
125 User Notes: <ulink url="&blfs-wiki;/gtk3"/>
126 </para>
127 </sect2>
128
129 <sect2 role="installation">
130 <title>Installation of GTK+ 3</title>
131<!--
132 <note>
133 <para>
134 <application>GTK+ 3</application> will overwrite
135 <command>gtk-update-icon-cache</command> from <xref linkend="gtk2"/> if
136 it is installed. There is nothing wrong about that assuming that both
137 programs provide same functionality. If you wish to keep one from
138 <application>GTK+ 2</application> you can add
139 <option>- -enable-gtk2-dependency</option> to the
140 <command>configure</command> command.
141 </para>
142 </note>
143-->
144 <para>
145 Install <application>GTK+ 3</application> by running the following
146 commands:
147 </para>
148
149<screen><userinput>./configure --prefix=/usr \
150 --sysconfdir=/etc \
151 --enable-broadway-backend \
152 --enable-x11-backend \
153 --enable-wayland-backend &amp;&amp;
154make</userinput></screen>
155
156 <para>
157 Some tests fail if
158 <filename>/usr/share/glib-2.0/schemas/gschemas.compiled</filename> is not
159 found. If you wish to run the test suite, create (or update) the file
160 using the following command as the
161 <systemitem class="username">root</systemitem> user:
162 <command>glib-compile-schemas /usr/share/glib-2.0/schemas</command>.
163 </para>
164
165 <para>
166 To test the results you need a graphical session, then issue
167 <command>make -k check</command>. There are several tests that
168 have subtests that are known to fail: scrolledwindow, treeview,
169 accessibility-dump, test-css-nodes, and gtk-reftest.
170 Additionally many tests will fail if the current
171 gtk theme (such as current XFCE themes) has deprecated elements.
172 </para>
173
174 <para>
175 Now, as the <systemitem class="username">root</systemitem> user:
176 </para>
177
178<screen role="root"><userinput>make install</userinput></screen>
179
180 <note>
181 <para>
182 If you installed the package on to your system using a
183 <quote>DESTDIR</quote> method, an important file was not installed and
184 must be copied and/or generated. Generate it using the following
185 command as the <systemitem class="username">root</systemitem> user:
186 </para>
187
188<screen role="root"><userinput>gtk-query-immodules-3.0 --update-cache</userinput></screen>
189 </note>
190
191 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
192 href="../../xincludes/gsettings-destdir.xml"/>
193 </sect2>
194
195 <sect2 role="commands">
196 <title>Command Explanations</title>
197
198 <para>
199 <parameter>--enable-broadway-backend</parameter>: This switch enables the
200 HTML5 GTK backend.
201 </para>
202
203 <para>
204 <parameter>--enable-x11-backend</parameter>: This switch enables the X11
205 GDK backend.
206 </para>
207
208 <para>
209 <parameter>--enable-wayland-backend</parameter>: This switch
210 enables the Wayland GDK backend. Replace with
211 <option>--disable-wayland-backend</option> if you do not have
212 <xref linkend="wayland"/> and <xref linkend="wayland-protocols"/>
213 or you do not wish to build <application>GNOME</application> with Wayland
214 support. Other changes may be needed to allow the build to complete
215 without the wayland backend enabled. Note that a previous installation
216 of gtk+3 built with wayland will interfere with installation without
217 wayland. If this is desired, remove /usr/lib//usr/lib/libgtk-3* before
218 installation.
219 </para>
220
221 <xi:include xmlns:xi="http://www.w3.org/2001/XInclude"
222 href="../../xincludes/gtk-doc-rebuild.xml"/>
223
224 </sect2>
225
226 <sect2 role="configuration">
227 <title>Configuring GTK+ 3</title>
228
229 <sect3 id="gtk3-config">
230 <title>Config Files</title>
231 <para>
232 <filename>~/.config/gtk-3.0/settings.ini</filename> and
233 <filename>/etc/gtk-3.0/settings.ini</filename>
234 </para>
235
236 <indexterm zone="gtk3 gtk3-config">
237 <primary sortas="e-AA.home-settings.ini">~/.config/gtk-3.0/settings.ini</primary>
238 </indexterm>
239
240 <indexterm zone="gtk3 gtk3-config">
241 <primary sortas="e-etc-path-settings.ini">/etc/gtk-3.0/settings.ini</primary>
242 </indexterm>
243 </sect3>
244
245 <sect3><title>Configuration Information</title>
246
247 <para>
248 <application>GTK+ 3</application> themes change the way a
249 <application>GTK+ 3</application> application looks. An icon theme can
250 be used to change the icons that appear on the application's toolbar.
251 If you have installed a <application>GTK+ 3</application> theme (e.g.
252 <xref linkend="gnome-themes-extra"/>), an icon theme (such as <xref
253 linkend="oxygen-icons5"/>) and/or a font (<xref linkend="dejavu-fonts"/>),
254 you can set your preferences in <filename>~/.config/gtk-3.0/settings.ini</filename>,
255 or the default system wide configuration file (as the <systemitem
256 class="username">root</systemitem> user), in
257 <filename>/etc/gtk-3.0/settings.ini</filename>. For the local user an
258 example is:
259 </para>
260
261<screen><userinput>mkdir -vp ~/.config/gtk-3.0
262cat &gt; ~/.config/gtk-3.0/settings.ini &lt;&lt; "EOF"
263<literal>[Settings]
264gtk-theme-name = <replaceable>Adwaita</replaceable>
265gtk-icon-theme-name = <replaceable>oxygen</replaceable>
266gtk-font-name = <replaceable>DejaVu Sans 12</replaceable>
267gtk-cursor-theme-size = <replaceable>18</replaceable>
268gtk-toolbar-style = <replaceable>GTK_TOOLBAR_BOTH_HORIZ</replaceable>
269gtk-xft-antialias = <replaceable>1</replaceable>
270gtk-xft-hinting = <replaceable>1</replaceable>
271gtk-xft-hintstyle = <replaceable>hintslight</replaceable>
272gtk-xft-rgba = <replaceable>rgb</replaceable>
273gtk-cursor-theme-name = <replaceable>Adwaita</replaceable></literal>
274EOF</userinput></screen>
275
276 <para>
277 There are many settings keys, some with default values. You can find
278 them at <ulink
279 url="https://developer.gnome.org/gtk3/stable/GtkSettings.html">Settings:
280 GTK+ 3 Reference Manual</ulink>. There are many more themes available at
281 <ulink url="http://gnome-look.org/"/> and other places.
282 </para>
283
284 </sect3>
285 </sect2>
286
287 <sect2 role="content">
288 <title>Contents</title>
289
290 <segmentedlist>
291 <segtitle>Installed Programs</segtitle>
292 <segtitle>Installed Libraries</segtitle>
293 <segtitle>Installed Directories</segtitle>
294
295 <seglistitem>
296 <seg>
297 broadwayd,
298 gtk3-demo,
299 gtk3-demo-application,
300 gtk3-icon-browser,
301 gtk3-widget-factory,
302 gtk-builder-tool,
303 gtk-encode-symbolic-svg,
304 gtk-launch,
305 gtk-query-immodules-3.0,
306 gtk-query-settings, and
307 gtk-update-icon-cache
308 </seg>
309 <seg>
310 libgailutil-3.so, libgdk-3.so, and libgtk-3.so
311 </seg>
312 <seg>
313 /etc/gtk-3.0,
314 /usr/include/{gail,gtk}-3.0,
315 /usr/{lib,share}/gtk-3.0,
316 /usr/share/gtk-doc/html/{gail-libgail-util,gdk,gtk}3, and
317 /usr/share/themes/{Default,Emacs}/gtk-3.0
318 </seg>
319 </seglistitem>
320 </segmentedlist>
321
322 <variablelist>
323 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
324 <?dbfo list-presentation="list"?>
325 <?dbhtml list-presentation="table"?>
326
327 <varlistentry id="broadwayd">
328 <term><command>broadwayd</command></term>
329 <listitem>
330 <para>
331 provides support for displaying
332 <application>GTK+ 3</application> applications in a web browser,
333 using HTML5 and web sockets.
334 </para>
335 <indexterm zone="gtk3 broadwayd">
336 <primary sortas="b-broadwayd">broadwayd</primary>
337 </indexterm>
338 </listitem>
339 </varlistentry>
340
341 <varlistentry id="gtk3-demo">
342 <term><command>gtk3-demo</command></term>
343 <listitem>
344 <para>
345 is a simple program that demonstrates some of the tasks that can be
346 done with <application>GTK+ 3</application>
347 </para>
348 <indexterm zone="gtk3 gtk3-demo">
349 <primary sortas="b-gtk3-demo">gtk3-demo</primary>
350 </indexterm>
351 </listitem>
352 </varlistentry>
353
354 <varlistentry id="gtk3-demo-application">
355 <term><command>gtk3-demo-application</command></term>
356 <listitem>
357 <para>
358 is a simple <application>GTK+ 3</application> application.
359 </para>
360 <indexterm zone="gtk3 gtk3-demo-application">
361 <primary sortas="b-gtk3-demo-application">gtk3-demo-application</primary>
362 </indexterm>
363 </listitem>
364 </varlistentry>
365
366 <varlistentry id="gtk3-icon-browser">
367 <term><command>gtk3-icon-browser</command></term>
368 <listitem>
369 <para>
370 is a utility to explore the icons in the current icon theme. It
371 shows icons in various sizes, their symbolic variants where
372 available, as well as a description of the icon and its context.
373 </para>
374 <indexterm zone="gtk3 gtk3-icon-browser">
375 <primary sortas="b-gtk3-icon-browser">gtk3-icon-browser</primary>
376 </indexterm>
377 </listitem>
378 </varlistentry>
379
380 <varlistentry id="gtk3-widget-factory">
381 <term><command>gtk3-widget-factory</command></term>
382 <listitem>
383 <para>
384 is a program to view <application>GTK+ 3</application> themes and widgets.
385 </para>
386 <indexterm zone="gtk3 gtk3-widget-factory">
387 <primary sortas="b-gtk3-widget-factory">gtk3-widget-factory</primary>
388 </indexterm>
389 </listitem>
390 </varlistentry>
391
392 <varlistentry id="gtk-builder-tool">
393 <term><command>gtk-builder-tool</command></term>
394 <listitem>
395 <para>
396 can perform various operations on GtkBuilder .ui files.
397 </para>
398 <indexterm zone="gtk3 gtk-builder-tool">
399 <primary sortas="b-gtk-builder-tool">gtk-builder-tool</primary>
400 </indexterm>
401 </listitem>
402 </varlistentry>
403
404 <varlistentry id="gtk-encode-symbolic-svg">
405 <term><command>gtk-encode-symbolic-svg</command></term>
406 <listitem>
407 <para>
408 converts symbolic svg icons into specially prepared png files.
409 <application>GTK+ 3</application> can load and recolor these pngs,
410 just like original svgs, but loading them is much faster.
411 </para>
412 <indexterm zone="gtk3 gtk-encode-symbolic-svg">
413 <primary sortas="b-gtk-encode-symbolic-svg">gtk-encode-symbolic-svg</primary>
414 </indexterm>
415 </listitem>
416 </varlistentry>
417
418 <varlistentry id="gtk-launch">
419 <term><command>gtk-launch</command></term>
420 <listitem>
421 <para>
422 launches an application using the given name. The name should match
423 the application desktop file name, as residing in
424 <filename class="directory">/usr/share/applications</filename>, with
425 or without the '.desktop' suffix.
426 </para>
427 <indexterm zone="gtk3 gtk-launch">
428 <primary sortas="b-gtk-launch">gtk-launch</primary>
429 </indexterm>
430 </listitem>
431 </varlistentry>
432
433 <varlistentry id="gtk-query-immodules-3.0">
434 <term><command>gtk-query-immodules-3.0</command></term>
435 <listitem>
436 <para>
437 collects information about loadable input method modules for
438 <application>GTK+ 3</application> and writes it to the default cache
439 file location, or to standard output.
440 </para>
441 <indexterm zone="gtk3 gtk-query-immodules-3.0">
442 <primary sortas="b-gtk-query-immodules-3.0">gtk-query-immodules-3.0</primary>
443 </indexterm>
444 </listitem>
445 </varlistentry>
446
447 <varlistentry id="gtk-query-settings">
448 <term><command>gtk-query-settings</command></term>
449 <listitem>
450 <para>
451 provides a complete listing of all settings related to
452 <application>GTK+ 3</application>
453 </para>
454 <indexterm zone="gtk3 gtk-query-settings">
455 <primary sortas="b-gtk-query-settings">gtk-query-settings</primary>
456 </indexterm>
457 </listitem>
458 </varlistentry>
459
460 <varlistentry id="gtk-update-icon-cache3">
461 <term><command>gtk-update-icon-cache</command></term>
462 <listitem>
463 <para>
464 is an icon theme caching utility that creates mmap()able cache files
465 for icon themes.
466 </para>
467 <indexterm zone="gtk3 gtk-update-icon-cache3">
468 <primary sortas="b-gtk-update-icon-cache3">gtk-update-icon-cache</primary>
469 </indexterm>
470 </listitem>
471 </varlistentry>
472
473 <varlistentry id="libgailutil-3">
474 <term><filename class="libraryfile">libgailutil-3.so</filename></term>
475 <listitem>
476 <para>
477 contains functions that implement the accessibility interfaces
478 defined by the <application>GNOME</application> Accessibility
479 Toolkit.
480 </para>
481 <indexterm zone="gtk3 libgailutil-3">
482 <primary sortas="c-libgailutil-3">libgailutil-3.so</primary>
483 </indexterm>
484 </listitem>
485 </varlistentry>
486
487 <varlistentry id="libgdk-3">
488 <term><filename class="libraryfile">libgdk-3.so</filename></term>
489 <listitem>
490 <para>
491 contains functions that act as a wrapper around the low-level
492 drawing and windowing functions provided by the underlying graphics
493 system.
494 </para>
495 <indexterm zone="gtk3 libgdk-3">
496 <primary sortas="c-libgdk-3">libgdk-3.so</primary>
497 </indexterm>
498 </listitem>
499 </varlistentry>
500
501 <varlistentry id="libgtk-3">
502 <term><filename class="libraryfile">libgtk-3.so</filename></term>
503 <listitem>
504 <para>
505 contains functions that provide an API to implement graphical user
506 interfaces.
507 </para>
508 <indexterm zone="gtk3 libgtk-3">
509 <primary sortas="c-libgtk-3">libgtk-3.so</primary>
510 </indexterm>
511 </listitem>
512 </varlistentry>
513
514 </variablelist>
515
516 </sect2>
517
518</sect1>
Note: See TracBrowser for help on using the repository browser.