#!/bin/bash testpath1=/faronear/fon/sysconfig/nixhome testpath2=~/faronear/fon/sysconfig/nixhome testpath3=~/faronear/fon/sysconfig.git/nixhome testpath4=`pwd`/nixhome if [ "$1" ] then SourcePath=$1 elif [ -d $testpath1 ] then SourcePath=$testpath1 elif [ -d $testpath2 ] then SourcePath=$testpath2 elif [ -d $testpath3 ] then SourcePath=$testpath3 elif [ -d $testpath4 ] then SourcePath=$testpath4 else echo "=== Enter [target path] or leave [blank] to exit" read -p ">>> " SourcePath echo "" if [ ! -d "$SourcePath" ] then echo "*** Source path [$SourcePath] not available! Exit now. ***" exit fi fi if [ "$2" ] then HomePath=$2 else HomePath=~ fi if [ -d $HomePath ] then pushd $HomePath homescriptlist=".emacs .emacs.lisp .bashrc .bash_profile .gitignore" echo echo "=== Copy or link scripts? for link, <> for copy:" read -p ">>> " CopyOrLinkScripts for homescript in $homescriptlist do mv $homescript $homescript.backup-[$(date +%Y%m%d-%H%M%S)] if [ "$CopyOrLinkScripts" = 'l' ] then echo "--- Linking $SourcePath/$homescript to $HomePath/$homescript ..." ln -s $SourcePath/$homescript $HomePath else echo "--- Copying $SourcePath/$homescript to $HomePath/$homescript ..." cp -r $SourcePath/$homescript $HomePath fi done echo echo "=== Append or link or omit [.ssh/authorized_keys] to config ssh server? for append, for link, <> for omit:" read -p ">>> " CopyOrLinkOrOmitAuthorizedKeys if [ "$CopyOrLinkOrOmitAuthorizedKeys" = 'l' ] then echo "--- Linking $SourcePath/authorized_keys to $HomePath/.ssh/authorized_keys ..." mkdir -p $HomePath/.ssh chmod 700 $HomePath/.ssh mv $HomePath/.ssh/authorized_keys $HomePath/.ssh/authorized_keys.backup-[$(date +%Y%m%d-%H%M%S)] ln -s $SourcePath/.ssh/authorized_keys $HomePath/.ssh/authorized_keys elif [ "$CopyOrLinkOrOmitAuthorizedKeys" = 'a' ] then mkdir -p $HomePath/.ssh chmod 700 $HomePath/.ssh if [ -L '$HomePath/.ssh/authorized_keys' ] then mv $HomePath/.ssh/authorized_keys $HomePath/.ssh/authorized_keys.backup fi cat $SourcePath/.ssh/authorized_keys >> $HomePath/.ssh/authorized_keys chmod 600 $HomePath/.ssh/authorized_keys fi echo popd else echo "!!! Not existing $HomePath, please try again." fi echo "=== Sourcing $HomePath/.bashrc ..." source $HomePath/.bashrc