GTK-4.18.3

Introduksjon til GTK 4

GTK 4 pakken inneholder biblioteker som brukes til å lage grafiske brukergrensesnitt for applikasjoner.

[Notat]

Notat

Utviklingsversjoner av BLFS kan kanskje ikke bygge eller kjøre noen pakker riktig hvis LFS eller avhengigheter har blitt oppdatert siden de siste stabile versjonene av bøkene.

Pakkeinformasjon

  • Nedlasting (HTTP): https://download.gnome.org/sources/gtk/4.18/gtk-4.18.3.tar.xz

  • Nedlasting MD5 sum: c10fe4c8ab3d4bbf88593e829ada85d3

  • Nedlastingsstørrelse: 17 MB

  • Estimert diskplass som kreves: 864 MB (med dokumenter; legg til 132 MB for tester)

  • Estimert byggetid: 1.4 SBU (bruker parallellisme=4; med dokumenter; legg til 0.8 SBU for tester eller 3.7 SBU for NVIDIA)

GTK 4 Avhengigheter

Påkrevd

FriBidi-1.0.16, gdk-pixbuf-2.42.12, graphene-1.10.8, ISO Codes-4.17.0, libepoxy-1.5.10, libxkbcommon-1.8.1, Pango-1.56.3, PyGObject-3.52.3, og wayland-protocols-1.42

Anbefalt

Anbefalt (Påkrevd hvis GNOME bygges)

Valgfri

Avahi-0.8 (for noen tester), colord-1.4.7, Cups-2.4.11, docutils-0.21.2, Gi-DocGen-2025.3, Highlight-4.15 (kjøretid, bare brukt av gtk4-demo for syntaks utheving av demo kildekoden), libcloudproviders-0.3.6, sassc-3.6.2, tinysparql-3.9.1, accesskit-c, cpdb, pydbus (for noen tester), og sysprof

Installasjon av GTK 4

Installer GTK 4 ved å kjøre følgende kommandoer:

mkdir build &&
cd    build &&

meson setup --prefix=/usr            \
            --buildtype=release      \
            -D broadway-backend=true \
            -D introspection=enabled \
            -D vulkan=enabled        \
            .. &&
ninja

Hvis du har Gi-DocGen-2025.3 installert og ønsker å bygge API dokumentasjonen for denne pakken, kjør:

sed "s@'doc'@& / 'gtk-4.18.3'@" -i ../docs/reference/meson.build &&
meson configure -D documentation=true                            &&
ninja

For å kjøre testene, utsted:

env -u{GALLIUM_DRIVER,MESA_LOADER_DRIVER_OVERRIDE}          \
    LIBGL_ALWAYS_SOFTWARE=1 VK_LOADER_DRIVERS_SELECT='lvp*' \
    dbus-run-session meson test --setup x11                 \
                                --no-suite={headless,needs-udmabuf}

Hvis du er i en Wayland økt, bytt ut den ene forekomsten av x11 med wayland. Mange tester vil mislykkes hvis ~/.config/gtk-4.0/settings.ini eksisterer og gtk-modules linjen er ikke kommentert. Flere andre tester kan mislykkes av ukjent årsak. På systemer med NVIDIA grafikkort kan testene ta betydelig lengre tid.

Nå, som root bruker:

ninja install

Parameterforklaringer

--buildtype=release: Spesifiser en byggetype egnet for stabile utgivelser av pakken, som standard kan produsere uoptimaliserte binærfiler.

-D broadway-backend=true: Denne bryteren aktiverer HTML5 GDK bakstykket.

-D introspection=enabled: Denne bryteren aktiverer å bruke GObject Introspection til å generere GIR bindinger av disse pakkene. Disse bindingene kreves av GNOME.

-D cloudproviders=enabled: Bruk denne bryteren hvis du har libcloudproviders-0.3.6 installert og ønsker å aktivere støtte for skyleverandører i et filvelgervindu.

-D tracker=enabled: Bruk denne bryteren hvis du har tinysparql-3.9.1 installert og ønsker å bruke søkefunksjonalitet når du kjører en filvelger.

-D colord=enabled: Bruk denne bryteren hvis du har colord-1.4.7 installert og ønsker å bruke colord med CUPS utskrifts bakstykket.

-D man-pages=true: Bruk denne bryteren hvis du har docutils-0.21.2 installert og ønsker å generere manualsider.

-D sysprof=enabled: Bruk denne bryteren hvis du har sysprof installert og ønsker å aktivere sporingsstøtte for GTK4 baserte applikasjoner.

-D vulkan=disabled: Bruk denne bryteren i stedet for -D vulkan=enabled hvis du ikke har Vulkan-Loader-1.4.309 or glslc from shaderc-2025.1 installert. Det vil deaktivere Vulkan backend som oppstrøms foretrekker å bruke på Wayland baserte grafiske miljøer.

