# Install fop with Homebrew, apt, dnf, MacPorts, Nix, pacman, zypper

XSL-FO print formatter for making PDF or PS documents. Version 2.11 via Homebrew; verified 2026-06-22.

## Install

```sh
sudo av install brew:fop
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install fop
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install fop
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install fop
```

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

- dnf (92%):

```sh
sudo dnf install fop
```

  Evidence: Fedora Rawhide package metadata: fop 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#fop
```

  Evidence: nixpkgs package indexes: pkgs/by-name/fo/fop/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S fop
```

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

- zypper (92%):

```sh
sudo zypper install xmlgraphics-fop
```

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

## Package facts

- **Package key:** brew:fop
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/fop>
- **Version:** 2.11
- **Source summary:** XSL-FO print formatter for making PDF or PS documents
- **Homepage:** <https://xmlgraphics.apache.org/fop/index.html>
- **Repository:** <https://github.com/apache/xmlgraphics-fop>
- **Upstream docs:** <https://xmlgraphics.apache.org/fop/index.html>
- **License:** Apache-2.0
- **Source archive:** <https://www.apache.org/dyn/closer.lua?path=xmlgraphics/fop/binaries/fop-2.11-bin.tar.gz>
- **Last updated:** 2026-06-22T14:03:21-07:00
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- fop (cli)
- fop (alias)

## Dependencies

- openjdk

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.11
- Package-manager updated: 2026-06-22
- Local data: ok
- Upstream repository: https://xmlgraphics.apache.org/fop/index.html
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

Apache FOP, the Formatting Objects Processor, is an Apache XML Graphics project for rendering XSL formatting objects into paged output. Its primary output target is PDF, with official documentation also listing formats such as PostScript, PCL, AFP, XML area trees, print, AWT, PNG, RTF, and TXT.

### Project history

FOP has a long Apache history as a Java implementation of XSL-FO processing. The current project site frames it as both a print formatter driven by XSL-FO and an output-independent formatter that reads an FO tree and lays out pages before rendering.

The public news archive shows the older 0.20.x line in 2003, the 0.9x rewrite era in the mid-2000s, a production-grade 1.0 release in 2010, and the 2.x series beginning with FOP 2.0 in 2015.

### Adoption history

FOP became the default open-source command-line answer for XML-to-PDF pipelines in Java and Ant-era publishing workflows because XSL-FO is XML and can be generated from semantic XML using XSLT. The Apache site explicitly documents command-line running, embedding, servlet use, an Ant task, configuration, and compliance.

### How it is used

Typical usage is to convert XML-derived XSL-FO into PDF or another supported output format. The configuration guide documents fop.xconf as an XML configuration file, with a sample at {fop-dir}/conf/fop.xconf that users copy and edit before telling FOP where to find it.

### Why package nerds care

Package maintainers care about FOP because it is a Java CLI with a broad documentation surface, examples, fonts and configuration, and historical compatibility concerns across the 0.20.5, 1.x, and 2.x configuration formats. It is also the canonical Apache implementation many build systems reach for when they need deterministic PDF generation from XML.

### Timeline

- 2003: Apache FOP 0.20.5 released.
- 2008: Apache FOP 0.95 released as a production-grade release of the new codebase.
- 2010: Apache FOP 1.0 released as a production-grade release.
- 2015: Apache FOP 2.0 released.
- 2025: Apache FOP 2.11 released.

### Related projects

- FOP is part of Apache XML Graphics. The site navigation and release news also point to FOP-PDF-Images, Apache Batik, XSL-FO, and the broader Apache XML Graphics documentation and wiki ecosystem.

### Sources

- <https://xmlgraphics.apache.org/fop/dev/index.html>
- <https://xmlgraphics.apache.org/fop/index.html>
- <https://xmlgraphics.apache.org/fop/news.html>
- <https://xmlgraphics.apache.org/fop/trunk/configuration.html>


