source: x/lib/gtk+3.xml@ 27ebd7a

10.0 10.1 11.0 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 upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 27ebd7a was 27ebd7a, checked in by Bruce Dubbs <bdubbs@…>, 4 years ago

Update to gtk+-3.24.14.

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

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