diff --git a/package/AgentWindowsManaged/Program.cs b/package/AgentWindowsManaged/Program.cs index 7c92230cd..883b274f3 100644 --- a/package/AgentWindowsManaged/Program.cs +++ b/package/AgentWindowsManaged/Program.cs @@ -279,8 +279,8 @@ static void Main() ThirdFailureActionType = FailureActionType.restart, RestartServiceDelayInSeconds = 900, ResetPeriodInDays = 1, - RemoveOn = SvcEvent.Uninstall, - StopOn = SvcEvent.InstallUninstall, + RemoveOn = SvcEvent.Uninstall_Wait, + StopOn = SvcEvent.InstallUninstall_Wait, }, }, new (Features.SESSION_FEATURE, DevolutionsSession) diff --git a/package/chocolatey/agent/devolutionsagent.template.nuspec b/package/chocolatey/agent/devolutionsagent.template.nuspec new file mode 100644 index 000000000..54e6d2910 --- /dev/null +++ b/package/chocolatey/agent/devolutionsagent.template.nuspec @@ -0,0 +1,21 @@ + + + + devo-agent + Devolutions Agent + $VAR1$ + Devolutions Inc. + A companion agent for managing and securing remote connections. + Devolutions Agent is a versatile background process used by many Devolutions products to perform various remote management tasks. + https://devolutions.net/agent/ + devolutions devoagent Agent Jump RemoteDesktopManager remote desktop manager rdp + Copyright © 2006-2026 + https://cdn.devolutions.net/documents/legal/eula/software-license-agreement-en.pdf + false + https://cdnweb.devolutions.net/images/chocolatey/DevolutionsAgent.png + + + + + + \ No newline at end of file diff --git a/package/chocolatey/agent/tools/chocolateyInstall.template.ps1 b/package/chocolatey/agent/tools/chocolateyInstall.template.ps1 new file mode 100644 index 000000000..28ad34edf --- /dev/null +++ b/package/chocolatey/agent/tools/chocolateyInstall.template.ps1 @@ -0,0 +1,16 @@ +$ErrorActionPreference = 'Stop' + +$PackageName = 'devo-agent' +$Url = 'https://cdn.devolutions.net/download/DevolutionsAgent-x86_64-$VAR1$.msi' + +$PackageArgs = @{ + packageName = $PackageName + url = $Url + fileType = 'msi' + silentArgs = "/qn /norestart" + validExitCodes= @(0, 1641, 3010, 1707) + checksum = '$VAR2$' + checksumType = 'sha256' +} + +Install-ChocolateyPackage @PackageArgs diff --git a/package/chocolatey/agent/tools/chocolateyUninstall.ps1 b/package/chocolatey/agent/tools/chocolateyUninstall.ps1 new file mode 100644 index 000000000..d611d727e --- /dev/null +++ b/package/chocolatey/agent/tools/chocolateyUninstall.ps1 @@ -0,0 +1,31 @@ +$ErrorActionPreference = 'Stop' + +$PackageName = 'devo-agent' + +$PackageArgs = @{ + packageName = $PackageName + softwareName = 'Devolutions Agent' + fileType = 'msi' + silentArgs = "/qn /norestart" + validExitCodes= @(0, 3010, 1605, 1614, 1641, 1707) +} + +[array]$Key = Get-UninstallRegistryKey -SoftwareName $PackageArgs['softwareName'] + +if ($Key.Count -eq 1) { + $Key | % { + if ($_.UninstallString -match '(\{[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}\})') { + $PackageArgs['silentArgs'] = "$($Matches[1]) $($PackageArgs['silentArgs'])" + Uninstall-ChocolateyPackage @PackageArgs + } else { + Write-Warning "Invalid uninstall string ($($_.UninstallString))." + } + } +} elseif ($Key.Count -eq 0) { + Write-Warning "$PackageName has already been uninstalled." +} elseif ($Key.Count -gt 1) { + Write-Warning "$($Key.Count) matches found!" + Write-Warning "To prevent accidental data loss, no programs will be uninstalled." + Write-Warning "The following keys were matched:" + $Key | % {Write-Warning "- $($_.DisplayName)"} +}