Dotfiles implementation tasks
Follows todo-md specification.
-
(A) Test on Ubuntu ~1h
- Fresh VM/container
- Run
./task install - Verify all symlinks
- Verify all packages
- Test idempotency (re-run)
-
(B) Additional error handling tests
- Invalid .env values
- Network failures
-
(C) Update README.md ~20m
- Installation instructions
- Usage examples
- Requirements
- Troubleshooting
-
(C) Add CONTRIBUTING.md ~15m
- Link to style guide (style.ysap.sh)
- Testing instructions
- Documentation standards (AISD)
-
Add backup task ~2h
- Backup existing dotfiles before install
- Store in timestamped directory
-
Add restore task ~1h
- Restore from backup
-
Add uninstall task ~1h
- Unstow all packages
- Remove generated files
-
Add verify task ~30m
- Check all symlinks valid
- Check all commands exist
- Report status
- Research bash utility libraries (selected: labbots/bash-utility)
- Research bash style guides (selected: style.ysap.sh)
- Research taskfile pattern (bash script, hyphen-separated functions)
- Research logging approaches (inline helpers)
- Create AISD documentation structure
- Define technology stack
- Define directory structure
- Create specification files
- Clone labbots/bash-utility to vendor/
- Create task orchestrator file with all functions
- Create .env.example with all required variables
- Create Brewfile
- Create apt.txt (16 packages)
- Create stow-common/ structure (.gitconfig.template, .vimrc, starship.toml)
- Create stow-macos/ structure (.zshrc, .zprofile)
- Create stow-ubuntu/ structure (.bashrc, .bash_profile)
- Create macos-defaults.sh script
- Fix configure-git() variable names (GIT_NAME → GIT_USER_NAME)
- Fix configure-git() envsubst export issue (added set -a)
- Fix help() to show only dotfiles commands (not bash-utility functions)
- Test all individual functions on macOS
- Test full
./task installworkflow - Test idempotency (re-run install)
- Test error handling (missing .env)