mirror of
https://github.com/LCTT/TranslateProject.git
synced 2024-12-26 21:30:55 +08:00
148 lines
5.8 KiB
Markdown
148 lines
5.8 KiB
Markdown
[#]: subject: "Using Homebrew Package Manager on Fedora Linux"
|
||
[#]: via: "https://fedoramagazine.org/using-homebrew-package-manager-on-fedora-linux/"
|
||
[#]: author: "Mehdi Haghgoo https://fedoramagazine.org/author/powergame/"
|
||
[#]: collector: "lujun9972"
|
||
[#]: translator: "geekpi"
|
||
[#]: reviewer: "wxy"
|
||
[#]: publisher: "wxy"
|
||
[#]: url: "https://linux.cn/article-14380-1.html"
|
||
|
||
在 Fedora Linux 上使用 Homebrew 包管理器
|
||
======
|
||
|
||
![](https://img.linux.net.cn/data/attachment/album/202203/21/193616z7kvf71b7z48kn92.jpg)
|
||
|
||
### 简介
|
||
|
||
Homebrew 是一个 macOS 的包管理器,用于在 macOS 上安装 UNIX 工具。但是,它也可以在 Linux(和 Windows WSL)上使用。它是用 Ruby 编写的,并提供主机系统(macOS 或 Linux)可能不提供的软件包,因此它在操作系统包管理器之外提供了一个辅助的包管理器。此外,它只以非 root 用户身份在前缀 `/home/linuxbrew/.linuxbrew` 或 `~/.linuxbrew` 下安装软件包,不会污染系统路径。这个包管理器在 Fedora Linux 上也适用。在这篇文章中,我将尝试告诉你 Homebrew 与 Fedora Linux 包管理器 `dnf` 有什么不同,为什么你可能想在 Fedora Linux 上安装和使用它,以及如何安装。
|
||
|
||
> 免责声明
|
||
>
|
||
> 你应该经常检查你在系统上安装的软件包和二进制文件。Homebrew 包通常以非 sudoer 用户运行,并工作在专门的前缀的路径下,因此它们不太可能造成破坏或错误配置。然而,所有的安装操作都要自己承担风险。作者和 Fedora 社区不对任何可能直接或间接因遵循这篇文章而造成的损失负责。
|
||
|
||
### Homebrew 如何工作
|
||
|
||
Homebrew 在底层使用 Ruby 和 Git。它使用特殊的 Ruby 脚本从源代码构建软件,这些脚本被称为 “<ruby>配方<rt>formula</rt></ruby>”,看起来像这样(使用 `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"
|
||
end
|
||
end
|
||
```
|
||
|
||
### Homebrew 与 dnf 有何不同
|
||
|
||
Homebrew 是一个包管理器,提供了许多 UNIX 软件工具和包的最新版本,例如 FFmpeg、Composer、Minikube 等。当你想安装一些由于某种原因在 Fedora Linux RPM 仓库中没有的软件包时,它就会证明很有用。所以,它并不能取代 `dnf`。
|
||
|
||
### 安装 Homebrew
|
||
|
||
在开始安装 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_profile
|
||
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
|
||
```
|
||
|
||
### 安装和检查软件包
|
||
|
||
要在 Homebrew 上使用“配方”安装一个软件包,只需运行:
|
||
|
||
```
|
||
brew install <formula>
|
||
```
|
||
|
||
将 `<formula>` 替换为你要安装的“配方”的名称。例如,要安装 Minikube,只需运行:
|
||
|
||
```
|
||
brew install minikube
|
||
```
|
||
|
||
你也可以用以下方式搜索“配方”:
|
||
|
||
```
|
||
brew search <formula>
|
||
```
|
||
|
||
要获得一个“配方”的信息,请运行:
|
||
|
||
```
|
||
brew info <formula>
|
||
```
|
||
|
||
另外,你可以用以下命令查看所有已安装的“配方”:
|
||
|
||
```
|
||
brew list
|
||
```
|
||
|
||
### 卸载软件包
|
||
|
||
要从你的 Homebrew 前缀中卸载一个软件包,请运行:
|
||
|
||
```
|
||
brew uninstall <formula>
|
||
```
|
||
|
||
### 升级软件包
|
||
|
||
要升级一个用 Homebrew 安装的特定软件包,请运行:
|
||
|
||
```
|
||
brew upgrade <formula>
|
||
```
|
||
|
||
要更新 Homebrew 和所有已安装的“配方”到最新版本,请运行:
|
||
|
||
```
|
||
brew update
|
||
```
|
||
|
||
### 总结
|
||
|
||
Homebrew 是一个简单的包管理器,可以与 `dnf` 一起成为有用的工具(两者完全没有关系)。尽量坚持使用 Fedora 原生的 `dnf` 包管理器,以避免软件冲突。然而,如果你在 Fedora Linux 软件库中没有找到某个软件,那么你也许可以用 Homebrew 找到并安装它。请看 [“配方”列表][2] 以了解有哪些可用的软件。另外,Fedora Linux 上的 Homebrew 还不支持图形化应用(在 Homebrew 术语中称为“<ruby>酒桶<rt>cask</rt></ruby>”)。至少,我在安装 GUI 应用时没有成功过。
|
||
|
||
### 参考资料和进一步阅读
|
||
|
||
要了解更多关于 Homebrew 的信息,请查看以下资源:
|
||
|
||
* Homebrew 主页:<https://brew.sh>
|
||
* Homebrew 文档:<https://docs.brew.sh>
|
||
* 维基百科 Homebrew 页面:<https://en.wikipedia.org/wiki/Homebrew_(package_manager)>
|
||
|
||
--------------------------------------------------------------------------------
|
||
|
||
via: https://fedoramagazine.org/using-homebrew-package-manager-on-fedora-linux/
|
||
|
||
作者:[Mehdi Haghgoo][a]
|
||
选题:[lujun9972][b]
|
||
译者:[geekpi](https://github.com/geekpi)
|
||
校对:[wxy](https://github.com/wxy)
|
||
|
||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||
|
||
[a]: https://fedoramagazine.org/author/powergame/
|
||
[b]: https://github.com/lujun9972
|
||
[1]: https://fedoramagazine.org/wp-content/uploads/2022/03/homebrew_sized-up-816x346.png
|
||
[2]: https://formulae.brew.sh/formula/
|