Files
HDB/gallery-dl/gallery-dl.sh

50 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/bash
IGREEN="\033[0;92m" # Intense Green
IYELLOW="\033[0;93m" # Intense Yellow
NO_COLOR="\033[0m" # Text Reset
trap interrupt_function INT
interrupt_function() {
rm -f to_download_*.txt
exit 1
}
setup_test() {
[[ -d ./Artists ]] || mkdir ./Artists
rm -rf ./gallery-dl/*.sqlite3 ./gallery-dl/log.txt ./Artists/* || exit 1
}
download() {
[[ -f downloaded_$1.txt ]] || echo -e "${IYELLOW}download_$1.txt doesn't exist${NO_COLOR}" || exit 1
cp downloaded_$1.txt to_download_$1.txt
for ((n=0;n<5;n++)); do
gallery-dl --config ./gallery-dl/config.json --input-file-delete to_download_$1.txt
if [ ! -s to_download_$1.txt ]; then
echo -e "${IGREEN}file empty${NO_COLOR}"
rm to_download_$1.txt
break
fi
echo -e "${IYELLOW}file not empty${NO_COLOR}"
if [ $(ping -qc 3 hopeless-cloud.xyz > /dev/null 2>&1) ]; then
echo -e "${IYELLOW}no internet${NO_COLOR}"
exit 1
fi
echo -e "${IGREEN}has internet${NO_COLOR}"
done
[[ $(hostname) != \s\a\t\a\n ]] && cp ./gallery-dl/archive-$1.sqlite3 /data/backup
if [ -s to_download_$1.txt ]; then
exit 1
# exit with some kind of error
# service should then send error and fitting message to ntfy
fi
}
[[ $(hostname) == \s\a\t\a\n ]] && setup_test
download $1