我觉得这里有几个问题。Homebrew是一个用于命令行实用程序的软件包管理器。Homebrew软件包不在.dmg文件中。
有一个相关的项目叫做homebrew-cask(HBC),它作为一个GUI应用程序的软件包管理器,类似的应用可能确实是通过.dmg文件分发的。
假设你想要使用cask来安装一个在dmg文件中分发的GUI应用程序,你必须明白像homebrew-cask(HBC)这样的软件包管理器的用途是你创建或者提供一个脚本来告诉软件包管理器如何安装和管理软件。并非所有的DMG文件都与HBC兼容。
你可以从关于贡献给HBC的指南了解到这是如何工作的:https://github.com/caskroom/homebrew-cask/blob/master/CONTRIBUTING.md
简单来说,为了使用HBC管理一个软件包,你需要编写一个"cask",这是一个Ruby文件,它给软件包管理器提供了该软件包的概念。
那么,假设你想安装一个现有的 Cask,但使用本地的 .dmg 文件以避免重新下载它?我相信 Cask 将维护自己的下载缓存,因此理论上,如果你的 dmg 文件与 cask 中包含的 sha256 哈希值匹配,并且将该 dmg 文件放置在缓存位置,cask 就能够从中安装而无需重新下载。
这就是我目前所知的了,希望对你有所帮助。
- NReilingh