source: x/lib/gtk+3.xml@ 11551baf

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.0 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 11551baf was 11551baf, checked in by Pierre Labastie <pieere@…>, 7 years ago

Fix use of wayland in GTK+-3

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

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