dotfiles/.config/shell/bin/upd

31 lines
729 B
Bash
Executable file

#!/bin/bash
set -e
# Check for git
if ! command -v git > /dev/null; then
echo "git is not installed, please install git and try again"
exit 1
fi
# Set colors
if command -v tput > /dev/null; then
GREEN="$(tput setaf 2)"
NC="$(tput sgr0)"
fi
# `git pull` everything mentioned in the REPOS_TO_UPDATE variable
IFS=: read -ra REPOS_TO_UPDATE_ARR <<< "$REPOS_TO_UPDATE:$DOCS_DIR:$HOME/bin"
for REPO in "${REPOS_TO_UPDATE_ARR[@]}"; do
if [ -n "$REPO" ]; then
if git -C "$REPO" rev-parse > /dev/null 2>&1; then
echo " ${GREEN}Pulling ${REPO/"$HOME"/"~"}${NC}"
git -C "$REPO" pull
fi
fi
done
# check for dotfiles updates
echo
echo " ${GREEN}Updating dotfiles…${NC}"
dotfiles pull