Removed /usr/local from CDPATH
[clearscm.git] / rc / setup_rc
1 #!/bin/bash
2 ################################################################################
3 #
4 # File:         $RCSfile: setup_rc,v $
5 # Revision:     $Revision: 1.6 $
6 # Description:  This script sets up my rc scripts
7 # Author:       Andrew@DeFaria.com
8 # Created:      Thu Feb 16 07:34:32 PST 2006
9 # Modified:     $Date: 2011/12/14 22:28:59 $
10 # Language:     bash
11 #
12 # (c) Copyright 2006, Andrew@DeFaria.com, all rights reserved
13 #
14 ################################################################################
15 function ReplaceFile {
16   dest=$1
17   source=$2
18
19   if [ -f "$dest" ]; then
20     if [ -h "$dest" ]; then
21       return
22     else
23       echo "Saving your old $dest as $dest.save..."
24       mv "$dest" "$dest.save"
25     fi
26   fi
27
28   if [ ! -h "$dest" ]; then
29     echo "Linking $source -> $dest"
30     ln -s "$source" "$dest"
31   fi
32 } # ReplaceFile
33
34 function ReplaceDir {
35   dest=$1
36   source=$2
37
38   if [ -d "$dest" ]; then
39     if [ -h "$dest" ]; then
40       return
41     else
42       echo "Saving your old $dest as $dest.save..."
43       mv "$dest" "$dest.save"
44     fi
45   fi
46
47   if [ ! -h "$dest" ]; then
48     echo "Linking $source -> $dest"
49     ln -s "$source" "$dest"
50   fi
51 } # ReplaceDir
52
53 if [ ! -d $HOME/.rc ]; then
54   echo "No $HOME/.rc directory found"
55   exit 1
56 fi
57
58 function CopyFile {
59   dest=$1
60   source=$2
61
62   if [ -f "$dest" ]; then
63     echo "Saving your old $dest as $dest.save..."
64     mv "$dest" "$dest.save"
65   fi
66
67   cp "$source" "$dest"
68 } # CopyFile
69
70 ReplaceFile "$HOME/.Xdefaults"    "$HOME/.rc/Xdefaults"
71 ReplaceFile "$HOME/.bash_login"   "$HOME/.rc/bash_login"
72 ReplaceFile "$HOME/.bashrc"       "$HOME/.rc/bash_login"
73 ReplaceFile "$HOME/.inputrc"      "$HOME/.rc/inputrc"
74 ReplaceFile "$HOME/.vimrc"        "$HOME/.rc/vimrc"
75 ReplaceDir  "$HOME/.xemacs"       "$HOME/.rc/xemacs"
76 ReplaceFile "$HOME/.perlcriticrc" "$HOME/.rc/perlcriticrc"
77 ReplaceFile "$HOME/.perltidyrc"   "$HOME/.rc/perltidyrc"
78 ReplaceFile "$HOME/.gitconfig"    "$HOME/.rc/gitconfig"
79 ReplaceFile "$HOME/.gitignore"    "$HOME/.rc/gitignore"
80
81 # Ssh is picky about the ownership of this file so copy it.
82 CopyFile "$HOME/.ssh/config"      "$HOME/.rc/sshconfig"