GTK-4.8.3
Introduction to GTK 4
The GTK 4 package contains libraries used for
creating graphical user interfaces for applications.
This package is known to build and work properly
using an LFS 11.3 platform.
Package Information
GTK 4 Dependencies
Required
FriBidi-1.0.12,
gdk-pixbuf-2.42.10,
graphene-1.10.8,
ISO Codes-4.12.0,
libepoxy-1.5.10,
libxkbcommon-1.5.0,
Pango-1.50.12,
PyGObject-3.42.2, and
wayland-protocols-1.31
Recommended
adwaita-icon-theme-43 (default for some gtk4 settings keys),
gst-plugins-bad-1.22.0,
gst-plugins-good-1.22.0 (runtime,
built with libvpx-1.13.0),
hicolor-icon-theme-0.17 (needed for tests and for defaults), and
librsvg-2.54.5
Recommended (Required if building GNOME)
gobject-introspection-1.74.0
Optional
colord-1.4.6,
Cups-2.4.2,
docutils-0.19,
FFmpeg-5.1.2 (built with
libvpx-1.13.0),
Gi-DocGen-2023.1,
Highlight-4.4
(runtime, only used by gtk4-demo for syntax
highlighting of demo source code),
libcloudproviders-0.3.1,
sassc-3.6.2,
Tracker-3.4.2, and
vulkan
User Notes: https://wiki.linuxfromscratch.org/blfs/wiki/gtk4
Installation of GTK 4
Install GTK 4 by running the following
commands:
mkdir build &&
cd build &&
meson setup --prefix=/usr \
--buildtype=release \
-Dbroadway-backend=true \
.. &&
ninja
If you have Gi-DocGen-2023.1 installed and wish to build
the API documentation for this package, issue:
sed "s@'doc'@& / 'gtk-4.8.3'@" -i ../docs/reference/meson.build &&
meson configure -Dgtk_doc=true &&
ninja
To run the tests, issue: meson test --setup x11. If you
are in a Wayland session, replace x11 with wayland. A few tests may fail.
Now, as the root
user:
ninja install
Command Explanations
--buildtype=release
: Specify a buildtype
suitable for stable releases of the package, as the default may
produce unoptimized binaries.
-Dbroadway-backend=true
: This switch enables the
HTML5 GDK backend.
-Dcloudproviders=enabled
: Use this switch if you have
libcloudproviders-0.3.1 installed and wish to
enable support for cloud providers in a file chooser window.
-Dsysprof=enabled
: Use this switch if you have
sysprof-3.46.0 installed and wish to enable tracing support for
GTK4-based applications.
-Dtracker=enabled
: Use this switch if you have
Tracker-3.4.2 installed and wish to use search functionality
when running a file chooser.
-Dcolord=enabled
: Use this switch if you have
colord-1.4.6 installed and wish to use colord with the CUPS
printing backend.
-Dgtk_doc=true
: Allow building this package without Gi-DocGen-2023.1
installed. If you have Gi-DocGen-2023.1 installed and
you wish to rebuild and install the API documentation, a
meson configure command will reset this
option.
-Dman-pages=true
: Use this switch if you have
docutils-0.19 installed and wish to generate the man
pages.
Configuring GTK 4
Config Files
~/.config/gtk-4.0/settings.ini
and
/usr/share/gtk-4.0/settings.ini
Configuration Information
GTK 4 themes change the way a
GTK 4 application looks. An icon theme can
be used to change the icons that appear on the application's toolbar.
If you have installed a GTK 4 theme (e.g.
the Adwaita theme built in GTK 4),
an icon theme (such as oxygen-icons5-5.103.0) and/or a font
(Dejavu fonts), you can set your preferences in
~/.config/gtk-4.0/settings.ini
, or the default
system-wide configuration file (as the
root
user), in
/usr/share/gtk-4.0/settings.ini
. For the local
user, an example is:
mkdir -pv ~/.config/gtk-4.0
cat > ~/.config/gtk-4.0/settings.ini << "EOF"
[Settings]
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cursor-theme-size = 18
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita
EOF
There are many settings keys, some with default values. You can find
them at Settings:
GTK 4 Reference Manual.
Contents
Installed Programs:
gtk4-broadwayd,
gtk4-builder-tool,
gtk4-demo,
gtk4-demo-application,
gtk4-encode-symbolic-svg,
gtk4-icon-browser,
gtk4-launch,
gtk4-node-editor,
gtk4-print-editor,
gtk4-query-settings,
gtk4-update-icon-cache, and
gtk4-widget-factory
Installed Libraries:
libgtk-4.so
Installed Directories:
/usr/include/gtk-4.0,
/usr/lib/gtk-4.0, and
/usr/share/gtk-4.0
Short Descriptions
gtk4-broadwayd |
provides support for displaying GTK 4 applications in a web
browser using HTML5 and web sockets
|
gtk4-builder-tool |
performs various operations on GtkBuilder .ui files
|
gtk4-demo |
is a simple program that demonstrates some of the tasks that can be
done with GTK 4
|
gtk4-demo-application |
is a simple GTK 4 application which is useful for testing
|
gtk4-encode-symbolic-svg |
converts symbolic SVG icons into special PNG files. GTK 4 can load
and recolor these PNGs, just like original SVGs, but loading them
is much faster
|
gtk4-icon-browser |
is a utility to explore the icons in the current icon theme. It
shows icons in various sizes, their symbolic variants when
available, as well as a description of the icon and its context
|
gtk4-launch |
launches an application using the given name. The name should match
the application .desktop file name (as seen in
/usr/share/applications ),
with or without the '.desktop' extension
|
gtk4-node-editor |
is a utility to show and edit render node files. Such render
node files can be obtained e.g. from the GTK inspector
|
gtk4-print-editor |
is a simple program to demonstrate printing using GTK 4
applications
|
gtk4-query-settings |
provides a complete listing of all settings related to GTK 4
|
gtk4-update-icon-cache |
is an icon theme caching utility that creates mmap()able cache
files for icon themes
|
gtk4-widget-factory |
is a program to view GTK 4 themes and widgets
|
libgtk-4.so
|
contains functions that provide an API to implement graphical user
interfaces
|