macOS
brew install gliblocal Homebrew formula metadata
brew
Core application library for C. Version 2.88.2 via Homebrew; verified 2026-06-27.
install
brew install gliblocal Homebrew formula metadata
sudo apk add glibAlpine Linux edge package indexes · glib · source: dl-cdn.alpinelinux.org
sudo dnf install glibFedora Rawhide package metadata · glib · source: dl.fedoraproject.org
nix profile install nixpkgs#glibnixpkgs package indexes · pkgs/by-name/gl/glib/package.nix · source: api.github.com
sudo zypper install libgio-2_0-0openSUSE Tumbleweed package metadata · libgio-2_0-0 · source: download.opensuse.org
overview
Core application library for C
history
GLib is the low-level C foundation used by GTK and GNOME, providing portable data structures, strings, file utilities, process helpers, main-loop primitives, dynamic modules, object typing, I/O, IPC, networking, settings, and system integration APIs.
GLib emerged as the shared utility layer beneath GTK-era C applications, and GNOME's release archive shows stable 1.2 releases in 1999 before the 2.0 line began in 2002. The 2.x API family established the long-lived GLib, GObject, GModule, and GIO split documented by GTK and GNOME.
Over time, GLib expanded from basic C convenience routines into a broad application substrate. GObject supplied an object and type system for C, GModule abstracted dynamic loading, and GIO added higher-level APIs for streaming I/O, files, D-Bus, networking, resources, settings, and application integration.
The project moved its source and issue workflow to GNOME's GitLab, while release archives remained available from GNOME download infrastructure. Its documentation moved to gi-docgen-generated API pages under docs.gtk.org, reflecting GLib's role as an introspection-friendly base library for language bindings.
GLib's adoption followed GTK and GNOME but spread beyond graphical applications because it offered portable C building blocks without requiring a GUI. Projects use it for event loops, data containers, structured error handling, Unicode and string helpers, command-line option parsing, tests, and cross-platform runtime glue.
The library is a dependency root in Linux desktop stacks: installing GTK, GNOME services, GStreamer components, and many C libraries often brings GLib along. Its ABI stability and regular release train make it one of the packages that distribution maintainers track carefully during desktop, toolchain, and security updates.
Practitioners use GLib through headers such as `glib.h` and pkg-config modules such as `glib-2.0`. Application code commonly uses `GList`, `GHashTable`, `GError`, `GMainLoop`, `GOptionContext`, `GKeyFile`, and automatic cleanup helpers to write portable C with fewer platform-specific branches.
The Homebrew package also exposes developer utilities such as `glib-compile-resources`, `glib-compile-schemas`, `gdbus`, `gio`, `gsettings`, `glib-genmarshal`, and `glib-mkenums`. These tools generate resources, schemas, marshalling code, enum metadata, and D-Bus helpers used by GTK and GNOME-style applications.
GLib is package-manager infrastructure by gravity: it is small enough to be a library dependency but central enough that ABI, introspection data, and helper binaries affect large parts of a desktop stack. Packagers care about its Meson build, gir data, schema/resource tools, and tight relationship with GTK release cycles.
Because GLib abstracts platform details while staying in C, it also acts as a compatibility layer between Unix-like systems, Windows ports, language bindings, and higher-level GNOME libraries.
security posture
library-like package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
gapplication | cli | global executable | |
gdbus | cli | global executable | |
gdbus-codegen | cli | global executable | |
gi-compile-repository | cli | global executable | |
gi-decompile-typelib | cli | global executable | |
gi-inspect-typelib | cli | global executable | |
gio | cli | global executable | |
gio-querymodules | cli | global executable | |
glib-compile-resources | cli | global executable | |
glib-compile-schemas | cli | global executable | |
glib-genmarshal | cli | global executable | |
glib-gettextize | cli | global executable | |
glib-mkenums | cli | global executable | |
gobject-query | cli | global executable | |
gresource | cli | global executable | |
gsettings | cli | global executable | |
gtester | cli | global executable | |
gtester-report | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:glib |
|---|---|
| Version | 2.88.2 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/glib |
| Homepage | https://docs.gtk.org/glib/ |
| Repository | https://gitlab.gnome.org/GNOME/glib |
| Upstream docs | https://docs.gtk.org/glib |
| License | LGPL-2.1-or-later |
| Source archive | https://download.gnome.org/sources/glib/2.88/glib-2.88.2.tar.xz |
| Last updated | 2026-06-27T11:06:01-04:00 |
| Pulse | updated |
| Dependencies | gettext, pcre2 |
| Build dependencies | bison, gettext, meson, ninja, pkgconf, python-setuptools, python@3.14 |
| Uses from macOS | libffi, python |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | glib |
| Version Scheme | 0 |
| Revision | 0 |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
glib
nix profile install nixpkgs#glibglib 2.88.1-r2
Low-level core library that forms the basis for projects such as GTK and GNOME
https://developer.gnome.org/glib/
sudo apk add glibglib-bash-completion 2.88.1-r2
Bash completions for glib
https://developer.gnome.org/glib/
sudo apk add glib-bash-completionglib-dbg 2.88.1-r2
Low-level core library that forms the basis for projects such as GTK and GNOME (debug symbols)
https://developer.gnome.org/glib/
sudo apk add glib-dbgglib-dev 2.88.1-r2
Low-level core library that forms the basis for projects such as GTK and GNOME (development files)
https://developer.gnome.org/glib/
sudo apk add glib-devglib-doc 2.88.1-r2
Low-level core library that forms the basis for projects such as GTK and GNOME (documentation)
https://developer.gnome.org/glib/
sudo apk add glib-docglib-lang 2.88.1-r2
Languages for package glib
https://developer.gnome.org/glib/
sudo apk add glib-langglib-static 2.88.1-r2
Low-level core library that forms the basis for projects such as GTK and GNOME (static library)
https://developer.gnome.org/glib/
sudo apk add glib-staticglib 1.2.10-77.fc44
A library of handy utility functions
sudo dnf install glibglib-devel 1.2.10-77.fc44
Libraries and header files for glib development
sudo dnf install glib-devellibgio-2_0-0 2.88.1-1.1
A virtual file system library API
https://gitlab.gnome.org/GNOME/glib/
sudo zypper install libgio-2_0-0source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.