PowerToys/installer
Roy ba2ef23414
[PowerToys Run] Add Support for Uris (#5160)
* url handler plugin

* updates

* Add seperate interface classes
rename to uri module

* Update path

* Update implementation to remove slow DNS lookup ( and let browser handle it)

* tabs to spaces

* - Update icon/assets
- Finalize Project

* Update wix project

* Implement UpdateBrowserIconPath

* Implemented Microsoft.CodeAnalysis.FxCopAnalyzers

* Add Language component to installer

* Update logic to determine icon

* Update Translation File to "Open in browser"

* Added test for typing http://test.com and which result to expect on each keystoke

* Implement StyleCop

* Added ipv6 tests

* Fix Solution LineBreaks

* Added Microsoft.Plugin.Uri as build Dependency

* Use ArgumentNullException instead of InvalidOperationException

* Fix wrong Directory in wix installer

Co-authored-by: Roy <royvou@hotmailcom>
2020-08-10 15:53:43 -07:00
..
MSIX Move keyboard manager POC code to dev branch (#1455) 2020-04-08 14:28:39 -07:00
PowerToysBootstrapper bootstrapper: add support for silent arg (#5590) 2020-08-07 12:00:14 +03:00
PowerToysSetup [PowerToys Run] Add Support for Uris (#5160) 2020-08-10 15:53:43 -07:00
PowerToysSetupCustomActions Autoupdate: implement updating bootstrapper utility (#5204) 2020-07-27 19:53:29 +03:00
VCRuntime Remove VCRedist Merge Modules, copy dlls instead 2020-05-15 12:01:21 -07:00
License.rtf moving the license.rtf file out of the root dir. compiled both msix and msi and both worked. (#1565) 2020-03-13 08:48:24 -07:00
PowerToysSetup.sln FancyZones and Shortcut Guide initial commit 2019-09-05 18:12:40 +02:00
README.md Merge ImageResizer into master (#1469) 2020-03-12 09:02:34 -07:00

PowerToys installer instructions

MSI installer instructions

  1. Install the WiX Toolset Visual Studio 2019 Extension.
  2. Install the WiX Toolset build tools in the development machine.
  3. Open powertoys.sln, select the "Release" and "x64" configurations and build the PowerToysSetup project.
  4. The resulting installer will be built to PowerToysSetup\bin\Release\PowerToysSetup.msi.

MSIX installer instructions

One-time tasks

Create and install the self-sign certificate

For the first-time installation, you'll need to generate a self-signed certificate. The script below will generate and add a cert to your TRCA store.

  1. Open Developer PowerShell for VS as an Admin
  2. Navigate to your repo's installer\MSIX
  3. Run .\generate_self_sign_cert.ps1

Note: if you delete the folder, you will have to regenerate the key

Elevate Developer PowerShell for VS permissions due to unsigned file

reinstall_msix.ps1 is unsigned, you'll need to elevate your prompt.

  1. Open Developer PowerShell for VS as admin
  2. Run Set-ExecutionPolicy -executionPolicy Unrestricted

Allow Sideloaded apps

In order to install the MSIX package without using the Microsoft Store, sideloading apps needs to be enabled. This can be done by enabling Developer Options > Sideload apps or Developer Options > Developer mode.

Building the MSIX package

  1. Make sure you've built the Release configuration of powertoys.sln
  2. Open Developer PowerShell for VS
  3. Navigate to your repo's installer\MSIX
  4. Run .\reinstall_msix.ps1 from the devenv powershell

What reinstall_msix.ps1 does

reinstall_msix.ps1 removes the current PowerToys installation, restarts explorer.exe (to update PowerRename and ImageResizer shell extension), builds PowerToys-x64.msix package, signs it with a PowerToys_TemporaryKey.pfx, and finally installs it.

Cleanup - Removing all .msi/.msix PowerToys installations

$name='PowerToys'
Get-AppxPackage -Name $name | select -ExpandProperty "PackageFullName" | Remove-AppxPackage
gwmi win32_product -filter "Name = '$name'" -namespace root/cimv2 | foreach {
  if ($_.uninstall().returnvalue -eq 0) { write-host "Successfully uninstalled $name " }
  else { write-warning "Failed to uninstall $name." }
}