UniGetUI installer, minor other changes to WinGet and NC
This commit is contained in:
66
Install-UniGetUI.ps1
Normal file
66
Install-UniGetUI.ps1
Normal file
@@ -0,0 +1,66 @@
|
||||
# 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
|
Reference in New Issue
Block a user