- Homebrew 和 MacPorts 是 macOS 上必不可少的包管理器,用于自动安装和维护软件及依赖项。
- 这两种工具都能够高效、安全地管理数千个应用程序和实用程序,每种工具针对不同级别的用户都有不同的理念和方法。
- 本文将逐步指导您完成安装、配置和常见故障排除、集成技巧、 comandos 和最佳实践,以保持您的开发环境清洁、安全和最新。
在 macOS 生态系统中,无论是高级用户还是刚开始开发的用户, 程序和依赖关系管理至关重要. 尽管 App Store Mac 解决许多日常需求,但在尝试安装某些不容易找到的开源应用程序、实用程序和工具时,经常会遇到挑战。这时,软件包管理器 家酿 y MacPorts的,两个强大且非常流行的解决方案,用于从命令行安装、更新、卸载和维护软件,并且具有很好的控制力。
通过这篇详细的文章,你会发现 如何安装 Homebrew 和 MacPorts 在你的 Mac 上,它们的根本区别在于, 优点、可能的缺点和推荐用途和 技巧、技巧和实用命令,助您充分利用它们。如果您曾经在论坛上查看命令时感到迷茫,如果您想知道为什么应该勇于接受 终端 或者,如果您想保持环境清洁和安全,这里有一个量身定制的指南,专为那些寻求效率和控制安装在 Apple 设备上的软件的人设计。
什么是包管理器以及为什么要在 Mac 上使用它?
包管理器 它是一款能够搜索、安装、更新和卸载应用程序和库的工具,还能管理所有正常运行所需的依赖项。它的理念让人联想到 Linux,但针对 macOS 体验及其独特功能进行了定制。
这些系统提供了许多关键优势:
- 它们使用简单的命令来方便安装软件,避免了繁琐的手动下载 .dmg 或 .pkg 安装程序。
- 自动解决依赖关系和版本,减少错误和冲突。
- 它们可让你的软件始终保持最新状态 并且安全,直接从审核的存储库下载新版本。
- 他们提供干净的卸载过程,不仅删除程序本身,还删除未使用的依赖项。
- 他们集中访问软件 从一个地方搜索、安装和更新多个应用程序。
Homebrew 和 MacPorts 等软件包管理器对于想要充分利用 Mac 的开发人员、系统管理员和好奇用户来说至关重要。
Homebrew:macOS 的首选软件包管理器
家酿 凭借其简洁易用、文档清晰、社区庞大的优势,它已成为 macOS 的首选软件包管理器。它的座右铭是“macOS 缺少的软件包管理器”,自诞生以来,它为需要在 Mac 上安装开源软件或开发工具的用户带来了极大的便利。
其优势包括:
- 从终端轻松安装,无需复杂的步骤。
- 与 CPU 兼容性好 英特尔 和 Apple Silicon(M1、M2 等).
- 依赖管理的自动化,避免常见的冲突。
- 访问数千个公式 (软件和库的安装脚本)和“casks”来安装图形应用程序,例如 Google Chrome, 码头工人, 蒸汽等等。
- 快速且频繁的更新,以及一个非常活跃的社区。
- 直观且易于记忆的命令,使其成为新手和专家的理想选择。
安装 Homebrew 和 MacPorts 的先决条件
在开始安装任何软件包管理器之前,最好先确保您的 Mac 满足基本要求,包括以下方面: 硬件 以及软件。大多数功能在两个系统中都是通用的:
- macOS Mojave (10.14) 或更高版本:旧版本可能支持有限或需要替代命令。
- Intel 64 位或 Apple Silicon CPU (M1、M2……)。
- 互联网连接 稳定地下载脚本和包。
- 管理员权限 执行某些命令并写入关键路径。
- Xcode 命令行工具:非常重要,因为许多 Homebrew 或 MacPorts 软件包都依赖它们。您可以使用以下命令安装它们 xcode-select –安装.
- Bourne兼容shell:bash 或 zsh,macOS 默认包含这两个功能。
如何逐步安装 Homebrew
Homebrew 的安装非常简单,只需几分钟。以下是标准安装顺序,包括不同架构和 macOS 版本的步骤:
- 打开终端应用程序.
你可以在 应用程序>实用程序>终端 或者使用 Spotlight 搜索(Command + Space 并输入“Terminal”)。 - 安装 Xcode 命令行工具 运行:
xcode-select --install
如果您已经拥有它们,您将收到一条错误消息,通知您它们已安装。 - 检查您的系统架构 (如有任何问题):
uname -m
如果结果是 arm64,你有一台搭载 Apple Silicon 的 Mac;如果出现 x86_64,是一家英特尔公司。 - 跑过 脚本 相应安装:
对于大多数现代版本的 macOS,标准命令是:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
- 按照屏幕上的步骤操作:
系统会要求您确认,如有必要,还会要求您输入管理员密码。安装程序将检查依赖项并创建必要的路径。 - 如果需要,将 Homebrew 添加到 PATH:
在 Apple Silicon 计算机上,Homebrew 默认安装在/opt/homebrew
,因此您可能需要将以下内容添加到文件末尾 〜/ .zshrc o 在〜/ .bash_profile:
eval $(/opt/homebrew/bin/brew shellenv)
- 通过运行测试安装:
brew help
obrew doctor
如果您看到命令列表或类似“您的系统已准备好冲泡”的消息,则一切就绪。
您现在可以开始使用 Homebrew 了! 您现在可以从终端安装开发包、实用程序、图形应用程序等。
Homebrew 实用入门
安装 Homebrew 后,软件管理将大大简化。以下是日常使用中你应该了解的一些基本命令:
- 搜索包:
brew search nombre_del_paquete
- 安装包:
brew install wget
(将 wget 替换为您感兴趣的软件名称) - 安装图形应用程序(Casks):
brew install --cask google-chrome
- 更新 Homebrew:
brew update
- 更新所有已安装的程序:
brew upgrade
- 查看包信息:
brew info git
- 删除包:
brew uninstall nombre_del_paquete
- 检查 Homebrew 配置:
brew config
- 诊断潜在问题:
brew doctor
对于更好奇的人来说,还有更高级的选项,例如:
- 防止软件包被更新:
brew pin nombre_del_paquete
- 重新允许更新:
brew unpin nombre_del_paquete
- 列出已安装的版本:
brew list --versions
- 编辑公式(针对高级用户):
brew edit nombre_del_paquete
安装和使用 Casks 图形软件
除了命令行实用程序之外,Homebrew 还允许您使用“casks”直接安装许多图形应用程序。这样,您就可以自动安装浏览器、文本编辑器或消息客户端,而无需搜索 .dmg 文件或将图标拖到任何文件夹中。
一些有用的命令:
- 搜索特定酒桶:
brew search --casks google-chrome
- 安装桶:
brew install --cask firefox
要激活第三方酒桶水龙头,您可以使用:
brew tap usuario/repositorio
禁用和删除 Homebrew:如何安全地操作
如果您在任何时候想要删除 Homebrew 和所有相关软件包,有一个简单而干净的过程:
- 运行卸载脚本:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
- 按照屏幕上的步骤进行操作,如有必要,请提供管理员密码。
- 或者,如果您担心安全问题,您可以在运行脚本之前手动下载并检查该脚本。
什么是 MacPorts?它与 Homebrew 有何不同?
MacPorts 是 macOS 另一个老牌且功能强大的软件包管理器。它的起源可以追溯到 Mac OS X 早期,当时名为 DarwinPorts。虽然它不如 Homebrew 那么易于使用,但它提供了高级功能和 极其精确且可定制的依赖管理,使其成为需要绝对控制构建变体和软件版本的用户的理想选择。
要点包括:
- 高级变体管理,允许使用特定选项和自定义依赖项来编译软件。
- 多种套餐可供选择,包括一些在 Homebrew 中找不到或需要特殊配置的功能。
- 强大的更新和维护,专为那些寻求稳定性和控制力而非即时性的人而设计。
- 默认从源代码编译,而不是在 Homebrew 中使用二进制文件。
- 需要安装完整版 Xcode 和命令行工具.
如何逐步安装 MacPorts
MacPorts 的安装过程与 Homebrew 略有不同,但同样易于访问:
- 从 App Store 安装 Xcode 然后确保还安装了命令行工具:
xcode-select --install
- 下载 MacPorts 安装程序 从官方网站上选择适合您的操作系统的版本。
- 打开下载的.pkg包 并按照安装向导中的步骤进行操作(高级用户也可以从源代码安装)。
- 检查安装是否成功 运行:
port version
第一个基本 MacPorts 命令
MacPorts 仅通过终端使用,其语法与其他包管理器类似:
- 搜索包:
port search nombre_del_paquete
- 安装包:
sudo port install nombre_del_paquete
- 查看包的可用变体:
port variants nombre_del_paquete
- 安装具有特定变体的包:
sudo port install nombre_del_paquete +variante1 +variante2
- 更新包:
sudo port upgrade nombre_del_paquete
- 删除包:
sudo port uninstall nombre_del_paquete
MacPorts 允许您定义特定于包的配置文件并共享自定义端口文件,这使得它在希望构建自定义环境的系统管理员和高级用户中非常受欢迎。
全面比较:Homebrew 与 MacPorts
这两个系统的功能非常相似,但在理念、架构和学习曲线上有所不同。以下是根据所分析的最佳文章中的信息整理而成的各种表格和列表:
特点 | 家酿 | MacPorts的 |
---|---|---|
语言 | 红宝石 | TCL |
易于安装 | 非常简单(一个命令) | 安装技术性更强,需要下载安装程序 |
依赖管理 | 自动化、透明化 | 非常详细的控制,甚至手动 |
套餐更新 | 快速且频繁 | 更稳定,但更新频率较低 |
二进制文件与源代码 | 预编译(快速安装) | 从源代码编译(更灵活) |
目标受众 | 初学者、开发人员、普通用户 | 系统管理员、高级用户 |
文档和社区 | 非常活跃且广泛 | 规模较小但专业的社区 |
Apple Silicon 支持 | 优秀 | 正在更新,但已经支持 ARM |
根本区别
- Homebrew 因其易用性、安装速度和透明的依赖关系管理而脱颖而出;非常适合那些追求即时性和简单性的人。
- MacPorts 致力于绝对控制、定制和稳定。,牺牲一些简单性来换取变体的粒度和对复杂项目的更好处理。
- 两者允许共存 如果它们安装在不同的路径中,则可以在同一系统上进行安装,但除了有经验的用户外,这不是推荐的选项。
- 通过 Homebrew 中的“taps”和 MacPorts 中的 portfiles,可以安装非官方软件、扩展存储库和共享自定义公式。
高级设置和自定义
Homebrew 和 MacPorts 都提供了多种调整包管理和行为的选项:
- 修改存储库源 获取特定或替代版本的软件包。
- 在 MacPorts 中自定义变体 编译具有特定功能的程序(例如 X11 支持、Qt、GTK+ 等)。
- 在 Homebrew 中捏包 以防止关键软件的自动更新。
- 编辑公式和投资组合 使安装适应默认未涵盖的需求。
可以在以下文件中编辑配置 ~/.brewconfig
或者使用您最喜欢的文本编辑器编辑特定的端口文件。
故障排除和最佳实践
在安装或日常使用 Homebrew 和 MacPorts 的过程中,可能会遇到一些小问题。以下是一些最常见的问题及其解决方案:
- 命令行工具安装失败:如果看到错误,请运行
xcode-select --install
手动并按照 Apple 助手的指示进行操作。 - 安装 Homebrew 后出现错误的 PATH 警告 在 Apple Silicon 上:检查你的 shell(zsh、bash)并确保你正确添加了它
eval $(/opt/homebrew/bin/brew shellenv)
在您的配置文件中。 - 依赖冲突:保持系统更新,并删除过时或重复的软件包
brew cleanup
osudo port uninstall inactive
. - 因缺乏许可证而失败:请确保以普通用户身份运行终端,并在出现提示时使用管理员权限。
- 安全风险:仅从官方或经过验证的来源和存储库下载软件包。
依赖管理和冲突解决
任何包管理器的一个基本方面是它如何处理依赖项(另一个软件运行所需的附加软件):
- 家酿 自动解决并安装每个包的所有依赖项,最大限度地减少冲突。
- MacPorts的 允许您选择替代变体和依赖项,提供更好的控制,甚至在必要时提供手动干预。
- 两者都有工具来识别和解决孤立或不兼容的依赖关系(
brew doctor
,port provides
).
在高级或生产环境中,定期检查依赖项的状态、删除旧版本并在重大更新之前维护备份是一个好主意。
包管理器的缺点和局限性
虽然 Homebrew 和 MacPorts 都具有显著的优势,但它们并非完美无缺。它们最常见的一些缺点包括:
- 依赖冲突: 有时不同的程序需要同一个库的不兼容版本。
- 资源消耗: 旧版本或很少使用的软件包的积累会占用大量的磁盘空间。
- 安全风险: 从非官方存储库安装软件包存在执行恶意代码的风险。
- 更新问题: 有时更新可能会破坏关键软件的兼容性。
为了尽量减少这些风险,建议:
- 保持系统和软件包为最新版本。
- 仅从受信任的来源安装。
- 定期删除不使用的依赖项和程序。
- 在进行重大更改之前请进行备份。
对字节世界和一般技术充满热情的作家。我喜欢通过写作分享我的知识,这就是我在这个博客中要做的,向您展示有关小工具、软件、硬件、技术趋势等的所有最有趣的事情。我的目标是帮助您以简单而有趣的方式畅游数字世界。