在 Fedora Linux 上使用 Homebrew 包管理器
Homebrew 是一個 macOS 的包管理器,用于在 macOS 上安裝 UNIX 工具。但是,它也可以在 Linux(和
Windows WSL)上使用。它是用 Ruby 編寫的,并提供主機(jī)系統(tǒng)(macOS 或
Linux)可能不提供的軟件包,因此它在操作系統(tǒng)包管理器之外提供了一個輔助的包管理器。此外,它只以非 root 用戶身份在前綴 ??/home/linuxbrew/.linuxbrew?
?? 或 ??~/.linuxbrew?
?? 下安裝軟件包,不會污染系統(tǒng)路徑。這個包管理器在 Fedora Linux 上也適用。在這篇文章中,我將嘗試告訴你 Homebrew 與 Fedora Linux 包管理器 ??dnf?
? 有什么不同,為什么你可能想在 Fedora Linux 上安裝和使用它,以及如何安裝。
免責(zé)聲明
你應(yīng)該經(jīng)常檢查你在系統(tǒng)上安裝的軟件包和二進(jìn)制文件。Homebrew 包通常以非 sudoer 用戶運(yùn)行,并工作在專門的前綴的路徑下,因此它們不太可能造成破壞或錯誤配置。然而,所有的安裝操作都要自己承擔(dān)風(fēng)險。作者和 Fedora 社區(qū)不對任何可能直接或間接因遵循這篇文章而造成的損失負(fù)責(zé)。
Homebrew 如何工作
Homebrew 在底層使用 Ruby 和 Git。它使用特殊的 Ruby 腳本從源代碼構(gòu)建軟件,這些腳本被稱為 “配方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"
end
end
Homebrew 與 dnf 有何不同
Homebrew 是一個包管理器,提供了許多 UNIX 軟件工具和包的最新版本,例如 FFmpeg、Composer、Minikube
等。當(dāng)你想安裝一些由于某種原因在 Fedora Linux RPM 倉庫中沒有的軟件包時,它就會證明很有用。所以,它并不能取代 ??dnf?
?。
安裝 Homebrew
在開始安裝 Homebrew 之前,確保你已經(jīng)安裝了 glibc 和 gcc。這些工具可以在 Fedora 上通過以下方式安裝:
sudo dnf groupinstall "Development Tools"
然后,通過在終端運(yùn)行以下命令來安裝 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
在安裝過程中,你會被提示輸入你的 ??sudo?
? 密碼。另外,你可以選擇 Homebrew 的安裝前綴,但默認(rèn)的前綴就可以了。在安裝過程中,你將成為 Homebrew 前綴目錄的所有者,這樣你就不必輸入 ??sudo?
? 密碼來安裝軟件包。安裝將需要數(shù)分鐘。完成后,運(yùn)行以下命令,將 ??brew?
? 添加到你的 ??PATH?
? 中:
echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> ~/.bash_profile
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
安裝和檢查軟件包
要在 Homebrew 上使用“配方”安裝一個軟件包,只需運(yùn)行:
brew install <formula>
將 ??<formula>?
? 替換為你要安裝的“配方”的名稱。例如,要安裝 Minikube,只需運(yùn)行:
brew install minikube
你也可以用以下方式搜索“配方”:
brew search <formula>
要獲得一個“配方”的信息,請運(yùn)行:
brew info <formula>
另外,你可以用以下命令查看所有已安裝的“配方”:
brew list
卸載軟件包
要從你的 Homebrew 前綴中卸載一個軟件包,請運(yùn)行:
brew uninstall <formula>
升級軟件包
要升級一個用 Homebrew 安裝的特定軟件包,請運(yùn)行:
brew upgrade <formula>
要更新 Homebrew 和所有已安裝的“配方”到最新版本,請運(yùn)行:
brew update
總結(jié)
Homebrew 是一個簡單的包管理器,可以與 ??dnf?
? 一起成為有用的工具(兩者完全沒有關(guān)系)。盡量堅持使用 Fedora 原生的 ??dnf?
? 包管理器,以避免軟件沖突。然而,如果你在 Fedora Linux 軟件庫中沒有找到某個軟件,那么你也許可以用 Homebrew 找到并安裝它。請看 ??“配方”列表?? 以了解有哪些可用的軟件。另外,F(xiàn)edora Linux 上的 Homebrew 還不支持圖形化應(yīng)用(在 Homebrew 術(shù)語中稱為“酒桶cask”)。至少,我在安裝 GUI 應(yīng)用時沒有成功過。