# 使用 Homebrew, MacPorts, Nix, pacman 安装 brush

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

## 安装

```sh
sudo av install brew:brush
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install brush
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install brush
```

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

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#brush
```

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

- pacman (92%):

```sh
sudo pacman -S brush
```

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

## 软件包事实

- **软件包键:** brew:brush
- **软件包管理器:** Homebrew
- **版本:** 0.4.0
- **来源摘要:** Bourne RUsty SHell (command interpreter)
- **主页:** <https://brush.sh>
- **仓库:** <https://github.com/reubeno/brush>
- **最后更新:** 2026-06-15T10:20:11-04:00
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- brush (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 0.4.0
## 项目历史与用法

brush, the Bourne RUsty SHell, is a Rust shell that aims to run existing Bash and POSIX shell scripts while adding modern interactive behavior such as syntax highlighting and autosuggestions. Its packaging story is notable because it is a new shell trying to be installable as a boring system command rather than only as a Rust crate.

### 项目历史

The project presents itself as a modern Bash- and POSIX-compatible shell written in Rust. Its README emphasizes compatibility with existing `.bashrc` files, aliases, functions, and completions, while the compatibility reference documents a test suite that compares behavior against Bash.

Unlike experimental shells that define a new language first, brush starts from the existing shell ecosystem. Its published identity is conservative: preserve Bash behavior, add Rust implementation benefits and interactive features, and expose an embeddable `brush_core::Shell` for Rust programs.

### 采用历史

The official installation section lists Homebrew, Arch Linux, MSYS2, cargo-binstall, GitHub release binaries, and Nix, while the provided package facts also list Homebrew, MacPorts, Nix, and pacman. That puts brush in the normal multi-distribution pipeline for shell tools despite being a young implementation.

Adoption is still early compared with Bash, zsh, fish, or Oil/YSH, but the presence of distribution packages and a crates.io-oriented install path gives it several routes into developer workstations.

### 使用方式

brush can be launched as an interactive shell and is designed to read existing Bash startup files. The README says `.bashrc` should work unchanged, with optional `~/.brushrc` and TOML configuration for brush-specific behavior.

Its current use case is compatibility testing, interactive daily-driver experimentation, and embedding shell behavior inside Rust programs. The compatibility reference marks many Bash features as supported while still documenting gaps such as `select`, `wait -n`, and some background-job details.

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

Shells are unusually package-sensitive because installing them is not enough: users may add them to login-shell databases, invoke them from scripts, and expect startup files and completions to work. brush is interesting because it tries to enter that old Unix contract while being implemented in Rust.

For maintainers, brush is a compact example of the modern Rust reimplementation wave applied to one of the hardest compatibility targets: Bash.

### 时间线

- 2025: brush documentation describes itself as Bash- and POSIX-compatible and ready for many daily-driver use cases.
- 2025: Official README documents Homebrew, Arch Linux, MSYS2, cargo-binstall, GitHub release, and Nix installation routes.
- 2026: Provided package facts show brush packaged in Homebrew, MacPorts, Nix, and pacman ecosystems.

### Related projects

- GNU Bash is the primary compatibility target and behavioral oracle.
- POSIX shell is the standards baseline named by the project.
- reedline provides the line-editing experience cited by brush for highlighting and suggestions.
- Nushell, fish, zsh, and Oil/YSH are adjacent shells, though brush is more explicitly Bash-compatible than most of them.

### 来源

- <https://github.com/reubeno/brush>
- <https://raw.githubusercontent.com/reubeno/brush/main/README.md>
- <https://raw.githubusercontent.com/reubeno/brush/main/docs/reference/compatibility.md>
- source_facts.package-manager


## 安全说明

generalized runtime or code generation signal.

- **Geiger 风险:** yellow / 中
- generalized runtime or code generation signal


## 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: ~/.bashrc, ~/.brushrc, ~/.config/brush/config.toml
## 其他软件包管理器记录

- Nix - brush: normalized package name match | nixpkgs package indexes: pkgs/by-name/br/brush/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- pacman - brush - 0.4.0-1: normalized package name match | Arch Linux sync databases: brush from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Bash/POSIX-compatible shell implemented in Rust | https://github.com/reubeno/brush
- MacPorts - brush: normalized package name match | MacPorts ports tree: shells/brush/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/brush.yml](https://github.com/mxcl/pkgdb/blob/main/combined/brush.yml)


## 来源

- 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
