# Install glib with Homebrew

Core application library for C. Version 2.88.3 via Homebrew; verified 2026-08-01.

## Install

```sh
sudo av install brew:glib
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install glib
```

  Evidence: provider-native install command

## Package facts

- **Package key:** brew:glib
- **Package manager:** Homebrew
- **Version:** 2.88.3
- **Source summary:** Core application library for C
- **Homepage:** <https://docs.gtk.org/glib/>
- **Last updated:** 2026-08-01T13:16:02Z
- **Generated:** 2026-08-03T00:40:33+00:00

## Executables

- gapplication (alias)
- gdbus (alias)
- gdbus-codegen (alias)
- gi-compile-repository (alias)
- gi-decompile-typelib (alias)
- gi-inspect-typelib (alias)
- gio (alias)
- gio-querymodules (alias)
- glib-compile-resources (alias)
- glib-compile-schemas (alias)
- glib-genmarshal (alias)
- glib-gettextize (alias)
- glib-mkenums (alias)
- gobject-query (alias)
- gresource (alias)
- gsettings (alias)
- gtester (alias)
- gtester-report (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 2.88.3
## Project history and usage

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.

### Project history

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.

### Adoption history

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.

### How it is used

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.

### Why package nerds care

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.

### Timeline

- 1999: GLib 1.2.0 release archive published by GNOME.
- 2002: GLib 2.0.0 release archive published by GNOME.
- 2010s: GIO, D-Bus, settings, resources, and introspection workflows made GLib a broader application framework base.
- 2020s: gi-docgen API references and GitLab-hosted development became the normal documentation and contribution path.

### Related projects

- GLib underpins GTK and GNOME, and is closely related to GObject, GModule, GIO, GdkPixbuf, Pango, GStreamer, D-Bus, Meson, and GObject Introspection.

### Sources

- <https://docs.gtk.org/glib/>
- <https://download.gnome.org/sources/glib/>
- <https://gitlab.gnome.org/GNOME/glib>
- <https://www.gtk.org/docs/architecture/glib>


## Security Notes

library-like package without higher-risk signals.

- **Geiger risk:** green / low
- library-like package without higher-risk signals


## Combined YAML source

View the package source record on GitHub. [combined/glib.yml](https://github.com/automic-vault/db/blob/main/combined/glib.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
