Skip to content

Rethink installer and how it sets stuff up (reduce need for admin) #10126

Closed
@crutkas

Description

@crutkas

Right now we have a hybrid of logic between the settings app / runner and the installer. Most is duplicate.

What i think we should do is move most to a common library and have, on uninstall, these be removed, else they are maintained and invoked by the actual application.

  • Run at Startup -> we have two modes here, one for admin and another for normal users to prevent UAC prompts on start up
  • Reg context menus -> This doesn't require admin rights for image resizer / power rename
  • Reg file associates -> come up with way to prompt users on first load to register.
    • this will be must more powerful once the Monaco preview pane comes online
  • better user prompts for non-supported scenarios (Example, user installs on Win8.1)

Ultimately, these changes should simplify the installer as well as the upgrade process. Chances are there are a few other items that need to be here as well but i think how we currently handle our installer needs to be rethought as we grow and do even more complex scenarios

Workback schedule

.49

.51

  • Move runtimes to MSI
  • Verify HKCU vs HKLM for some of the quirks when running as admin

.53

  • No more elevation
  • Remove Bootstrapper

Plan discussed: ETA Nov 2021 release

  1. Image Resizer context menu
  2. PowerRename context menu
  3. File reg for file explore thumbnails <- based on settings, looks to need elevation
  4. File reg Preview pane items <- based on settings, looks to need elevation

What I’m proposing is a new process that handles

  1. Adding context menus
  2. File reg for thumbnails
  3. File reg for preview panes

This exe would be called when a user

  1. Changes a setting that will force us to change
  2. When we detect on first time / upgrade we don’t have hooks (dialog to confirm)
  3. Uninstall and we have reg’ed hooks
    a. If a user cancels the UAC, we need to validate.

This allows for a single centralized spot for logic, simplifies the Wix installer file, and will allow us to have an easier way to enable the Monaco 150 files.

Metadata

Metadata

Assignees

Labels

Area-EnterpriseIssues relevant to large enterprises, SCCM, run as admin restrictions, ...Area-RunnerThe PowerToys main executableArea-Setup/InstallRefers to installation mechanismCost-LargeLarge work item - 3+ days worth of work (chances are needs to be broken down)Resolution-Fix CommittedFix is checked in, but it might be 3-4 weeks until a release.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions