天天看點

M1晶片的Mac安裝homebrew

因為最近入手一個新款的Mac,M1晶片的,安裝了好久的homebrew,一直出現問題,也是參考了好多的文章,現在終于安裝成功了,下面給大家分享一下安裝的教程!!!

====================================================================

本文簡單的介紹了M1晶片Mac上安裝homebrew的方法,

M1晶片的Mac安裝homebrew

文章目錄

    • 一、腳本說明
        • (1)安裝 ARM 版 Homebrew
    • 二、安裝說明(建議先看一遍再操作)
        • 其他的安裝形式
          • (1)安裝 X86 版 Homebrew
          • (2)多版本共存
    • 三、設定鏡像
        • 3.1 中科大源
        • 3.2 清華大學源
        • 3.3 恢複預設源
    • 四、其他相關
        • 4.1 cask
        • 4.2 如何解除安裝Homebrew
    • 五、總結

一、腳本說明

Homebrew是一款包管理工具,目前支援

macOS

linux

系統。主要有四個部分組成:

brew

homebrew-core

homebrew-cask

homebrew-bottles

(1)安裝 ARM 版 Homebrew

ARM版Homebrew需要安裝在

/opt/homebrew

路徑下,早期的時候需要手動建立目錄執行指令,目前使用最新腳本不需要手動操作。

直接執行:Homebrew預設安裝腳本:

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

如果你等待一段時間之後遇到下面提示,就說明無法通路官方腳本位址:

curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
           

請按照下面 「安裝說明」中步驟執行。

二、安裝說明(建議先看一遍再操作)

(1)提前設定

homebrew-core

鏡像源并執行:

安裝腳本的好處是可穩定通路,安裝預設使用中科大鏡像:

# 中科大
HOMEBREW_CORE_GIT_REMOTE=https://mirrors.ustc.edu.cn/homebrew-core.git

/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
           

然後還需要設定下環境變量,在

~/.zshrc

或者

~/.bashrc

檔案末尾追加下面代碼。

export PATH=/opt/homebrew/bin:$PATH
           

注意:如果你确定使用的終端是zsh,那請編輯.zshrc檔案,否則請操作.bashrc檔案。

.bashrc

為例,在終端執行下面代碼可以直接追加内容并讓檔案生效:

echo export PATH=/opt/homebrew/bin:$PATH >> ~/.bashrc 

# 重新開機一下
source ~/.bashrc
           
M1晶片的Mac安裝homebrew

如果指令執行中卡在下面資訊:

==> Tapping homebrew/core
Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
           

請Control + C中斷腳本執行如下指令:

cd "$(brew --repo)/Library/Taps/"
mkdir homebrew && cd homebrew
git clone git://mirrors.ustc.edu.cn/homebrew-core.git
           

cask 同樣也有安裝失敗或者卡住的問題,解決方法也是一樣:

cd "$(brew --repo)/Library/Taps/"
cd homebrew
git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
           

如果出現successful就表示成功

M1晶片的Mac安裝homebrew

成功執行之後繼續執行前文的安裝指令:

/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
           

最後看到==> Installation successful!就說明安裝成功了。

M1晶片的Mac安裝homebrew

最後更新下:

brew update
           

更新成功的話,如圖所示:

M1晶片的Mac安裝homebrew

如果更新的時候出現

zsh: command not found: brew

就執行下面這句腳本

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

M1晶片的Mac安裝homebrew

然後按照下面的細節執行:

M1晶片的Mac安裝homebrew

最終成功的截圖,如圖所示:

M1晶片的Mac安裝homebrew

其他的安裝形式

(1)安裝 X86 版 Homebrew

因為目前很多軟體包沒有支援

ARM

架構,我們也可以考慮使用x86版的Homebrew。

在指令前面添加

arch -x86_64

,就可以按

X86

模式執行該指令,比如:

# 設定homebrew-core鏡像
HOMEBREW_CORE_GIT_REMOTE=https://mirrors.ustc.edu.cn/homebrew-core.git

arch -x86_64 /bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/install.sh)"
           
(2)多版本共存

如果你同時安裝了ARM和X86兩個版本,那你需要設定别名,把指令區分開。

同樣是

.zshrc

或者

.bashrc

裡面添加:

alias abrew='arch -arm64 /opt/homebrew/bin/brew'
alias ibrew='arch -x86_64 /usr/local/bin/brew'
           

abrew

ibrew

可以根據你的喜好自定義。

然後再執行

source ~/.zshrc

source ~/.bashrc

指令更新檔案。

三、設定鏡像

brew

homebrew/core

是必備項目,

homebrew/cask

homebrew/bottles

按需設定。

通過 brew config 指令可以檢視相關配置資訊。

3.1 中科大源

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

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

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

brew update

# 長期替換homebrew-bottles
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile
source ~/.bash_profile
           

注意bottles可以臨時設定,在終端執行下面指令:

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

3.2 清華大學源

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

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

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

brew update

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

3.3 恢複預設源

git -C "$(brew --repo)" remote set-url origin https://github.com/Homebrew/brew.git

git -C "$(brew --repo homebrew/core)" remote set-url origin https://github.com/Homebrew/homebrew-core.git

git -C "$(brew --repo homebrew/cask)" remote set-url origin https://github.com/Homebrew/homebrew-cask.git

brew update
homebrew-bottles配置隻能手動删除,将 ~/.bash_profile 檔案中的 HOMEBREW_BOTTLE_DOMAIN=https://mirrors.xxx.com内容删除,并執行 source ~/.bash_profile。
           

至此,安裝和設定操作都完成了。

四、其他相關

4.1 cask

目前cask是從GitHub上讀取軟體源,而GitHub Api對通路有限制,如果使用比較頻繁的話,可以申請Api Token,然後在環境變量中配置到

HOMEBREW_GITHUB_API_TOKEN

.bash_profile

中追加:

export HOMEBREW_GITHUB_API_TOKEN=yourtoken
           

注意:因為cask是從GitHub下載下傳軟體,是以目前是無法加速的。

4.2 如何解除安裝Homebrew

使用官方腳本同樣會遇到uninstall位址無法通路問題,可以使用下面腳本:

/bin/bash -c "$(curl -fsSL https://cdn.jsdelivr.net/gh/ineo6/homebrew-install/uninstall.sh)"

五、總結

在前面的過程中我們把

brew

homebrew-core

的位址都指向到中科大鏡像。

原理是通過修改

install.sh

腳本,在裡面預設鏡像位址。

STAT="stat --printf"
  CHOWN="/bin/chown"
  CHGRP="/bin/chgrp"
  GROUP="$(id -gn)"
  TOUCH="/bin/touch"
fi
# 這裡替換了BREW_REPO
BREW_REPO="https://mirrors.ustc.edu.cn/brew.git"
           

更新後的方案使用

HOMEBREW_CORE_GIT_REMOTE

來預設

homebrew-core

源,不過這個設定方法很可能無效!!!

參考網站:

清華大學開源軟體鏡像站

中科大源

繼續閱讀