Commit Graph

11 Commits (8d106726734cf3fc207d90107399180a5af4b243)

Author SHA1 Message Date
Marcus Kok ce0d506e21
implement Phase 1 + 2: idempotent link, apply command, and install script (#43)
- Rewrite cmd/link.go with safe idempotent logic: skips correct symlinks,
  backs up real files to .dotctl.bak, respects --overwrite and --no-backup
- Add cmd/apply.go: new bootstrap command that clones or pulls a dotfiles
  repo then runs the idempotent link logic with a summary
- Add --overwrite and --no-backup persistent flags to root command
- Remove unstable cmd/sync.go
- Fix cmd/init.go gitignore to not exclude dotctl/config.yml (required
  for apply to work on fresh machines)
- Add install.sh: detects OS/arch, downloads binary from GitHub releases,
  optionally runs dotctl apply <url>
- Update README with Quick Start section covering both bootstrap methods
- Rewrite test/link_test.go with 10 real-filesystem idempotency tests
- Add test/apply_test.go with 5 tests covering dry-run, linking, and
  idempotency
- Fix pre-existing TestInitCommand failure (missing MemMapFs setup)

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
4 weeks ago
Marcus 5df764bb98 clean up repo
remove some old things like Dockerfile and sandbox/clean scripts, not being used for development
1 year ago
Marcus Kok 6aadf9c901
add dockerfile for development (#38) 2 years ago
Marcus Kok 398181ba28
update readme (#37) 2 years ago
Marcus Kok 20bf76b364
update readme (#35) 2 years ago
Marcus Kok 86d93daa0c
only push on changes (#27)
Only push if there are no changes for sync command
2 years ago
Marcus Kok 0fa327abd6
add goreleaser config, update README (#21) 2 years ago
Marcus Kok 16051e8645
renaming to dotctl (#16) 2 years ago
Marcus Kok 9ef61b2626
Work (#13)
* use config for dotfile path, add some makefile scripts

* update README

* add unit test for link command

* fixing ci
2 years ago
Marcusk19 cc3e861065 change readme 2 years ago
Marcusk19 59948fec7a add license and readme 2 years ago