]> us-delaporte.pagekite.me Git - dotfiles.git/blobdiff - bin/dot
Add support for linking files with . already in the name
[dotfiles.git] / bin / dot
diff --git a/bin/dot b/bin/dot
index d99ef6eeef4bf1d17c0a1ef14c6dd0578627a30b..a08b732ddf7402cf0e7f177a6237a83f73366332 100755 (executable)
--- a/bin/dot
+++ b/bin/dot
@@ -35,10 +35,10 @@ if [ ! -n "$1" ] || [ "$1" == "help" ]; then
 fi
 # set -v
 
-TASKFILE="$HOME/dot.$HOSTNAME.yaml"
+TASKFILE="$HOME/backup/dot.$HOSTNAME.yaml"
 LINKFILES="$HOME/dotfiles/files"
 INSTALLS="$HOME/dotfiles/install"
-DOT="$HOME/dot"
+DOT="$HOME/.dot"
 
 read -d '' EMPTY_TASKFILE << EOF
 ---
@@ -53,6 +53,11 @@ read -d '' EMPTY_TASKFILE << EOF
         path: $TASKFILE
 EOF
 
+if [[ ! -f "$TASKFILE" ]]; then
+       echo "Creating empty $TASKFILE"
+       mkdir -p "$HOME/backup"
+       echo "$EMPTY_TASKFILE" >> $TASKFILE
+fi
 
 if [ "$1" == "setup" ]; then
   if [[ ! -f "$ANSIBLE" ]]; then
@@ -64,10 +69,6 @@ if [ "$1" == "setup" ]; then
   if [[ -f "$ANSIBLE" ]]; then
                echo "[ ok ]: Ansible setup at $ANSIBLE"
        fi
-  if [[ ! -f "$TASKFILE" ]]; then
-               echo "Creating $TASKFILE"
-               echo "$EMPTY_TASKFILE" >> $TASKFILE
-       fi
   if [[ -f "$TASKFILE" ]]; then
                echo "[ ok ]: dot config at $TASKFILE"
        fi
@@ -105,6 +106,20 @@ read -d '' LINK_THIS_FILE << EOF
         state: "link"
 EOF
 
+if [[ "$2" == *"."* ]];then
+       # File already contains a dot
+read -d '' LINK_THIS_FILE << EOF
+
+    - name: symlink $2
+      ansible.builtin.file:
+        src: "$LINKFILES/$2"
+        dest: "$HOME/$2"
+        state: "link"
+EOF
+
+
+fi
+
        echo "    $LINK_THIS_FILE" >> $TASKFILE
        echo "$2 added to symlinks in $TASKFILE"
        echo "Run 'dot apply' to create all configured symlinks"