浏览代码

Add a bootstrap script for the dotfiles

Emmanuel Bouthenot 11 年之前
父节点
当前提交
8b06b09463
共有 1 个文件被更改,包括 45 次插入0 次删除
  1. 45 0
      .zsh.d/bin/dotfiles-bootstrap

+ 45 - 0
.zsh.d/bin/dotfiles-bootstrap

@@ -0,0 +1,45 @@
+#!/bin/sh
+
+if [ -z "${DOTFILES_DIR}" ]; then
+    DOTFILES_DIR="kolter-dotfiles"
+fi
+
+printf "Looking for dotfiles dir '%s' ... " "${DOTFILES_DIR}"
+if [ -d "${DOTFILES_DIR}" ]; then
+    printf "OK\n"
+else
+    printf "FAILED\n"
+    exit 1
+fi
+
+printf "Copying config files in home directory '%s':\n" "${HOME}"
+find "${DOTFILES_DIR}" -maxdepth 1 -mindepth 1 | \ 
+    while read d ; do
+        printf "\t'%s' -> '%s/%s' ... " "${d}" "${HOME}" "$(basename "${d}")"
+        if mv -f "${d}" "${HOME}" >/dev/null 2>&1 ; then
+            printf "OK\n"
+        else
+            printf "KO\n"
+        fi
+    done
+
+printf "Removing dotfiles dir '%s' ... " "${DOTFILES_DIR}"
+if rmdir "${DOTFILES_DIR}" >/dev/null 2>&1 ; then
+    printf "OK\n"
+else
+    printf "KO\n"
+fi
+
+printf "Adding some symbolic links ...\n" "${DOTFILES_DIR}"
+for lnk in .zsh.d/zshrc:.zshrc .vim/vimrc:.vimrc ; do
+    lnk_src=$(echo "${lnk}" | cut -d ':' -f 1)
+    lnk_dest=$(echo "${lnk}" | cut -d ':' -f 2)
+    printf "\t'%s/%s' -> '%s/%s' ... " "${HOME}" "${lnk_src}" "${HOME}" "${lnk_dest}"
+    if [ -f "${lnk_src}" ] && (cd "${HOME}" && ln -sf "${lnk_src}" "${lnk_dest}" ) ; then
+        printf "OK\n"
+    else
+        printf "KO\n"
+    fi
+done
+
+exit 0