DEV Community

Discussion on: Dotfiles - How to Configure your Shell (intro)

 
michaelcurrin profile image
Michael Currin • Edited

Glad to hear.

I added a setup script in my repo which does this essentially. It adds the symlinks for me so it is easy to run across machines when I make changes.

SHELL_CONFIGS_DIR=~/repos/shell-dev-configs

# Bash array
CONFIGS=(
  .aliases
  .profile
  .commonrc .bashrc .zshrc
  .vimrc
  .gitconfig .gitignore
)


# Symlink repo's .foo as a new file ~/.foo
for CONFIG in ${CONFIGS[@]}; do
  ln -sf "$SHELL_CONFIGS_DIR/$CONFIG" "$CONFIG"
done

The -f will overwrite existing symlinks in case they broke.

I also do a check to see if the files are text files to remind me to move their content out.