diff options
author | gxlin <[email protected]> | 2021-07-15 21:28:06 +0800 |
---|---|---|
committer | gxlin <[email protected]> | 2021-07-15 21:28:06 +0800 |
commit | d4e1469e4b0c5aaf5c23be555e8b224f9254d781 (patch) | |
tree | e68a0e5dd44ee43efc2d70c081f41ae3237a78c1 /bootstrap.sh | |
parent | 36f249e1a7250e24f0c415b5bc53ba1b2f5806d4 (diff) | |
download | dotfiles-d4e1469e4b0c5aaf5c23be555e8b224f9254d781.tar.gz dotfiles-d4e1469e4b0c5aaf5c23be555e8b224f9254d781.tar.bz2 dotfiles-d4e1469e4b0c5aaf5c23be555e8b224f9254d781.zip |
A usable boostrap config
Diffstat (limited to 'bootstrap.sh')
-rwxr-xr-x | bootstrap.sh | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/bootstrap.sh b/bootstrap.sh index aea2465..f0876f9 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -2,6 +2,33 @@ dotfiles_dir=$(cd -- "$(dirname ${BASH_SOURCE})" > /dev/null 2>&1; pwd -P) -ln -s $dotfiles_dir/.emacs.d $HOME/.emacs.d -ln -s $dotfiles_dir/.macos $HOME/.macos -ln -s $dotfiles_dir/.urlview $HOME/.urlview +remove_and_link () { + for var in $@ + do + if [ -L $HOME/$var ] && [ -e $HOME/$var ] && \ + [ "$(readlink -- $HOME/$var)" = "$dotfiles_dir/$var" ]; then + return + fi + + rm -rf $HOME/$var + ln -s $dotfiles_dir/$var $HOME/$var + done +} + +link_all () { + remove_and_link .ctags.d .mutt bin .alias .macos \ + .mbsyncrc .msmtprc .tmux.conf .urlview .zshrc \ + .vimrc .vim +} + +main () { + if [ $# -eq 0 ] || [ $1 -eq 'all' ]; then + link_all + return + fi + + remove_and_link $@ +} + +main $@ + |