This repository contains my personal terminal and development environment configurations for easy backup and setup on new machines.
.zshrc- Zsh shell configuration.zprofile- Zsh profile (loaded before .zshrc).bashrc- Bash shell configuration.bash_profile- Bash profile
.gitconfig- Git configuration.tmux.conf- Tmux terminal multiplexer configurationnvim/- Neovim editor configuration
Run the setup script to automatically backup existing configs and install these configurations:
./setup.shThis will:
- Create backups of your existing configurations (in
~/.config-backup-[timestamp]) - Copy all configurations to their proper locations
- Set appropriate permissions
If you prefer to install configurations manually:
cp .zshrc ~/.zshrc
cp .zprofile ~/.zprofile
cp .bashrc ~/.bashrc
cp .bash_profile ~/.bash_profilecp .gitconfig ~/.gitconfig
# Note: You may want to update user.name and user.email in ~/.gitconfigcp .tmux.conf ~/.tmux.conf# Backup existing config if it exists
[ -d ~/.config/nvim ] && mv ~/.config/nvim ~/.config/nvim.backup
# Copy new config
mkdir -p ~/.config
cp -r nvim ~/.config/nvimAfter installing configurations:
-
Reload Shell:
source ~/.zshrc # for zsh # or source ~/.bashrc # for bash
-
Update Git Config: Edit
~/.gitconfigand update your personal information:git config --global user.name "Your Name" git config --global user.email "your.email@example.com"
-
Install Neovim Plugins: Open Neovim and it should automatically install configured plugins:
nvim
cd ~/path/to/terminal-config
git pull
./setup.sh # Re-run setup to apply updatesAfter modifying configurations on your system, copy them back to this repo:
./update-configs.sh # This will copy current configs back to the repo
git add .
git commit -m "Update configurations"
git pushMake sure you have the following installed:
- Zsh (recommended) or Bash
- Git
- Tmux (optional, for terminal multiplexing)
- Neovim (for the nvim configuration)
brew install zsh git tmux neovimsudo apt update
sudo apt install zsh git tmux neovimFeel free to modify any configuration files to suit your needs. The configurations are well-commented to help you understand what each section does.
- Always review configuration files before applying them, especially
.gitconfig - The setup script creates backups automatically, but it's good practice to manually backup important configs
- Some configurations may reference specific paths or tools - adjust as needed for your system
# Check if .zshrc is being sourced
echo $ZDOTDIR
# Ensure .zshrc exists and is readable
ls -la ~/.zshrc# Remove plugin cache and reinstall
rm -rf ~/.local/share/nvim
nvim # Reopen and let plugins reinstall# Reload tmux configuration
tmux source-file ~/.tmux.confThese are personal configurations. Feel free to use and modify as needed.
Last Updated: January 2026