summary refs log tree commit diff
path: root/link.zsh
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xlink.zsh (renamed from link.sh)24
1 files changed, 11 insertions, 13 deletions
diff --git a/link.sh b/link.zsh
index 4afde60c..13bb175b 100755
--- a/link.sh
+++ b/link.zsh
@@ -1,24 +1,22 @@
 #!/usr/bin/env zsh
-
-# Create symlines in ~ for files in home.
-
 set -o errexit -o nounset -o pipefail
 
-error() {
-  echo "$1"
-  exit 1
+# Create symbolic links in ~.
+
+fail() {
+    echo "$1"
+    exit 1
 }
 
 link() {
-  local source_path="$PWD/home/$1"
-  local dest_path="$HOME/$1"
+    local source_path="$PWD/home/$1"
+    local dest_path="$HOME/$1"
 
-  [ -h "$dest_path" ] && return
-  [ -e "$dest_path" ] && error "$dest_path exists"
+    [ -L "$dest_path" ] && return
 
-  mkdir -p "$(dirname "$dest_path")"
-  ln -s "$source_path" "$dest_path"
-  echo "$1"
+    mkdir -p "$(dirname "$dest_path")"
+    ln -s "$source_path" "$dest_path"
+    echo "$1"
 }
 
 link '.bin/sup'