update.sh: dir guidance RE: rsync+'/' for entries

This commit is contained in:
Josh Lay 2024-06-19 07:30:19 -05:00
parent 0336b62c26
commit a6bde8a373
No known key found for this signature in database
GPG key ID: 47AA304B2243B579

View file

@ -7,15 +7,17 @@
set -u set -u
# array of files/dirs [relative to home] to include # array of files/dirs [relative to home] to include
# NOTE: use a trailing slash to avoid directory nesting
DOTS=( DOTS=(
'.bashrc' '.bashrc'
# '.shell_aliases' # needs cleaned up first # '.shell_aliases' # needs cleaned up first
'.vimrc' '.vimrc'
'.config/fuzzel' '.config/fuzzel/'
'.config/kitty/'
'.config/nvim/init.vim' '.config/nvim/init.vim'
'.config/nvim/coc-settings.json' '.config/nvim/coc-settings.json'
'.config/autostart-i3ipc.yml' '.config/autostart-i3ipc.yml'
'.config/sway' '.config/sway/'
) )
# to avoid hacky pwd/dirname stuff w/ $0 [for now?], inline the path to the repo where copies are held # to avoid hacky pwd/dirname stuff w/ $0 [for now?], inline the path to the repo where copies are held
@ -28,7 +30,6 @@ HOST_DIR="${DOT_DIR}/${HOSTNAME}"
# begin dotfile processing - ensure structure is retained, naively copy w/ rsync. rely on Git to tell us about changes. # begin dotfile processing - ensure structure is retained, naively copy w/ rsync. rely on Git to tell us about changes.
# TODO: reconsider, edge cases? # TODO: reconsider, edge cases?
for DOT in "${DOTS[@]}"; do for DOT in "${DOTS[@]}"; do
DEST="${HOST_DIR}/$DOT" echo "Copying '$HOME/$DOT' to '$HOST_DIR/${DOT}'"
echo "Copying '$HOME/$DOT' to '$DEST'" rsync -aqv "$HOME/$DOT" "$HOST_DIR/${DOT}" || echo "Couldn't copy '$DOT', got rc: $?"
rsync -aqv "$HOME/$DOT" "$DEST" || echo "Couldn't copy '$DOT', got rc: $?"
done done