source: x/lib/gtk+3.xml@ 92503bc

10.0 10.1 11.0 9.0 9.1 ken/refactor-virt lazarus qt5new trunk upgradedb xry111/git-date xry111/git-date-for-trunk xry111/git-date-test
Last change on this file since 92503bc was 92503bc, checked in by Douglas R. Reno <renodr@…>, 2 years ago

Update to GTK+-3.24.9

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

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