Skip to content

Add manual install/update/uninstall mode#5078

Merged
Gabriel Dufresne (GabrielDuf) merged 4 commits into
mainfrom
feature/manual-install-mode
Jul 13, 2026
Merged

Add manual install/update/uninstall mode#5078
Gabriel Dufresne (GabrielDuf) merged 4 commits into
mainfrom
feature/manual-install-mode

Conversation

@GabrielDuf

@GabrielDuf Gabriel Dufresne (GabrielDuf) commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

This pull request introduces a new "Manual install/update/uninstall" feature that allows users to generate the CLI command for a package operation and open a terminal with the command pre-typed, ready for manual execution. The command is also copied to the clipboard as a fallback. This feature is integrated into package list menus, toolbars, and the install-options dialog, with full cross-platform support (Windows, macOS, Linux). It also includes UI and localization updates to support these actions.

Manual install/update/uninstall feature:

  • Added ManualInstallHelper utility class that generates the correct CLI command for a selected package operation and opens a terminal with the command pre-typed, supporting Windows, macOS, and Linux, and copies the command to the clipboard as a fallback. (src/UniGetUI.Avalonia/Infrastructure/ManualInstallHelper.cs)
  • Integrated "Manual install", "Manual update", and "Manual uninstall" actions into toolbars and context menus of DiscoverSoftwarePage, InstalledPackagesPage, and SoftwareUpdatesPage, with context-sensitive labels and enablement. (src/UniGetUI.Avalonia/Views/SoftwarePages/DiscoverSoftwarePage.cs, src/UniGetUI.Avalonia/Views/SoftwarePages/InstalledPackagesPage.cs, src/UniGetUI.Avalonia/Views/SoftwarePages/SoftwareUpdatesPage.cs)

Install options dialog improvements:

  • Added a "Manual" button to the command-line preview area in the install-options dialog, which triggers the manual action for the current operation and options. (src/UniGetUI.Avalonia/Views/DialogPages/InstallOptionsControl.axaml, src/UniGetUI.Avalonia/Views/DialogPages/InstallOptionsControl.axaml.cs)
  • Updated the install-options view model to provide context-sensitive labels for the manual action and refactored command preview logic for reusability. (src/UniGetUI.Avalonia/ViewModels/DialogPages/InstallOptionsViewModel.cs)

Localization:

  • Added new strings for "Manual install", "Manual update", and "Manual uninstall" to the English language resource file. (src/Languages/lang_en.json)

@GabrielDuf Gabriel Dufresne (GabrielDuf) changed the title Add manual install/update/uninstall mode and improve macOS terminal Add manual install/update/uninstall mode Jul 13, 2026
@GabrielDuf
Gabriel Dufresne (GabrielDuf) merged commit b44ae98 into main Jul 13, 2026
9 of 10 checks passed
@GabrielDuf
Gabriel Dufresne (GabrielDuf) deleted the feature/manual-install-mode branch July 13, 2026 19:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants