From f237025cf95adb56bb8ae6286d3a67bd6d0d2a6c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=91=E6=9C=8D=E5=8A=A1=E9=83=A8-=E5=8F=B6=E6=9E=97?= =?UTF-8?q?=E7=AB=8B?= <1361666059@qq.com> Date: Mon, 19 Oct 2026 02:47:09 -0700 Subject: [PATCH] =?UTF-8?q?fix(install.sh/update.sh):=20Homebrew=20?= =?UTF-8?q?=E5=8D=87=E7=BA=A7=E5=85=8D=E7=A1=AE=E8=AE=A4=E5=B9=B6=E6=98=BE?= =?UTF-8?q?=E5=BC=8F=E6=8C=89=20formula=20=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Homebrew 7 默认进入 ask 模式,升级或安装带依赖时会停下等待 [y/n]。 用户运行脚本(以及 install.sh 中逐项确认后)已构成授权,统一加 HOMEBREW_NO_ASK=1;用环境变量而非 --yes,旧版 Homebrew 不会因未知 参数报错。 - update.sh 的 formula 升级显式加 --formula:kotlin-lsp 来自 jetbrains/utils tap,不加时 brew 会把短名当成 cask,报 “Cask 'kotlin-lsp' is not installed” 而升级失败。 Generated with [Devin](https://devin.ai) Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com> --- install.sh | 8 ++++---- update.sh | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/install.sh b/install.sh index 0815715..b453193 100755 --- a/install.sh +++ b/install.sh @@ -129,13 +129,13 @@ install_codegraph() { install_kotlin_lsp() { require_brew || return 1 - brew install JetBrains/utils/kotlin-lsp || return 1 + HOMEBREW_NO_ASK=1 brew install JetBrains/utils/kotlin-lsp || return 1 command -v kotlin-lsp >/dev/null 2>&1 } install_java_21() { require_brew || return 1 - brew install openjdk@21 || return 1 + HOMEBREW_NO_ASK=1 brew install openjdk@21 || return 1 java_home=$(brew --prefix openjdk@21 2>/dev/null) || return 1 PATH="$java_home/bin:$PATH" export PATH @@ -148,7 +148,7 @@ install_java_21() { install_jdtls() { require_brew || return 1 - brew install jdtls || return 1 + HOMEBREW_NO_ASK=1 brew install jdtls || return 1 command -v jdtls >/dev/null 2>&1 } @@ -171,7 +171,7 @@ install_kitty() { case $(uname -s) in Darwin) require_brew || return 1 - brew install --cask kitty || return 1 + HOMEBREW_NO_ASK=1 brew install --cask kitty || return 1 ;; *) if ! command -v curl >/dev/null 2>&1; then diff --git a/update.sh b/update.sh index 111f595..d7fd1fd 100755 --- a/update.sh +++ b/update.sh @@ -177,7 +177,7 @@ update_brew_formula_if_installed() { say "✓ $description 已是最新版本。" else say "发现 $description 有新版本,正在升级。" - brew upgrade "$formula" || record_update_failure "$description" + HOMEBREW_NO_ASK=1 brew upgrade --formula "$formula" || record_update_failure "$description" fi elif command -v "$command_name" >/dev/null 2>&1; then say "- $description 已安装,但不由 Homebrew 管理,已保留现有安装。" @@ -228,7 +228,7 @@ update_kitty() { say "✓ Kitty 已是最新版本。" else say "发现 Kitty 有新版本,正在升级。" - brew upgrade --cask kitty || record_update_failure "Kitty" + HOMEBREW_NO_ASK=1 brew upgrade --cask kitty || record_update_failure "Kitty" fi else record_update_failure "Kitty"