如何使用自制程序 Mac 安装第三方工具和应用程序

Homebrew 是一个 macOS 包管理器,允许用户安装和管理第三方 UNIX 工具和软件。 以下是如何开始。

与大多数 UNIX/Linux基于 的系统不提供安装超出 macOS 标准的第三方命令行工具的标准机制 Apple 水管工。 在大多数 UNIX/Linux基于系统的系统从包管理器安装工具,可以在其中下载、更新、同步和删除包。 大多数包管理器都包含自动化功能。

macOS 上解决此问题的最佳解决方案是名为的第三方包管理器 自制的

Homebrew 不仅易于使用,而且能够保持稳定 Mac 只需付出相对较少的努力,您就可以更新您的工具。 还可以使用脚本自动安装工具,但这超出了本文的范围。 现在我们将只使用最简单的示例,稍后再讨论更高级的主题。

在 macOS 上开始使用自制程序需要什么

设置很简单,需要 4 个基本步骤。

首先去 GPG工具网站,下载并运行 GPGTools 安装程序。 完成后退出安装程序。 这将安装 GPG 钥匙串应用程序,您可以使用它来创建 SSH 稍后由自制安装程序脚本使用的密钥。

GPG 是缩写 GNU 隐私卫士 – 但不用担心 – 不会安装任何内容 VPN 或其他网络软件。 GPGTools 仅安装 GPGTools 应用程序和一些随机需要的 UNIX 工具。 还将安装系统设置的设置区域。

安装 GPGTools 后,转到您的应用程序文件夹并运行 GPG 钥匙串应用程序。 完成非常简单的第一个提示 – 输入姓名、电子邮件地址和密码(如果您需要的话)(这是个好主意)。 此密码仅用于应用程序创建的 SSH 密钥。 除非您手动访问终端中的密钥,否则您将不再需要它。

GPGTools 应用程序生成您的密钥后,会将它们保存在您的主文件夹中名为“.ssh”的不可见文件夹中。 领导“。” 使文件夹不可见,除非您告诉 Finder 显示不可见的文件。 在大多数情况下,您不需要直接访问密钥:

公钥基础设施或 公钥基础设施 允许您使用加密签名而不是密码安全地交换信息。

请注意,.ssh 文件夹中的 id_rsa 文件是您的私钥。 切勿将此密钥交给其他任何人,也绝不允许访问它 Mac。 另一个文件 id_rsa.pub 是您的公钥,可以免费分发或上传到公钥服务器。 其他文件由系统用来配置 SSH。

GPGTools 应用程序将显示一个窗口,其中显示您的新公钥并且它是有效的。

接下来需要安装第三方 Ruby 版本管理器 – Ruby 语言的包管理器。 这是必需的,因为大多数自制程序及其安装脚本(称为公式)都是用 红宝石。 它还安装经过验证的密钥 GPG 你自己。这很容易。 RVM 站点在顶部列出了此步骤。 打开您的终端应用程序 Mac 从 /Applications/Utilities 并复制并粘贴:

gpg2 ––recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

回来 运行命令。

这指示 GPG 从经过验证的公钥服务器获取官方 GPG 密钥。 下载密钥时将显示几行文本。 它应该很快完成:

请注意以下事项: 当您登录到您的 Mac 因为不-admin 用户可能需要将其添加到任何终端命令之前 sudo 命令。 为了 example:

sudo gpg2 ––recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

sudo 或“超级用户 do”是 UNIX 工具,用于以“超级用户”(有时称为 root 用户)身份运行不同的命令。 超级用户几乎拥有在 UNIX 系统上执行任何操作的无限权力,因此请小心使用。 系统可能会要求您提供 macOS admin 密码。 如果您已登录您的 Mac 作为 admin 用户可能不需要将它们添加到终端命令中 sudo。

您可以使用键盘上的所有四个箭头键在终端中向前或向后导航。

接下来,通过复制并粘贴来运行终端应用程序中 RVM 网站上显示的第二行脚本:

curl -sSL https://get.rvm.io | bash -s stable

这使用 UNIX curl 下载工具来安装 Ruby Version Manager Mac。 忽略密钥未经认证的警告。 完成后,安装脚本会提到一些高级 UNIX 设置项,但您基本上可以忽略它们,除非您打算直接使用 Ruby。 您也可以以后再次运行相同的命令将 RVM 更新到最新版本。

在终端中,您可以通过同时按 Ctrl-Option-Z 键来中止任何正在运行的命令的执行。

