#!/bin/bash

################################################################################
#
# projector
# Updates ${HOME}/Projects against the public repos at git.tty.dog
#
# Requires jq
#
################################################################################

# Ensure ${HOME}/Projects exists and set it as the working directory
PROJECTS_DIR="${HOME}/Projects"
if [ ! -d "${PROJECTS_DIR}" ]; then
    mkdir "${PROJECTS_DIR}"
    set-icon "${PROJECTS_DIR}" folder-code
fi
cd "${PROJECTS_DIR}"

# Perform a blobless clone of all public repos at git.tty.dog
API_URL="https://git.tty.dog/api/v1/repos/search"
for CLONE_URL in $(curl -s "${API_URL}?uid=1" | jq -r ".data.[].clone_url"); do
    git clone --no-checkout --filter=blob:none "${CLONE_URL}"
done