LIBGL_ALWAYS_SOFTWARE=1 og VK_LOADER_DRIVERS_SELECT='lvp*': Tving testpakken å bruke softpipe eller llvmpipe Gallium driver og lavapipe Vulkan driver fra Mesa. Testpakken er så følsom at mindre forskjeller forårsaket av en annen Mesa driver kan utløse testfeil.

env -u{GALLIUM_DRIVER,MESA_LOADER_DRIVER_OVERRIDE}: Deaktiver variabler som kan komme i konflikt med LIBGL_ALWAYS_SOFTWARE=1.

--no-suite={headless,needs-udmabuf}: Deaktiver testene som krever den eksterne avhengigheten pydbus, og testene som krever enhetsnoden /dev/udmabuf. Enhetsnoden eksisterer ikke hvis funksjonen ikke er aktivert i kjernekonfigurasjon, og selv om det eksisterer kan det ikke nås som uprivilegerte brukere.

Konfigurere GTK 4

Konfigurasjonsfiler

~/.config/gtk-4.0/settings.ini og /usr/share/gtk-4.0/settings.ini

Konfigurasjonsinformasjon

GTK 4 temaer endrer måten en GTK 4 applikasjonen ser ut. Et ikontema kan brukes til å endre ikonene som vises på programmets verktøylinje. Hvis du har installert et GTK 4 tema (f.eks. Adwaita temaet bygd i GTK 4), et ikontema (som f.eks oxygen-icons-6.0.0) og/eller en font (Dejavu fonts), kan du angi dine preferanser i ~/.config/gtk-4.0/settings.ini, eller standard systemomfattende konfigurasjonsfil (som root bruker), i /usr/share/gtk-4.0/settings.ini. For en lokal bruker, et eksempel er:

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

Det finnes mange innstillingsnøkler, noen med standardverdier. Du kan finne dem på Settings: GTK 4 Reference Manual.

Innhold

Installerte Programmer: gtk4-broadwayd, gtk4-builder-tool, gtk4-demo, gtk4-demo-application, gtk4-encode-symbolic-svg, gtk4-image-tool, gtk4-launch, gtk4-node-editor, gtk4-path-editor, gtk4-print-editor, gtk4-query-settings, gtk4-rendernode-tool, gtk4-update-icon-cache, og gtk4-widget-factory
Installerte Biblioteker: libgtk-4.so
Installerte Mapper: /usr/include/gtk-4.0, /usr/lib/gtk-4.0, og /usr/share/gtk-4.0

Korte Beskrivelser

gtk4-broadwayd

gir støtte for visning av GTK 4 applikasjoner i en nettleser som bruker HTML5 og web-sockets

gtk4-builder-tool

utfører ulike operasjoner på GtkBuilder .ui filer

gtk4-demo

er et enkelt program som viser noen av oppgavene som kan bli utført med GTK 4

gtk4-demo-application

er en enkel GTK 4 applikasjon som er nyttig for testing

gtk4-encode-symbolic-svg

konverterer symbolske SVG ikoner til spesielle PNG filer. GTK 4 kan laste og farge disse PNGene på nytt, akkurat som originale SVGer, men laster dem mye raskere

gtk4-image-tool

utfører ulike operasjoner på bilder, inkludert sammenligninger, konverteringer, listeinformasjon på bildene, ommerking av bilder, og viser bildene

gtk4-launch

starter en applikasjon med det gitte navnet. Navnet skal samsvare applikasjonens .desktop filnavn (som vist i /usr/share/applications), med eller uten '.desktop' forlengelsen

gtk4-node-editor

er et verktøy for å vise og redigere gjengivelsesnodefiler. Slike gjengivelsesnodefiler kan hentes f.eks. fra GTK inspektøren

gtk4-path-tool

utfører ulike oppgaver på stier, inkludert dekomponeringer, reverseringer, restriksjoner, gjengivelse, visning av banen og listeinformasjon om stiene

gtk4-print-editor

er et enkelt program for å demonstrere utskrift med GTK 4 applikasjoner

gtk4-query-settings

gir en fullstendig liste over alle innstillinger relatert til GTK 4

gtk4-rendernode-tool

utfører ulike oppgaver på GTK-gjengivelsesnoder, inkludert benchmarks, sammenligninger, trekke ut data-URLer, vise informasjon om nodene, vise nodene og ta skjermbilder av nodene

gtk4-update-icon-cache

er et hurtigbufferverktøy for ikontema som lager mmap()able hurtigbufferfiler for ikontemaer

gtk4-widget-factory

er et program for å se GTK 4 temaer og skjermelementer

libgtk-4.so

inneholder funksjoner som gir en API for å implementere grafisk brukergrensesnitt