macOS丛谈:软件包管理工具 Homebrew
介绍 Homebrew
了解过 Linux 的同学,一定对 Linux 世界五花八门又便捷强大的软件包管理工具印象深刻。
这么好的东西,macOS 上有没有呢?
答案不言而喻。
Homebrew(简称:brew) 是如今 macOS 最为主流的软件包管理工具,让用户在 macOS 上拥有类似 apt-get 的能力,用以简化软件的安装、管理和卸载过程。
Homebrew 使用 Ruby 进行开发,开源并托管于 GitHub,通过用户的贡献扩大对软件包的支持。如今,绝大多数主流软件和工具都支持 Homebrew。
其实,Homebrew 这个名字直译过来就是“家酿”,有在家自酿啤酒、自产自用的意思,由该项目的发起者马克斯·霍威尔 (Max Howell) 所起。
这里有个题外话,早期计算机历史上曾有一个影响深远的爱好者组织“家酿计算机俱乐部(Homebrew Computer Club)”,史蒂夫·沃兹尼亚克(Steve Wozniak)就是它的成员。
Homebrew 和 MacPorts
除了 Homebrew,macOS 上还有另一个历史更悠久的软件包管理工具,MacPorts ,两者的工作方式都是下载源代码,然后在本地编译。
不过,它们的差异也同样不小,主要有以下三点:
MacPorts 的理念是尽量减少对系统现有库的依赖,编译时间较长;而 Homebrew 则是尽量依赖系统现有库,编译时间显著减少。MacPorts 将软件是安装到 /opt/local ,不会与系统现有的软件发生冲突;而 Homebrew 则安装到 /usr/local,可能与系统自带的软件发生冲突。Macports 使用 rsync 或 svn 进行同步;而 Homebrew 则使用 git。总的来说,Homebrew 使用简单,编译时间短,比较适合新手使用。MacPorts 编译时间长,命令还要带上 sudo,易用性上没有 Homebrew 好,但是比较干净,适合有洁癖的人使用。
当然,今天我们要重点介绍的,还是 Homebrew。
安装和使用
由于 macOS 默认已安装 ruby,并内置了网络文件传输工具 curl(Command Line URL Viewer),所以 Homebrew 的安装很简单,只需要使用一条 ruby 命令调用 curl 下载安装即可。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
如果你想要卸载它,同样只需要一条命令。
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
安装完后,怎么使用 Homebrew 呢?这里有一些 Homebrew 的常用命令。
brew update # 更新 Homebrew 自身 brew outdated # 查看哪些包可以更新 brew upgrade # 更新所有的包 brew upgrade $FORMULA # 更新指定的包 brew cleanup # 清理所有包的旧版本 brew cleanup $FORMULA # 清理指定包的旧版本 brew cleanup -n # 查看可清理的旧版本包,不执行实际操作 brew pin $FORMULA # 锁定某个包 brew unpin $FORMULA # 取消锁定 brew info # 显示安装了包数量,文件数量,和总占用空间 brew info $FORMULA # 显示某个包的信息 brew -v/-–version # 查看版本信息 brew -h/—help # 查看帮助信息 brew doctor # 检查 Homebrew 的环境是否正常 brew deps --installed --tree # 树形显示已安装的包的依赖
在这里,我简单介绍两个自己通过 Homebrew 安装的工具:you-get 和 mas。
you-get 是一个强大的视频下载工具,支持国内外主流视频网站,同类型的还有 youtube-dl,这个主要用于国外视频网站。
mas:Mac App Store 命令行管理工具,帮助你摆脱苹果糟糕的商店体验。
现在,如果你要安装 you-get,只需输入以下命令:
brew install you-get
应运而生的 Homebrew Cask
Homebrew 使得 Power User 在 macOS 下安装管理 Git、Mysql 等常用工具不再困难。那么,是否也可以通过这样简单的方式来安装 Google Chrome 浏览器呢?
Homebrew-Cask 便是对于 Homebrew 的扩展,有了它,就可以采用 brew 的方式安装图形界面的软件,例如 QQ、 Google Chrome、Evernote 等。
Cask 会从镜像源下载已经编译好了的应用软件二进制包(.dmg/.pkg)到本地,然后解压到单独的目录 /opt/homebrew-cask/Caskroom,并软链(symlink)到 /Applications 目录下。
如今,Cask 包含了很多在 Mac App Store 里没有的常用软件,省掉了手动下载、解压、安装等步骤,和 Homebrew 一样,使用简单,管理方便。
Cask 的安装极其简单,打开终端输入:
brew tap caskroom/cask
使用上,Cask 大部分命令和 brew 保持一致,比如,你可以这样安装 Google Chrome :
brew cask install google-chrome
One more thing
如果你畏惧命令行,仍然有办法使用 Homebrew,那就是 —— Cakebrew,一个 Homebrew 的图形化软件。
结语
限于篇幅,同时也不想把文章写成教程,这次对于 Homebrew 和 Homebrew Cask 的使用并没有将太细。
如果你看了本文后对此产生兴趣,可以查看官方文档,或者自行检索相关内容,它们的使用并不复杂。
当然,也可以留言与本渣交流。
重要的是,你是不是又知道了一点呢?- -