您可以在终端中检查 RVM + Ruby 安装:

现在初步设置已完成,您可以自行安装 Homebrew。 按照主页上的指示将以下内容复制并粘贴到终端中:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

这就把它泄露了 curl 从那里获取 Hombrew 安装程序脚本并运行它 GitHub 在线存储库。 当脚本第一次运行时,系统可能会询问您的 macOS admin 在终端中输入系统密码。 Enter 然后按 回来。 按照屏幕上的其余说明进行操作。

自制程序安装程序脚本下载并安装自制程序所需的所有内容。 按照屏幕上的说明操作。 它可能会要求你的 Mac admin 密码。 应该不会花太长时间。 该过程完成后,您将看到 Homebrew 的一些注释,其中大部分您可以安全地忽略。

安装 homebrew 后,您可以运行第一个 homebrew 命令或在终端中运行brew 命令:

获取 是另一个类似的GNU下载工具 curl。 wget 对很多人来说都很常见 Linux 和 UNIX 系统。

就是这样。 这就是安装 Homebrew 和工具所需的全部内容。

每当您安装 Homebrew 托管的工具时,请在终端中键入“brew install(公式名称)”,其中(公式名称)是 Homebrew 识别的公式名称。 每个工具都是通过 Ruby 脚本(公式)安装的,可以下载并运行它。 它还知道如何安装任何公式依赖项。

您可以在主页顶部搜索 Homebrew 中的任何工具名称。 只需在搜索框中输入该工具的名称,就会出现一个弹出窗口,其中包含所有匹配的公式。 单击公式名称可查看其页面和brew install 命令。 为了 example 如果你想搜索它 珀尔 包裹,前往 www.brew.sh,然后在搜索框中键入“Perl”。 你应该看到这个:

附带说明:大多数自制程序包都安装在不可见的系统目录 /usr/local 中名为 Cellar 的子文件夹中。 在 UNIX 二进制目录 (bin) 中为每个工具创建符号链接,系统可以在其中看到它们。 符号链接在 UNIX 上相当于 macOS 桌面别名。

自制软件团队非常擅长添加新工具,并更新现有公式。 还有广泛的 文档 和一个 论坛

保持自制程序最新

您应该了解一些最后的命令,以自动更新您已安装的任何公式和自制程序本身。 这些都是:

  • 酿造助剂 – 一般自制帮助。
  • 酿造命令 – 显示常见的自制命令。
  • 酿造清单 – 显示所有已安装的自制程序公式。
  • 酿造升级 – 检查自制程序安装脚本是否有新版本并安装它(如果可用)。
  • 眉毛已经过时了 – 查看所有需要更新的公式。
  • 卸载酿造 – 从您的公式中删除指定的公式 Mac。

最后,您需要经常(如果不是每天)运行的最重要的更新公式命令:

酿造更新 – 更新您的所有过时的公式 Mac。

请注意,即使连接速度很快,如果安装了许多公式,brew 更新也可能需要一些时间。

自制啤酒桶

除了命令行 UNIX 工具之外,Homebrew 还允许您安装一些标准工具 Mac 通过其 cask 标志安装应用程序,这与常规安装命令非常相似。 例如安装 Mozilla Firefox 只需输入:

brew install ––cask firefox

大多数 Cask 应用程序安装都安装在常用的应用程序文件夹中。 这也是通过运行brew update 同时使多个应用程序保持最新状态的好方法。

哪些版本?

一旦某个工具随 Homebrew 安装并且对 macOS 可见,您就可以使用“which”命令后跟该工具的名称来找出它在系统中的位置。 在终端中,例如输入:

这基本上适用于所有 UNIX 系统工具。

如果您知道工具支持的版本标志,您还可以在终端中获取其版本。 大多数 UNIX 工具使用工具名称后跟 -v 标志或 ––version 标志。 为了 example:

GNU Wget 1.21.3 基于 Darwin21.3.0。

大多数工具在版本信息之后都会有大约一段信息。

对于每个工具支持的特定命令,请使用 UNIX man 系统(或手动系统):

Wget – 非交互式网络下载器。

获取 [option]… [URL]…

接下来是命令及其选项的页面。

类型 控制Z 离开man系统。

自制还有更多

现在您已经了解了如何安装、更新和使用自制程序,您可以安装几乎任何流行的 UNIX 工具包。

在以后的文章中,我们将研究 Homebrew 的一些更高级的命令。 我们正在讨论如何使用 Shell脚本编写主安装和更新脚本,以一次性自动执行整个安装集。