# 使用 Homebrew, apk, chocolatey, apt, dnf, MacPorts, Nix, pacman, scoop, zypper 安装 uncrustify

查看 uncrustify 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:uncrustify
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install uncrustify
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install uncrustify
```

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

### Linux

- apk (92%):

```sh
sudo apk add uncrustify
```

  证据: Alpine Linux edge package indexes: uncrustify from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install uncrustify
```

  证据: Debian stable package indexes: uncrustify from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install uncrustify
```

  证据: Fedora Rawhide package metadata: uncrustify 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#uncrustify
```

  证据: nixpkgs package indexes: pkgs/by-name/un/uncrustify/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

- pacman (92%):

```sh
sudo pacman -S uncrustify
```

  证据: Arch Linux sync databases: uncrustify from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install uncrustify
```

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

### Windows

- Chocolatey (92%):

```sh
choco install uncrustify
```

  证据: Chocolatey community package catalog: uncrustify from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','ubisoft-connect'

- Scoop (92%):

```sh
scoop install main/uncrustify
```

  证据: Scoop official bucket manifest trees: bucket/uncrustify.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

## 软件包事实

- **软件包键:** brew:uncrustify
- **软件包管理器:** Homebrew
- **软件包管理器页面:** <https://formulae.brew.sh/formula/uncrustify>
- **版本:** 0.83.0
- **来源摘要:** Source code beautifier
- **主页:** <https://uncrustify.sourceforge.net/>
- **仓库:** <https://github.com/uncrustify/uncrustify>
- **上游文档:** <https://github.com/uncrustify/uncrustify#readme>
- **许可证:** GPL-2.0-or-later
- **源码归档:** <https://github.com/uncrustify/uncrustify/archive/refs/tags/uncrustify-0.83.0.tar.gz>
- **最后更新:** 2026-05-17T07:55:06Z
- **已生成:** 2026-07-08T07:18:31+00:00

## 可执行文件

- uncrustify (cli)
- uncrustify (别名)

## 构建依赖

- cmake

## 安装行为

- post-install 钩子: 未定义
- Bottle: 可用 于 arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## 版本和新鲜度

- 页面生成时间: 2026-07-08
- 管理器版本: 0.83.0
- 管理器更新时间: 2026-05-17
- 本地数据: OK
- 上游仓库: https://github.com/uncrustify/uncrustify
- 检测到的最新版本: uncrustify-0.83.0 (当前)
## 项目历史与用法

Uncrustify is a long-running source-code beautifier for C-like languages. Its official homepage describes the project goal as a highly configurable and easily modifiable formatter, and the current README lists support for C, C++, C#, Objective-C, D, Java, Pawn, and Vala.

### 项目历史

The public GitHub repository was created in October 2009 from an imported Subversion history, and the homepage notes that, as of release 0.54, the source code was maintained in Git. That migration matters historically because Uncrustify belongs to the older generation of standalone command-line formatters that predate the now-common language-server and editor-integrated formatter era.

Uncrustify's development has centered on breadth of formatting knobs rather than a single canonical style. The README says version 0.83.0 has 901 configurable options, and the upstream ChangeLog for 0.83.0 continues to add alignment, spacing, newline, and C++ syntax-related options. In package terms, that makes Uncrustify attractive where teams need a formatter that can imitate an existing house style instead of enforcing a new one.

### 采用历史

The official homepage explicitly listed distribution packaging for Debian, Fedora, ALT Linux, T2, MacPorts, FreeBSD Ports, and OpenBSD Ports, and the supplied package facts show later availability across Homebrew, Debian/Ubuntu, Fedora/DNF, Arch, MacPorts, Nix, Scoop, Chocolatey, Alpine, and openSUSE. That breadth reflects the tool's normal role as a packaged CLI dependency rather than an application users build manually.

The project also had a GUI-adjacent ecosystem: the official homepage links Universal Indent GUI as a cross-platform configuration editor for many beautifiers, including Uncrustify. That helped make its unusually large configuration surface usable for developers comparing or tuning formatter output.

### 使用方式

Uncrustify is normally used by passing a configuration file and one or more source files to the CLI. The README and homepage emphasize examples of a default configuration, before/after C examples, and the `--show-config` output, while the contributor notes describe testing formatter behavior with configuration/input/expected-output triples.

The README's debugging section shows typical formatter-maintainer usage: run Uncrustify with a config and source file, request parse/debug output, and inspect intermediate logs. This underlines that package users care about both the executable and the shipped examples/configuration reference.

### 为什么软件包爱好者会关心

For package maintainers, Uncrustify is a classic formatter formula: a single CLI, CMake-based builds, no credentials, and value that comes from reproducible formatting in build hooks, editor integrations, and CI checks. Its many packaging targets make it useful when a project wants the same formatter version across Linux, macOS, and Windows developer machines.

The main packaging caveat is behavioral compatibility. Because the project continually adds, removes, and renames configuration options, packages and downstream CI images often care about pinning versions so that a formatting job does not rewrite unrelated code after an upgrade.

### 时间线

- 2009: GitHub repository created from an imported Subversion history.
- Release 0.54: Official homepage says source maintenance moved to Git.
- 2024-2026: ChangeLog entries show continued option-level formatter development.
- 2026: Version 0.83.0 documentation reports 901 configurable options.

### Related projects

- Universal Indent GUI is linked by the official homepage as a configuration editor that supports Uncrustify.
- The README positions Uncrustify among source beautifiers for C-like languages, with examples centered on C-style formatting, Objective-C support, Java testing, and embedded SQL.

### 来源

- <https://api.github.com/repos/uncrustify/uncrustify>
- <https://api.github.com/repos/uncrustify/uncrustify/git/commits/fe25b6d06401b0a523e15a896831720c488bd5ce>
- <https://github.com/uncrustify/uncrustify#readme>
- <https://raw.githubusercontent.com/uncrustify/uncrustify/master/ChangeLog>
- <https://uncrustify.sourceforge.net/>
- input.source_facts.package-manager


## 安全说明

没有找到 uncrustify 的匹配本地密钥处理 manifest。Nucleus 软件包元数据仍在此发布，以便未来覆盖拥有稳定的软件包 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: ~/.uncrustify.cfg, ~/uncrustify.cfg
## 源数据库详情

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

## 其他软件包管理器记录

- Debian apt - uncrustify - 0.78.1+dfsg1-1: normalized package name match | Debian stable package indexes: uncrustify from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | C, C++, ObjectiveC, C#, D, Java, Pawn and VALA source code beautifier | https://github.com/uncrustify/uncrustify
- Nix - uncrustify: normalized package name match | nixpkgs package indexes: pkgs/by-name/un/uncrustify/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- Ubuntu apt - uncrustify - 0.78.1+dfsg1-1: normalized package name match | Ubuntu 24.04 LTS package indexes: uncrustify from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | C, C++, ObjectiveC, C#, D, Java, Pawn and VALA source code beautifier | https://github.com/uncrustify/uncrustify
- apk - uncrustify - 0.83.0-r0: normalized package name match | Alpine Linux edge package indexes: uncrustify from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Source code beautifier | https://github.com/uncrustify/uncrustify
- apk - uncrustify-doc - 0.83.0-r0: normalized package name match | Alpine Linux edge package indexes: uncrustify-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Source code beautifier (documentation) | https://github.com/uncrustify/uncrustify
- dnf - uncrustify - 0.83.0-1.fc45: normalized package name match | Fedora Rawhide package metadata: uncrustify from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Reformat Source | https://uncrustify.sourceforge.net/
- pacman - uncrustify - 0.83.0-1: normalized package name match | Arch Linux sync databases: uncrustify from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | A source code beautifier | https://github.com/uncrustify/uncrustify
- zypper - uncrustify - 0.82.0-1.3: normalized package name match | openSUSE Tumbleweed package metadata: uncrustify from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst | Source Code Beautifier for C, C++, C#, ObjectiveC, D | https://github.com/uncrustify/uncrustify
- MacPorts - uncrustify: normalized package name match | MacPorts ports tree: devel/uncrustify/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
- Chocolatey - uncrustify: normalized package name match | Chocolatey community package catalog: uncrustify from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','ubisoft-connect'
- Scoop - main/uncrustify: normalized package name match | Scoop official bucket manifest trees: bucket/uncrustify.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1


## 相关链接

- [Terminal utility packages](https://www.automicvault.com/zh-hans/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/zh-hans/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/zh-hans/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://www.automicvault.com/zh-hans/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [cmake](https://www.automicvault.com/zh-hans/pkg/brew/cmake/) - Build dependency declared by Homebrew.
- [astyle](https://www.automicvault.com/zh-hans/pkg/brew/astyle/) - Shares av.db curated category or tags: c, cli, code-formatting, developer-tools, java.
- [bcpp](https://www.automicvault.com/zh-hans/pkg/brew/bcpp/) - Shares av.db curated category or tags: beautifier, c, cli, cpp, developer-tools.
- [findent](https://www.automicvault.com/zh-hans/pkg/brew/findent/) - Shares av.db curated category or tags: beautifier, cli, code-formatting, developer-tools.
- [google-java-format](https://www.automicvault.com/zh-hans/pkg/brew/google-java-format/) - Shares av.db curated category or tags: cli, code-formatting, developer-tools, java.
- [perltidy](https://www.automicvault.com/zh-hans/pkg/brew/perltidy/) - Shares av.db curated category or tags: beautifier, cli, code-formatting, developer-tools.
- [abi-dumper](https://www.automicvault.com/zh-hans/pkg/brew/abi-dumper/) - Shares av.db curated category or tags: c, cli, cpp, developer-tools.
- [air](https://www.automicvault.com/zh-hans/pkg/brew/air/) - Shares av.db curated category or tags: cli, code-formatting, developer-tools.
- [alejandra](https://www.automicvault.com/zh-hans/pkg/brew/alejandra/) - Shares av.db curated category or tags: cli, code-formatting, developer-tools.
- [hindent](https://www.automicvault.com/zh-hans/pkg/brew/hindent/) - Local package facts share a topical domain. Shared terms: cli, code, code-formatting, developer, developer-tools.

## Combined YAML source

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


## 来源

- 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
