用途:维护 dotfiles 仓库在 macOS(Intel/ARM)、Ubuntu、Fedora 之间的跨平台兼容性,通过检测问题、自动修复违规项,并借助 Nix 与 Docker 测试保证可复现性。激活场景包括新增脚本、配置或功能,更新 flake.nix 或 flake.lock,排查 CI 中平台相关失败,重构安装与初始化逻辑,以及用户提到兼容性、跨平台、Mac 可用但 Linux 不可用、Fedora 上 CI 失败等。
主要能力:兼容性审计可发现硬编码路径、无回退的平台专属命令、架构假设、shell 假设;校验平台检测(bash 使用 OSTYPE、/etc/fedora-release、/etc/lsb-release、/etc/os-release,Fish 使用 uname,含容器检测);检查 flake.nix 是否支持 x86_64-linux、aarch64-linux、x86_64-darwin、aarch64-darwin;路径标准化遵循 XDG;校验 CI/CD 矩阵覆盖 Ubuntu 与 Fedora Docker 及原生 macOS;提供自动修复流程与 Nix flake 更新协议。
使用方式:检测问题后按步骤识别违规、自动修复、验证并更新测试。可用 grep 查找硬编码路径,用 sed 修复,执行 make test-pre 做本地语法检查,执行 make test-docker 跑 Ubuntu 与 Fedora 矩阵;更新 flake 时运行 nix flake update,并用 nix build .#packages.<system>.default --dry-run 检查各平台。
限制:仅针对该 dotfiles 仓库及其既有脚本、配置与测试流程;Alpine/musl 与 WSL2 暂未提供测试覆盖;部分警告需用户决定回退行为;自动修复依赖 Git 回滚与 .bak 备份。缺失细节暂未提供。