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

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt perl-modules 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 b541318 was b541318, checked in by Bruce Dubbs <bdubbs@…>, 7 years ago

Update to pango 1.40.8.
Update to gtk+3 3.22.18.
Update to gdk-pixbuf 2.36.8.
Update to zsh and zsh-doc 5.4.1.

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

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