source: x/lib/gtk+3.xml@ 59e19f73

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 59e19f73 was 316d2235, checked in by Douglas R. Reno <renodr@…>, 6 years ago

Update to gtk+-3.24.0
Update to gdk-pixbuf-2.38.0

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