Files
scripts/Install-UniGetUI.ps1

66 lines
2.0 KiB
PowerShell

# Script to install UniGetUI
# Technolog Networks - 2025-10-18
# iRaven
<#
.SYNOPSIS
Installs UniGetUI
#>
Start-Transcript -Path "$env:systemdrive\irnh\Install-UniGetUI.log" -Append
$PkgInfo = Get-Package -Name "UniGetUI*"
$LatestVerResp = (irm https://api.github.com/repos/marticliment/UniGetUI/releases/latest)
$LatestVer = $LatestVerResp.tag_name
$LatestVerURL = $LatestVerResp.assets.browser_download_url -like "*.exe"
$InstallerFile = "$env:systemdrive\irnh\UniGetUI-$LatestVer.exe"
Function IsLatestVer {
if (($LatestVer) -gt ($PkgInfo.Version)){
return $false
} else {
return $true
}
}
Function DownloadLatestVer {
try {
if (!(Test-Path $InstallerFile)) {
cmd.exe /c "curl -L -o $InstallerFile $LatestVerURL"
}
} catch {
write-host -ForegroundColor red "Couldn't download the latest installer at URL $LatestVerURL !"
}
}
Function InstallLatestVer {
try {
Write-Host -ForegroundColor Yellow "Installing UniGetUI $LatestVer"
$Installer = Start-Process $InstallerFile -Wait -PassThru -ArgumentList "/silent /allusers"
write-host "returned exit code" $Installer.ExitCode
if (0 -in $Installer.ExitCode) {
Write-Host -ForegroundColor Green "Successfully installed!"
rm $InstallerFile
}
} catch {
write-host "it no worky"
}
}
if (!($PkgInfo)) { # Not installed
Write-Host -ForegroundColor Yellow "UniGetUI not installed - installing latest version $LatestVer"
DownloadLatestVer
InstallLatestVer
} else {
Write-Host -ForegroundColor Yellow "UniGetUI installed with" $PkgInfo.Version
if (IsLatestVer) {
Write-Host -ForegroundColor Green "The currently installed version is the latest version"
} else {
Write-Host -ForegroundColor Yellow "The currently installed version is NOT the latest version - installing $LatestVer"
DownloadLatestVer
InstallLatestVer
}
}
Write-Host "Exiting"
Stop-Transcript