various fixes
authorIan Kelling <ian@iankelling.org>
Sun, 17 Jul 2016 23:50:31 +0000 (16:50 -0700)
committerIan Kelling <ian@iankelling.org>
Sun, 17 Jul 2016 23:50:31 +0000 (16:50 -0700)
conflink

index 32459f4f2853f866d2723b3b949022f55400c9c0..d348078b5d8a5a51ac3a22f450a4f6e864ca8e51 100755 (executable)
--- a/conflink
+++ b/conflink
@@ -11,11 +11,6 @@ sysv() {
 
 
 #
-if [[ -e /root/.unison && ! -L /root/.unison ]]; then
-    d=/q/p/c/machine_specific/$host/.unison
-    mkdir -p $d
-    mv -f /root/.unison/* $d
-fi
 
 
 shopt -s nullglob
@@ -48,24 +43,18 @@ subdir-link-r() {
 }
 
 common-file-setup() {
+    local dir fs_files x
     for dir in "$@"; do
+        fs_files=( $dir/filesystem/* )
+        if [[ -e ${fs_files[0]} && $USER == ian ]]; then
+            sysv s cp -R ${fs_files[@]} /
+        fi
         if [[ -e $dir/subdir_files ]]; then
             subdir-link-r $dir/subdir_files
         fi
-        local x=( $dir/!(subdir_files|filesystem) )
-        (( ${#x[@]} >= 1 )) || return 0
+        local x=( $dir/!(subdir_files|filesystem|machine_specific) )
+        (( ${#x[@]} >= 1 )) || continue
         sysv lnf ${x[@]} ~
-        # as of this writing, it doesn't exist in /a/c, but I've used it in the past.
-        if [[ -e $dir/filesystem && $USER == ian ]]; then
-            sysv s cp -R $dir/filesystem/* /
-        fi
-    done
-}
-
-link-dirs() {
-    for dir in "$@"; do
-        common-file-setup $dir
-        common-file-setup $dir/machine_specific/$HOSTNAME
     done
 }
 
@@ -74,7 +63,7 @@ c_dirs=(/a/c{,/machine_specific/$HOSTNAME})
 case $USER in
     ian)
         # p needs to go first so .ssh link is created, then config link inside it
-        common-file-setup $dir ${all_dirs[@]}
+        common-file-setup ${all_dirs[@]}
         sudo -u traci "$BASH_SOURCE"
         ;;
     traci)