macOS
brew install cairolocal Homebrew formula metadata
sudo port install cairoMacPorts ports tree · graphics/cairo/Portfile · source: api.github.com
brew
Vector graphics library with cross-device output support. Version 1.18.4 via Homebrew; verified from local package data.
install
brew install cairolocal Homebrew formula metadata
sudo port install cairoMacPorts ports tree · graphics/cairo/Portfile · source: api.github.com
sudo apk add cairoAlpine Linux edge package indexes · cairo · source: dl-cdn.alpinelinux.org
sudo apt install libcairo-gobject2Debian stable package indexes · libcairo-gobject2 · source: deb.debian.org
sudo dnf install cairoFedora Rawhide package metadata · cairo · source: dl.fedoraproject.org
nix profile install nixpkgs#caironixpkgs package indexes · pkgs/by-name/ca/cairo/package.nix · source: api.github.com
sudo pacman -S cairoArch Linux sync databases · cairo · source: geo.mirror.pkgbuild.com
sudo zypper install cairo-developenSUSE Tumbleweed package metadata · cairo-devel · source: download.opensuse.org
overview
Vector graphics library with cross-device output support
history
Cairo is a C 2D graphics library that provides a PostScript/PDF-like drawing API over multiple output backends, including X11, XCB, Quartz, Win32, image buffers, PDF, PostScript, and SVG.
The official repository README says cairo was originally developed by Carl Worth and Keith Packard. Cairo's early identity was a cross-device vector rendering library: the documentation archive points to a 2003 paper under the earlier Xr name and later cairo presentations from 2005.
The 1.0.0 release announcement on 2005-08-24 marked the stable API/ABI line for 1.x.y releases. At that point xlib, image, and win32 were supported backends, while Glitz, PostScript, PDF, Quartz, and XCB were experimental. Modern project documentation lists a wider set of supported targets, including PDF, PostScript, SVG, Quartz, Win32, Xlib, and XCB.
Cairo is tied closely to pixman for pixel compositing and to desktop text/rendering stacks through fontconfig, FreeType, platform font backends, and toolkit bindings. The project continues to publish releases through cairographics.org, with the official news page listing releases up to 1.18.4 in 2025.
Cairo became infrastructure rather than an end-user app. The official bindings page lists bindings for languages including C++, Haskell, Java, Perl, PHP, Python, Ruby, and others, and notes toolkit integration such as GTK+ 2.8+ support. That binding and toolkit spread made cairo a common dependency in Linux desktop, document, plotting, and image-generation software.
Package-manager adoption is broad: the input facts list Cairo across Homebrew, Debian/Ubuntu, Fedora, Alpine, Arch, MacPorts, Nix, and openSUSE-style packaging. That breadth reflects cairo's role as a shared graphics primitive for higher-level applications.
Developers use cairo to draw vector graphics, text, paths, patterns, and transformed/composited images to screen and file surfaces. Common package builds enable image, PNG, PDF, PostScript, SVG, Xlib, XCB, FreeType, fontconfig, Quartz, or Windows backends depending on platform needs.
The Homebrew package exposes cairo-trace, but most users consume cairo as a library dependency through headers, pkg-config metadata, and language bindings.
Cairo is one of those packages that explains why dependency graphs get deep: a small API surface at the application level hides years of rendering, font, backend, and platform compatibility work. For package nerds it is a foundational desktop graphics dependency, sitting between low-level raster compositing in pixman and higher-level toolkits, browsers, plotting libraries, and document renderers.
Its dual LGPL/MPL licensing, stable 1.x compatibility promise, backend matrix, and language bindings made it unusually reusable across open-source desktop stacks and proprietary-friendly distribution scenarios.
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 |
|---|---|---|---|
cairo-trace | 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:cairo |
|---|---|
| Version | 1.18.4 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/cairo |
| Homepage | https://cairographics.org/ |
| Repository | https://gitlab.freedesktop.org/cairo/cairo |
| Upstream docs | https://www.cairographics.org/documentation |
| License | LGPL-2.1-only OR MPL-1.1 |
| Source archive | https://cairographics.org/releases/cairo-1.18.4.tar.xz |
| Dependencies | fontconfig, freetype, gettext, glib, libpng, libx11, libxcb, libxext, libxrender, lzo, pixman |
| Build dependencies | meson, ninja, pkgconf |
| 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 | cairo |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| 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.
libcairo-gobject2 1.18.4-1+b1
Cairo 2D vector graphics library (GObject library)
sudo apt install libcairo-gobject2libcairo-script-interpreter2 1.18.4-1+b1
Cairo 2D vector graphics library (script interpreter)
sudo apt install libcairo-script-interpreter2libcairo2 1.18.4-1+b1
Cairo 2D vector graphics library
sudo apt install libcairo2libcairo2-dev 1.18.4-1+b1
Development files for the Cairo 2D graphics library
sudo apt install libcairo2-devlibcairo2-doc 1.18.4-1
Documentation for the Cairo Multi-platform 2D graphics library
sudo apt install libcairo2-doccairo
nix profile install nixpkgs#cairolibcairo-gobject2 1.18.0-3build1
Cairo 2D vector graphics library (GObject library)
sudo apt install libcairo-gobject2libcairo-script-interpreter2 1.18.0-3build1
Cairo 2D vector graphics library (script interpreter)
sudo apt install libcairo-script-interpreter2libcairo2 1.18.0-3build1
Cairo 2D vector graphics library
sudo apt install libcairo2libcairo2-dev 1.18.0-3build1
Development files for the Cairo 2D graphics library
sudo apt install libcairo2-devlibcairo2-doc 1.18.0-3build1
Documentation for the Cairo Multi-platform 2D graphics library
sudo apt install libcairo2-doccairo 1.18.4-r1
A vector graphics library
sudo apk add cairocairo-dbg 1.18.4-r1
A vector graphics library (debug symbols)
sudo apk add cairo-dbgcairo-dev 1.18.4-r1
A vector graphics library (development files)
sudo apk add cairo-devcairo-doc 1.18.4-r1
A vector graphics library (documentation)
sudo apk add cairo-doccairo-gobject 1.18.4-r1
A vector graphics library (gobject bindings)
sudo apk add cairo-gobjectsource 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.