在 Fedora Linux 上使用 Homebrew 包管理器
2022-03-22 13:06:17来源:Linux中国
Homebrew 是一个 macOS 的包管理器,用于在 macOS 上安装 UNIX 工具。但是,它也可以在 Linux(和 Windows WSL)上使用。它是用 Ruby 编写的,并提供主机系统(macOS 或 Linux)可能不提供的软件包,因此它在操作系统包管理器之外提供了一个辅助的包管理器。此外,它只以非 root 用户身份在前缀/home/linuxbrew/.linuxbrew
或~/.linuxbrew
下安装软件包,不会污染系统路径。这个包管理器在 Fedora Linux 上也适用。在这篇文章中,我将尝试告诉你 Homebrew 与 Fedora Linux 包管理器dnf
有什么不同,为什么你可能想在 Fedora Linux 上安装和使用它,以及如何安装。
Homebrew 如何工作免责声明
你应该经常检查你在系统上安装的软件包和二进制文件。Homebrew 包通常以非 sudoer 用户运行,并工作在专门的前缀的路径下,因此它们不太可能造成破坏或错误配置。然而,所有的安装操作都要自己承担风险。作者和 Fedora 社区不对任何可能直接或间接因遵循这篇文章而造成的损失负责。
Homebrew 在底层使用 Ruby 和 Git。它使用特殊的 Ruby 脚本从源代码构建软件,这些脚本被称为 “配方formula”,看起来像这样(使用wget
包作为例子):
(LCTT 译注:Homebrew 本身意思是“家酿”,在这个软件中,有各种类似于酿酒的比喻。)
class Wget < Formula homepage "https://www.gnu.org/software/wget/" url "https://ftp.gnu.org/gnu/wget/wget-1.15.tar.gz" sha256 "52126be8cf1bddd7536886e74c053ad7d0ed2aa89b4b630f76785bac21695fcd" def install system "./configure", "--prefix=#{prefix}" system "make", "install" endendHomebrew 与 dnf 有何不同
Homebrew 是一个包管理器,提供了许多 UNIX 软件工具和包的最新版本,例如 FFmpeg、Composer、Minikube 等。当你想安装一些由于某种原因在 Fedora Linux RPM 仓库中没有的软件包时,它就会证明很有用。所以,它并不能取代dnf
。
在开始安装 Homebrew 之前,确保你已经安装了 glibc 和 gcc。这些工具可以在 Fedora 上通过以下方式安装:
sudo dnf groupinstall "Development Tools"
然后,通过在终端运行以下命令来安装 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
在安装过程中,你会被提示输入你的sudo
密码。另外,你可以选择 Homebrew 的安装前缀,但默认的前缀就可以了。在安装过程中,你将成为 Homebrew 前缀目录的所有者,这样你就不必输入sudo
密码来安装软件包。安装将需要数分钟。完成后,运行以下命令,将brew
添加到你的PATH
中:
echo "eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"" >> ~/.bash_profileeval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"安装和检查软件包
要在 Homebrew 上使用“配方”安装一个软件包,只需运行:
brew install
将
替换为你要安装的“配方”的名称。例如,要安装 Minikube,只需运行:
brew install minikube
你也可以用以下方式搜索“配方”:
brew search
要获得一个“配方”的信息,请运行:
brew info
另外,你可以用以下命令查看所有已安装的“配方”:
brew list卸载软件包
要从你的 Homebrew 前缀中卸载一个软件包,请运行:
brew uninstall升级软件包
要升级一个用 Homebrew 安装的特定软件包,请运行:
brew upgrade
要更新 Homebrew 和所有已安装的“配方”到最新版本,请运行:
brew update总结
Homebrew 是一个简单的包管理器,可以与dnf
一起成为有用的工具(两者完全没有关系)。尽量坚持使用 Fedora 原生的dnf
包管理器,以避免软件冲突。然而,如果你在 Fedora Linux 软件库中没有找到某个软件,那么你也许可以用 Homebrew 找到并安装它。请看“配方”列表以了解有哪些可用的软件。另外,Fedora Linux 上的 Homebrew 还不支持图形化应用(在 Homebrew 术语中称为“酒桶cask”)。至少,我在安装 GUI 应用时没有成功过。