marticliment / UniGetUI

UniGetUI: The Graphical Interface for your package managers. Could be terribly described as a package manager manager to manage your package managers
https://www.marticliment.com/unigetui/
MIT License
12.27k stars 420 forks source link

[ENHANCEMENT] Improve "Update failed" popup to offer better Retrying / Installation options / Update as administrator etc #2389

Open redactedscribe opened 3 months ago

redactedscribe commented 3 months ago

Please confirm these before moving forward.

Describe the improvement

WingetUI_2024-07-02_19-53-36

When an update fails, it can sometimes fail because it did not have administrator rights. Therefore, the Retry button would only repeat the update and fail again unless the update is customised (e.g. run as admin).

If UniGetUI could detect whether an update failed because of a lack of admin rights, then the popup could offer a direct way, e.g. a button, to retry as admin, e.g. Retry, Retry As Admin, Cancel. Alternatively, just integrate a way to trigger the Installation options popup directly from the Retry popup.

Describe how this improvement could help users

If we had the option to configure the update from this popup before retrying, that would be a nicer user experience than going back to the main list and starting again / customising the update from there.

Whilst writing this, another benefit, if implemented, came to mind:

I've noticed that each time a WinGet package update (maybe other sources too? -- Scoop caches its downloads) is Retry'ed from this popup (or even just initiated again from the main updates list), the installer is re-downloaded again before retrying.

Discarding the installer is more acceptable in the normal case of repeatedly trying to update via the main list's Right-click > Update method (because that's normal WinGet behaviour to discard it I believe), but if UniGetUI could temporarily store the installer file somewhere, specifically until the Retry popup is closed, then pressing Retry would be quicker as the installer could just be re-run without re-downloading it again.

To avoid retrying on corrupt / partially downloaded installers, the Retry button should then provide an additional redownload-and-retry option (i.e. the normal WinGet behaviour of discarding the installer).