1035 字
5 分钟

每次新机器都要重新配环境?试试这个 rig

每次新机器都要重新配环境?试试这个 rig#

群友最近做了个小工具,专门解决一个很常见、但也挺烦的问题:新机器初始化环境

只要你经常折腾服务器或者开发机,大概率都经历过这个流程:

zsh,配 Oh My Zsh,装 nvm,跑 Docker,补 Git 配置,再把ripgrepfdbatjqgh 这些常用工具装一遍。

在 Ubuntu 上还算熟练,一旦换到 CentOS、Fedora、Arch,甚至 macOS,包名和安装命令又变了一套。

云服务器、本地开发机、WSL、临时测试机……几乎每台机器都要重新折腾一遍。

如果你也对这种事情有点烦,那可以试试这个项目:rig

X-Zero-L
/
rig
Waiting for api.github.com...
00K
0K
0K
Waiting...

快速开始#

交互式 TUI — 选择要安装的组件:

Terminal window
curl -fsSL https://ba.sh/rig | bash
# 或: curl -fsSL https://raw.githubusercontent.com/X-Zero-L/rig/master/install.sh | bash

通过代理(推荐国内用户):

Terminal window
curl -fsSL https://z.ls/rig | bash -s -- --gh-proxy https://gh-proxy.org
# 或: curl -fsSL https://gh-proxy.org/https://raw.githubusercontent.com/X-Zero-L/rig/master/install.sh | bash -s -- --gh-proxy https://gh-proxy.org

image-20260311100713236

rig 能做什么#

rig 主要解决的其实就是一件事:把一台新机器常见的开发环境一次性配好。

目前已经内置了十几种常见组件,大致分成几类:

类别组件
基础环境zsh、Oh My Zsh、Starship、Tmux、Git、ripgrepfdbatjqgh
语言运行时Node.js(nvm)、Python(uv)、Go(goenv
基础设施Docker、Compose、SSH 加固、Tailscale、Clash
AI 编程助手Claude Code、Codex CLI、Gemini CLI、Agent Skills

基本上把开发和运维常用的一些工具都覆盖到了。


为什么不用 Ansible#

很多人看到这种项目,第一反应可能是:“那为什么不用 Ansible?”

其实两者解决的不是同一件事。

Ansible 更适合管理大量服务器,比如机房里几十台甚至几百台机器统一编排。

rig 的场景更简单一点:

我刚拿到一台新机器,想把自己的开发环境尽快装齐。


跨平台支持#

很多脚本都号称“跨平台”,但现实往往是: 作者在 Ubuntu 写完,其他系统只是刚好没报错

rig 这里其实认真做了一层抽象,大致结构是:

OS 检测
包名映射
包管理器调用

简单理解就是:

不同系统的软件包名称差异,由 rig 内部去处理。

例如 fd 这个工具:

  • Debian / Ubuntu:fd-find
  • Arch Linux:fd
  • macOS(Homebrew):fd

这些差异不需要你自己记,脚本会自动处理。

目前支持的系统包括:

  • Debian / Ubuntu
  • CentOS / RHEL
  • Fedora
  • Arch Linux
  • macOS

安装完成之后,可以用这个命令查看当前环境状态:

Terminal window
rig status

能很直观地看到哪些组件已经安装、版本是否正常。


预设安装模式#

如果不想在菜单里一个个勾选组件,rig 也提供了一些预设配置:

  • minimal:基础 shell + CLI 工具
  • agent:AI 编程工具(Claude / Codex / Gemini)
  • devops:Docker、SSH、Tailscale 这类基础设施
  • fullstack:全部安装

例如只想装 AI 编程相关工具:

Terminal window
rig install --preset agent

如果是远程脚本安装,也可以直接指定:

Terminal window
curl -fsSL https://raw.githubusercontent.com/X-Zero-L/rig/master/install.sh | bash -s -- --preset fullstack

这样一条命令基本就能把环境拉起来。


环境导出和迁移#

执行:

Terminal window
rig export

image-20260311120855632

会生成两个文件:

  • rig-config.json:保存环境配置
  • secrets.env:保存 API Key 等敏感信息

其中:

  • rig-config.json 可以直接放进 Git
  • secrets.env 权限默认是 600,并自动加入 .gitignore

如果以后换机器或者重装系统,只需要:

Terminal window
rig import ~/.rig/rig-config.json

很多原本要重新配置的环境就可以直接复用了。


最终效果#

如果你装的是一套比较完整的配置,最后得到的大概会是这样一套环境:

  • zsh + Oh My Zsh(自动补全、语法高亮、历史搜索)
  • Starship 统一提示符
  • 带主题和导航优化的 Tmux
  • 一套现代 CLI 工具链:rgfdbat
  • 已经配置好的 Docker 环境
  • 可直接使用的 AI 编程助手工具

image-20260311120758868#

总结#

如果你经常要在新机器上重新配置开发环境,这个项目还是挺值得试试的。 有时候装环境本身并不难,但重复做很多次就有点烦了。 如果能把这些事情自动化掉,日常效率确实会轻松不少。


每次新机器都要重新配环境?试试这个 rig
https://catcat.blog/2026/03/rig-bootstrap-development-environment
作者
猫猫博客
发布于
2026-03-11
许可协议
CC BY-NC-SA 4.0