Initial release — a dual-mode dotfiles manager (snapshot + symlink) with native binary build.
Highlights
- Dual-mode tracking: snapshot (versioned backups) or symlink (live-sync via links)
- Native binary:
build.shcompiles to ELF/Mach-O via vendoredshc;--scriptfallback - Gitignore-grade
.dotbakignore:!negation,**/, trailing/, anchored patterns - Full CLI: init, add, remove, list, status, snapshot (create/list/restore/diff/clean/show), symlink-sync, deploy, archive, update, ignored, version
- Global flags:
--dry-run,--yes/-y,--quiet/-q;DOTBAK_YES=1,DOTBAK_DIR,NO_COLOR - Shell completions: bash, zsh, fish — auto-installed/removed by install/uninstall scripts
- GitHub Actions: CI (ShellCheck + build + test on Ubuntu/macOS), release (platform binaries + portable script)
- Self-update:
dotbak updatevia GitHub Releases API with SHA256 verification - 148 tests: unit + integration via bats-core v1.14.0
Technical
- Bash 4.0+, modular
src/layout, TOML config withschema_version+ auto-migration - ShellCheck clean (SC2155, SC2088, SC2034, SC2120, SC2207 all resolved)
- Atomic install/update (rename, not overwrite), safe symlink operations with rollback
dotbak-devfor development without install
Author: Darshit Hedpara (darshithedpara@gmail.com)
Repository: https://github.com/darshithedpara/dotbak