diff --git a/ct/heimdalldashboard.sh b/ct/heimdall-dashboard.sh similarity index 54% rename from ct/heimdalldashboard.sh rename to ct/heimdall-dashboard.sh index 1ed32e597..6f8a163e6 100644 --- a/ct/heimdalldashboard.sh +++ b/ct/heimdall-dashboard.sh @@ -18,7 +18,7 @@ EOF } header_info echo -e "Loading..." -APP="Heimdall Dashboard" +APP="Heimdall-Dashboard" var_disk="2" var_cpu="1" var_ram="512" @@ -55,49 +55,50 @@ function default_settings() { function update_script() { header_info if [[ ! -d /opt/Heimdall ]]; then msg_error "No ${APP} Installation Found!"; exit; fi -msg_info "Stopping ${APP}" -systemctl stop heimdall -sleep 1 -msg_ok "Stopped ${APP}" - -msg_info "Backing up Data" -cp -R /opt/Heimdall/database database-backup -cp -R /opt/Heimdall/public public-backup -sleep 1 -msg_ok "Backed up Data" - RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') -msg_info "Updating Heimdall Dashboard to ${RELEASE}" -wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz -tar xzf ${RELEASE}.tar.gz -VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') -cp -R Heimdall-${VER}/* /opt/Heimdall -cd /opt/Heimdall -apt-get install -y composer &>/dev/null -COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload &>/dev/null -msg_ok "Updated Heimdall Dashboard to ${RELEASE}" +if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then + msg_info "Stopping ${APP}" + systemctl stop heimdall + sleep 1 + msg_ok "Stopped ${APP}" -msg_info "Restoring Data" -cd ~ -cp -R database-backup/* /opt/Heimdall/database -cp -R public-backup/* /opt/Heimdall/public -sleep 1 -msg_ok "Restored Data" + msg_info "Backing up Data" + cp -R /opt/Heimdall/database database-backup + cp -R /opt/Heimdall/public public-backup + sleep 1 + msg_ok "Backed up Data" -msg_info "Cleanup" -rm -rf ${RELEASE}.tar.gz -rm -rf Heimdall-${VER} -rm -rf public-backup -rm -rf database-backup -rm -rf Heimdall -sleep 1 -msg_ok "Cleaned" + msg_info "Updating Heimdall Dashboard to ${RELEASE}" + wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz + tar xzf ${RELEASE}.tar.gz + VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }') + cp -R Heimdall-${VER}/* /opt/Heimdall + cd /opt/Heimdall + apt-get install -y composer &>/dev/null + COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload &>/dev/null + echo "${RELEASE}" >/opt/${APP}_version.txt + msg_ok "Updated Heimdall Dashboard to ${RELEASE}" -msg_info "Starting ${APP}" -systemctl start heimdall.service -sleep 2 -msg_ok "Started ${APP}" -msg_ok "Updated Successfully" + msg_info "Restoring Data" + cd ~ + cp -R database-backup/* /opt/Heimdall/database + cp -R public-backup/* /opt/Heimdall/public + sleep 1 + msg_ok "Restored Data" + + msg_info "Cleanup" + rm -rf {${RELEASE}.tar.gz,Heimdall-${VER},public-backup,database-backup,Heimdall} + sleep 1 + msg_ok "Cleaned" + + msg_info "Starting ${APP}" + systemctl start heimdall.service + sleep 2 + msg_ok "Started ${APP}" + msg_ok "Updated Successfully" +else + msg_ok "No update required. ${APP} is already at ${RELEASE}." +fi exit } diff --git a/install/heimdalldashboard-install.sh b/install/heimdall-dashboard-install.sh similarity index 97% rename from install/heimdalldashboard-install.sh rename to install/heimdall-dashboard-install.sh index 974aea4ef..ca9d04d9d 100644 --- a/install/heimdalldashboard-install.sh +++ b/install/heimdall-dashboard-install.sh @@ -24,6 +24,7 @@ $STD apt-get install -y php8.2-{bz2,curl,sqlite3,zip,xml} msg_ok "Installed Dependencies" RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]') +echo "${RELEASE}" >/opt/${APPLICATION}_version.txt msg_info "Installing Heimdall Dashboard ${RELEASE}" wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz tar xzf ${RELEASE}.tar.gz diff --git a/misc/filebrowser.sh b/misc/filebrowser.sh index f15d05371..c4cc0e8d4 100644 --- a/misc/filebrowser.sh +++ b/misc/filebrowser.sh @@ -65,6 +65,7 @@ function msg_ok() { read -r -p "Would you like to use No Authentication? " prompt msg_info "Installing ${APP}" +apt-get install -y curl &>/dev/null RELEASE=$(curl -fsSL https://api.github.com/repos/filebrowser/filebrowser/releases/latest | grep -o '"tag_name": ".*"' | sed 's/"//g' | sed 's/tag_name: //g') curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/$RELEASE/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null