- Add -f/--fail to all curl calls so HTTP error pages (502/404) are not written to temp files and mistaken for valid config/scripts - Fix tmux check at line 49: was testing the directory path with -f (always true when dir exists) causing tmux.conf to re-download on every shell start; now checks for the actual conf files in both tmux and byobu config dirs
Zsh Config
Files
zshrc
Main Zsh configuration file. Sets up Oh My Zsh, plugins (git, sudo, eza, fzf, starship, etc.), history options, aliases, and auto-updates itself from a remote source. Before replacing ~/.zshrc, the downloaded file is validated with zsh -n to ensure it's syntactically valid — this prevents error pages or corrupted content from breaking the shell. Also bootstraps tmux config and runs a fastfetch system info display on interactive shells.
zshrc-bootstrap.zsh
One-shot setup script executed by zshrc. Installs missing dependencies (starship, lazydocker, fastfetch, eza, fzf, etc.) via the system package manager (brew, apt, dnf, pacman) or cargo, clones Oh My Zsh and custom plugins (zsh-autosuggestions, fast-syntax-highlighting, fzf-tab). Runs only when the bootstrap version changes.
tmux.conf
Tmux configuration with GitHub Dark theming, Nerd Font auto-install, TPM plugin manager, pane/window keybindings (Vim-style navigation with h/j/k/l), status bar showing session info, battery, online status, and a built-in cheatsheet (bound to prefix + ?).