Devolutions / Devolutions/UniGetUI

[FEATURE REQUEST] Wildcard based priority rules

Open
#5,280 0 comments 0 reactions 0 assignees View on GitHub
new-feature
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 feature proposal and have not found a work-in-progress/duplicate/resolved/discarded issue.
- [x] This proposal is a completely new feature. If you want to suggest an improvement or an enhancement, please use [this template](https://github.com/Devolutions/UniGetUI/issues/new?labels=enhancement&projects=&template=enhancement-improvement.yml&title=%5BENHANCEMENT%5D+%28Enter+your+description+here%29).

### Describe the new feature

In Settings > Package update preferences, add a section titled "Installation priority".

Here, users can define simple rules which send packages that match certain wildcards to the front or back of the queue when "Update selection" is clicked in the Software Updates UI.

- The user can add an infinite number of rules.
- Rules can be reordered via drag and drop; this allows the user to easily create sub-priorities.
- Match targets are treated as wildcards internally (as if a * is prepended and appended to the string)

Example rules:
| Packages matching... | Priority |
|----------------------|----------|
| Visual Studio | First |
| Desktop Runtime | Last |
| .NET | Last |

In this example, when the user clicks "Update selection", packages matching "Visual Studio" would be queued first, followed by those matching "Desktop Runtime", then finally ".NET" (due to it being placed afterwards).

Please note, I'm open to suggestions on how a priority queue system could be implemented in a different way.

### Describe how this new feature could help users

There are a number of ways this functionality could benefit users:

1. Installation time: certain updates could require comparitively high or inconsistent installation times. For example, Visual Studio 2026 updates can take upto 15 minutes on older systems. The user might prefer to have certain updates complete first so they can continue using the respective software.

2. Elevation: Personally, I have found that despite having "Ask for administrator privileges once for each batch of operations" and "Ask only once for administrator privileges" enabled, each .NET Desktop Runtime and .NET SDK packages always requests an individual UAC prompt while being updated, which requires me to be present to prevent the interruption of following updates. A priority queue system would allow me to leave the system unattended during a large batch of updates, as I would have confidence that no other updates would be remaining following an interruption.

Contributor guide

Open the contributing guide

Research direction

Start in Settings > Package update preferences and trace the Software Updates UI flow triggered by “Update selection.” Determine how package updates are queued, then define how wildcard rules, ordering, drag-and-drop reordering, and First/Last priorities fit that flow. Done means users can create and reorder rules and matching packages are queued in the documented priority order.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.