Devolutions / Devolutions/UniGetUI

[BUG] pinget.exe matching wrong packages on Windows Server 2019

Open
#4,748 4 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
C#
Stars
26.1k
Forks
924
Avg merge
15h 52m
Merged PRs (30d)
52

Description

### Please confirm these before moving forward

- [x] I have searched for my issue and have not found a work-in-progress/duplicate/resolved issue.
- [x] I have tested that this issue has not been fixed in the latest [(beta or stable) release](https://github.com/Devolutions/UniGetUI/releases/).
- [x] I have checked the [FAQ](https://github.com/Devolutions/UniGetUI#frequently-asked-questions) section for solutions.
- [x] This issue is about a bug (if it is not, please use the [correct template](https://github.com/Devolutions/UniGetUI/issues/new/choose)).

### UniGetUI Version

2026.1.9

### Windows version, edition, and architecture

Windows Server 2019 x64

### Describe your issue

I have 3 systems running UniGetUI... two Win10 and one WinSvr2019

On the Windows Server, which does not have winget installed, it is matching the wrong packages (I have it set to use pinget.exe as that is the only option on Server 2019)

Image

It is matching Chrome Remote Desktop to Windows Remote Desktop and SignalRGB to Signal Messenger

Both are installed on the Win10 PC's and don't show in the update list, but those systems have winget installed and I'm not forcing it to use pinget for the CLI

### Steps to reproduce the issue

Install mentioned packages and see the mismatch when configured the way I mentioned and on Server 2019

### UniGetUI Log

```text
n/a
```

### Package Managers Logs

```text
Manager WinGet with version:
Pinget CLI Version: pinget v0.1.0
Using Pinget CLI helper (JSON parsing)

——————————————————————————————————————————

Logged subprocess-based task on manager Winget. Task type is ListSources
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " source list --output json"
Process start time: 5/11/2026 2:15:56 PM
Process end time: 5/11/2026 2:15:56 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is RefreshIndexes
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " source update --disable-interactivity "
Process start time: 5/11/2026 2:15:56 PM
Process end time: 5/11/2026 2:16:01 PM

-- Process STDERR
Unhandled exception: System.UnauthorizedAccessException: Access to the path 'C:\ProgramData\Microsoft\WinGet\S-1-5-21-1828454943-3292737360-2019496675-1000\settings\pkg\Microsoft.DesktopAppInstaller\user_sources' is denied.
at Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options)
at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
at System.IO.File.OpenHandle(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize)
at System.IO.File.WriteToFile(String path, FileMode mode, ReadOnlySpan`1 contents, Encoding encoding)
at System.IO.File.WriteAllText(String path, String contents, Encoding encoding)
at Devolutions.Pinget.Core.SourceStoreManager.SavePackagedStore(String root, SourceStore store)
at Devolutions.Pinget.Core.Repository.UpdateSources(String sourceName)
at Program.<>c.<$>b__0_21(String source)
at System.CommandLine.Invocation.AnonymousCommandHandler.Invoke(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass19_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__18_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__5_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass8_0.<b__0>d.MoveNext()

Return code: FAILED (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is ListInstalledPackages
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " list --accept-source-agreements --output json"
Process start time: 5/11/2026 2:15:56 PM
Process end time: 5/11/2026 2:15:56 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is ListUpdates
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " upgrade --include-unknown --output json"
Process start time: 5/11/2026 2:16:01 PM
Process end time: 5/11/2026 2:16:02 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged native task on manager Winget. Task type is LoadPackageDetails
Process start time: 5/11/2026 2:16:08 PM
Process end time: 5/11/2026 2:16:08 PM

-- Task information
...

-- Task errors
Devolutions.Pinget.Core.SourceSearchException: Failed during source operation 'manifest' for 'winget': Response status code does not indicate success: 400 (The requested URI does not represent any resource on the server.).
---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 400 (The requested URI does not represent any resource on the server.).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at Devolutions.Pinget.Core.PreIndexedSource.GetCachedSourceFile(HttpClient client, String bucket, SourceRecord source, String relativePath, String expectedHash)
at Devolutions.Pinget.Core.Repository.ManifestFromV1(Int32 sourceIndex, Int64 packageRowid, PackageQuery query)
at Devolutions.Pinget.Core.Repository.ManifestForMatch(LocatedMatch located, PackageQuery query)
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
--- End of inner exception stack trace ---
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
at Devolutions.Pinget.Core.Repository.Show(PackageQuery query)
at Devolutions.Pinget.Core.Repository.ShowFirstMatchAcrossSources(PackageQuery query)
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.ShowWithRepository(PackageQuery query) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 446
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.LoadPackageDetails(IPackageDetails details, INativeTaskLogger logger) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 329

The task reported a failure (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is LoadPackageVersions
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " show --id "Microsoft.RemoteDesktopClient" --exact --versions --accept-source-agreements --output json"
Process start time: 5/11/2026 2:16:13 PM
Process end time: 5/11/2026 2:16:13 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged native task on manager Winget. Task type is LoadPackageDetails
Process start time: 5/11/2026 2:21:12 PM
Process end time: 5/11/2026 2:21:12 PM

-- Task information
...

-- Task errors
Devolutions.Pinget.Core.SourceSearchException: Failed during source operation 'manifest' for 'winget': Response status code does not indicate success: 404 (The specified blob does not exist.).
---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 404 (The specified blob does not exist.).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at Devolutions.Pinget.Core.PreIndexedSource.GetCachedSourceFile(HttpClient client, String bucket, SourceRecord source, String relativePath, String expectedHash)
at Devolutions.Pinget.Core.Repository.ManifestFromV1(Int32 sourceIndex, Int64 packageRowid, PackageQuery query)
at Devolutions.Pinget.Core.Repository.ManifestForMatch(LocatedMatch located, PackageQuery query)
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
--- End of inner exception stack trace ---
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
at Devolutions.Pinget.Core.Repository.Show(PackageQuery query)
at Devolutions.Pinget.Core.Repository.ShowFirstMatchAcrossSources(PackageQuery query)
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.ShowWithRepository(PackageQuery query) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 446
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.LoadPackageDetails(IPackageDetails details, INativeTaskLogger logger) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 329

The task reported a failure (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is LoadPackageVersions
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " show --id "OpenWhisperSystems.Signal" --exact --versions --accept-source-agreements --output json"
Process start time: 5/11/2026 2:21:12 PM
Process end time: 5/11/2026 2:21:12 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is RefreshIndexes
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " source update --disable-interactivity "
Process start time: 5/11/2026 2:24:28 PM
Process end time: 5/11/2026 2:24:54 PM

-- Process STDERR
Unhandled exception: System.InvalidOperationException: Failed to update preindexed source 'winget': The process cannot access the file 'C:\Users\Steve Hoek\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Microsoft.PreIndexed.Package\Microsoft.Winget.Source_8wekyb3d8bbwe\index.db' because it is being used by another process.
at Devolutions.Pinget.Core.PreIndexedSource.Update(HttpClient client, SourceRecord source, String appRoot)
at Devolutions.Pinget.Core.Repository.UpdateSources(String sourceName)
at Program.<>c.<$>b__0_21(String source)
at System.CommandLine.Invocation.AnonymousCommandHandler.Invoke(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass19_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__18_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__5_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass8_0.<b__0>d.MoveNext()

Return code: FAILED (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is ListUpdates
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " upgrade --include-unknown --output json"
Process start time: 5/11/2026 2:24:54 PM
Process end time: 5/11/2026 2:24:55 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged native task on manager Winget. Task type is LoadPackageDetails
Process start time: 5/11/2026 2:25:30 PM
Process end time: 5/11/2026 2:25:30 PM

-- Task information
...

-- Task errors
Devolutions.Pinget.Core.SourceSearchException: Failed during source operation 'manifest' for 'winget': Response status code does not indicate success: 400 (The requested URI does not represent any resource on the server.).
---> System.Net.Http.HttpRequestException: Response status code does not indicate success: 400 (The requested URI does not represent any resource on the server.).
at System.Net.Http.HttpResponseMessage.EnsureSuccessStatusCode()
at Devolutions.Pinget.Core.PreIndexedSource.GetCachedSourceFile(HttpClient client, String bucket, SourceRecord source, String relativePath, String expectedHash)
at Devolutions.Pinget.Core.Repository.ManifestFromV1(Int32 sourceIndex, Int64 packageRowid, PackageQuery query)
at Devolutions.Pinget.Core.Repository.ManifestForMatch(LocatedMatch located, PackageQuery query)
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
--- End of inner exception stack trace ---
at Devolutions.Pinget.Core.Repository.CreateShowResult(LocatedMatch located, PackageQuery query, List`1 warnings, List`1 sourceWarnings)
at Devolutions.Pinget.Core.Repository.Show(PackageQuery query)
at Devolutions.Pinget.Core.Repository.ShowFirstMatchAcrossSources(PackageQuery query)
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.ShowWithRepository(PackageQuery query) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 446
at UniGetUI.PackageEngine.Managers.WingetManager.PingetPackageDetailsProvider.LoadPackageDetails(IPackageDetails details, INativeTaskLogger logger) in D:\a\UniGetUI\UniGetUI\src\UniGetUI.PackageEngine.Managers.WinGet\ClientHelpers\PingetPackageDetailsProvider.cs:line 329

The task reported a failure (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is LoadPackageVersions
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " show --id "Microsoft.RemoteDesktopClient" --exact --versions --accept-source-agreements --output json"
Process start time: 5/11/2026 2:25:32 PM
Process end time: 5/11/2026 2:25:33 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is RefreshIndexes
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " source update --disable-interactivity "
Process start time: 5/11/2026 2:54:55 PM
Process end time: 5/11/2026 2:54:59 PM

-- Process STDERR
Unhandled exception: System.InvalidOperationException: Failed to update preindexed source 'winget': The process cannot access the file 'C:\Users\Steve Hoek\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Microsoft.PreIndexed.Package\Microsoft.Winget.Source_8wekyb3d8bbwe\index.db' because it is being used by another process.
at Devolutions.Pinget.Core.PreIndexedSource.Update(HttpClient client, SourceRecord source, String appRoot)
at Devolutions.Pinget.Core.Repository.UpdateSources(String sourceName)
at Program.<>c.<$>b__0_21(String source)
at System.CommandLine.Invocation.AnonymousCommandHandler.Invoke(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass19_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__18_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__5_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass8_0.<b__0>d.MoveNext()

Return code: FAILED (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is ListUpdates
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " upgrade --include-unknown --output json"
Process start time: 5/11/2026 2:54:59 PM
Process end time: 5/11/2026 2:55:01 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is RefreshIndexes
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " source update --disable-interactivity "
Process start time: 5/11/2026 3:18:19 PM
Process end time: 5/11/2026 3:18:23 PM

-- Process STDERR
Unhandled exception: System.InvalidOperationException: Failed to update preindexed source 'winget': The process cannot access the file 'C:\Users\Steve Hoek\AppData\Local\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\Microsoft.PreIndexed.Package\Microsoft.Winget.Source_8wekyb3d8bbwe\index.db' because it is being used by another process.
at Devolutions.Pinget.Core.PreIndexedSource.Update(HttpClient client, SourceRecord source, String appRoot)
at Devolutions.Pinget.Core.Repository.UpdateSources(String sourceName)
at Program.<>c.<$>b__0_21(String source)
at System.CommandLine.Invocation.AnonymousCommandHandler.Invoke(InvocationContext context)
at System.CommandLine.Invocation.InvocationPipeline.<>c__DisplayClass4_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass17_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass12_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass22_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass19_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__18_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass16_0.<b__0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c.<b__5_0>d.MoveNext()
--- End of stack trace from previous location ---
at System.CommandLine.Builder.CommandLineBuilderExtensions.<>c__DisplayClass8_0.<b__0>d.MoveNext()

Return code: FAILED (0x1, 1, 1)

——————————————————————————————————————————
Logged subprocess-based task on manager Winget. Task type is ListUpdates
Subprocess executable: "C:\Program Files\UniGetUI\Avalonia\pinget.exe"
Command-line arguments: " upgrade --include-unknown --output json"
Process start time: 5/11/2026 3:18:23 PM
Process end time: 5/11/2026 3:18:25 PM

-- Process STDOUT
...

Return code: SUCCESS (0)

——————————————————————————————————————————
```

### Relevant information

_No response_

### Screenshots and videos

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.