BSD Ports

x11-toolkits/gtk40 4.24.0_1 MidnightBSD

Gimp Toolkit for X11 GUI (current stable version)

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
Last update
Commit
0e914cbc34
License
lgpl2.1+
Categories
x11-toolkits

Description

GTK+ is a collection of GUI widgets. GTK+ essentially provides the building blocks from which GUIs can be built. It is highly themable, and its functionality is highly extensible.

In the other systems

The newest version among them is 4.24.0, as upstream numbers it.

SystemPortVersionVulnerabilitiesStatusMaintainerLast update
MidnightBSDx11-toolkits/gtk404.24.0_1 newestno data-[email protected]2026-09-18
FreeBSDx11-toolkits/gtk404.20.4 behind since 2026-09-11none known-[email protected]-
NetBSDx11/gtk4 by name4.22.4nb1 behind since 2026-09-11none known-[email protected]2026-10-07
DragonFlyx11-toolkits/gtk404.18.4 behind since 2026-09-09none known-[email protected]-
HardenedBSDx11-toolkits/gtk404.20.4 behind since 2026-09-11no data-[email protected]-
GhostBSDx11-toolkits/gtk404.20.4 behind since 2026-09-11no data-[email protected]-

Compare across BSDs

Version history 3

  1. 4.24.0 973ea83046
  2. 4.22.5 e66da84d73
  3. 4.20.4 fe36fca34c

Upstream's version as each commit to the port's Makefile set it, or as this site first saw it in the system's packages; the tree's own revisions are not versions here.

Install

Binary package:

mport install gtk4

From mports:

cd /usr/mports/x11-toolkits/gtk40 && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	gtk4>0:x11-toolkits/gtk40
LIB_DEPENDS=	libgtk-4.so:x11-toolkits/gtk40

Dependency graph

Ports that need it on the left, what it needs to run on the right; at most 8 of each. "Dependencies" below lists them all.

Dependencies

As this port's Makefile names them.

Build 5

Library 7

Runtime 2

Build dependencies 12
Run dependencies 9

No port depends on this one.

Configuration

Options name: x11-toolkits_gtk

OptionDefaultDescription
ACCESSKIToffEnable AccessKit backend for accessibility (experimental)
BASHoff
BROADWAYoffEnable GDK Broadway backend for showing GTK in the webbrowser using HTML5 and web sockets.
COLORDonColor profile support
CUPSon
DEBUGoff
GSTREAMERonGStreamer multimedia backend
VULKANonGDK Vulkan renderer backend
WAYLANDonGDK Wayland backend
X11onGDK X11 backend
USES
compiler:c11 cpe display:test gettext-tools gnome jpeg localbase meson ninja pathfix perl5 python pkgconfig tar:xz
Service scripts
none

Files

