### Bootstrap Dotfiles Installation Script Source: https://context7.com/holman/dotfiles/llms.txt This script clones the dotfiles repository and runs the bootstrap process to initialize the environment. It configures git credentials, symlinks dotfiles, and installs Homebrew dependencies, handling file conflicts interactively. ```bash # Clone and run bootstrap to install dotfiles git clone https://github.com/holman/dotfiles.git ~/.dotfiles cd ~/.dotfiles script/bootstrap # Example output during installation: # [ .. ] setup gitconfig # [ ?? ] - What is your github author name? # John Doe # [ ?? ] - What is your github author email? # john@example.com # [OK] gitconfig # [ .. ] installing dotfiles # [OK] linked /Users/john/.dotfiles/git/gitconfig.symlink to /Users/john/.gitconfig # [OK] linked /Users/john/.dotfiles/zsh/zshrc.symlink to /Users/john/.zshrc # [OK] linked /Users/john/.dotfiles/vim/vimrc.symlink to /Users/john/.vimrc # All installed! ``` -------------------------------- ### Homebrew Bundle Management (Brewfile) Source: https://context7.com/holman/dotfiles/llms.txt Utilizes Homebrew Bundle for declarative package management. The Brewfile specifies all required brew packages and casks, allowing for consistent installation across environments. ```ruby # ~/.dotfiles/Brewfile cask_args appdir: '/Applications' tap 'homebrew/bundle' # CLI tools brew 'atuin' # Shell history search brew 'imagemagick' # Image manipulation brew 'postgresql@17' # Database brew 'redis' # Cache/message broker brew 'wget' # File downloads brew 'yt-dlp' # Video downloads # Applications (casks) cask '1password' # Password manager cask 'visual-studio-code' cask 'ghostty' # Terminal cask 'raycast' # Launcher # Install all packages brew bundle # Install from specific Brewfile brew bundle --file=~/.dotfiles/Brewfile ``` -------------------------------- ### YouTube Downloader (yt command) Source: https://context7.com/holman/dotfiles/llms.txt A command-line utility for downloading videos from various websites using yt-dlp. Downloads are saved to the Desktop in the best available format. ```bash # Download video to Desktop yt "https://www.youtube.com/watch?v=dQw4w9WgXcQ" # Downloads to ~/Desktop with best format selection # Supports 1000+ sites via yt-dlp yt "https://vimeo.com/123456789" ``` -------------------------------- ### Tab Completion for Projects Source: https://context7.com/holman/dotfiles/llms.txt Enables tab completion for navigating project directories. It searches within the defined $PROJECTS directory and $GOPATH/src/github.com. ```shell # Jump to a project with tab completion c hol # completes to holman/ c holman/do # completes to holman/dotfiles # Result: cd ~/Code/holman/dotfiles # Tab completion searches both: # - $PROJECTS directory # - $GOPATH/src/github.com directory ``` -------------------------------- ### ZSH Configuration Loading Order Source: https://context7.com/holman/dotfiles/llms.txt This section details how the `.zshrc` configuration automatically loads `.zsh` files from topic directories. It specifies a loading order: path files first, then general configurations, and finally completion files. ```bash # ~/.zshrc.symlink structure (automatic loading): # 1. Set dotfiles root export ZSH=$HOME/.dotfiles # 2. Set project directory for quick navigation export PROJECTS=~/Code # 3. Load local secrets (not in version control) # Create ~/.localrc for private environment variables: # export GITHUB_TOKEN="your-token-here" # export AWS_ACCESS_KEY_ID="your-key" # Loading order: # - */path.zsh → loaded first (PATH setup) # - */*.zsh → loaded second (configs, aliases) # - */completion.zsh → loaded last (after compinit) # Topic directory structure example: # ruby/ # aliases.zsh → loaded with configs # completion.zsh → loaded after compinit # rbenv.zsh → loaded with configs # gemrc.symlink → symlinked to ~/.gemrc ``` -------------------------------- ### Docker Command Aliases Source: https://context7.com/holman/dotfiles/llms.txt Provides shorthand aliases for common Docker and Docker Compose commands, simplifying frequent operations and reducing typing. ```bash # Docker shorthand d ps # docker ps d images # docker images d build . # docker build . # Docker Compose shorthand d-c up # docker-compose up d-c down # docker-compose down d-c logs -f # docker-compose logs -f ``` -------------------------------- ### Git WTF - Branch Status Tool (Ruby) Source: https://context7.com/holman/dotfiles/llms.txt A Ruby script that provides a comprehensive overview of repository branch status, detailing relationships between local, remote, and integration branches. It's designed to help understand repository state before push or pull operations. ```bash # Check current branch status git wtf # Output: # Local branch: main # [x] in sync with remote # Remote branch: origin/main (https://github.com/user/repo.git) # [x] in sync with local # Check with detailed commit info git wtf --long # Output: ``` -------------------------------- ### Custom ZSH Prompt Configuration Source: https://context7.com/holman/dotfiles/llms.txt A Zsh prompt configuration that dynamically displays the current directory, Git branch status (color-coded for clean/dirty), and the count of unpushed commits. ```bash # Prompt format: # in directory on branch with N unpushed # › # Example outputs: # Clean repo, in sync: # in dotfiles on main # › # Dirty repo (uncommitted changes): # in dotfiles on main (branch shown in red) # › # Unpushed commits: # in dotfiles on main with 3 unpushed # › ``` -------------------------------- ### Common Git Aliases for Workflow Efficiency Source: https://context7.com/holman/dotfiles/llms.txt A collection of concise git aliases loaded from `git/aliases.zsh` for common operations, including status, pull, push, log, add, commit, checkout, branch, diff, and copying branch names. Integrates with hub for GitHub workflows. ```bash # Short status with branch info gs # Output: ## main...origin/main # M README.md # ? newfile.txt # Pull with prune (removes deleted remote branches) gl # Push current branch to origin gp # Pretty log with graph glog # Output: # * a1b2c3d John: Add new feature - (HEAD -> main) (2 hours ago) # * e4f5g6h Jane: Fix bug in parser - (3 hours ago) # | * h7i8j9k Bob: WIP experiment - (feature-x) (1 day ago) # |/ # * k0l1m2n John: Initial commit - (5 days ago) # Quick add all and commit with message gac "Fix authentication bug" # Checkout, branch, commit shortcuts gco feature-branch # git checkout gb # git branch gc # git commit gca # git commit -a # Diff without +/- markers (color only) gd # Copy current branch name to clipboard gcb # Output: feature-branch (also copied to clipboard) ``` -------------------------------- ### macOS Defaults Configuration Script Source: https://context7.com/holman/dotfiles/llms.txt A bash script designed to apply a set of sensible default configurations for macOS, particularly beneficial for development environments. It modifies various system settings for improved usability. ```bash # Run macOS defaults configuration ~/.dotfiles/macos/set-defaults.sh # Configured settings include: # - Disable press-and-hold for key repeat # - Enable AirDrop over all interfaces # - Finder list view as default # - Show ~/Library folder # - Fast key repeat rate # - Show external drives on desktop # - Bottom-left hot corner for screensaver # - Safari development menu enabled ``` -------------------------------- ### Git Rank Contributors Analysis Source: https://context7.com/holman/dotfiles/llms.txt A git command extension to analyze repository contributions based on diff size, useful for generating CREDITS files. It can output raw lists, verbose counts, obfuscated emails, and HTML-safe formats. ```bash # List contributors by diff contribution git rank-contributors # Output: # Zach Holman # Jane Doe # John Smith # Verbose output with line counts git rank-contributors -v # Output: # Zach Holman : 15420 lines of diff # Jane Doe : 8350 lines of diff # John Smith : 2100 lines of diff # Obfuscate emails git rank-contributors -o # Output: # Zach Holman # HTML-safe output git rank-contributors -h ``` -------------------------------- ### Universal Archive Extraction Source: https://context7.com/holman/dotfiles/llms.txt A command-line tool to extract various archive formats, including common ones like .tar.gz, .zip, and .rar, as well as macOS disk images (.dmg). ```bash # Extract any archive format extract archive.tar.gz extract archive.zip extract archive.tar.bz2 extract archive.rar extract disk-image.dmg # macOS: mounts the disk image # Supported formats: # .tar.bz2, .tar.gz, .bz2, .dmg, .gz, .tar # .tbz2, .tgz, .zip, .ZIP, .pax, .pax.Z, .rar, .Z ``` -------------------------------- ### Dot Management Script for Environment Maintenance Source: https://context7.com/holman/dotfiles/llms.txt The `dot` command is used for ongoing dotfiles maintenance, including pulling updates, setting macOS defaults, and updating Homebrew packages. It can also be used to edit the dotfiles directory or display help information. ```bash # Update everything - pull latest, set defaults, update homebrew dot # Example output: # › git pull # Already up to date. # › brew update # Already up-to-date. # › brew upgrade # › script/install # › brew bundle # Open dotfiles directory in your editor dot --edit dot -e # Show help dot --help # dot -- dotfiles management # Usage: dot [options] # Options: # -e, --edit Open dotfiles directory for editing # -h, --help Show this help message and exit ``` -------------------------------- ### Editor Shortcut (e command) Source: https://context7.com/holman/dotfiles/llms.txt A convenient command to open files or directories in the configured editor, determined by the $EDITOR environment variable. This avoids needing to remember editor-specific commands. ```bash # Open current directory e # Open specific directory e /usr/local/etc # Open specific file e ~/.zshrc # Uses $EDITOR environment variable # Set in editors/env.zsh or ~/.localrc ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.