home · contact · privacy
Improve new setup.
[config] / all_new_2018 / symlink_etc.sh
index edee563182d1d02fa3b320bb5bca4dd4e0a0fec8..dd78fdfd89368bace33722a292ab0901b711b5db 100755 (executable)
@@ -1,22 +1,18 @@
 #!/bin/sh
-# Symbolically link files to those under linkable_etc_files/$1/, e.g.
-# link /etc/foo/bar to linkable_etc_files/$1/etc/foo/bar. Create
-# directories as necessary.
+# Symbolically link files to those in argument-selected subdirectories
+# of linkable_etc_files//, e.g. link /etc/foo/bar to
+# linkable_etc_files/$1/etc/foo/bar and so on. Create directories as
+# necessary.
 # CAUTION: This removes original files at the affected paths.
 set -e
 
-target="$1"
-if [ ! "${target}" = "all" ] && [ ! "${target}" = "server" ]; then
-    echo "Need proper target."
-    false
-fi
-
-config_tree_prefix="${HOME}/config/all_new_2018/linkable_etc_files/"
-cd "${config_tree_prefix}""${target}"
-for path in $(find . -type f); do
-    linking=$(echo "${path}" | cut -c2-)
-    linked=$(realpath "${path}")
-    dir=$(dirname "${linking}")
-    mkdir -p "${dir}"
-    ln -fs "${linked}" "${linking}"
+for target in "$@"; do
+    cd "${config_tree_prefix}${target}"
+    for path in $(find . -type f); do
+        linking=$(echo "${path}" | cut -c2-)
+        linked=$(realpath "${path}")
+        dir=$(dirname "${linking}")
+        mkdir -p "${dir}"
+        ln -fs "${linked}" "${linking}"
+    done
 done