pkg-plist 674
  • bin/gtk4-broadwayd
  • bin/gtk4-builder-tool
  • bin/gtk4-demo
  • bin/gtk4-demo-application
  • bin/gtk4-image-tool
  • bin/gtk4-launch
  • bin/gtk4-node-editor
  • bin/gtk4-path-tool
  • bin/gtk4-print-editor
  • bin/gtk4-query-settings
  • bin/gtk4-rendernode-tool
  • bin/gtk4-update-icon-cache
  • bin/gtk4-widget-factory
  • include/gtk-4.0/gdk/broadway/gdkbroadway.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaydisplay.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaymonitor.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaysurface.h
  • include/gtk-4.0/gdk/deprecated/gdkpixbuf.h
  • include/gtk-4.0/gdk/broadway/gdkbroadway.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaydisplay.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaymonitor.h
  • include/gtk-4.0/gdk/broadway/gdkbroadwaysurface.h
  • include/gtk-4.0/gdk/gdk.h
  • include/gtk-4.0/gdk/gdkapplaunchcontext.h
  • include/gtk-4.0/gdk/gdkcairo.h
  • include/gtk-4.0/gdk/gdkcairocontext.h
  • include/gtk-4.0/gdk/gdkcicpparams.h
  • include/gtk-4.0/gdk/gdkclipboard.h
  • include/gtk-4.0/gdk/gdkcolorstate.h
  • include/gtk-4.0/gdk/gdkconfig.h
  • include/gtk-4.0/gdk/gdkcontentdeserializer.h
  • include/gtk-4.0/gdk/gdkcontentformats.h
  • include/gtk-4.0/gdk/gdkcontentprovider.h
  • include/gtk-4.0/gdk/gdkcontentproviderimpl.h
  • include/gtk-4.0/gdk/gdkcontentserializer.h
  • include/gtk-4.0/gdk/gdkcursor.h
  • include/gtk-4.0/gdk/gdkdevice.h
  • include/gtk-4.0/gdk/gdkdevicepad.h
  • include/gtk-4.0/gdk/gdkdevicetool.h
  • include/gtk-4.0/gdk/gdkdisplay.h
  • include/gtk-4.0/gdk/gdkdisplaymanager.h
  • include/gtk-4.0/gdk/gdkdmabufformats.h
  • include/gtk-4.0/gdk/gdkdmabuftexture.h
  • include/gtk-4.0/gdk/gdkdmabuftexturebuilder.h
  • include/gtk-4.0/gdk/gdkdrag.h
  • include/gtk-4.0/gdk/gdkdragsurface.h
  • include/gtk-4.0/gdk/gdkdragsurfacesize.h
  • include/gtk-4.0/gdk/gdkdrawcontext.h
  • include/gtk-4.0/gdk/gdkdrop.h
  • include/gtk-4.0/gdk/gdkenums.h
  • include/gtk-4.0/gdk/gdkenumtypes.h
  • include/gtk-4.0/gdk/gdkevents.h
  • include/gtk-4.0/gdk/gdkframeclock.h
  • include/gtk-4.0/gdk/gdkframetimings.h
  • include/gtk-4.0/gdk/gdkglcontext.h
  • include/gtk-4.0/gdk/gdkgltexture.h
  • include/gtk-4.0/gdk/gdkgltexturebuilder.h
  • include/gtk-4.0/gdk/gdkkeys.h
  • include/gtk-4.0/gdk/gdkkeysyms.h
  • include/gtk-4.0/gdk/gdkmemorytexture.h
  • include/gtk-4.0/gdk/gdkmemorytexturebuilder.h
  • include/gtk-4.0/gdk/gdkmonitor.h
  • include/gtk-4.0/gdk/gdkpaintable.h
  • include/gtk-4.0/gdk/gdkpango.h
  • include/gtk-4.0/gdk/gdkpopup.h
  • include/gtk-4.0/gdk/gdkpopuplayout.h
  • include/gtk-4.0/gdk/gdkrectangle.h
  • include/gtk-4.0/gdk/gdkrgba.h
  • include/gtk-4.0/gdk/gdkseat.h
  • include/gtk-4.0/gdk/gdksnapshot.h
  • include/gtk-4.0/gdk/gdksurface.h
  • include/gtk-4.0/gdk/gdktexture.h
  • include/gtk-4.0/gdk/gdktexturedownloader.h
  • include/gtk-4.0/gdk/gdktoplevel.h
  • include/gtk-4.0/gdk/gdktoplevellayout.h
  • include/gtk-4.0/gdk/gdktoplevelsize.h
  • include/gtk-4.0/gdk/gdktypes.h
  • include/gtk-4.0/gdk/gdkvulkancontext.h
  • include/gtk-4.0/gdk/version/gdk-visibility.h
  • include/gtk-4.0/gdk/version/gdkversionmacros.h
  • include/gtk-4.0/gdk/x11/gdkx-autocleanups.h
  • include/gtk-4.0/gdk/x11/gdkx.h
  • include/gtk-4.0/gdk/x11/gdkx11applaunchcontext.h
  • include/gtk-4.0/gdk/x11/gdkx11device-xi2.h
  • include/gtk-4.0/gdk/x11/gdkx11device.h
  • include/gtk-4.0/gdk/x11/gdkx11devicemanager-xi2.h
  • include/gtk-4.0/gdk/x11/gdkx11devicemanager.h
  • include/gtk-4.0/gdk/x11/gdkx11display.h
  • include/gtk-4.0/gdk/x11/gdkx11dnd.h
  • include/gtk-4.0/gdk/x11/gdkx11glcontext.h
  • include/gtk-4.0/gdk/x11/gdkx11monitor.h
  • include/gtk-4.0/gdk/x11/gdkx11property.h
  • include/gtk-4.0/gdk/x11/gdkx11screen.h
  • include/gtk-4.0/gdk/x11/gdkx11selection.h
  • include/gtk-4.0/gdk/x11/gdkx11surface.h
  • include/gtk-4.0/gdk/x11/gdkx11utils.h
  • include/gtk-4.0/gdk/wayland/gdkwayland.h
  • include/gtk-4.0/gdk/wayland/gdkwaylanddevice.h
  • include/gtk-4.0/gdk/wayland/gdkwaylanddisplay.h
  • include/gtk-4.0/gdk/wayland/gdkwaylandglcontext.h