## 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: <fop-dir>/conf/fop.xconf
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** fop
- **Aliases:** apache-fop
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Debian apt - fop - 1:2.10+dfsg-2: normalized package name match | Debian stable package indexes: fop from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | XML formatter driven by XSL Formatting Objects (XSL-FO.) - app | https://xmlgraphics.apache.org/fop/
- Debian apt - fop-doc - 1:2.10+dfsg-2: normalized package name match | Debian stable package indexes: fop-doc from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | XML formatter driven by XSL Formatting Objects (doc) - doc | https://xmlgraphics.apache.org/fop/
- Debian apt - libfop-java - 1:2.10+dfsg-2: normalized package name match | Debian stable package indexes: libfop-java from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | XML formatter driven by XSL Formatting Objects (XSL-FO.) - libs | https://xmlgraphics.apache.org/fop/
- Nix - fop: normalized package name match | nixpkgs package indexes: pkgs/by-name/fo/fop/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - fop - 1:2.8-3: normalized package name match | Ubuntu 24.04 LTS package indexes: fop from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | XML formatter driven by XSL Formatting Objects (XSL-FO.) - app | https://xmlgraphics.apache.org/fop/
- Ubuntu apt - fop-doc - 1:2.8-3: normalized package name match | Ubuntu 24.04 LTS package indexes: fop-doc from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | XML formatter driven by XSL Formatting Objects (doc) - doc | https://xmlgraphics.apache.org/fop/
- Ubuntu apt - libfop-java - 1:2.8-3: normalized package name match | Ubuntu 24.04 LTS package indexes: libfop-java from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | XML formatter driven by XSL Formatting Objects (XSL-FO.) - libs | https://xmlgraphics.apache.org/fop/
- dnf - fop - 2.11-2.fc44: normalized package name match | Fedora Rawhide package metadata: fop from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | XSL-driven print formatter | https://xmlgraphics.apache.org/fop
- dnf - fop-javadoc - 2.11-2.fc44: normalized package name match | Fedora Rawhide package metadata: fop-javadoc from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Javadoc for fop | https://xmlgraphics.apache.org/fop
- pacman - fop - 2.11-3: normalized package name match | Arch Linux sync databases: fop from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | XSL-FO to PDF formatter | https://xmlgraphics.apache.org/fop/
- zypper - xmlgraphics-fop - 2.10-3.4: normalized package name match | openSUSE Tumbleweed package metadata: xmlgraphics-fop from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Formatter for Printing XSLT Processed XML Files | https://xmlgraphics.apache.org/fop/
- MacPorts - fop: normalized package name match | MacPorts ports tree: textproc/fop/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## 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.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [openjdk](https://www.automicvault.com/pkg/brew/openjdk/) - Runtime dependency declared by Homebrew.
- [a2ps](https://www.automicvault.com/pkg/brew/a2ps/) - Shares av.db curated category or tags: cli, document-processing, postscript, productivity.
- [cpdf](https://www.automicvault.com/pkg/brew/cpdf/) - Shares av.db curated category or tags: cli, document-processing, pdf, productivity.
- [briss](https://www.automicvault.com/pkg/brew/briss/) - Shares av.db curated category or tags: cli, java, pdf, productivity.
- [jpdfbookmarks](https://www.automicvault.com/pkg/brew/jpdfbookmarks/) - Shares av.db curated category or tags: cli, java, pdf, productivity.
- [latexdiff](https://www.automicvault.com/pkg/brew/latexdiff/) - Shares av.db curated category or tags: cli, document-processing, productivity.
- [libvisio](https://www.automicvault.com/pkg/brew/libvisio/) - Shares av.db curated category or tags: cli, document-processing, productivity.
- [opendetex](https://www.automicvault.com/pkg/brew/opendetex/) - Shares av.db curated category or tags: cli, document-processing, productivity.
- [typst](https://www.automicvault.com/pkg/brew/typst/) - Shares av.db curated category or tags: cli, documents, pdf, productivity.
- [nuxeo](https://www.automicvault.com/pkg/brew/nuxeo/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, document, java, openjdk, productivity.

## Combined YAML source

View the package source record on GitHub. [combined/fop.yml](https://github.com/automic-vault/db/blob/main/combined/fop.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
