feat: 更新文档

This commit is contained in:
neo 2023-03-02 17:58:39 +08:00
parent 806419d447
commit f27cfdff9f
8 changed files with 81 additions and 150 deletions

View File

@ -1,5 +1,5 @@
import React, { useState } from 'react';
import { Select, Tooltip } from 'antd';
import { Select, Tooltip, Checkbox } from 'antd';
import { QuestionCircleOutlined } from '@ant-design/icons';
// @ts-ignore
import SourceCode from 'dumi-theme-default/src/builtins/SourceCode';
@ -47,6 +47,7 @@ const SourceGenerate = ({ first }) => {
const [mirror, setMirror] = useState<Mirror>(Mirror.USTC);
const [platform, setPlatform] = useState<Platform>(Platform.MacOS);
const [terminalType, setTerminalType] = useState<string>('zsh');
const [isJsonApi, setJsonApi] = useState<boolean>(true);
function generateMirror() {
const matchMirror = mirrorData[`${mirror}Mirror`] || {};
@ -95,7 +96,7 @@ const SourceGenerate = ({ first }) => {
function generateFirstMirrorSet() {
const matchMirror = mirrorData[`${mirror}Mirror`] || {};
const shellArray = ['# 1.执行安装脚本'];
const shellArray = [];
shellArray.push(`export HOMEBREW_BREW_GIT_REMOTE="${matchMirror.brew}"`);
@ -107,27 +108,19 @@ const SourceGenerate = ({ first }) => {
shellArray.push(`export HOMEBREW_CORE_GIT_REMOTE="${matchMirror.core}"`);
}
if (isJsonApi) {
shellArray.push(`export HOMEBREW_API_DOMAIN="${matchMirror.jsonApi}"`);
} else {
shellArray.push(`export HOMEBREW_CASK_GIT_REMOTE="${matchMirror.cask}"`);
}
shellArray.push(`export HOMEBREW_BOTTLE_DOMAIN="${matchMirror.bottles}"`);
shellArray.push('');
shellArray.push(
'/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"',
);
shellArray.push('');
shellArray.push('# 2.安装完成后设置');
const file = terminalType === 'zsh' ? '.zprofile' : '.bash_profile';
if (platform === Platform.Linux && matchMirror.linuxBottles) {
shellArray.push(
`echo 'export HOMEBREW_BOTTLE_DOMAIN=${matchMirror.linuxBottles}' >> ~/${file}`,
);
} else {
shellArray.push(
`echo 'export HOMEBREW_BOTTLE_DOMAIN=${matchMirror.bottles}' >> ~/${file}`,
);
}
shellArray.push(`source ~/${file}`);
return shellArray.join('\n');
}
@ -191,6 +184,13 @@ const SourceGenerate = ({ first }) => {
<QuestionCircleOutlined style={{ marginLeft: '8px' }} />
</Tooltip>
</div>
<div className="__dumi-default-source-generate-tool-query">
<label>JSON Api</label>
<Checkbox
checked={isJsonApi}
onChange={e => setJsonApi(e.target.checked)}
></Checkbox>
</div>
</div>
<SourceCode
code={first ? generateFirstMirrorSet() : generateMirror()}

View File

@ -5,6 +5,7 @@ export const tencentMirror = {
cask: 'https://mirrors.cloud.tencent.com/homebrew/homebrew-cask.git',
bottles: 'https://mirrors.cloud.tencent.com/homebrew-bottles/bottles',
linuxBottles: '',
jsonApi: 'https://mirrors.cloud.tencent.com/homebrew-bottles/api/',
};
export const tsinghuaMirror = {
@ -16,6 +17,7 @@ export const tsinghuaMirror = {
bottles: 'https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/bottles',
linuxBottles:
'https://mirrors.tuna.tsinghua.edu.cn/linuxbrew-bottles/bottles',
jsonApi: 'https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/api',
};
export const ustcMirror = {
@ -25,6 +27,7 @@ export const ustcMirror = {
cask: 'https://mirrors.ustc.edu.cn/homebrew-cask.git',
bottles: 'https://mirrors.ustc.edu.cn/homebrew-bottles/bottles',
linuxBottles: 'https://mirrors.ustc.edu.cn/linuxbrew-bottles/bottles',
jsonApi: 'https://mirrors.ustc.edu.cn/homebrew-bottles/api',
};
export const bfsuMirror = {
@ -34,6 +37,7 @@ export const bfsuMirror = {
cask: 'https://mirrors.bfsu.edu.cn/git/homebrew/homebrew-cask.git',
bottles: 'https://mirrors.bfsu.edu.cn/homebrew-bottles/bottles',
linuxBottles: 'https://mirrors.bfsu.edu.cn/linuxbrew-bottles/bottles',
jsonApi: 'https://mirrors.bfsu.edu.cn/homebrew-bottles/api',
};
export const mirrorData: { [key: string]: any } = {

View File

@ -1,13 +1,7 @@
# 镜像助手
## 如果你是初次安装,并且需要换其他
## 针对首次安装换
脚本默认内置中科大镜像,如果需要换源,请使用小助手获取安装脚本:
<SourceGenerate first="true"></SourceGenerate>
## 如果你已经安装过,需要换源
选择"镜像"、"平台"、"终端类型"后,会自动生成对应的设置镜像脚本。
<SourceGenerate></SourceGenerate>

View File

@ -4,14 +4,12 @@ order: 4
# FAQ
## 解决 https://formulae.brew.sh/api/formula.json 失败问题
## 解决 formulae.brew.sh/api/xxx.json 失败问题
临时设置可以直接在终端执行`export HOMEBREW_NO_INSTALL_FROM_API=1`
下面是设置永久效果,`zprofile`可以自行替换为`zshrc`
执行下面内容后,重新执行安装脚本:
```shell
echo 'export HOMEBREW_NO_INSTALL_FROM_API=1' >> ~/.zprofile
echo 'export HOMEBREW_API_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles/api #brew.idayer.com' >> ~/.zprofile
source ~/.zprofile
```
@ -38,18 +36,21 @@ git config --global --unset http.proxy
git config --global --unset https.proxy
```
## No.1 的小秘籍
## 如何删除 Homebrew
遇到解决不了的问题,先删除`homebrew`目录再重新运行脚本安装。
删除可以通过脚本或者在文件夹中删除(mac)
```shell
// 目录替换为真实的brew位置
sudo rm -rf 目录
// m1,m2
sudo rm -rf /opt/homebrew
// intel
sudo rm -rf /usr/local/Homebrew
```
使用`rm -rf`命令是比较危险的行为,请一定要具体指定的、合适的目录。
使用`rm -rf`命令是比较危险的行为,请不要随意修改最后的目录名
### macOS
@ -62,6 +63,22 @@ sudo rm -rf 目录
安装目录在`/home/linuxbrew`
## 手动设置 homebrew-core
```shell
cd "$(brew --repo)/Library/Taps/"
mkdir homebrew && cd homebrew
git clone https://mirrors.ustc.edu.cn/homebrew-core.git
```
## 手动设置 homebrew-core
```shell
cd "$(brew --repo)/Library/Taps/"
cd homebrew
git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
```
## 安装时 formulae 找不到
如果遇到下面的提示。
@ -187,7 +204,7 @@ Use '--' to separate paths from revisions, like this:
zsh
```shell
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)" #brew.idayer.com' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
```
@ -203,14 +220,14 @@ eval "$(/opt/homebrew/bin/brew shellenv)"
zsh
```shell
echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)"' >> ~/.zprofile
echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)" #brew.idayer.com' >> ~/.zprofile
eval "$(/usr/local/Homebrew/bin/brew shellenv)"
```
bash
```shell
echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)"' >> ~/.bash_profile
echo 'eval "$(/usr/local/Homebrew/bin/brew shellenv)" brew.idayer.com' >> ~/.bash_profile
eval "$(/usr/local/Homebrew/bin/brew shellenv)"
```

View File

@ -10,7 +10,7 @@
- 方案名GitHub可以自行命名
- 类型:远程
- URL 地址https://gitee.com/ineo6/hosts/raw/master/hosts <CopyButton content='https://gitee.com/ineo6/hosts/raw/master/hosts' />
- URL 地址https://gitlab.com/ineo6/hosts/-/raw/master/hosts <CopyButton content='https://gitlab.com/ineo6/hosts/-/raw/master/hosts' />
- 自动更新1 小时
这样就可以和仓库中最新的`hosts`保持同步。

View File

@ -1,5 +1,7 @@
# M1 芯片 Mac 上 Homebrew 安装
**目前 m1,m2 系列不再需要依赖本文安装,可以直接使用首页命令,一键安装,[点此直达](/)**
本文简单介绍了`M1`芯片`Mac`上安装`Homebrew`的方法,同时建议小伙伴结合 [mac 安装教程](/guide/) 一起使用。
关于进度的信息可以浏览`GitHub`上的[说明](https://github.com/Homebrew/brew/issues/7857)。
@ -24,14 +26,14 @@
2. 如果看到的是`/bin/zsh`
```shell
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)" #brew.idayer.com' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"
```
如果看到的是`/bin/bash`
```shell
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.bash_profile
echo 'eval "$(/opt/homebrew/bin/brew shellenv)" #brew.idayer.com' >> ~/.bash_profile
eval "$(/opt/homebrew/bin/brew shellenv)"
```

View File

@ -4,11 +4,7 @@ order: 3
# 快速开始
如果你是在`M1`芯片的`Mac`上安装`Homebrew`,请参考 [M1 芯片安装教程](/guide/m1/)。
## 安装说明
如果之前尝试过其他脚本安装,请移除`Homebrew`后再安装,具体请参考 [FAQ](/guide/faq/#no1-的小秘籍) 。
如果之前尝试过其他脚本安装,请移除`Homebrew`后再安装,具体请参考 [FAQ](/guide/faq/#如何删除Homebrew) 。
```shell
/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"
@ -28,98 +24,31 @@ Cloning into '/usr/local/Homebrew/Library/Taps/homebrew/homebrew-core'...
```shell
cd "$(brew --repo)/Library/Taps/"
mkdir homebrew && cd homebrew
git clone git://mirrors.ustc.edu.cn/homebrew-core.git
git clone https://mirrors.ustc.edu.cn/homebrew-core.git
```
**安装`cask` 同样也有安装失败或者卡住的问题,解决方法也是一样:**
成功执行之后重新执行安装命令。
```shell
cd "$(brew --repo)/Library/Taps/"
cd homebrew
git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
```
Homebrew 4.0 版本后默认`JSON API`获取仓库信息,因此在大部分情况下都不再需要处理下面的`cask`
成功执行之后继续执行安装命令。
> **安装`cask` 同样也有安装失败或者卡住的问题,解决方法也是一样:**
>
> ```shell
> cd "$(brew --repo)/Library/Taps/"
> cd homebrew
> git clone https://mirrors.ustc.edu.cn/homebrew-cask.git
> ```
>
> 成功执行之后重新执行安装命令。
最后看到`==> Installation successful!`就说明安装成功了。
最后看到`🎉 恭喜,安装成功!`就说明安装成功了。
最最后更新下:
然后更新
```shell
brew update
```
<h2 id='part3'>设置镜像</h2>
> 更新:强烈建议使用 [镜像助手](/guide/change-source/) ,你可以自助获取镜像脚本,目前支持中科大、清华、腾讯、北京外国语镜像源。
### 中科大源
```shell
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
```
### 清华大学源
```shell
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
```
### 设置 bottles 镜像
设置环境变量需要注意终端的类型,可以先通过以下方式获取:
执行命令`echo $SHELL`,根据结果判断:
- `/bin/zsh` => `zsh` => `.zprofile`
- `/bin/bash` => `bash` => `.bash_profile`
然后继续正式操作,以**中科大源**为例:
`macOS Catalina`(10.15.x) 版开始,`Mac`使用`zsh`作为默认`Shell`,对应文件是`.zprofile`,所以命令为:
```shell
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles/bottles' >> ~/.zprofile
source ~/.zprofile
```
如果是`macOS Mojave` 及更低版本,并且没有自己配置过`zsh`,对应文件则是`.bash_profile`
```shell
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles/bottles' >> ~/.bash_profile
source ~/.bash_profile
```
> 注意:上述区别仅仅是`.zprofile``.bash_profile`不同,上下文如有再次提及编辑`.zprofile`,均按此方法判断具体操作的文件。
至此,安装和设置操作都完成了。
### 恢复默认源
```shell
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`配置只能手动删除,将 `~/.zprofile` 文件中的 `HOMEBREW_BOTTLE_DOMAIN=https://mirrors.xxx.com`内容删除,并执行 `source ~/.zprofile`
## 如何卸载 Homebrew
使用官方脚本同样会遇到`uninstall`地址无法访问问题,可以使用下面脚本:
@ -128,20 +57,13 @@ brew update
/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/uninstall.sh)"
```
## 其他相关
## 如果对您有帮助
### cask
您可以考虑请我喝杯咖啡。
目前`cask`是从`GitHub`上读取软件源,而`GitHub Api`对访问有限制,如果使用比较频繁的话,可以申请`Api Token`,然后在环境变量中配置到`HOMEBREW_GITHUB_API_TOKEN`
当然分享、收藏,能让更多人能发现文章,这也是对我的认可和鼓励
`.zprofile`中追加,注意替换`yourtoken`:
```shell
echo 'export HOMEBREW_GITHUB_API_TOKEN=yourtoken' >> ~/.zprofile
source ~/.zprofile
```
注意:因为`cask`是从`GitHub`下载软件,所以目前是无法加速的。
![wechat-reward-code-zh.jpg](https://i.loli.net/2021/03/14/GZm6bFKVEjHozke.jpg)
## 反馈
@ -155,14 +77,6 @@ source ~/.zprofile
如果安装遇到问题,强烈建议先通过 [FAQ](/guide/faq/) 自查,新问题的解决方案会持续更新。
## 如果对您有帮助
您可以考虑请我喝杯咖啡。
当然分享、收藏,能让更多人能发现文章,这也是对我的认可和鼓励。
![wechat-reward-code-zh.jpg](https://i.loli.net/2021/03/14/GZm6bFKVEjHozke.jpg)
## 参考文章
- [清华大学开源软件镜像站](https://mirror.tuna.tsinghua.edu.cn/help/homebrew/)

View File

@ -6,7 +6,7 @@ hero:
actions:
- text: 快速开始
link: /guide/start/
footer: Open-source MIT Licensed | Copyright © 2021<br />Powered by [Neo](https://github.com/ineo6)
footer: Open-source MIT Licensed | Copyright © 2023<br />Powered by [Neo](https://github.com/ineo6)
---
<h1 style="display: none">镜像快速安装Homebrew教程</h1>
@ -17,9 +17,9 @@ footer: Open-source MIT Licensed | Copyright © 2021<br />Powered by [Neo](https
/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"
```
<Center>将以上命令粘贴至终端。脚本内置 <a target="_blank" href="http://mirrors.ustc.edu.cn/help/brew.git.html">中科大镜像</a> 所以能让Homebrew安装的更快。</Center>
<Center>将以上命令粘贴至终端。脚本内置镜像让Homebrew安装的更快。</Center>
<Center>如果想使用其他源安装,或者已安装但是想换源,请使用 <a href="/guide/change-source/">镜像助手</a> 获取脚本。</Center>
<Center>如果想使用其他源安装,请使用 <a href="/guide/change-source/">镜像助手</a> 获取脚本。</Center>
<Center>更详细的安装说明,请点击 <a href="/guide/start/">快速开始</a> 开始安装。</Center>