Skip to content

Instantly share code, notes, and snippets.

@adelq
Created October 28, 2016 23:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save adelq/c87fb23df67bfd3195de5320c0a43a22 to your computer and use it in GitHub Desktop.
Save adelq/c87fb23df67bfd3195de5320c0a43a22 to your computer and use it in GitHub Desktop.
Dotfiles Bootstrap
#!/usr/bin/env bash
set -eu
########## Variables
dir=~/dotfiles # dotfiles directory
olddir=~/dotfiles_old # old dotfiles backup directory
files=`ls -A ~/dotfiles/$1` # list of files/folders to symlink in homedir
##########
# create dotfiles_old in homedir
echo "Creating $olddir for backup of any existing dotfiles in ~"
mkdir -p $olddir
echo "...done"
# change to the dotfiles directory
echo "Changing to the $dir directory"
cd $dir
echo "...done"
# move any existing dotfiles in homedir to dotfiles_old directory, then create symlinks
for file in $files; do
echo "Moving any existing dotfiles from ~ to $olddir"
mv ~/$file $olddir
echo "Creating symlink to $file in home directory."
ln -s "$dir/$1/$file" "~/$file"
done
source ~/.bashrc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment