Devolutions/UniGetUI · warning · InvalidOperationException
The manager "{managerId}" does not support installer downloa
Error message
The manager "{managerId}" does not support installer downloads. What it means
DownloadPackageAsync throws when the resolved package's manager has Capabilities.CanDownloadInstaller == false. Not every package manager can fetch a standalone installer; only those that advertise the capability accept download requests.
Source
Thrown at src/UniGetUI.Interface.IpcApi/IpcPackageApi.cs:217
}
public static async Task<IpcPackageOperationResult> DownloadPackageAsync(
IpcPackageActionRequest request
)
{
ArgumentNullException.ThrowIfNull(request);
if (string.IsNullOrWhiteSpace(request.OutputPath))
{
throw new InvalidOperationException(
"The outputPath parameter is required when downloading a package."
);
}
var package = FindAnyPackage(request);
if (!package.Manager.Capabilities.CanDownloadInstaller)
{
throw new InvalidOperationException(
$"The manager \"{IpcManagerSettingsApi.GetPublicManagerId(package.Manager)}\" does not support installer downloads."
);
}
var operation = new DownloadOperation(package, request.OutputPath);
string operationId = IpcOperationApi.Track(operation);
if (request.WaitForCompletion == false)
{
_ = Task.Run(() => RunTrackedOperationAsync(operation));
return CreateOperationResult(
"download-package",
package,
operation,
operation.DownloadLocation,
completed: false,
operationId: operationId
);View on GitHub (pinned to 9b1d7d0eab)
Solutions
- Check package.Manager.Capabilities.CanDownloadInstaller before requesting a download
- Filter the offered actions by manager capabilities in the UI
- Fall back to an install operation when download is unsupported
Example fix
// before
await IpcPackageApi.DownloadPackageAsync(req);
// after
if (!package.Manager.Capabilities.CanDownloadInstaller)
return Result.Unsupported("download not supported by " + package.Manager.Name);
await IpcPackageApi.DownloadPackageAsync(req); Defensive patterns
Strategy: validation
Validate before calling
if (!package.Manager.Capabilities.CanDownloadInstaller)
throw new NotSupportedException(
$"{package.Manager.Name} cannot download installers"); Prevention
- Surface capabilities per manager in the client UI
- Never assume download is universal across managers
When it happens
Trigger: Calling download on a package backed by a manager (e.g. npm, pip, .NET tool) that does not implement installer download.
Common situations: UI offers a Download button for every manager; client assumes download is universally supported; capability differs per manager implementation.
Related errors
- The outputPath parameter is required when downloading a pack
- The current UniGetUI session cannot show a window.
- The current UniGetUI session cannot navigate application pag
- The current UniGetUI session cannot be shut down through aut
- The current UniGetUI session cannot open package details.
AI-assisted analysis of Devolutions/UniGetUI@9b1d7d0eab (2026-08-13).
Data as JSON: /api/errors/4147177e88ee59bc.
Report an issue: GitHub.