Setup a new macOS development environment
由于一些原因,需要把自己 MacBook 的 macOS 重新安装配置一下工作/开发环境。以前都是直接用公司的网络环境,Google、GitHub等访问完全不是问题。结果这次自己一番折腾以后,回头一看,发现还真不是太简单的事情。So,总结其中要点以记录之,作为今后自己和别人的参考,遂有此文。
【初次发布于 2022-08-15】
1、创建一个自己专用的 WPS 环境
该步骤此处不多赘述,懂得都懂。
简单说下,我最后选择了 HW 的西雅图,架好 V2ray Server,然后 macOS 使用 V2rayU 连接,能正常打开 Google 即告成功。
然后还需要做一个小调整:改 DNS。在“系统偏好设置 -> 网络 -> 高级”里把默认的 DNS 改成这几个:
1
2
3
119.29.29.29
223.5.5.5
8.8.8.8
2、两个 CN 访问的关键预设置
虽然网络都可正常使用了,但由于 CN 的国情在此,对于开发者的几个重要资源的访问速度都成问题,要么不能下载,要么下载超级慢,严重影响正常开发工作,所以一定需要先设置这些才能让下面的安装一路顺风,否则就哭去吧。我就踩进了这个大坑。😭
目前对于开发者最主要的就是两个资源了:一个 是GitHub,一个是 macOS 专用的 Homebrew。
设置 Homebrew
先说 Homebrew。它官网的安装命令是
1
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
但这个install.sh
直接拿来用的话,会连接国外的源,无论下载还是更新,都非常慢,所以不能直接使用。解决办法就是使用国内的源,目前主要有中科大源、清华大学源两个。我用的是前者。
我们可以先把这个install.sh
下载下来,用编辑器打开后,找到如下代码:
1
2
3
4
5
6
7
8
9
10
11
12
STAT_PRINTF=("stat" "--printf")
PERMISSION_FORMAT="%a"
CHOWN=("/bin/chown")
CHGRP=("/bin/chgrp")
GROUP="$(id -gn)"
TOUCH=("/bin/touch")
INSTALL=("/usr/bin/install" -d -o "${USER}" -g "${GROUP}" -m "0755")
fi
CHMOD=("/bin/chmod")
MKDIR=("/bin/mkdir" "-p")
HOMEBREW_BREW_DEFAULT_GIT_REMOTE="https://github.com/Homebrew/brew"
HOMEBREW_CORE_DEFAULT_GIT_REMOTE="https://github.com/Homebrew/homebrew-core"
上面的最后两行就是要修改的位置,把其改为中科大源的 URL:
1
2
HOMEBREW_BREW_DEFAULT_GIT_REMOTE="https://mirrors.ustc.edu.cn/brew.git"
HOMEBREW_CORE_DEFAULT_GIT_REMOTE="https://mirrors.ustc.edu.cn/homebrew-core.git"
保存退出。使用chmod +x install.sh
设为可执行,然后运行./install.sh
命令安装 Homebrew,就能看到 Homebrew 以飞一般的速度安装了,整个过程大概不到 5 分钟 就完成了。😄
再试试用brew install xxx
安装自己常用工具,都能非常快就完成。到此 Homebrew 就算配置好了。
设置 GitHub
这里的设置,指的是从 GitHub clone 代码。当前的开发者,对 GitHub 的依赖是全方位的,如果 git clone 无法正常工作的话,是会死人的😂。
虽然上面已经配置好网络能正常访问两个 G 打头的网站,但git clone
仍然需要单独配置才行,否则类似如下这种错误就会不期而至:
1
unable to access 'https://github.com/xxxxxx/xxxx/': LibreSSL SSL_read: error:02FFF03C:system library:func(4095):Operation timed out,
在设置前,我们需要先看一下 V2rayU 的 proxy 端口设置情况:
图中的 sock 和 http 监听端口,可以使用它默认的不变,也可以改成你自己想用的不同端口。这里我们假设就用默认的。
接下来要设置的就是把git clone
命令走 V2ray proxy 端口。在命令行运行如下命令:
1
2
git config --global http.proxy http://127.0.0.1:1087
git config --global https.proxy http://127.0.0.1:1087
完成。
3、安装常用工具
第二步都确认配置好了后,那就可以使用 Homebrew 愉快地安装常用工具了。我的常用工具大概有这些:
1
2
3
4
git git-extras vim neovim tig ripgrep tmux exa zsh
cloc jq ffmpeg rcm htop bat diff-so-fancy zsh-syntax-highlighting
imagemagick reattach-to-user-namespace
postgresql redis
4、设置开发语言环境
我使用 asdf 工具作为多语言版本管理工具,强烈推荐!!
asdf 具体的使用方法不多说,去看官网就好,很简单。我用 asdf 安装了 ruby、golang、nodejs 环境。前两者都需要设置才能顺利使用。
Ruby
主要需要配置好使用国内的源,用得最多的就是 RubyChina 了。具体做法参考 RubyChina 官方文档做法就好。
Go
的问题则是它安装 pkg 时大量使用了 github、google 的 URL,github 的问题上面已经配置好了,但后者国内仍然访问困难,所以也需要改成使用国内的源。在~/.zshrc
中添加如下一行:
1
export GOPROXY=https://mirrors.aliyun.com/goproxy/
以使用国内阿里云的源。现在试试用go get
命令安装一个 pkg,速度果然快多了。👍
Nodejs/Yarn
Node
1
2
3
4
# 查看现有源
npm config get registry
设置成淘宝源
npm config set registry https://registry.npm.taobao.org
Yarn
1
2
3
4
# 查看现有源
yarn config get registry
设置成淘宝源
yarn config set registry https://registry.npm.taobao.org
5、配置 NeoVim
NeoVim 是我的主力编辑器,它的配置文件我放在专门的 GitHub repo 上(https://github.com/xfyuan/nvim)。
把配置文件 clone 到本地的 NeoVim 默认配置文件地址:
1
2
cd ~/.config
git clone https://github.com/xfyuan/nvim.git
然后命令行打开 neovim,运行:PackerInstall
命令安装插件。由于前面 GitHub 都已经配置好,所以安装速度应该会很快。
结语
到此,主要的开发/工作环境算是基本可用了。
至于一些其他常用软件,如微信等,不在本文的范畴之内。
后续如果有新的变动,本文都会持续更新。
参考文章