从2019年起我就逐渐开始尝试使用Linux系统了,回想起我最早装ubuntu的日子,由于驱动问题导致在安装过程中死机、以及各种装输入法不成功、还有sudo apt remove python导致系统崩溃等等。后来我在腾讯云租了一台学生机,通过没有桌面环境的系统(不怎么容易崩)配了现在的这个网站,以及当时需要Linux环境做的一些开发。再到后来就是经过推荐后使用了KDE桌面环境,在工位上装了Kubuntu 21.10,一直是根据需求在做配置,用到今天。大三结束以后,我在家心血来潮安装了数个不同的Linux发行版,便觉Linux世界之广阔,而后开始思考:我如何做一套流程,以便为我下次安装新系统时配一套初始的开发环境。

一、clash

特殊工具总是必要的,尤其是当你身为一个开发者的时候。

clash for windows的作者也发布了linux的版本,所以直接下一个cfw就行了。

1
2
$ wget https://github.com/Fndroid/clash_for_windows_pkg/releases/download/0.19.23/Clash.for.Windows-0.19.23-x64-linux.tar.gz
$ tar -xzvf Clash.for.Windows-0.19.23-x64-linux.tar.gz -C clash

安装完cfw以后直接启动,并点击start with linux配置开机启动。

启动cfw以后怎么更新yml就不说了,接着需要开启系统代理:
进入设置,找到网络设置,系统代理部分,选择手动代理。
HTTP、HTTPS、FTP、SOCKS的代理统统填clash的ip和port。

进入clash,点击如下图所示的小图标,获取终端环境配置命令。
安装完zsh后可通过该命令配置终端的网络代理。
其他软件(如git、npm等)有各自对应的代理配置。

二、zsh

安装zsh的方法比较多,可以根据具体的环境选择合适的方法:

安装完zsh以后,通过指令一键安装oh-my-zsh。当然也可以安装其他的框架,omz只是我用得比较熟悉的:

1
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

我比较喜欢omz的half-life主题,带个入字信仰:

1
λ omz theme set half-life

再推荐一个p10k,可以根据github中的指示进行安装。非常好看!

然后装几个插件:

1
2
3
4
5
6
7
8
9
10
11
# zsh-syntax-highlight:
λ git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
λ omz plugin enable zsh-syntax-highlighting

# zsh-autosuggestions:
λ git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
λ omz plugin enable zsh-autosuggestions

# others
λ omz plugin enable extract
λ omz plugin enable z

三、neovim

neovim采用lua来配置,它与vim是完全不同的两个项目。可以通过包管理器进行安装,也可以从源码编译安装。
访问neovim的github主页来下载release。

安装完毕以后,需要安装各种插件进行配置。网上有不少成熟的解决方案,但大部分是基于LunarVim。因此我直接安装LunarVim:
首先必须确保系统中已安装pnpm、yarn、npm,python3以及pip,rust的包管理器cargo。并且让相关的源下载网络通畅。

接着,使用LunarVim的一行安装法:

1
λ bash <(curl -s https://raw.githubusercontent.com/lunarvim/lunarvim/master/utils/installer/install.sh)

安装过程中,一路选yes。

若途中出现网络报错(常常是tree-sitter-cli部分),则根据情况修改对应安装脚本,例如去除tree-sitter-cli或用yarn手动安装等。
若没出现报错,应该会出现终端提示找不到命令:lvim。

此时,将lvim的地址写入PATH。你可以把这行放到~/.zshrc中

1
λ export PATH=$HOME/.local/bin:$PATH

接着来安装一个Nerd Font字体,我比较喜欢JetBrains的Mono字体、Manjaro自带的Hack字体,Noto系列以及Sans系列。LunarVim的wiki中推荐了一种交互式安装字体的软件getnf,根据github仓库内的指示安装字体,然后把你要用来跑lvim的终端改成NF字体即可。

参考文档:

  1. clash:https://github.com/Dreamacro/clash/wiki
  2. cfw:https://docs.cfw.lbyczf.com/
  3. Oh-My-Zsh:https://github.com/ohmyzsh/ohmyzsh/wiki
  4. neovim:https://github.com/neovim/neovim/wiki
  5. lunarvim:https://www.lunarvim.org/

__END__