# Installer gpp avec Homebrew, apt, MacPorts, Nix, zypper, dnf

Consultez les chemins d'installation, exécutables, métadonnées et notes de sécurité de gpp pour les workflows d'agents IA.

## installation

```sh
sudo av install brew:gpp
```

Commandes d'installation supplémentaires:

### macOS

- Homebrew (100%):

```sh
brew install gpp
```

  Preuve: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install gpp
```

  Preuve: MacPorts ports tree: lang/gpp/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- Debian apt (92%):

```sh
sudo apt install gpp
```

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

- Nix (92%):

```sh
nix profile install nixpkgs#gpp
```

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

- zypper (92%):

```sh
sudo zypper install gpp
```

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

- dnf (92%):

```sh
sudo dnf install general-purpose-preprocessor
```

  Preuve: Fedora Rawhide package metadata: general-purpose-preprocessor from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst

## Faits du paquet

- **Clé du paquet:** brew:gpp
- **Gestionnaire de paquets:** Homebrew
- **Version:** 2.28
- **Résumé source:** General-purpose preprocessor with customizable syntax
- **Page d'accueil:** <https://logological.org/gpp>
- **Dépôt:** <https://github.com/logological/gpp>
- **Généré:** 2026-08-03T19:37:03+00:00

## exécutables

- gpp (alias)

## Comportement d'installation

- Bouteille: non disponible

## Version et fraîcheur

- page générée: 2026-08-03
- version du gestionnaire: 2.28
## Historique du projet et usages

GPP is a general-purpose preprocessor with customizable syntax. The project README and citation metadata emphasize that it is independent of any one programming language, lighter than GNU m4 for many tasks, and includes built-in macro support for C/C++, LaTeX, HTML, XHTML, and Prolog files.

### Historique du projet

The GitHub repository is the official development location and the project homepage links users to online documentation, portable source packages, and binary-package references. The repository includes source, documentation, Autotools files, license files, and citation metadata.

GPP has academic documentation as well as package metadata: its CITATION.cff points to a 2020 Journal of Open Source Software article by Tristan Miller and Denis Auroux describing it as an extensible, customizable preprocessor for software development, document processing, and research workflows.

### Historique d'adoption

The input package-manager facts list Homebrew, Debian, Fedora, MacPorts, Nix, Ubuntu, and openSUSE packages. That spread fits a small C command-line tool that is useful in build pipelines and documentation generation without needing a runtime service.

Homebrew packages it as gpp, Fedora uses the more descriptive general-purpose-preprocessor name, and the official README points users to binary-package links on the project homepage.

### Modes d'utilisation

Users invoke gpp to preprocess text with syntax tuned to the target language or document format. The README notes that the documentation itself is generated by GPP from a gpp.pp input file, making the docs both reference material and a working example.

The package is most useful when cpp is too language-specific and m4 is heavier than needed: templating LaTeX or HTML, defining domain-specific macro syntax, or generating source fragments in build systems.

### Pourquoi les passionnés de paquets s'y intéressent

GPP is a compact example of a Unix filter that earns packaging despite a small footprint: it has a single executable, man/HTML documentation, portable source releases, and a stable niche that overlaps build systems, documentation, and research tooling.

Its significance is less about popularity and more about substitutability: package users can reach for it when they need a configurable macro processor without bringing in a full template engine or language-specific preprocessor.

### Chronologie

- 2020: The project citation metadata records a Journal of Open Source Software article for GPP.
- 2023: GitHub release metadata records GPP 2.28 dated Sep 26, 2023.
- 2026: Homebrew metadata packages GPP as version 2.28 with bottles for macOS and Linux.

### Related projects

- cpp is the language-specific baseline that GPP explicitly contrasts with.
- GNU m4 is the heavier general macro processor that GPP positions itself beside.
- Autotools-style source packages are related operationally because the development checkout requires generating the build system before end-user installation steps apply.

### Sources

- <https://formulae.brew.sh/formula/gpp>
- <https://github.com/logological/gpp>
- <https://logological.org/gpp>
- <https://raw.githubusercontent.com/logological/gpp/master/CITATION.cff>


## Notes de sécurité

narrow executable package without higher-risk signals.

- **Risque Geiger:** vert / faible
- narrow executable package without higher-risk signals

## Autres enregistrements de gestionnaires de paquets

- Debian apt - gpp - 2.28-2: normalized package name match | Debian stable package indexes: gpp from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | general-purpose preprocessor with customizable syntax | https://logological.org/gpp
- Nix - gpp: normalized package name match | nixpkgs package indexes: pkgs/by-name/gp/gpp/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - gpp - 2.28-1: normalized package name match | Ubuntu 24.04 LTS package indexes: gpp from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | general-purpose preprocessor with customizable syntax | https://logological.org/gpp
- dnf - general-purpose-preprocessor - 2.28-8.fc45: normalized package name match | Fedora Rawhide package metadata: general-purpose-preprocessor from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/07190dc5ae9f35ae73866675fed6d95fe6e8d9fe22c9d7cdf85862cb2ed24a4c-primary.xml.zst | Customizable language-agnostic preprocessor | https://logological.org/gpp
- zypper - gpp - 2.28-1.9: normalized package name match | openSUSE Tumbleweed package metadata: gpp from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Generic Preprocessor | https://logological.org/gpp/
- MacPorts - gpp: normalized package name match | MacPorts ports tree: lang/gpp/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

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


## Sources

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