Homebrew、Fink 和 Macports 的比较?

Homebrew、Fink 和 Macports 的比较?

我正在使用 Fink 在我的 Mac 上安装 Unix 应用程序,我刚刚遇到 Homebrew 并看到了一些关于 Homebrew 的好评。

所以,我的问题是:

  1. 你们在 Mac 上使用什么包管理器?
  2. 我目前使用 Fink,那么从 Fink 转向 Homebrew 真的值得吗?
  3. 如果 2. 是真的,那么为什么?

答案1

我使用 Fink 和 Macports。它们都很好用。

但我可能会向那些刚从 Windows 迁移过来的不太专业的用户推荐 Homebrew,因为它看起来很简单。

答案2

在我看来,Homebrew 的问题在于它试图以一种它从未打算使用的方式使用 /usr/local:由 root 以外的用户拥有。虽然我理解 Homebrew 开发人员会小心不要将 /usr/local 中的任何其他内容混在一起,但安装到 /usr/local 的其他任何东西都不会对 Homebrew 产生同样的影响。这可能会导致问题,对我来说……通常是由于安装其他软件而导致的权限问题,这些软件根据“应该如何”设置 /usr/local/ 的权限。您永远不会看到其他软件包期望 /usr/local/ 由 root 以外的单个用户拥有,那么 Homebrew 为什么要这样做呢?为什么不直接使用~/bin

此外,关于 Fink 和 MacPorts 的鲜为人知的事实编译自己的库

MacPorts 使用自己的库的原因有几个。它使不同版本的 Mac OS X 之间的移植更加一致。例如,如果我们可以依赖 MacPorts 的 openssl 1.0.0,我们就不必为每个可用的 openssl 安装测试每个需要 ssl 的移植。Apple 的软件往往会不时出现故障(例如,openssl 拒绝使用旧的 zlib 构建,但有一段时间 Apple 发布了易受攻击的 zlib 版本的旧标头)。即使 Apple 的版本没有问题,它们也很少是最新的。Apple 习惯于不更新 Mac OS X 中的库,除非绝对有必要进行安全漏洞更新。

这种策略的缺点很小:如果你有几 GB 的硬盘,那么浪费几兆字节(例如用于安装 Python)几乎不算什么,而且随着计算机速度的提高,构建额外端口所需的时间也会减少。

因此,虽然 Homebrew 可以更快地安装您想要的内容,但使用预先构建的 Apple 系统库可能会产生其他不良副作用。

再次重申,我不想批评 Homebrew。我喜欢这款软件,我认为它在某些方面很棒,但它目前也有缺点。

答案3

我更喜欢 Homebrew,因为它简单/速度快——我的工具似乎现在更新得很快。

这是我用过的最轻松的基于源代码的包管理工具,而且开发似乎相当活跃。你还想要什么呢?

(是的,所有缺失的应用程序)

相关内容