今天,我想宣布 Homebrew 3.6.0。自 3.5.0 以来最重大的变化是初步支持 macOS Ventura、需要 --eval-all
/HOMEBREW_EVAL_ALL
以及迁移到 Ubuntu 22.04 作为我们的 CI 平台。
自 3.5.0 以来,主要更改和弃用
- Homebrew 初步支持 macOS 13 (Ventura)。
- Homebrew 要求传递
--eval-all
或设置HOMEBREW_EVAL_ALL
,以提高安全性,在可能评估尚未安装、可能不受信任且将执行任意 Ruby 代码的配方或木桶的情况下。. - Homebrew 的 CI 使用 Ubuntu 22.04 来构建瓶子(二进制包)。
brew
不再遵守HOMEBREW_NO_ENV_FILTERING
。配方或木桶中需要的环境变量需要有HOMEBREW_
前缀才能通过,然后重新分配,例如ENV["FOO"] = ENV["HOMEBREW_FOO"]
。brew linkage
检测到 已弃用的链接到libnsl.so.1
和 已禁用的链接到libcrypt.so.1
。- 其他各种已禁用的代码已被移除。
自 3.5.0 以来,我想重点介绍的其他更改如下
HOMEBREW_INSTALL_FROM_API
是 3.3.0 中添加的一个选择加入标志,用于使用 Homebrew 的 API 在 homebrew/core 和 homebrew/cask tap 中安装配方和木桶,而不需要这些存储库的(大而慢的)本地签出。自 3.5.0 以来,HOMEBREW_INSTALL_FROM_API
已有 许多 改进。我们鼓励你尝试设置它并 报告你遇到的任何问题。postgresql
配方已重命名为postgresql@14
,以避免在主要/次要版本升级时重复中断。HOMEBREW_CURL_PATH
和HOMEBREW_GIT_PATH
已记录并支持在 Linux 上设置curl
或git
的位置。在 macOS 上,系统版本仍将始终被使用。HOMEBREW_ARTIFACT_DOMAIN
仅对瓶装软件起作用,而对木桶软件不起作用。- 定期
brew cleanup
在安装所有软件包后运行,而不是在安装第一个软件包后运行。 brew install --debug-symbols
可用于在 macOS 上构建和保留调试符号。这目前在 Linux 上不起作用,但我们会审核添加它的请求。brew install
如果glibc
或gcc
太旧,会自动安装它们。- 如果设置了
HOMEBREW_AUTOREMOVE
,brew cleanup
和brew uninstall
会自动运行brew autoremove
。 brew fetch --retry
使用指数退避。- 当检测到循环依赖时,
brew deps
会返回失败退出代码。 brew info --json
包含variations
键。这提供有关公式或木桶软件在操作系统和 CPU 架构(除运行它的操作系统和 CPU 架构以外)上的变化信息。为了实现此目的,已将各种其他 DSL(例如on_system
和arch
)添加到公式或木桶软件中。- 可以使用新的
Formula
DSL 更轻松地生成补全。
最后
- Homebrew 通过 GitHub Sponsors 接受捐赠,并且 仍然通过 Patreon 接受捐赠。如果您负担得起,请考虑捐赠。如果您不想使用 GitHub Sponsors 或 Patreon(我们首选的捐赠方式),请查看我们的自述文件中的其他捐赠方式。
感谢所有辛勤工作的维护人员、贡献者、赞助商和支持者,让我们走到了今天。