#!/bin/bash
# This script only helps to update applications that have already been installed by the user,
# but that are not found in software repositories.

# Package information
package_name="vmware-player-updater"
latest_package_version="17.5.0"
package_installation_directory="/usr/share/$package_name"
package_download_name="VMware-Player-17.5.0-22583795.x86_64.bundle"
download_link="https://softwareupdate.vmware.com/cds/vmw-desktop/player/17.5.0/22583795/linux/core/VMware-Player-17.5.0-22583795.x86_64.bundle.tar"
expected_package_version=$(echo $latest_package_version | cut -d"-" -f -1 | sed "s/\.//g")
installed_package_version=$(rpm -qi $package_name | grep Ver | awk '{print $3}' | sed "s/\.//g")

# If necessary, update the application installation
function update_app() {
ps -C regataos-store > /dev/null
if [ $? = 0 ]
then
    # Prepare the progress bar and downloading
    rm -f /tmp/progressbar-store/progress-movement
    echo "0%" > /tmp/progressbar-store/progress
    echo "Downloading..." > /tmp/progressbar-store/status
    chmod 777 /tmp/progressbar-store/*
    sleep 1
    echo "show progress bar" > /tmp/progressbar-store/progressbar
    chmod 777 /tmp/progressbar-store/*

    echo "/tmp/progressbar-store/$package_download_name" > /tmp/progressbar-store/file-download-size
    chmod 777 /tmp/progressbar-store/*
    echo "wget --no-check-certificate -O $package_installation_directory/$package_download_name.tar $download_link" > /tmp/progressbar-store/get-pid
    mkdir -p $package_installation_directory/
    wget --no-check-certificate -O $package_installation_directory/$package_download_name.tar $download_link 2>&1 | (pv -n > /tmp/progressbar-store/download-percentage)
    echo 100% > /tmp/progressbar-store/progress
    chmod 777 /tmp/progressbar-store/*
    sleep 1
    #Clear cache
    rm -f /tmp/progressbar-store/download-percentage
    rm -f /tmp/progressbar-store/download-size
    rm -f /tmp/progressbar-store/download-speed
    rm -f /tmp/progressbar-store/file-size
    rm -f /tmp/progressbar-store/eta

    # Install app
    #Prepare the progress bar and install
    chmod 777 /tmp/progressbar-store/*
    echo "Installing..." > /tmp/progressbar-store/status
    echo "" > /tmp/progressbar-store/progress
    echo "installing" > /tmp/progressbar-store/progress-movement

    #Extract the main package
    cd $package_installation_directory/
    tar -xvf $package_download_name.tar
    chmod +x $package_download_name
    ./$package_download_name --deferred-gtk

else
    #Get the app
    mkdir -p $package_installation_directory/
    wget --no-check-certificate -O $package_installation_directory/$package_download_name.tar $download_link

    #Extract the main package
    cd $package_installation_directory/
    tar -xvf $package_download_name.tar
    chmod +x $package_download_name
    ./$package_download_name --deferred-gtk
fi
}

# Check the package version
#Check the main version of the application
if [ $expected_package_version -gt $installed_package_version ]
then
    echo "Updating app"
    update_app
else
	if test ! -e "/usr/bin/vmplayer" ; then
		update_app
	else
		echo "App version: $latest_package_version. The application appears to be updated. Nothing to do."
	fi
fi
