Appearance
个人开发环境自动化装机方案 (IaC)
背景: 为了减少重装系统后的重复劳动,建议采用 "Infrastructure as Code" (IaC) 的思路来管理个人电脑环境。
1. 核心思路
- 数据分离: 数据与系统分离,数据存放在 D 盘或云端 (OneDrive),系统盘只装软件。
- 脚本化安装: 使用脚本 (PowerShell/Batch) 自动安装软件。
- 配置同步: 软件配置 (Dotfiles) 通过 Git 仓库管理,通过软链接 (Symlink) 部署。
2. 自动化工具选择
2.1 Winget (Windows Package Manager)
Windows 10/11 内置,源于微软官方仓库,适合安装常用商业软件 (微信、Office 等)。
常用命令:
winget search <app>: 搜索winget install <id>: 安装winget upgrade --all: 更新所有软件winget export -o packages.json: 导出当前已安装列表winget import -i packages.json: 根据列表批量安装
2.2 Scoop (Windows Command Line Installer)
社区驱动,适合开发者工具 (Git, Node, Python, VS Code),绿色免安装,不污染注册表。
安装 Scoop:
powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex推荐 Bucket:
main: 基础 CLI 工具extras: GUI 程序versions: 旧版本软件nerd-fonts: 编程字体
3. 环境恢复脚本示例 (setup.ps1)
编写一个 PowerShell 脚本,一键执行以下操作:
powershell
# 1. 安装 Scoop
Write-Host "Installing Scoop..."
if (!(Test-Path "$env:USERPROFILE\scoop")) {
Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')
}
# 2. 添加 Bucket
scoop bucket add extras
scoop bucket add nerd-fonts
# 3. 批量安装软件列表
$apps = @(
"git",
"7zip",
"vscode",
"googlechrome",
"snipaste",
"everything",
"powertoys",
"cascadia-code"
)
scoop install $apps
# 4. 配置 Git
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
# 5. 恢复 Dotfiles (假设已 clone 到 ~/dotfiles)
# 创建软链接示例:
# cmd /c mklink "%USERPROFILE%\.gitconfig" "%USERPROFILE%\dotfiles\.gitconfig"4. Dotfiles 管理
建立一个 dotfiles Git 仓库,存放:
.gitconfig.zshrc/ PowerShell Profilesettings.json(VS Code)settings.json(Windows Terminal)- AutoHotkey 脚本
恢复时,只需 git clone 下来,然后用脚本把这些文件链接到系统默认位置即可。
5. 总结
通过 Winget/Scoop 安装软件 + Git 管理配置文件 + OneDrive 同步数据,可以实现:
- 1 小时内完全恢复熟悉的工作环境。
- 保持多台电脑配置一致。
- 避免重装时的焦虑和遗漏。
