# Install fontconfig with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, zypper

XML-based font configuration API for X Windows. Version 2.18.1 via Homebrew; verified 2026-06-29.

## Install

```sh
sudo av install brew:fontconfig
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fontconfig
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fontconfig
```

  Evidence: MacPorts ports tree: graphics/fontconfig/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add fontconfig
```

  Evidence: Alpine Linux edge package indexes: fontconfig from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install fontconfig
```

  Evidence: Debian stable package indexes: fontconfig from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install fontconfig
```

  Evidence: Fedora Rawhide package metadata: fontconfig from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#fontconfig
```

  Evidence: nixpkgs package indexes: fontconfig from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S fontconfig
```

  Evidence: Arch Linux sync databases: fontconfig from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install fontconfig
```

  Evidence: openSUSE Tumbleweed package metadata: fontconfig from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

## Package facts

- **Package key:** brew:fontconfig
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fontconfig>
- **Version:** 2.18.1
- **Source summary:** XML-based font configuration API for X Windows
- **Homepage:** <https://wiki.freedesktop.org/www/Software/fontconfig/>
- **Repository:** <https://gitlab.freedesktop.org/fontconfig/fontconfig>
- **Upstream docs:** <https://wiki.freedesktop.org/www/Software/fontconfig>
- **License:** HPND-sell-variant AND Unicode-3.0 AND MIT-Modern-Variant AND MIT AND LicenseRef-Homebrew-public-domain
- **Source archive:** <https://gitlab.freedesktop.org/fontconfig/fontconfig/-/archive/2.18.1/fontconfig-2.18.1.tar.gz>
- **Last updated:** 2026-06-29T14:07:21Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fc-cache (cli)
- fc-cat (cli)
- fc-conflist (cli)
- fc-genconf (cli)
- fc-list (cli)
- fc-match (cli)
- fc-pattern (cli)
- fc-query (cli)
- fc-scan (cli)
- fc-validate (cli)
- fc-cache (alias)
- fc-cat (alias)
- fc-conflist (alias)
- fc-genconf (alias)
- fc-list (alias)
- fc-match (alias)
- fc-pattern (alias)
- fc-query (alias)
- fc-scan (alias)
- fc-validate (alias)

## Dependencies

- freetype
- gettext

## Build dependencies

- gettext
- meson
- ninja
- pkgconf

## Uses from macOS

- expat

## Install behavior

- Post-install hook: defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.18.1
- Package-manager updated: 2026-06-29
- Local data: ok
- Upstream repository: https://wiki.freedesktop.org/www/Software/fontconfig/
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

fontconfig is the freedesktop.org font discovery, matching, and configuration library used by Unix-like desktop and application stacks to centralize font access.

### Project history

The freedesktop project page describes fontconfig as a library for configuring and customizing font access. Its README and user documentation emphasize automatic font discovery, font-name substitution, language coverage matching, XML configuration, and cooperation with FreeType and the X Render Extension.

The user documentation explains the core architecture: a configuration module builds internal state from XML files, while a matching module accepts font patterns and returns the nearest matching font. The design goal was to centralize font installation and customization so applications would not each invent private font configuration systems.

### Adoption history

fontconfig became infrastructure rather than an end-user application. Its value came from being shared by many applications and toolkits, independent of the X Window System, with command-line utilities such as `fc-cache`, `fc-list`, `fc-match`, `fc-query`, and related inspection tools.

The release directory and tag history show a long-running 2.x series, from early `fcpackage` and 2.2-era releases through current stable releases documented on the freedesktop project page.

### How it is used

Administrators and users configure fontconfig through XML files such as `/etc/fonts/fonts.conf`, `/etc/fonts/conf.d`, `$XDG_CONFIG_HOME/fontconfig/fonts.conf`, and per-user legacy files. Applications use the library to locate fonts, substitute missing families, and obtain file and rendering metadata.

