| 
									
										
										
										
											2015-01-14 18:21:04 +01:00
										 |  |  | #!/usr/bin/env bash | 
					
						
							|  |  |  | NORMAL=$(tput sgr0) | 
					
						
							|  |  |  | GREEN=$(tput setaf 2; tput bold) | 
					
						
							|  |  |  | YELLOW=$(tput setaf 3) | 
					
						
							|  |  |  | RED=$(tput setaf 1) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function red() { echo -e "$RED$*$NORMAL"; } | 
					
						
							|  |  |  | function green() { echo -e "$GREEN$*$NORMAL"; } | 
					
						
							|  |  |  | function yellow() { echo -e "$YELLOW$*$NORMAL"; } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ ! $# == 2 ]; then | 
					
						
							|  |  |  |     echo "Usage: $0 <user> <host>" | 
					
						
							|  |  |  |     exit 1; | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | USER=$1 | 
					
						
							|  |  |  | HOST=$2 | 
					
						
							|  |  |  | IP=`dig +short $HOST` | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [ -z "$IP" ]; then | 
					
						
							|  |  |  |     IP=$HOST | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-02-02 15:44:56 +01:00
										 |  |  | grep "Host $HOST" ~/.ssh/config 2>&1 > /dev/null | 
					
						
							| 
									
										
										
										
											2015-01-14 18:21:04 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-02-02 15:44:56 +01:00
										 |  |  | if [ 0 -eq $? ]; then | 
					
						
							|  |  |  |     echo $HOST is already in .ssh/config | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |     echo Adding server to .ssh/config... | 
					
						
							|  |  |  |     cat >> ~/.ssh/config <<END_OF_HOST | 
					
						
							| 
									
										
										
										
											2015-01-14 18:21:04 +01:00
										 |  |  | Host $HOST | 
					
						
							|  |  |  |     HostName $IP | 
					
						
							|  |  |  |     User     $USER | 
					
						
							| 
									
										
										
										
											2015-02-02 15:44:56 +01:00
										 |  |  | END_OF_HOST | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2015-01-14 18:21:04 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | echo Copying .ssh directory to $USER@$HOST... | 
					
						
							|  |  |  | scp -qr $HOME/.ssh/ $HOST: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo Installing dotfiles... | 
					
						
							|  |  |  | ssh $HOST 'find . -maxdepth 1 -type l -exec unlink {} \;; rm $HOME/.bash*; curl -s https://dot.jacobkiers.net | bash' | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | echo | 
					
						
							|  |  |  | green Done installing server. You will now be logged in. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ssh $HOST |