From 4a97c1cb4a7dedb8c2219e08a4593692199cbe3f Mon Sep 17 00:00:00 2001 From: Orion Date: Fri, 8 May 2026 02:03:28 +0800 Subject: [PATCH] =?UTF-8?q?refactor(core):=20=E2=99=BB=EF=B8=8F=20?= =?UTF-8?q?=E6=9B=B4=E6=96=B0=20PATH=20=E7=8E=AF=E5=A2=83=E5=8F=98?= =?UTF-8?q?=E9=87=8F=E5=B9=B6=E8=A1=A5=E5=85=85=20brew=20doctor=20?= =?UTF-8?q?=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在引导脚本的 PATH 变量中增加 Homebrew 的 sbin 路径,以解决常见的路径缺失 警告。同步更新 README 文档,增加了关于 brew doctor 警告的处理指南,包括 如何处理废弃的 Cask 以及手动配置 PATH 的详细步骤。 --- homebrew/README.md | 30 ++++++++++++++++++++++ homebrew/brew-upgrade-manager-bootstrap.sh | 2 +- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/homebrew/README.md b/homebrew/README.md index a741ae5..26f2480 100644 --- a/homebrew/README.md +++ b/homebrew/README.md @@ -197,6 +197,36 @@ HB_TERMINAL_WIDTH=130 brewup 通常是网络、Homebrew tap 或权限问题。先确认 Homebrew 可正常访问 GitHub 和对应 tap。 +### `brew doctor` 提示 warning + +`brew doctor` 的 warning 不一定代表脚本失败。脚本会继续执行,并打印: + +```bash +Warning: 'brew doctor' detected issues. Manual review and resolution are recommended. +``` + +常见 warning 处理方式: + +- `Some installed casks are deprecated or disabled`:说明某些 Cask 已废弃或被禁用,例如 `ayugram`。可以自行寻找替代应用,或不再需要时卸载: + + ```bash + brew uninstall --cask ayugram + ``` + +- `Homebrew's "sbin" was not found in your PATH`:说明 shell 的 PATH 缺少 Homebrew 的 sbin 目录。Apple Silicon Mac 通常可加入: + + ```bash + echo 'export PATH="/opt/homebrew/sbin:$PATH"' >> ~/.zshrc + source ~/.zshrc + ``` + + Intel Mac 或 `/usr/local` 安装的 Homebrew 可加入: + + ```bash + echo 'export PATH="/usr/local/sbin:$PATH"' >> ~/.zshrc + source ~/.zshrc + ``` + ## 注意事项 - 脚本启用了 `set -e` 和 `set -o pipefail`,关键命令失败会终止流程。 diff --git a/homebrew/brew-upgrade-manager-bootstrap.sh b/homebrew/brew-upgrade-manager-bootstrap.sh index 29712ba..9df7e9e 100755 --- a/homebrew/brew-upgrade-manager-bootstrap.sh +++ b/homebrew/brew-upgrade-manager-bootstrap.sh @@ -11,7 +11,7 @@ cleanup() { } trap cleanup EXIT INT TERM -PATH="/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin" +PATH="/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin" export PATH setup_sudo_askpass() {