Homebrew,好用到爆!GitHub 星標 32.5k+的 macOS 命令行軟體管理神器,功能真心強大! ...
前言(廢話)
本來打算在公司偷偷摸摸給星球的用戶寫一篇編程喵整合 MongoDB 的文章,結果在通過 brew 安裝 MongoDB 的時候竟然報錯了。原因很簡單,公司這台 Mac 上的 homebrew 環境沒有配置好。剛好 Java 程式員進階之路上缺少這樣一篇內容。
所以我就想,不如趁機水一篇吧,啊,不不不,趁機給小伙伴們普及一下 Homebrew 吧!瞧我這該死的大公無私的心(手動狗頭)。
不會吧?不會還有人用 macOS 沒有安裝/配置 Homebrew 吧?
Homebrew 能幹什麼
Homebrew 的 Slogan :The missing package manager for macOS (or Linux)
Homebrew 這款命令行軟體管理神器在 GitHub 上已經有 32.5k+ 的 star 了,功能也真心強大,幾乎 macOS 上的軟體包它都包了。Homebrew 本身沒有問題,問題在於。。。。。不說了,你懂的。
Homebrew 除了是 macOS 的包管理器也可以裝在 Linux 上成為 Linux 的包管理器,僅需要執行相應的命令,就能下載安裝需要的軟體包,省去了下載、解壓、拖拽等繁瑣的步驟。
用 Homebrew 官方的話來總結就是:安裝 Apple(或 Linux 系統)沒有預裝但你需要的軟體。比如說安裝 MongoDB,只需要執行以下命令就可以安裝,前提條件是環境一定要配置好。
brew install mongodb
簡單一條命令,就可以實現包管理,還不用擔心依賴/文件路徑等問題。
Homebrew 主要由四個部分組成: brew、homebrew-core 、homebrew-cask、homebrew-bottles。
- brew:Homebrew 的源代碼倉庫
- homebrew-core:Homebrew 的核心源
- homebrew-cask:提供 macOS 應用和大型二進位文件的安裝
- homebrew-bottles:預編譯二進位軟體包
再來瞭解一下 Homebrew 的接個核心概念,後續會經常用到。
- formula(e),安裝包的描述文件,帶 e 為複數
- cellar,包安裝好後所在的目錄
- bottle,預先編譯好的包,不需要再下載源碼編譯,速度會快很多,官方庫中的包大多數是通過 bottle 方式安裝的
- tap,下載源
- cask(s),安裝 macOS native 應用的擴展,可以理解為有圖形化界面的應用,帶 s 為複數
- bundle,描述 Homebrew 依賴的擴展
安裝配置 Homebrew
世上無難事,只要找到 Homebrew 的正確安裝方式。
按理說,Homebrew 的安裝方式非常簡單,只需要執行官方的一句命令就可以完成安裝了。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
但國內開發者命苦就苦在,經常會因為網路的原因安裝失敗。原因我只能說這是 https://raw.githubusercontent.com
網站的鍋,誰讓它訪問不穩定呢?
怎麼辦呢?
必須換一種高效且科學的安裝方式,那就是使用鏡像安裝。 Gitee 上有開源作者提供了一鍵安裝包,只需要執行以下命令就可以了。
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
安裝腳本里提供了中科大、清華大學、北京外國語大學、騰訊、阿裡巴巴等下載源。
但過來人告訴你,別選其他鏡像源,就選中科大,速度杠杠的,40-50M/s,這速度比其他鏡像源快多了,對比起來,其他就是蝸牛