Tomi Cvetic před 8 roky
rodič
revize
83515e43df
1 změnil soubory, kde provedl 56 přidání a 0 odebrání
  1. 56 0
      setup.sh

+ 56 - 0
setup.sh

@@ -0,0 +1,56 @@
+#!/bin/bash
+
+HOMEDIR=$HOME/.homedir
+
+# For most files, its enough to check if the file exists, make a backup and link the .homedir file instead.
+files=".vim .vimrc .bashrc .bash_aliases .bash_colors .gitconfig .npmrc"
+
+for file in $files
+do
+  echo "Processing $file"
+  if [ -f $HOMEDIR/$file ]
+  then
+    TYPE="file"
+  elif [ -d $HOMEDIR/$file ]
+  then
+    TYPE="dir"
+  else
+    echo "File not found. Skipping"
+    continue
+  fi
+
+  if [ -L $HOME/$file ]
+  then
+    if [ `readlink -f $HOME/$file` == $HOMEDIR/$file ]
+    then
+      echo "There's already a link to homedir."
+      continue
+    else
+      echo "Wrong link found. Deleting it."
+      rm $HOME/$file
+    fi
+  fi
+  if [ -f $HOME/$file -o -d $HOME/$file ]
+  then
+    echo "File exists in home. Creating backup."
+    FOLDER="`hostname`-$USER-backup"
+    mkdir -p $HOMEDIR/$FOLDER
+    mv $HOME/$file "$HOMEDIR/$FOLDER/$file"
+  fi
+  echo "Linking to $file"
+  ln -s $HOMEDIR/$file $HOME/$file
+done
+
+# These files only make sense in certain environments
+files=".config/sublime-text-3/Packages/User/Package\ Control.sublime-settings .config/sublime-text-3/Packages/User/Preferences.sublime-settings"
+
+if [ `which subl` ]
+then
+  for file in $files
+  do
+    echo "Processing $file"
+
+  done
+else
+  echo "Sublime not found. Skipping files $files."
+fi