The first 100 are listed.

distinfo 1
FileSizeSHA256
gnome/gtk-4.24.0.tar.xz1.7652716e+0728ba4ac1c04f86eac09b79a163cb163a4c2b54442d9f7eccc04679062a581044
Master sites 1
  • GNOME

Commit history 8

DateCommitCreditsLog message
0e914cbc34 Lucas Holt x11-toolkits/gtk40: package additional 4.24 headers (#1460)
Follow-up to merged PR #1457. GTK 4.24 installs gtkenumlist.h and gtksvgwidget.h; add both missing public headers to pkg-plist. The corrected package fake tree contains both files. check-license and git diff --check pass. ## Summary by Sourcery Correct the GTK 4.24 package manifest to include all installed public headers. Bug Fixes: - Include the two GTK 4.24 public headers previously missing from the package plist. Build: - Increment the GTK 4 port revision for the corrected package contents. --------- Signed-off-by: Lucas Holt <[email protected]>
973ea83046 Lucas Holt x11-toolkits/gtk40: update to 4.24.0 (#1457)
Update GTK4 to 4.24.0 with LIBVERSION 1.2400.0 and refreshed plist, preserving the MidnightBSD dma-buf compatibility patch and existing postexec/postunexec hooks. Validation: makesum, patch, configure, build, fake, package, check-license, and git diff --check passed. Upstream test invocation was attempted; 9272 display/GSK cases fail in the headless build environment with Failed to open display, so tests were not suppressed. ## Summary by Sourcery Update the GTK4 port to 4.24.0 and align its build and packaging metadata with the new release. Enhancements: - Update the GTK4 port to version 4.24.0 with the corresponding library version and refreshed package file list. - Retain the MidnightBSD compatibility patch and existing package …
8a556830f4 Lucas Holt *: fix broken PORTSCOUT limit configurations (#1257)
Audited every `PORTSCOUT` setting in the tree (526 ports) against the parser in `Portscout::API` and the limit checks in `FindNewestFile()`, and fixed the 30 that could never report an update. Each one either failed to parse or excluded the port's own current version, so portscout was silently reporting nothing for them. ### What was checked Validation mirrored portscout's real behaviour rather than the documented syntax: - Tokens must match `^([A-Za-z]+):(.*)$` after `make -V` expansion; recognised keys are `site`, `limit`, `limitw`, `skipv`, `skipb`, `ignore`. - `limit` must be a compilable Perl regex; `limitw` must match `^(\d{1,2}),(even|odd)$`. - For GitHub/GitLab ports, `FindNewestFile()` normalises the tag — …
b623c55938 Lucas Holt x11-toolkits/gtk40: pass display environment to tests (#1223)
Pass `MAKE_ENV` through to Meson tests so the `display:test` extension's private Xvfb display reaches the suite. This keeps the full test suite enabled. It fixes the prior no-display failures; Cairo renderer comparisons pass under Xvfb. GL/Vulkan renderer comparisons remain limited by Xvfb's unavailable EGL/Vulkan support (`Failed to create EGL display` / `VK_ERROR_INCOMPATIBLE_DRIVER`). The GTK 4.22.5 package build, staging, package creation, and license check passed before this focused follow-up. ## Summary by Sourcery Ensure GTK tests inherit the configured display environment so they run successfully under the package's private Xvfb display. Bug Fixes: - Pass the package build environment to GTK's Meson tests so the private …
e66da84d73 Lucas Holt x11-toolkits/gtk40: update to 4.22.5 (#1192)
Updates GTK4 to 4.22.5. - Resets PORTREVISION to 0 and advances the packaged ABI filename while preserving SONAME libgtk-4.so.1. - Refreshes the MidnightBSD dma-buf compatibility patch for upstream split DMA-BUF/UDMABUF feature detection. - Uses the X11 test setup and avoids Linux-only headless tests on MidnightBSD. Validation: makesum, patch, build, fake, package, check-license, and diff check passed. The full 8,127-test suite was enabled under Xvfb; GL and Vulkan renderer comparison tests fail because this host Xvfb has no GLX/EGL display and its Vulkan ICDs cannot load (unsupported relocations), not due to the port sources. ## Summary by Sourcery Update the GTK4 port to 4.22.5 with refreshed platform compatibility, packaging metadata, and test configuration. Enhancements: …

The latest 5 of 8 in the history this site was built from.