The command-line tools form a practical maintenance layer: `fc-cache` refreshes caches, `fc-list` enumerates fonts, `fc-match` shows matching decisions, and `fc-query` or `fc-scan` inspect font files.

### Why package nerds care

fontconfig is one of the packages that makes desktop Linux font behavior feel coherent. Package maintainers care about it because bad cache handling, misplaced config snippets, or mismatched defaults can affect text rendering across a whole system.

### Timeline

- 2000s: Early fontconfig 2.x and `fcpackage` tags appear in the freedesktop release history.
- 2012: The release directory lists fontconfig 2.10.0.
- 2018: The release directory lists fontconfig 2.13.0.
- 2025: The release directory lists fontconfig 2.16.0.
- 2026: The project page identifies the current stable series as 2.17.1, while repository tags show later 2.18.x tags.

### Related projects

- fontconfig is explicitly related to FreeType and the X Render Extension, and it sits alongside freedesktop.org desktop plumbing used by font-aware applications and toolkits.

### Sources

- <https://gitlab.freedesktop.org/fontconfig/fontconfig/-/raw/main/README.md>
- <https://wiki.freedesktop.org/www/Software/fontconfig>
- <https://www.freedesktop.org/software/fontconfig/fontconfig-user.html>
- <https://www.freedesktop.org/software/fontconfig/release/>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.


## Configuration files

- Unix: /etc/fonts/fonts.conf, /etc/fonts/conf.d, $XDG_CONFIG_HOME/fontconfig/fonts.conf, $XDG_CONFIG_HOME/fontconfig/conf.d, ~/.fonts.conf, ~/.fonts.conf.d
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** fontconfig
- **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:** head, stable

## Other Package-Manager Records

