Files
TA-ProxMenu/run.sh
T
David Schroeder 5cb4bf2902 Update run.sh
2026-07-25 10:40:14 -05:00

80 lines
3.0 KiB
Bash
Executable File

#!/usr/bin/env bash
# TA-Proxmenu preloader
[ "${2:-}" != "q" ] && source /opt/idssys/defaults/colors.inc
source /opt/idssys/defaults/default.inc
source /opt/idssys/ta-proxmenu/defaults.inc
if [[ "${noupdate}" != *" ${1:-} "* ]] && [[ "${noupdate}" != *" ${2:-} "* ]]; then
if curl -m 3 -s --head --request GET https://git.scity.us | grep "HTTP/2 200" > /dev/null; then
if [ "${1}" != "tapm" ]; then
echo -en "${idsCL[LightCyan]}Checking for updates...${idsCL[Default]}"
echo ""
udtd=0
fi
if [ "${1}" != "tapm" ]; then
if [ ! -d /opt/idssys/defaults ]; then
git clone https://git.scity.us/voltron/iDS-Defaults.git /opt/idssys/defaults
else
cd /opt/idssys/defaults
if [ "$(git rev-parse HEAD)" != "$(git ls-remote origin refs/heads/master | cut -f1)" ]; then
if [ "${1}" != "tapm" ]; then
echo -en "\e[1A";
echo -en "\e[0K\r${idsCL[LightCyan]}Updating iDSSYS-Defaults...${idsCL[Default]}"
udtd=1
fi
git fetch origin master >/dev/null 2>&1
git reset --hard origin/master >/dev/null 2>&1
git reflog expire --expire=now --all >/dev/null 2>&1
git repack -ad >/dev/null 2>&1
git prune >/dev/null 2>&1
git pull >/dev/null 2>&1
[ "${1}" != "tapm" ] && echo -e "${idsCL[Green]}Done${idsCL[Default]}"
fi
fi
fi
cd /opt/idssys/ta-proxmenu
current_branch="$(git branch --show-current)"
remote_commit=""
if [ -n "$current_branch" ]; then
remote_commit="$(git ls-remote origin "refs/heads/${current_branch}" | cut -f1)"
fi
if [ -z "$current_branch" ]; then
echo -e "${idsCL[Red]}TA-Proxmenu is in a detached HEAD state; automatic updates were skipped${idsCL[Default]}"
elif [ -z "$remote_commit" ]; then
echo -e "${idsCL[Red]}Could not find branch '${current_branch}' on the TA-Proxmenu origin; automatic updates were skipped${idsCL[Default]}"
elif [ "$(git rev-parse HEAD)" != "$remote_commit" ]; then
if [ "${1}" != "tapm" ]; then
[ ${udtd} -eq 0 ] && echo -en "\e[1A";
echo -en "\e[0K\r${idsCL[LightCyan]}Updating TA-Proxmenu (${current_branch})...${idsCL[Default]}"
fi
git fetch origin "$current_branch" >/dev/null 2>&1
git reset --hard "origin/${current_branch}" >/dev/null 2>&1
git reflog expire --expire=now --all >/dev/null 2>&1
git repack -ad >/dev/null 2>&1
git prune >/dev/null 2>&1
if [ "${1}" != "tapm" ]; then
source /opt/idssys/ta-proxmenu/defaults.inc
# echo -en "\e[1A";
# echo -e "\e[0K\r ${idsCL[Green]}Updated to v${VERS}${idsCL[Default]}"
echo -e " ${idsCL[Green]}Updated to v${VERS}${idsCL[Default]}\n"
fi
elif [ "${1}" != "tapm" ] && [ ${udtd} -eq 0 ]; then
echo -e "\e[1A\e[0K\r ${idsCL[Green]}No updates available${idsCL[Default]}\n"
fi
else
echo -e "${idsCL[Red]}Could not connect to 'git.scity.us' for updates${idsCL[Default]}"
fi
fi
if [ "${1}" != "tapm" ] && [ "${1}" != "update" ] && [ "${1}" != "u" ]; then
/opt/idssys/ta-proxmenu/proxmenu-scripts.sh "${1:-}" "${2:-}" "${3:-}" "${4:-}"
fi
exit 0