Homebrew安装方法

本文最后更新于 2023年9月17日 上午

Homebrew简介

Homebrew作为一个强大的第三方库源,轻轻松松解决Mac上安装Aria2、You-get等一系列工具安装,甚至可以轻松配置Pythpn3,而不影响Mac自带的Python2;

关于架构

自Apple发布M1芯片版本MacBook,现在新款Macbook已经由x86架构指令集,更换为arm架构指令集,所以Homebrew也区分x86arm版本,目前体现在:

  • arm版本Homebrew安装在/opt/homebrew内,而x86安装在/usr/local

2021.02.02
目前看x86arm版本的Homebrew安装源、仓库选用都是一样的,后续不知道会不会更改。

针对不同的方法:

  • 官方方法是逻辑判断系统架构:arm安装arm版本Homebrew,x86安装x86版本Homebrew
  • 因为目前我没有M1设备,所以一键脚本只尝试适配了arm架构设备

关于付费

首先,明确说明,小白用户完全可以看此篇文章后,自己搭建。

迫于生计:

感谢所有捐赠用户⁄(⁄ ⁄ ⁄ω⁄ ⁄ ⁄)⁄

教程视频:

脚本安装

脚本安装教程:Bilibili视频链接

手动安装

手动安装教程:Bilibili视频链接

换源安装

换源安装教程:Bilibili视频链接

终端走代理官网安装

这个方法是和官网官方安装方法一样,只是多了代理来解决大陆无法连接GitHub仓库来安装Homebrew的问题。
如果你没有代理服务器,请不要使用该方法

终端走代理

终端默认是不走你系统使用的代理服务,如:你本地在使用Burp监听8080端口抓取网站数据包,终端也是默认是不会走这些端口的。我们想让终端走代理也很简单:
终端输入:

1
export http_proxy=http://127.0.0.1:$Port;export https_proxy=http://127.0.0.1:$Port;

其中,$Port为本地代理的端口号,如:

最后,我们使用curl命令,访问一下ip.gs看看代理是否成功:

1
curl ip.gs

当然,如果你不放心ip.gs网站的服务,或者连接异常,可以使用我搭建的服务:

1
curl https://image.mintimate.cn/image/getIP


没问题,就执行(官方Homebrew不区分X86arm架构CPU):

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

回车即可安装。

官网官方安装

终端输入以下命令回车:

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

你也可以去官网看看:https://brew.sh/index_zh-cn.html
2020.3.4更新,官网命令有所变动,但是源命令依旧可以用,而且指向仓库和新代码一样。
2020.4 同步了官网安装命令

如果下载慢、下载无速度,建议使用方法二。

换源安装

2020.3.12更新:新版本Homebrew,三大源(Homebrew-core、brew、Homebrew-cask)换源安装,部分设备只能安装brew,如果碰到无速度情况,请使用其他方法。
终端输入以下命令回车:

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

如果拷贝这个文件都拷贝不下来,可以用我修改好源的文件。
(修改好清华源的文件,如果还是过慢,请更换阿里、USTC:链接: https://pan.baidu.com/s/1JFj8DQD5MqRJq94DqJ6HVg 提取码: a7t5)

然后使用命令:

1
open Temp_Brew

修改源为清华大学的镜像地址:

为方便大家复制清华源:

1
BREW_REPO = "https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git".freeze

保存后,终端输入:

1
/usr/bin/ruby Temp_Brew

然后回车,按提示即可。

脚本配置安装

我其实一直不想使用脚本来安装,因为曾经有小白,自己操作不当,擅自更改脚本,结果来怪我脚本没写好;所以原则是,我一般不公开使用脚本。
该脚本,改自知乎用户:@金牛肖马
不过,脚本实现的内容,就是下面的手动配置安装。

如果不放心,这边提供源代码下载:HomebrewAutoInstall.sh

截至至2022.05.16,本脚本接口已经累计调取1568

我改动后的脚本:
改的内容:

  • 添加阿里源(cask为清华源)
  • 脚本地址放置地址为国内服务器
  • 优化代码提示

一键脚本

因为有人恶意攻击我服务器,所以取消公开展示,可以关注我微信公众号:MintimateBlog
回复:Homebrew,来获取一键脚本

如果不想麻烦地关注公众号,可以直接网页上前往爱发电支持我,并直接获取一件脚本(以及其他付费动态):https://afdian.net/p/1bdadb00d46b11ec991d52540025c377

爱发电付费动态解锁

注意:我已经尝试性适配M1芯片,但是如果还是有问题,也是很正常的:

  • Homebrew本身也还在适配M1芯片

如果你的M1安装出现问题,可以尝试联系我解决,可能非无偿

手动配置安装

运行git获取、解析链接可能会需要一些时间,请注意等待。本来我想自己建一个国内brew仓库源;但是……没那么多资金买服务器……(搭建一个Magisk国内服务器,已经差不多极限了)

注意:因为我个人精力有限,原则上远程辅助等仅限捐赠用户;QQ:198330181)

X86版本

以下操作,均在终端/Terminal内完成,且arm用户不要尝试(虽然……尝试了也没什么影响)

