Homebrew 自动更新
一种简单便捷的方式来自动更新 Homebrew。
该脚本将每24小时(默认情况下)在后台运行一次 brew update
,直到被明确告知停止,利用了 launchd
。
brew upgrade
和 brew cleanup
也可以自动处理,但这些是可选标志。
通知功能默认启用,使用了一个新的、经过代码签名的通用 AppleScript 小程序。
安装此命令
只需运行 brew tap domt4/autoupdate
。
然后运行 brew autoupdate start [interval] [options]
来启用自动更新。
示例
brew autoupdate start 43200 --upgrade --cleanup --immediate --sudo
这将每12小时和每次系统启动时更新所有的 casks 和 formulae。
如果升级需要 sudo 密码,将显示一个 GUI 界面以输入密码。
同时,它还会清理所有旧版本和遗留文件。
默认启用内置自动更新的 Casks 将不会被升级。
使用方法
请参考以下链接以获取命令的详细描述。
执行操作的日志可以在以下位置找到: ~/Library/Logs/com.github.domt4.homebrew-autoupdate
这个与 brew
内置的自动更新机制的比较
这个命令的主要存在意义是确保 Homebrew 得到更新,无论你是否调用 brew
,这是与 brew
内置的自动更新机制的主要区别,后者需要用户明确运行 brew install
、brew tap
或 brew upgrade
中的任何一个。
如果你经常自己运行 brew
命令,你可能希望考虑使用内置的自动更新机制,它可以被指示较少频率地自动更新,或完全禁用。如果你希望使用内置的自动更新机制每24小时更新一次,请在你的环境中设置:
export HOMEBREW_AUTO_UPDATE_SECS="86400"
或者如果你希望完全禁用内置的自动更新机制:
export HOMEBREW_NO_AUTO_UPDATE="1"
请注意,Homebrew 对禁用内置自动更新机制的做法略有不赞同。
待办事项(欢迎提交PR)
历史
这个 tap 由 DomT4 于2015年4月创建,旨在满足个人对后台更新器的需求。在2021年4月,它被移至 Homebrew 组织,成为项目的官方部分,因为它获得了相当广泛的使用。这让我既感到惊讶,又非常感激人们发现我写的这个小工具如此有用,并贡献了他们自己的想法和时间。
在2023年底,它被移回 DomT4 的所有权,以减轻更广泛的 Homebrew 领导团队在维护/支持请求方面的负担。