HomeBrew
1.1、HomeBrew简介

HomeBrew是使用Ruby开发的软件包管理工具。

HomeBrew最初只支持macOS, 不过最近与LinuxBrew合并了,所以,也开始支持GNU/Linux了。

HomeBrew官网:http://brew.sh

HomeBrew文档:http://docs.brew.sh

HomeBrew中文网:http://brew.sh/index_zh-cn.html

HomeBrewGitHubhttps://github.com/Homebrew/brew

1.2、安装HomeBrew

Terminal中输入如下命令:

echo -e '\n' | /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

这个命令实际上相当于下面两步:

1、使用curl命令下载一个Ruby脚本:

curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install

2、使用ruby解释器执行这个Ruby脚本:

/usr/bin/ruby -e "rubyScript"

echo -e '\n'相当于代替我们按下了键盘上的回车键,因为在执行脚本的时候,会提示我们按回车键才会继续。

cURLRubymacOS系统中是默认已经安装了的,所以不需要我们自己事先安装。

注意看输出的日志,可以帮助我们快速的诊断问题和使用它。

安装过程中如果发现您还没有安装过command-line-develop-tools,它会帮您安装。 因为它要用里面的git命令下载代码。

1.3、brew命令
1.4、HomeBrew的扩展

brew命令自带了很多的子命令。但是HomeBrew也允许第三方开发者为HomeBrew添加功能, 并且添加的功能都能通过brew子命令的形式让用户使用。

关于子命令如何扩展,请查看:http://docs.brew.sh/External-Commands.html

1.5、HomeBrew仓库及其镜像

HomeBrew的仓库分为3类:

  • HomeBrew的主程序,使用git管理
  • HomeBrewformula索引仓库,使用git管理
  • HomeBrew Bottles
1.5.1、HomeBrew的主程序

HomeBrew的主程序,存放在GitHub上,网址:https://github.com/Homebrew/brew

HomeBrew的安装脚本实际上就是使用git下载此程序,然后做了一些其他的额外工作。

brew update命令也会更新此仓库。

brew --repo命令可以获得此仓库在本地的存放位置。

常用的brew.git源的镜像:

清华大学开源镜像站https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
中科大开源镜像站https://mirrors.ustc.edu.cn/brew.git
阿里开源镜像站https://mirrors.aliyun.com/homebrew/brew.git
更多

替换方法:

git -C "$(brew --repo)" remote set-url origin https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git
brew update

如果您替换了这些源之后发现有问题,想要换回去,同样,执行此命令,只是把url换成原来的即可。

1.5.2、HomeBrew的formula索引仓库

HomeBrew官方维护着一些formula索引仓库,也允许第三方创建formula索引仓库。

HomeBrewformula索引仓库只能存放在GitHub上, 并且项目地址必须是https://github.com/{user}/homebrew-{repo}

那么到底有哪些formula索引仓库可以使用呢?您可以在浏览器中打开GitHub官网进行搜索带有homebrew-字样的项目。

下面是一些常用的formula索引仓库:

GitHub服务器不在中国,我们平时访问的时候也是勉强可以访问,速度是很慢的, 对于我们频繁使用HomeBrew的人来说,那个速度是不能忍受的。

查看安装了哪些formula索引仓库:

国内大多数开源镜像站只镜像了homebrew/corehomebrew/cask这两个formula索引仓库。

1.5.2、HomeBrew Bottles仓库

HomeBrew Bottles仓库才是真正存放formula的地方,在全球有很多的镜像服务器。

HomeBrew Bottles仓库的源是:https://homebrew.bintray.com

常用的HomeBrew Bottles仓库的镜像:

清华大学开源镜像站https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles
中科大开源镜像站https://mirrors.ustc.edu.cn/homebrew-bottles
阿里开源镜像站https://mirrors.aliyun.com/homebrew/homebrew-bottles
更多

临时替换方法:

export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles

永久替换方法:

如果您使用的Shellbash, 并且您的操作系统macOS, 请执行如下的命令:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile

如果您使用的Shellbash, 并且您的操作系统不是macOS, 请执行如下的命令:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.bashrc
source ~/.bashrc

如果您使用的Shellzsh,请执行如下的命令:

echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc

注意:因为HomeBrew允许formula存放在任何地方,也就是,不一定非得是在HomeBrew Bottles上, 很多国外的软件是放在国外的Amazon S3等云存储服务器上的,这时候, 我们替换镜像是解决不了问题的,只能通过其他办法解决。