Homebrew調研
參考文章
- Homebrew官網
- 比較Fink, macports 和 homebrew
- Homebrew 和 Fink、MacPort 相比有什么優勢?
- 為什么在Mac OS下,大多數的人認為Homebrew 比MacPorts好很多?
- Homebrew OSX 包管理軟件,從此拋棄 MacPorts
- 蘋果mac電腦中brew的安裝使用及卸載詳細教程
- Ruby系列文章之6 ---OS X 10.8.1 系統 HomeBrew的安裝和簡單使用
解釋一些概念
brew 又叫Homebrew,是Mac OSX上的軟件包管理工具,能在Mac中方便的安裝軟件或者卸載軟件, 只需要一個命令, 非常方便,brew類似ubuntu系統下的apt-get的功能。
作為linux系統的忠實粉絲,我們都很喜歡
(Debian/Ubuntu)
系列的apt包管理系統
和(Redhat/Fedora)
系列的yum包管理系統
。 包括Windows用戶都有多種方便的軟件管理工具,如:360軟件管理,QQ軟件管理,迅雷軟件管理等多種。 Mac OS X系統下面之前有老牌的Macports,Fink包管理系統,包括apple的官方Mac App Store。所以我們也向在蘋果下找到一款比較新的,方便的包管理系統,沒錯,她就是Homebrew
。如果你有Linux/Unix背景,那么在Mac上你一定想安裝那些你熟悉的open source軟件。Fink,Macports和Homebrew是3個主流的package management tool。
Fink
是基于Debian的packaging tools開發的。最大的特點是安裝軟件是預編譯好的(pre-compiled/pre-built)。所以,用Fink安裝package是不需要在本機編譯的,都是現成的binary code。Fink最大的問題是package跟進不夠快。很多最新版的軟件,你要等Fink。-
Macports
:Mac算是BSD的一個變種吧。所以,BSD的包管理軟件port被移植到Mac上就顯的理所當然了。macports的工作方式是下載source code然后在本地編譯。macport的理念是盡量減少對系統現有庫的依賴。所以,第一次用macport的時候,需要很長時間讓macport重新build整個基本庫,什么perl啊,python啊的。代價是較長的編譯時間,較多的依賴關系下載。好處是不怎么依賴系統,也就是說,更新Mac OS不會破壞你現有的package。另外,macports安裝所有的package到/opt/local下面。這樣不會和系統現有的/usr/local有什么沖突。
-
Homebrew
:這個比較新,是在Lion之后才興起的。工作方式和macport類似,也是下載source并在本地編譯安裝。但是和macports有兩個根本的區別。1) homebrew的理念是盡量使用系統現有的庫。這樣可以大大的減少編譯時間。
2) package都安裝到/usr/local下面。
這兩點和macports是完全相反的。結果也是有利有弊。最大的好處莫過于編譯時間變短,安裝簡單。問題就是和系統緊密依賴。另外Homebrew假設你的Mac是單用戶系統,所以/usr/local的owner應該是你,而不是傳統的root。
這個假設在大多數情況下都成立。
(當然你可以改變homebrew的安裝路徑,然后修改你的PATH)另外,一個不太重要的區別,macport是用rsync來同步repository tree和獲取新的package的。
homebrew是用git來管理repository的。
如果你是在內部網或者firewall后通過proxy使用,這點可能會給你帶來影響--一些proxy不支持rsync的。 忘了
Fink
吧,老了。 如果你是重量級的Linux用戶,希望使用所有的open source package,那么macports
是你不二的選擇。如果你只希望很快的安裝一些便利的工具,那么homebrew
是個不錯的選擇。Homebrew有一個非常活躍的社區。Github提供了一個良好的合作平臺,用戶之間的交流非常有效率。軟件倉庫的版本更新非常快,每天都會有多次提交。總體感覺,Homebrew年輕富有活力,Macports偏于保守嚴謹。(Fink的用戶群好像已經很小了,不提也罷)
Homebrew常見用法
- 安裝方法:在終端等CLI輸入
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
-
使用homebrew安裝軟件:
- 比如安裝git
brew install git
* 比如安裝wget
```
brew install wget
Homebrew安裝成功后,會自動創建目錄 /usr/local/Cellar 來存放Homebrew安裝的程序。
- 使用homebrew卸載軟件:
比如卸載wget
brew uninstall wget
- 使用brew查詢軟件
有時候,你不知道你安裝的軟件的名字, 那么你需要先搜索下, 查到包的名字。
比如:
brew search /wge*/
/wge*/是個正則表達式, 需要包含在//中,如下圖
徹底卸載homebrew
cd `brew –prefix`
rm -rf Cellar
brew prune
rm `git ls-files`
rm -rf Library .git .gitignore bin/brew
rm -rf README.md share/man/man1/brew
rm -rf Library/Homebrew Library/Aliases
rm -rf Library/Formula Library/Contributions
rm -rf ~/Library/Caches/Homebrew
- 其他homebrew命令
- brew list:列出已安裝的軟件
- brew update:更新brew
- brew home:用瀏覽器打開brew的官方網站
- brew info:顯示軟件信息
- brew deps:顯示包依賴
- brew -v: 查看homebrew版本