Linux中國

在 Linux 上安裝和使用 Homebrew 包管理器

Homebrew(家釀),也被稱為 Brew,是一個主要為 macOS 創建的命令行包管理器。

Homebrew 在 macOS 用戶中相當流行,因為更多的開發者創造了可以用 Homebrew 輕鬆安裝的命令行工具。

這種流行導致了 Linuxbrew 的誕生,它是 Homebrew 的一個 Linux 移植版。由於它主要是 Git 和 Ruby 組成的,而 Linux 和 macOS 都是類 Unix 的系統,所以 Brew 在兩種操作系統上都能很好地工作。

Linuxbrew 項目最終與 Homebrew 項目合併,現在只有一個 Brew 項目,叫做 Homebrew。

為什麼我叫它 Brew,而不是 Homebrew?因為命令以 brew 開頭。你會在後面的章節中看到它的詳細內容。

當你已經有了 apt、dnf、snap 時,為什麼還要在 Linux 上使用 Homebrew 包管理器?

我知道這種感覺。你已經有一個由你的發行版提供的好的 包管理器。除此之外,你還有 Snap、Flatpak 和其他通用軟體包系統。

在你的 Linux 系統上你真的需要 Homebrew 包管理器嗎?答案取決於你的需求。

你看,除了發行版的包管理器和通用包管理器,你會遇到需要其他包管理器的情況,比如 Pip (用於 Python 應用)和 Cargo (用於 Rust 軟體包)。

想像一下,你遇到了一個很好的命令行工具,想試試。它的軟體庫提到它可以使用 brew 或源代碼來安裝。在這種情況下,在你的系統上有 brew 可能會有幫助。畢竟,都 2021 了,從源代碼安裝 並不時髦(也不舒服)。

換句話說,如果你遇到一些有趣的命令行工具只提供 brew 安裝選項,你會有一個額外的選擇。

在 Ubuntu 和其他 Linux 發行版上安裝 Homebrew

安裝是相當容易的。你只需要確保你已經有了所有的依賴項。

步驟 1:安裝依賴項

你需要有相對較新版本的 gcc 和 glibc。你可以 在 Ubuntu 上安裝 build-essential 包 來獲得它們。除此之外,你還需要 安裝 Git、Curl 和 procps(用於監控系統進程)。

在基於 Ubuntu 和 Debian 的系統中,你可以像這樣一起安裝所有這些東西:

sudo apt-get install build-essential procps curl file git

Iinstall dependencies for Homebrew in Ubuntu/Debian

對於其他發行版,請使用你的包管理器並安裝這些依賴項。

步驟 2:安裝 Homebrew

你可以看到為什麼你需要 安裝 Curl。它允許你 在終端下載安裝腳本文件

只要輸入這個命令:

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

當要求輸入回車鍵時,請按下回車。

Installing Homebrew on Ubuntu

在腳本最後,它建議運行幾個命令,將其添加到 PATH 變數中。Homebrew 實際上是安裝在你的主目錄中,然後軟鏈接到 /usr/local 目錄中。

Run the suggested command under Next steps to add Homebrew to PATh variable

你可以 在終端方便地複製和粘貼。只要選擇它所建議的命令,按 Ctrl+Shift+C 複製,按 Ctrl+Shift+V 粘貼。

或者,你也可以直接複製粘貼這個命令:

echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> $HOME/.bash_profile

然後是這個:

eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"

Adding brew commands to the PATH

步驟 3:驗證 brew 的安裝

就快完成了。只需通過使用 brew doctor 命令來驗證 brew 命令是否可以運行:

brew doctor

brew doctor 命令會告訴你是否有任何問題。

你可以通過安裝示例 hello 項目再次驗證:

brew install hello

如果你沒有看到任何錯誤,你可以在 Linux 上享用家釀了。

使用 brew 命令來安裝、刪除和管理軟體包

讓我快速告訴你幾個可以用來安裝、刪除和管理軟體包的 brew 命令。

由於 Homebrew 安裝在你的主目錄中,你不需要 sudo 來運行它(就像 Pip 和 Cargo)。

要用 brew 安裝一個軟體包,請使用安裝選項:

brew install package_name

這裡沒有自動完成軟體包名稱的功能。你需要知道確切的軟體包名稱。

要刪除一個 brew 軟體包,你可以使用 removeuninstall 選項。兩者的作用是一樣的。

brew remove package_name

你也可以用這個命令列出已安裝的 brew 軟體包:

brew list

你也可以用 autoremove 選項刪除不需要的依賴:

brew autoremove

在下一張截圖中,我只用 brew 安裝了兩個軟體包,但它也顯示了這些軟體包的依賴關係。即使在移除軟體包後,依賴關係仍然存在。autoremove 終於把它們刪除了。

Listing and removing brew apckages

還有很多 brew 命令選項,但這不在本教程的範圍內。你可以隨時 翻閱它的文檔 並進一步探索。

從 Linux 中刪除 Homebrew

如果不加入從你的 Linux 系統中刪除 Homebrew 的步驟,本教程就不完整。

根據 GitHub 倉庫中提到的步驟,你必須下載並使用這個命令運行卸載腳本:

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

你會被要求輸入 Y 鍵來確認刪除。

Removing Homebrew from Linux

當 Homebrew 的卸載完成後,它會列出它所遺留的文件和目錄:

Remaining files after Homebrew removal

讓你自己去刪除這些文件和目錄。

總結

正如我前面解釋的,Homebrew 為你已經有的東西提供了一個擴展。如果你偶然發現一個只有 brew 安裝方式的應用,在你的 Linux 系統上安裝 Homebrew 會很方便。

你對這個話題有什麼要補充的,或者分享你的問題或意見?請在評論區留言。

via: https://itsfoss.com/homebrew-linux/

作者:Abhishek Prakash 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    這個站點使用 Akismet 來減少垃圾評論。了解你的評論數據如何被處理

    More in:Linux中國

    Linux中國

    捐贈 Let's Encrypt,共建安全的互聯網

    隨著 Mozilla、蘋果和谷歌對沃通和 StartCom 這兩家 CA 公司處罰落定,很多使用這兩家 CA 所簽發證書的網站紛紛尋求新的證書籤發商。有一個非盈利組織可以為大家提供了免費、可靠和安全的 SSL 證書服務,這就是 Let's Encrypt 項目。現在,它需要您的幫助
    Linux中國

    關於Linux防火牆iptables的面試問答

    Nishita Agarwal是Tecmint的用戶,她將分享關於她剛剛經歷的一家公司(印度的一家私人公司Pune)的面試經驗。在面試中她被問及許多不同的問題,但她是iptables方面的專家,因此她想分享這些關於iptables的問題和相應的答案給那些以後可能會進行相關面試的人。 所有的問題和相應的答案都基於Nishita Agarwal的記憶並經過了重寫。 嗨,朋友!我叫Nishita Agarwal。我已經取得了理學學士學位,我的專業集中在UNIX和它的變種(BSD,Linux)。它們一直深深的吸引著我。我在存儲方面有1年多的經驗。我正在尋求職業上的變化,並將供職於印度的P
    Linux中國

    Lets Encrypt 已被所有主流瀏覽器所信任

    旨在讓每個網站都能使用 HTTPS 加密的非贏利組織 Lets Encrypt 已經得了 IdenTrust的交叉簽名,這意味著其證書現在已經可以被所有主流的瀏覽器所信任。從這個裡程碑事件開始,訪問者訪問使用了Lets Encrypt 證書的網站不再需要特別配置就可以得到 HTTPS 安全保護了。 Lets Encrypt 的兩個中級證書 ...