# Install bcpp with Homebrew, apt, MacPorts, zypper, winget

C(++) beautifier. Version 20250914 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:bcpp
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install bcpp
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install bcpp
```

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

### Linux

- Debian apt (92%):

```sh
sudo apt install bcpp
```

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

- zypper (92%):

```sh
sudo zypper install bcpp
```

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

### Windows

- winget (92%):

```sh
winget install --id Slackadays.Clipboard -e
```

  Evidence: Windows Package Manager source index: Slackadays.Clipboard from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:bcpp
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/bcpp>
- **Version:** 20250914
- **Source summary:** C(++) beautifier
- **Homepage:** <https://invisible-island.net/bcpp/>
- **Upstream docs:** <https://invisible-island.net/bcpp>
- **License:** MIT
- **Source archive:** <https://invisible-mirror.net/archives/bcpp/bcpp-20250914.tgz>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- bcpp (cli)
- cb++ (cli)
- bcpp (alias)
- cb++ (alias)

## Install behavior

- Post-install hook: not 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: 20250914
- Local data: ok
- Upstream repository: https://invisible-island.net/bcpp/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

bcpp is a C and C++ source-code beautifier that indents code and converts tabs and spaces without trying to wrap long statements.

### Project history

The Invisible Island page says bcpp was written by Steven De Toni and that Thomas E. Dickey's maintained version was based on version 1.8 from December 1995.

Dickey's version kept the original design while improving the parser, marking character state, recognizing more indentation structures, and adding simple embedded-SQL indentation. The public changelog begins in 1996 and continues with portability and maintenance updates into the 2020s.

### Adoption history

bcpp has the footprint of a long-lived Unix formatting utility: small, source-distributed, and packaged by Homebrew, Debian, MacPorts, Ubuntu, and openSUSE-family package sets in the supplied package-manager facts.

Its 2012 changelog notes integration of Debian packaging patches, including searching for bcpp.cfg in a user's home directory and an optional compile-time directory.

### How it is used

Users run bcpp or cb++ to reindent C/C++ source, tune behavior through command-line options or bcpp.cfg, and preserve long statements rather than using it as a full code reflow tool.

It is most relevant for legacy C/C++ style normalization, old trees, and users who want a formatter less ambitious than clang-format or GNU indent.

### Why package nerds care

bcpp is a compact example of the pre-clang-format formatter era: a focused utility with decades of packaging inertia and maintenance for old compilers, old Unix systems, and distribution conventions.

For package nerds, its value is historical texture as much as raw popularity: it shows how source-formatting tools survived as tiny standalone packages before modern language-server and formatter ecosystems consolidated.

### Timeline

- 1995: Steven De Toni's bcpp 1.8, the base for the maintained Invisible Island version.
- 1996: Invisible Island changelog begins with parser and indentation work.
- 2012: Debian-derived config-file search and packaging scripts integrated.
- 2020s: Changelog continues with configure-script, portability, and hardening updates.

### Related projects

- GNU indent is the classic formatter bcpp explicitly contrasts with.
- clang-format is the modern C/C++ formatter that overlaps with many current use cases.
- Invisible Island hosts and maintains the current source release and changelog.

### Sources

- <https://invisible-island.net/bcpp/CHANGES.html>
- <https://invisible-island.net/bcpp/bcpp.html>
- source_facts.package-manager


## Security Notes

narrow executable package without higher-risk signals.

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

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** bcpp
- **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 - bcpp - 0.0.20210108-1+b1: normalized package name match | Debian stable package indexes: bcpp from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | C(++) beautifier | http://www.invisible-island.net/bcpp/
- Ubuntu apt - bcpp - 0.0.20210108-1: normalized package name match | Ubuntu 24.04 LTS package indexes: bcpp from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | C(++) beautifier | http://www.invisible-island.net/bcpp/
- zypper - bcpp - 20250914-1.3: normalized package name match | openSUSE Tumbleweed package metadata: bcpp from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Beautify C++ programs | https://invisible-island.net/bcpp/bcpp.html
- MacPorts - bcpp: normalized package name match | MacPorts ports tree: devel/bcpp/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- winget - Slackadays.Clipboard: installed executable or alias match | Windows Package Manager source index: Slackadays.Clipboard from https://cdn.winget.microsoft.com/cache/source.msix


## 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.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [deheader](https://www.automicvault.com/pkg/brew/deheader/) - Shares av.db curated category or tags: c, c-cpp, cli, cpp, developer-tools.
- [findent](https://www.automicvault.com/pkg/brew/findent/) - Shares av.db curated category or tags: beautifier, cli, developer-tools, formatter, source-code.
- [golines](https://www.automicvault.com/pkg/brew/golines/) - Shares av.db curated category or tags: cli, developer-tools, formatter, formatting.
- [keep-sorted](https://www.automicvault.com/pkg/brew/keep-sorted/) - Shares av.db curated category or tags: cli, developer-tools, formatter, formatting.
- [sqlfmt](https://www.automicvault.com/pkg/brew/sqlfmt/) - Shares av.db curated category or tags: cli, developer-tools, formatter, formatting.
- [tex-fmt](https://www.automicvault.com/pkg/brew/tex-fmt/) - Shares av.db curated category or tags: cli, developer-tools, formatter, formatting.
- [treefmt](https://www.automicvault.com/pkg/brew/treefmt/) - Shares av.db curated category or tags: cli, developer-tools, formatter, formatting.
- [uncrustify](https://www.automicvault.com/pkg/brew/uncrustify/) - Shares av.db curated category or tags: beautifier, c, cli, cpp, developer-tools.
- [astyle](https://www.automicvault.com/pkg/brew/astyle/) - Local package facts share a topical domain. Shared terms: beautifier, c, cli, code, developer.

## Combined YAML source

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


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- 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
