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
                   
                 |