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

XML-based font configuration API for X Windows. Version 2.18.2 via Homebrew; verified 2026-07-29. Also installable with debian: sudo apt install fontconfig.

## 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/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-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/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

## Package facts

- **Package key:** brew:fontconfig
- **Package manager:** Homebrew
- **Version:** 2.18.2
- **Source summary:** XML-based font configuration API for X Windows
- **Homepage:** <https://wiki.freedesktop.org/www/Software/fontconfig/>
- **Last updated:** 2026-07-29T17:23:24+01:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- 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)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 2.18.2
## 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
## 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.18.1-r0: 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.18.1-r0: 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.18.1-r0: 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


## Combined YAML source

View the package source record on GitHub. [combined/fontconfig.yml](https://github.com/mxcl/pkgdb/blob/main/combined/fontconfig.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated configuration and credential file locations
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