- Debian apt - fontconfig - 2.15.0-2.3: normalized package name match | Debian stable package indexes: fontconfig from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - support binaries | https://www.freedesktop.org/wiki/Software/fontconfig/
- Debian apt - fontconfig-config - 2.15.0-2.3: normalized package name match | Debian stable package indexes: fontconfig-config from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - configuration | https://www.freedesktop.org/wiki/Software/fontconfig/
- Debian apt - libfontconfig-dev - 2.15.0-2.3: normalized package name match | Debian stable package indexes: libfontconfig-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - development | https://www.freedesktop.org/wiki/Software/fontconfig/
- Debian apt - libfontconfig-doc - 2.15.0-2.3: normalized package name match | Debian stable package indexes: libfontconfig-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - documentation | https://www.freedesktop.org/wiki/Software/fontconfig/
- Debian apt - libfontconfig1 - 2.15.0-2.3: normalized package name match | Debian stable package indexes: libfontconfig1 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - runtime | https://www.freedesktop.org/wiki/Software/fontconfig/
- Debian apt - libfontconfig1-dev - 2.15.0-2.3: normalized package name match | Debian stable package indexes: libfontconfig1-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | generic font configuration library - dummy package | https://www.freedesktop.org/wiki/Software/fontconfig/
- Nix - fontconfig: normalized package name match | nixpkgs package indexes: fontconfig from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - fontconfig - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: fontconfig from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - support binaries | https://www.freedesktop.org/wiki/Software/fontconfig/
- Ubuntu apt - fontconfig-config - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: fontconfig-config from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - configuration | https://www.freedesktop.org/wiki/Software/fontconfig/
- Ubuntu apt - libfontconfig-dev - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: libfontconfig-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - development | https://www.freedesktop.org/wiki/Software/fontconfig/
- Ubuntu apt - libfontconfig-doc - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: libfontconfig-doc from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - documentation | https://www.freedesktop.org/wiki/Software/fontconfig/
- Ubuntu apt - libfontconfig1 - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: libfontconfig1 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - runtime | https://www.freedesktop.org/wiki/Software/fontconfig/
- Ubuntu apt - libfontconfig1-dev - 2.15.0-1.1ubuntu2: normalized package name match | Ubuntu 24.04 LTS package indexes: libfontconfig1-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | generic font configuration library - dummy package | https://www.freedesktop.org/wiki/Software/fontconfig/
- apk - fontconfig - 2.17.1-r1: normalized package name match | Alpine Linux edge package indexes: fontconfig from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for configuring and customizing font access | https://www.freedesktop.org/wiki/Software/fontconfig
- apk - fontconfig-dev - 2.17.1-r1: normalized package name match | Alpine Linux edge package indexes: fontconfig-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for configuring and customizing font access (development files) | https://www.freedesktop.org/wiki/Software/fontconfig
- apk - fontconfig-doc - 2.17.1-r1: normalized package name match | Alpine Linux edge package indexes: fontconfig-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for configuring and customizing font access (documentation) | https://www.freedesktop.org/wiki/Software/fontconfig


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Media and graphics packages](https://www.automicvault.com/pkg/media-graphics-tools/) - Matched media, image, audio, video, or graphics metadata.
- [freetype](https://www.automicvault.com/pkg/brew/freetype/) - Runtime dependency declared by Homebrew.
- [gettext](https://www.automicvault.com/pkg/brew/gettext/) - Runtime dependency declared by Homebrew.
- [meson](https://www.automicvault.com/pkg/brew/meson/) - Build dependency declared by Homebrew.
- [ninja](https://www.automicvault.com/pkg/brew/ninja/) - Build dependency declared by Homebrew.
- [pkgconf](https://www.automicvault.com/pkg/brew/pkgconf/) - Build dependency declared by Homebrew.
- [autotrace](https://www.automicvault.com/pkg/brew/autotrace/) - Popular package that depends on this formula.
- [cairo](https://www.automicvault.com/pkg/brew/cairo/) - Popular package that depends on this formula.
- [clip](https://www.automicvault.com/pkg/brew/clip/) - Popular package that depends on this formula.
- [cloudflare-quiche](https://www.automicvault.com/pkg/brew/cloudflare-quiche/) - Popular package that depends on this formula.
- [ddd](https://www.automicvault.com/pkg/brew/ddd/) - Popular package that depends on this formula.
- [dmenu](https://www.automicvault.com/pkg/brew/dmenu/) - Popular package that depends on this formula.
- [dmtx-utils](https://www.automicvault.com/pkg/brew/dmtx-utils/) - Popular package that depends on this formula.
- [dspdfviewer](https://www.automicvault.com/pkg/brew/dspdfviewer/) - Popular package that depends on this formula.
- [eot-utils](https://www.automicvault.com/pkg/brew/eot-utils/) - Shares av.db curated category or tags: cli, fonts, media.
- [font-util](https://www.automicvault.com/pkg/brew/font-util/) - Shares av.db curated category or tags: cli, fonts, media.
- [fontforge](https://www.automicvault.com/pkg/brew/fontforge/) - Shares av.db curated category or tags: cli, fonts, media.
- [mftrace](https://www.automicvault.com/pkg/brew/mftrace/) - Shares av.db curated category or tags: cli, fonts, media.
- [psftools](https://www.automicvault.com/pkg/brew/psftools/) - Shares av.db curated category or tags: cli, fonts, media.
- [graphite2](https://www.automicvault.com/pkg/brew/graphite2/) - Shares av.db curated category or tags: cli, fonts, media.
- [otf2bdf](https://www.automicvault.com/pkg/brew/otf2bdf/) - Shares av.db curated category or tags: cli, fonts, media.
- [pulseaudio](https://www.automicvault.com/pkg/brew/pulseaudio/) - Local package facts share a topical domain. Shared terms: cli, gettext, media.
- [poppler](https://www.automicvault.com/pkg/brew/poppler/) - Local package facts share a topical domain. Shared terms: based, cli, fontconfig, freetype, gettext.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
