Merge pull request #630 from tomamplius/allowupdate

Allow Update on app install
pull/641/head
Romain 2024-06-04 13:08:26 +02:00 committed by GitHub
commit 88564f156c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 9 additions and 2 deletions

View File

@ -13,6 +13,9 @@ Forward Winget App ID to install. For multiple apps, separate with ",". Case sen
.PARAMETER Uninstall .PARAMETER Uninstall
To uninstall app. Works with AppIDs To uninstall app. Works with AppIDs
.PARAMETER AllowUpgrade
To allow upgrade app if present. Works with AppIDs
.PARAMETER LogPath .PARAMETER LogPath
Used to specify logpath. Default is same folder as Winget-Autoupdate project Used to specify logpath. Default is same folder as Winget-Autoupdate project
@ -34,6 +37,9 @@ If '-Uninstall' is used, it removes the app from WAU White List.
.EXAMPLE .EXAMPLE
.\winget-install.ps1 -AppIDs "7zip.7zip -v 22.00", "Notepad++.Notepad++" .\winget-install.ps1 -AppIDs "7zip.7zip -v 22.00", "Notepad++.Notepad++"
.EXAMPLE
.\winget-install.ps1 -AppIDs "Notepad++.Notepad++" -AllowUpgrade
#> #>
[CmdletBinding()] [CmdletBinding()]
@ -41,7 +47,8 @@ param(
[Parameter(Mandatory = $True, ParameterSetName = "AppIDs")] [String[]] $AppIDs, [Parameter(Mandatory = $True, ParameterSetName = "AppIDs")] [String[]] $AppIDs,
[Parameter(Mandatory = $False)] [Switch] $Uninstall, [Parameter(Mandatory = $False)] [Switch] $Uninstall,
[Parameter(Mandatory = $False)] [String] $LogPath, [Parameter(Mandatory = $False)] [String] $LogPath,
[Parameter(Mandatory = $False)] [Switch] $WAUWhiteList [Parameter(Mandatory = $False)] [Switch] $WAUWhiteList,
[Parameter(Mandatory = $False)] [Switch] $AllowUpgrade
) )
@ -136,7 +143,7 @@ function Test-ModsUninstall ($AppID) {
#Install function #Install function
function Install-App ($AppID, $AppArgs) { function Install-App ($AppID, $AppArgs) {
$IsInstalled = Confirm-Installation $AppID $IsInstalled = Confirm-Installation $AppID
if (!($IsInstalled)) { if (!($IsInstalled) -or $AllowUpgrade ) {
#Check if mods exist (or already exist) for preinstall/install/installedonce/installed #Check if mods exist (or already exist) for preinstall/install/installedonce/installed
$ModsPreInstall, $ModsInstall, $ModsInstalledOnce, $ModsInstalled = Test-ModsInstall $($AppID) $ModsPreInstall, $ModsInstall, $ModsInstalledOnce, $ModsInstalled = Test-ModsInstall $($AppID)