Skip to content

Latest commit

 

History

History
93 lines (70 loc) · 2.42 KB

File metadata and controls

93 lines (70 loc) · 2.42 KB

TODO

Dotfiles implementation tasks

Follows todo-md specification.


CURRENT: Testing & Documentation

Testing +testing

  • (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

Documentation +docs

  • (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)

FUTURE +future

  • 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

COMPLETED +done

Research & Planning

  • 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

Implementation

  • 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

Bug Fixes

  • 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)

Testing

  • Test all individual functions on macOS
  • Test full ./task install workflow
  • Test idempotency (re-run install)
  • Test error handling (missing .env)