Introduksjon til GTK 4
GTK 4 pakken inneholder
biblioteker som brukes til å lage grafiske brukergrensesnitt for
applikasjoner.
Denne pakken er kjent for å bygge og fungere riktig ved å bruke en
LFS 12.3 plattform.
Pakkeinformasjon
-
Nedlasting (HTTP):
https://download.gnome.org/sources/gtk/4.16/gtk-4.16.12.tar.xz
-
Nedlasting MD5 sum: 0f2b154a0b05e4ca94a05aaeb7e1f3fb
-
Nedlastingsstørrelse: 18 MB
-
Estimert diskplass som kreves: 1.1 GB (med dokumenter; legg
til 157 MB for tester)
-
Estimert byggetid: 1.7 SBU (bruker parallellisme=4; med
dokumenter; legg til 1.1 SBU for tester eller 3.7 SBU for
NVIDIA)
Ytterligere nedlastinger
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.0, Pango-1.56.1,
PyGObject-3.50.0, og wayland-protocols-1.40
Anbefalt
adwaita-icon-theme-47.0 (standard for
enkelte gtk4 innstillingsnøkler), gst-plugins-bad-1.24.12, glslc from shaderc-2024.4, gst-plugins-good-1.24.12 (kjøretid,
bygget med libvpx-1.15.0), hicolor-icon-theme-0.18 (nødvendig
for tester og for standarder), og librsvg-2.59.2, og Vulkan-Loader-1.4.304
Anbefalt (Påkrevd hvis GNOME bygges)
GLib-2.82.5 (med GObject Introspection)
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.8.2, cpdb, pydbus (for
noen tester), og sysprof
Installasjon av GTK 4
Fiks brudd på PNG fargerommets deserialisering med libpng-1.6.45
eller senere:
patch -Np1 -i ../gtk-4.16.12-libpng_1_6_45-1.patch
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.16.12'@" -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.8.2 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.304 or glslc from shaderc-2024.4
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-icon-browser, gtk4-launch, gtk4-node-editor,
gtk4-print-editor, gtk4-query-settings, 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-icon-browser
|
er et verktøy for å utforske ikonene i det gjeldende
ikontemaet. Den viser ikoner i ulike størrelser, deres
symbolske varianter når tilgjengelig, samt en beskrivelse
av ikonet og dets kontekst
|
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-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-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
|