Fix Heroic Launcher install script

This commit is contained in:
Josh.5
2022-08-31 22:01:09 +12:00
parent 63d2f726a5
commit ba01d6f523

View File

@@ -5,8 +5,8 @@
# File Created: Thursday, 1st January 1970 12:00:00 pm
# Author: Console and webGui login account (jsunnex@gmail.com)
# -----
# Last Modified: Monday, 17th January 2022 11:44:46 pm
# Modified By: Console and webGui login account (jsunnex@gmail.com)
# Last Modified: Wednesday, 31st August 2022 10:01:31 pm
# Modified By: Josh.5 (jsunnex@gmail.com)
###
pkg=heroic
@@ -19,34 +19,59 @@ github_get_all_release() {
| grep '"tag_name":' \
| sed -E 's/.*"([^"]+)".*/\1/';
}
github_get_release_download_url() {
REPO="${1}";
TAG="${2}";
TYPE="${3}";
IGNORE="${4}";
curl --silent "https://api.github.com/repos/${REPO}/releases/tags/${TAG}" \
| grep '"browser_download_url":' \
| sed -E 's/.*"([^"]+)".*/\1/' \
| grep -P "${TYPE}" \
| grep -P "${TYPE}" \
| head -n1;
}
install() {
if ! dpkg --get-selections | grep -q "^$pkg[[:space:]]*install$" >/dev/null; then
echo 'deb https://sourceforge.net/projects/madlinux/files/repo core main'|sudo tee /etc/apt/sources.list.d/madlinux.list
wget -qO- Https://sourceforge.net/projects/madlinux/files/repo/madlinux.key|gpg --dearmor|sudo tee /etc/apt/trusted.gpg.d/madlinux.gpg>/dev/null
apt-get update
apt-get install -y heroic
# Download Heroic deb package if it does not yet exist
__latest_heroic_release=$(github_get_all_release "Heroic-Games-Launcher/HeroicGamesLauncher" | head -n1)
if [[ ! -f "/home/${USER}/Downloads/heroic-${__latest_heroic_release}.deb" ]]; then
__heroic_download_link=$(github_get_release_download_url "Heroic-Games-Launcher/HeroicGamesLauncher" "${__latest_heroic_release}" ".deb")
wget -O /tmp/heroic.deb "${__heroic_download_link}"
[[ $? -gt 0 ]] && echo "Error downloading pacakge. Exit!" && return 1
mv /tmp/heroic.deb "/home/${USER}/Downloads/heroic-${__latest_heroic_release}.deb"
fi
if ! dpkg --get-selections | grep -q "^zenity[[:space:]]*install$" >/dev/null; then
# Pre-install deps
apt-get update
apt-get install -y zenity
fi
# Install/Update the latest version of Heroic
[[ "${APT_UPDATED:-false}" == 'false' ]] && apt-get update && APT_UPDATED=true
apt-get install -y "/home/${USER}/Downloads/heroic-${__latest_heroic_release}.deb"
if [[ ! -d "/home/${USER}/HeroicBashLauncher" ]]; then
# Install/Update deps for HeroicBashLauncher
[[ "${APT_UPDATED:-false}" == 'false' ]] && apt-get update && APT_UPDATED=true
apt-get install -y zenity
# Install/Update the latest version HeroicBashLauncher
__latest_hbl_release=$(github_get_all_release "redromnon/HeroicBashLauncher" | head -n1)
if [[ ! -e "/home/${USER}/HeroicBashLauncher/.${__latest_hbl_release}" ]]; then
# Download HeroicBashLauncher
latest_release=$(github_get_all_release redromnon/HeroicBashLauncher | head -n1)
download_url="https://github.com/redromnon/HeroicBashLauncher/releases/download/${latest_release}/HeroicBashLauncher_${latest_release}.zip"
wget -O "/tmp/HeroicBashLauncher-${latest_release}.zip" "${download_url}"
if [[ ! -f "/home/${USER}/Downloads/HeroicBashLauncher-${__latest_hbl_release}.zip" ]]; then
__hbl_download_link=$(github_get_release_download_url "redromnon/HeroicBashLauncher" "${__latest_hbl_release}" "\d\.zip")
wget -O /tmp/hbl.zip "${__hbl_download_link}"
[[ $? -gt 0 ]] && echo "Error downloading pacakge. Exit!" && return 1
mv /tmp/hbl.zip "/home/${USER}/Downloads/HeroicBashLauncher-${__latest_hbl_release}.zip"
fi
# Extract HeroicBashLauncher
su ${USER} -c "cd /home/${USER} && unzip -o /tmp/HeroicBashLauncher-${latest_release}.zip"
mkdir -p "/home/${USER}/HeroicBashLauncher"
rm -rf "/tmp/hbl"
su ${USER} -c "mkdir -p /tmp/hbl && cd /tmp/hbl && unzip -o /home/${USER}/Downloads/HeroicBashLauncher-${__latest_hbl_release}.zip"
su ${USER} -c "cp -rfv /tmp/hbl/HeroicBashLauncher*/HeroicBashLauncher/* /home/${USER}/HeroicBashLauncher/"
chmod +x "/home/${USER}/HeroicBashLauncher/HeroicBashLauncher"
# Setup as user
chmod +x /home/${USER}/HeroicBashLauncher/setup.sh
sed -i 's|^#!.*\/bash$|#!/usr/bin/env bash|' /home/${USER}/HeroicBashLauncher/setup.sh
# Setup script in user PATH
su ${USER} -c "mkdir -p /home/default/.local/bin"
su ${USER} -c "ln -sf /home/${USER}/HeroicBashLauncher/HeroicBashLauncher /home/${USER}/.local/bin/HeroicBashLauncher"
fi
# Remove installer shortcut