nixos/home/scripts/rsync-local-config.sh

22 lines
715 B
Bash
Raw Normal View History

HOST=$1
for TARGET in bat git zellij starship.toml; do
SOURCE="$HOME/.config/$TARGET"
2024-02-05 09:51:38 +00:00
echo "--- $SOURCE ---"
TMP_TARGET=/tmp/rsync-local-config
TMP_SOURCE=$TMP_TARGET
NIX_SED="sed -i 's|/nix/.*/bin/||g'"
NIX_REPLACE="$NIX_SED $TMP_TARGET"
if [[ -e $SOURCE ]]; then
if [[ -d $SOURCE ]]; then
SOURCE=$SOURCE/
TMP_SOURCE=$TMP_SOURCE/
NIX_REPLACE="fd -g '**' $TMP_TARGET -tfile -x $NIX_SED {};"
fi
rsync -avzL --exclude=".git*" $SOURCE $TMP_TARGET
chmod u+rw -R $TMP_SOURCE
sh -c "$NIX_REPLACE"
rsync -avzL --delete --exclude=".git*" $TMP_SOURCE $HOST:.config/$TARGET
rm -rf $TMP_SOURCE
fi
done