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-10.1 platform.

Package Information

GTK 4 Dependencies


FriBidi-1.0.9, gdk-pixbuf-2.42.4, graphene-1.10.4, ISO Codes-4.6.0, libepoxy-1.5.5, libxkbcommon-1.2.1, Pango-1.48.4, wayland-protocols-1.20,


Recommended (Required if building GNOME)


colord-1.4.5, Cups-2.3.3, GTK-Doc-1.33.2, JSON-GLib-1.6.2, rest-0.8.1, sassc-3.6.1, Tracker-3.1.1, gi-docgen, libcloudproviders, and vulkan

User Notes:

Installation of GTK 4

Install GTK 4 by running the following commands:

mkdir build &&
cd    build &&

meson --prefix=/usr -Dbroadway_backend=true .. &&

Running the test suite is not recommended unless you are in a Wayland session. If you are not in a Wayland session, around 625 tests will fail. Under a Wayland session, the number decreases to around 25. If you are in a Wayland session and wish to run the tests, issue: ninja test.

Now, as the root user:

ninja install

Command Explanations

-Dbroadway_backend=true: This switch enables the HTML5 GDK backend.

-Dcloudproviders=enabled: Use this switch if you have libcloudproviders installed and wish to enable support for cloud providers in a file chooser window.

-Dsysprof=enabled: Use this switch if you have sysprof-3.40.1 installed and wish to enable tracing support for GTK4-based applications.

-Dtracker=enabled: Use this switch if you have Tracker-3.1.1 installed and wish to use search functionality when running a file chooser.

-Dcolord=enabled: Use this switch if you have colord-1.4.5 installed and wish to use colord with the CUPS printing backend.

-Dsassc=enabled: Use this switch if you have sassc-3.6.1 installed and wish to rebuild the themes.

-Dgtk_doc=true: Use this switch if you have GTK-Doc-1.33.2 installed and wish to generate the API reference documentation.

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.79.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"
gtk-theme-name = Adwaita
gtk-icon-theme-name = oxygen
gtk-font-name = DejaVu Sans 12
gtk-cutsor-theme-size = 18
gtk-xft-antialias = 1
gtk-xft-hinting = 1
gtk-xft-hintstyle = hintslight
gtk-xft-rgba = rgb
gtk-cursor-theme-name = Adwaita

There are many settings keys, some with default values. You can find them at Settings: GTK 4 Reference Manual.


Installed Programs: gtk4-broadwayd, gtk4-builder-tool, gtk4-demo, gtk4-demo-application, gtk4-encode-symbolic-svg, gtk4-icon-browser, gtk4-launch, gtk4-print-editor, gtk4-query-settings, gtk4-update-icon-cache, and gtk4-widget-factory
Installed Libraries:
Installed Directories: /usr/include/gtk-4.0, /usr/lib/gtk-4.0, and /usr/share/gtk-4.0

Short Descriptions


provides support for displaying GTK 4 applications in a web browser using HTML5 and web sockets


performs various operations on GtkBuilder .ui files


is a simple program that demonstrates some of the tasks that can be done with GTK 4


is a simple GTK 4 application which is useful for testing


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


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


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


is a simple program to demonstrate printing using GTK 4 applications


provides a complete listing of all settings related to GTK 4


is an icon theme caching utility that creates mmap()able cache files for icon themes


is a program to view GTK 4 themes and widgets

contains functions that provide an API to implement graphical user interfaces

Last updated on 2021-04-03 03:04:42 -0500