Skip to content

Make bootstrap idempotent and support fresh-machine setup - #33

Merged
wu-json merged 20 commits into
mainfrom
fix/idempotent-init
Sep 26, 2026
Merged

wu-json merged 20 commits into
mainfrom
fix/idempotent-init

Conversation

@wu-json

@wu-json wu-json commented Sep 26, 2026 •

Copy link
Copy Markdown
Owner

Makes setup work on a fresh Mac and safe to rerun.

  • Use bash scripts/bootstrap.sh or just bootstrap [target]. Install missing prerequisites, reuse existing setup, and show clear progress and recovery instructions.
  • Preserve existing dotfiles, avoid unnecessary reinstalls and app restarts, and use fnm for Node. Fix Codex's Brewfile entry to use its cask.
  • Replace command mocks with real macOS CI tests for dependency installation, Fish startup, unchanged reruns, missing Pi dependencies under NODE_ENV=production, and dotfile conflicts. Validate Brewfile formula names too.

Testing runs on a disposable GitHub-hosted runner; it refuses local execution. Full Brewfile installation, first-time Homebrew installation, and SwiftBar desktop behavior remain outside CI coverage.

@wu-json wu-json changed the title Make init idempotent and support fresh-machine setup Make bootstrap idempotent and support fresh-machine setup Sep 26, 2026
@wu-json
wu-json merged commit 6f45d37 into main Sep 26, 2026
1 check passed
@wu-json
wu-json deleted the fix/idempotent-init branch September 26, 2026 20:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant