核心是构建可预期、可验证、可重来的 macos 开发环境:强调幂等性(如检查 brew/git/zsh 状态)、模块化(按需启用 git/docker/python 等)、国内网络优化(自动切阿里云源)、预留自定义入口(如 .laptop.local 或 custom/ 目录)。
用脚本初始化 macos 开发环境,核心不是“一次装完”,而是让每次配置都可预期、可验证、可重来。真正省时间的不是跳过思考,而是把重复判断和操作固化成逻辑清晰的代码。
选对脚本,先看它怎么处理“已存在”
靠谱的自动化脚本不会强行覆盖,而是主动检查现状。比如安装 Homebrew 前会运行 which brew;配置 Git 用户名前会读取 git config --global user.name;连终端 shell 是否已是 zsh 都会验证。这种“幂等性”设计,让你可以放心在旧系统上反复运行,不用怕误删或冲突。推荐优先选明确标注支持幂等的项目,如 Omakos 或 laptop。
模块化结构,按需启用不硬塞
一套好脚本应该像工具箱,而不是大礼包。mac-dev-playbook 用 Ansible 角色拆分 Git、Docker、Python 等模块;dev-setup 提供 .dots pydata、.dots bootstrap 这类子命令;Omakos 的 ./scripts/mac.sh 和 ./scripts/brew.sh 也能单独执行。你不需要 Node.js?跳过那一段就行。团队只要 Java 栈?就只启用对应模块。避免为一个功能装一堆无关依赖。
国内网络友好,别卡在下载环节
很多脚本默认走 GitHub,但在国内常因网络问题中断。成熟方案会预置镜像支持:laptop 脚本自动检测并切换阿里云 Homebrew 源;macos-cur 和 dev-setup 允许通过环境变量指定 HOMEBREW_BOTTLE_DOMAIN;Omakos 甚至内置了备用 CDN 切换逻辑。安装前建议确认是否已设置国内源,或手动在脚本开头加几行 export,否则可能卡在 brew install 第一个包上。
留出口子,方便加自己的习惯
再好的脚本也替代不了你的个性化需求。laptop 支持 ~/.laptop.local 文件,在主流程结束后自动执行;Omakos 允许你在 custom/ 目录下放自定义脚本;mac-setup 的 Makefile 也预留了 make custom 目标。你可以在这里加 alias、改 iTerm 主题、导入特定 SSH 密钥,或者部署公司内部 CLI 工具——这些都不用动主脚本,升级时也不受影响。