Step1:插件Homebrew目录

打开终端,创建Homebrew文件目录:

1
sudo mkdir /usr/local/Homebrew

Step2:同步brew.git库

下载brew.git库文件(大概32M)到/usr/local/Homebrew:
如果你是x86架构用户:

1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git /usr/local/Homebrew

Step3:添加环境–使终端可以任意位置调用Homebrew

创建软链接到系统:

1
sudo ln -s /usr/local/Homebrew/bin/brew /usr/local/bin/brew

如果提示File exists,就先删除原本软链接

1
sudo rm -rf /usr/local/bin/brew

Step4:创建并同步Homebrew-core库

创建Homebrew-core目录,并git Homebrew-core库文件(大概250M):

1
sudo mkdir -p /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core 

Step5:创建并同步Homebrew-cask库

1
sudo mkdir -p /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask
1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask

Step6:提权

1
2
3
sudo chown -R $(whoami) /usr/local/Homebrew
sudo chown -R $(whoami) /usr/local/Cellar
sudo chown -R $(whoami) /usr/local/var/homebrew

这个时候

1
brew -v

就可以看到brew已经安装。

Arm版本

以下操作,均在终端/Terminal内完成,且x86用户不要尝试(虽然……尝试了也没什么影响)

Step1:插件Homebrew目录

arm架构用户在终端输入:

1
sudo mkdir /opt/homebrew

Step2:同步brew.git库

下载brew.git库文件(大概32M)到/opt/homebrew目录:
如果你是arm架构用户:

1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/brew.git /opt/homebrew

Step3:添加环境–使终端可以任意位置调用Homebrew

创建软链接到系统:

1
sudo ln -sf /opt/homebrew/bin/brew /opt/homebrew/bin/brew

Step4:创建并同步Homebrew-core库

创建Homebrew-core目录,并git Homebrew-core库文件(大概250M):

1
sudo mkdir -p /opt/homebrew/Library/Taps/homebrew/homebrew-core
1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-core.git /opt/homebrew/Library/Taps/homebrew/homebrew-core 

Step5:创建并同步Homebrew-cask库

1
sudo mkdir -p /opt/homebrew/Library/Taps/homebrew/homebrew-cask
1
sudo git clone https://mirrors.tuna.tsinghua.edu.cn/git/homebrew/homebrew-cask.git /opt/homebrew/Library/Taps/homebrew/homebrew-cask

Step6:提权

1
2
3
sudo chown -R $(whoami) /opt/homebrew
sudo chown -R $(whoami) /opt/homebrew/Cellar
sudo chown -R $(whoami) /opt/homebrew/var/homebrew

这个时候

1
brew -v

就可以看到brew已经安装。

no git repository如何解决

如果出现这个问题,很多原因;一般主要是安装brew的时候,homebrew-core解析失败。使用brew -v出现:

1
2
Homebrew 2.2.8
Homebrew/homebrew-core (no git repository)

解决方法有两个:

  1. 卸载brew,重新安装brew
  2. 手动安装homebrew-core

这边介绍手动安装

下载Homebrew Git文件到本地

https://github.com/Homebrew/brew

将下载的Git解压到Core文件夹内

访达进入:/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
将文件拷入:

尝试更新

载入我们拷入的homebrew-core,终端运行:

1
brew update --verbose

注意⚠️:如果卡住,请换源(最好zsh换源)
这个时候会报错:

1
2
3
Error: Could not 'git stash' in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core!Please stash/commit manually if you need to keep your changes or, if not, run: 
cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core
git reset --hard origin/master

git reset

因为这边我没截图,我就简单说一下。执行run:内容即可。

更新

执行:

1
brew update

此时,homebrew-core载入成功

brew update卡住或过慢如何解决

方法一:Bash 终端配置

建议同样更换清华源:清华源
搬运内容:
替换现有源,终端以此输入:

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

方法二:Zsh 终端配置

这边建议使用阿里源:阿里源

1
2
3
4
5
6
7
8
9
10
11
# 替换brew.git:
cd "$(brew --repo)"
git remote set-url origin https://mirrors.aliyun.com/homebrew/brew.git
# 替换homebrew-core.git:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin https://mirrors.aliyun.com/homebrew/homebrew-core.git
# 应用生效
brew update
# 替换homebrew-bottles:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.aliyun.com/homebrew/homebrew-bottles' >> ~/.zshrc
source ~/.zshrc

此时,brew update就会比较快了,如果还是不行,使用

1
brew update --verbose

查看更新时候详情内容。

卸载brew

官方卸载命令:

终端输入:

1
2
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

根据官方修改

这个是我根据官方脚本,部署在我国内服务器,在GitHub 403/404情况下,确保国内用户可以使用(´▽`):

1
/bin/zsh -c "$(curl -fsSL 'https://api.host.mintimate.cn/fileHost/public/download/w6K')"


Homebrew安装方法
https://www.mintimate.cn/2020/04/05/Homebrew/
作者
Mintimate
发布于
2020年4月5日
许可协议