# Sync common directories, setting url to ensure it's up-to-date first
SYNC_DIRS=(
    "$HOME/.password-store/"
    "$HOME/Documents/org/"
    "$HOME/Documents/library/"
)
SYNC_URLS=(
    "https://git.xenia.me.uk/pixelifytica/pass.git"
    "https://git.xenia.me.uk/pixelifytica/org.git"
    "https://git.xenia.me.uk/pixelifytica/library.git"
)

for i in "${!SYNC_DIRS[@]}"; do
    DIRECTORY="${SYNC_DIRS[$i]}"
    URL="${SYNC_URLS[$i]}"
    echo "--- sync: $DIRECTORY ---"
    if [ ! -d "$DIRECTORY" ]; then
        git clone "$URL" "$DIRECTORY"
    fi
    (
        cd "$DIRECTORY" || exit
        git remote set-url origin "$URL"
        if [ "$(git branch --show-current)" = "main" ]; then
            git branch --set-upstream-to=origin/main main
        fi
        git pull --ff --ff-only
        git submodule update --remote --recursive
        git-sync -ns
        git status --porcelain
    )
done