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

Library for handling paper characteristics. Version 2.2.8 via Homebrew; verified from local package data. Also installable with debian: sudo apt install libpaper-dev.

## Install

```sh
sudo av install brew:libpaper
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install libpaper
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install libpaper
```

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

### Linux

- apk (92%):

```sh
sudo apk add libpaper
```

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

- dnf (92%):

```sh
sudo dnf install libpaper
```

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

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

- pacman (92%):

```sh
sudo pacman -S libpaper
```

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

- zypper (92%):

```sh
sudo zypper install libpaper
```

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

- Debian apt (92%):

```sh
sudo apt install libpaper-dev
```

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

## Package facts

- **Package key:** brew:libpaper
- **Package manager:** Homebrew
- **Version:** 2.2.8
- **Source summary:** Library for handling paper characteristics
- **Homepage:** <https://github.com/rrthomas/libpaper>
- **Repository:** <https://github.com/rrthomas/libpaper>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- paper (alias)
- paperconf (alias)

## Install behavior

- Bottle: not available

## Freshness

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

libpaper is a small Unix library and command-line toolkit for discovering and configuring preferred paper sizes, so document and printing tools can avoid hard-coded A4-versus-letter assumptions.

### Project history

The original Debian libpaper design was proposed by Yves Arrouye in 1996 as a way for programs to use /etc/papersize at runtime, support a catalog of paper names, and avoid recompiling or rewriting package scripts when the system default changed.

Reuben Thomas's maintained libpaper package builds on that design. Its README says it enables users to indicate their preferred paper size, provides the paper utility, specifies system-wide and per-user paper-size catalogues, and keeps paperconf for compatibility with libpaper version 1.

### Adoption history

libpaper became a distribution-level convention because many unrelated tools need the same answer: what paper size should this system or user prefer? Debian manpages document paperconf, while modern libpaper manpages document the newer paper command and XDG-aware user files.

### How it is used

Programs can call the library, shell scripts can call paper or paperconf, and users can set PAPERSIZE or write papersize files. The modern paper command checks PAPERSIZE, the user's XDG papersize file, locale paper defaults, /etc/papersize, and paper-size catalogues.

### Why package nerds care

libpaper is a tiny package with an outsized packaging lesson: internationalization sometimes means centralizing one mundane default. It exists so PostScript, TeX, printing, and document tools can share policy without every package growing its own paper-size configuration machinery.

### Timeline

- 1996: Yves Arrouye proposed using a libpaper library and /etc/papersize for runtime paper-size defaults in Debian.
- 2001: The Debian paperconf manpage documented PAPERSIZE, PAPERCONF, and /etc/papersize behavior.
- 2013: Reuben Thomas's libpaper line started its copyright period and superseded his earlier paper package.
- 2024: paper 2.2.5 manpages documented XDG_CONFIG_HOME/papersize and locale fallback behavior.

### Related projects

- paper is the newer command-line interface for querying paper sizes.
- paperconf is the compatibility command from libpaper version 1.
- psutils and other document-processing tools are natural consumers of libpaper because they need named paper sizes.

### Sources

- <https://github.com/rrthomas/libpaper>
- <https://github.com/rrthomas/libpaper/releases>
- <https://lists.debian.org/debian-devel/1996/06/msg00116.html>
- <https://man.archlinux.org/man/extra/libpaper/paper.1.en>
- <https://manpages.debian.org/unstable/libpaper-utils/paperconf.1.en.html>


## Security Notes

No matching local secret-handling manifest was found for libpaper. Nucleus package metadata is still published here so future coverage has a stable package URL.



## 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: $XDG_CONFIG_HOME/papersize, $XDG_CONFIG_HOME/paperspecs, @sysconfdir@/papersize, @sysconfdir@/paperspecs
## Other Package-Manager Records

- Debian apt - libpaper-dev - 2.2.5-0.3+b2: normalized package name match | Debian stable package indexes: libpaper-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Paper sizes catalogue (development files) | https://github.com/rrthomas/libpaper
- Debian apt - libpaper-utils - 2.2.5-0.3+b2: normalized package name match | Debian stable package indexes: libpaper-utils from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Paper sizes catalogue (utilities) | https://github.com/rrthomas/libpaper
- Debian apt - libpaper2 - 2.2.5-0.3+b2: normalized package name match | Debian stable package indexes: libpaper2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | Paper sizes catalogue | https://github.com/rrthomas/libpaper
- Nix - libpaper: normalized package name match | nixpkgs package indexes: pkgs/by-name/li/libpaper/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - libpaper-dev - 1.1.29build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libpaper-dev from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | library for handling paper characteristics (development files)
- Ubuntu apt - libpaper-utils - 1.1.29build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libpaper-utils from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | library for handling paper characteristics (utilities)
- Ubuntu apt - libpaper1 - 1.1.29build1: normalized package name match | Ubuntu 24.04 LTS package indexes: libpaper1 from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz | library for handling paper characteristics
- apk - libpaper - 2.2.8-r0: normalized package name match | Alpine Linux edge package indexes: libpaper from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for handling paper characteristics | https://github.com/rrthomas/libpaper/
- apk - libpaper-dev - 2.2.8-r0: normalized package name match | Alpine Linux edge package indexes: libpaper-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for handling paper characteristics (development files) | https://github.com/rrthomas/libpaper/
- apk - libpaper-doc - 2.2.8-r0: normalized package name match | Alpine Linux edge package indexes: libpaper-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | Library for handling paper characteristics (documentation) | https://github.com/rrthomas/libpaper/
- dnf - libpaper - 2.1.1-11.fc45: normalized package name match | Fedora Rawhide package metadata: libpaper from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Library and tools for handling papersize | https://github.com/rrthomas/libpaper/
- dnf - libpaper-devel - 2.1.1-11.fc45: normalized package name match | Fedora Rawhide package metadata: libpaper-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Headers/Libraries for developing programs that use libpaper | https://github.com/rrthomas/libpaper/
- dnf - paper - 2.1.1-11.fc45: normalized package name match | Fedora Rawhide package metadata: paper from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Print paper size information | https://github.com/rrthomas/libpaper/
- pacman - libpaper - 2.2.8-1: normalized package name match | Arch Linux sync databases: libpaper from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Library for handling paper characteristics | https://github.com/rrthomas/libpaper
- zypper - libpaper - 2.2.8-1.3: normalized package name match | openSUSE Tumbleweed package metadata: libpaper from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Enables users to indicate their preferred paper size | https://github.com/rrthomas/libpaper
- zypper - libpaper-devel - 2.2.8-1.3: normalized package name match | openSUSE Tumbleweed package metadata: libpaper-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | This package contains the development files needed by libpaper | https://github.com/rrthomas/libpaper


## Combined YAML source

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