Windows system utilities to maximize productivity
Go to file
Davide Giacometti 3e133ae8bd
Dependencies cleanup (#34011)
<!-- Enter a brief description/summary of your PR here. What does it
fix/what does it change/how was it tested (even manually, if necessary)?
-->
## Summary of the Pull Request

- Removed `Vanara.PInvoke.*` packages used in Quick Accent in favor of
`Microsoft.Windows.CsWin32` that is already in use for other utilities.
- Removed `Microsoft.Windows.SDK.Contracts` package instanned only on
MWB. This is not needed:
https://learn.microsoft.com/windows/apps/desktop/modernize/desktop-to-uwp-enhance#modify-a-net-project-to-use-windows-runtime-apis
- Cleaned up obsolete packages from `Directory.Packages.props`: I
realized that uninstalling a NuGet package from all projects doesn't
remove it from `Directory.Packages.props`.

<!-- Please review the items on the PR checklist before submitting-->
## PR Checklist

- [ ] **Closes:** #xxx
- [ ] **Communication:** I've discussed this with core contributors
already. If work hasn't been agreed, this work might be rejected
- [ ] **Tests:** Added/updated and all pass
- [ ] **Localization:** All end user facing strings can be localized
- [ ] **Dev docs:** Added/updated
- [ ] **New binaries:** Added on the required places
- [ ] [JSON for
signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json)
for new binaries
- [ ] [WXS for
installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs)
for new binaries and localization folder
- [ ] [YML for CI
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml)
for new test projects
- [ ] [YML for signed
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml)
- [ ] **Documentation updated:** If checked, please file a pull request
on [our docs
repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys)
and link it here: #xxx

<!-- Provide a more detailed description of the PR, other things fixed
or any additional comments/features here -->
## Detailed Description of the Pull Request / Additional comments

<!-- Describe how you validated the behavior. Add automated tests
wherever possible, but list manual validation steps taken as well -->
## Validation Steps Performed

- Manually tested Quick Accent
2024-08-07 14:16:38 +02:00
.config [Deps]Update Xamlstyler.console to 3.2404.2 (#32567) 2024-06-20 10:15:55 +01:00
.configurations [Dev]Add additional Winget DSC scripts for VS Pro and Enterprise (#31325) 2024-02-08 09:50:37 +00:00
.github [Awake]Refactor and update version - DAISY023_04102024 (#32378) 2024-07-25 17:09:17 +01:00
.pipelines [Build][Installer]Fix NU1503 build warnings (#33938) 2024-07-24 16:49:08 +01:00
deps Update cziplib to 0.25 (#21198) 2022-10-13 00:12:17 +03:00
doc Moving Version to Directory.Build.props (#34055) 2024-08-05 06:32:05 -07:00
installer Moving Version to Directory.Build.props (#34055) 2024-08-05 06:32:05 -07:00
src Dependencies cleanup (#34011) 2024-08-07 14:16:38 +02:00
tools [MWB][Enterprise] Add new policies and improve settings UI for the Transfer File setting (#33571) 2024-07-22 15:49:45 +01:00
.gitattributes Update .gitattributes 2022-07-19 13:06:16 -07:00
.gitignore [DSC] Implement Microsoft.PowerToys.Configure DSCResource & winget support (#30918) 2024-04-02 00:09:47 +01:00
.gitmodules Delete cxxopts (#21197) 2022-10-13 00:09:47 +03:00
.vsconfig [Dev]Add missing ATL lib to .vsconfig (#26953) 2023-06-20 14:45:46 +01:00
CODE_OF_CONDUCT.md adding in a Code of Conduct 2020-03-05 10:11:27 -08:00
COMMUNITY.md Update COMMUNITY.md (#32725) 2024-06-12 09:34:32 -07:00
CONTRIBUTING.md Add bot trigger for contribution thread (#28221) 2023-11-15 15:46:52 -08:00
Cpp.Build.props [Build]Remove wildcards items in vcxproj (#33862) 2024-07-18 14:48:46 +01:00
CppRuleSet.ruleset [Analyzers][CPP] Turn on warning 26493 (#23990) 2023-02-13 16:37:26 +00:00
Directory.Build.props Consolidation for self contained, built on #34055 (#34134) 2024-08-05 14:29:11 -07:00
Directory.Build.targets [Build]Add Microsoft.MSBuildCache (#30100) 2024-01-15 21:45:28 +00:00
Directory.Packages.props Dependencies cleanup (#34011) 2024-08-07 14:16:38 +02:00
LICENSE Fix license file (#2626) 2020-05-02 15:59:18 -07:00
NOTICE.md Dependencies cleanup (#34011) 2024-08-07 14:16:38 +02:00
nuget.config [EnvVar][Hosts][RegPrev]Decouple and refactor to make it "packable" as nuget package (#32604) 2024-04-26 18:41:44 +01:00
packages.config Update MSBuildCache to 0.1.283-preview (#33988) 2024-07-24 12:18:24 -07:00
PowerToys.sln Consolidation for self contained, built on #34055 (#34134) 2024-08-05 14:29:11 -07:00
README.md 0.83 changelog (#34048) 2024-07-30 12:21:30 -07:00
SECURITY.md Update SECURITY.md from 0.0.2 to 0.0.9 (#28289) 2023-09-06 09:14:28 -07:00
Settings.XamlStyler [Build]Use XamlStyler to check XAML formatting (#28643) 2023-10-09 15:58:13 +01:00
Solution.props [PowerRename] Fluent UX (#13678) 2021-10-25 14:40:19 +01:00
SUPPORT.md [Docs]Replace docs.micrososft.com with learn.microsoft.com (#20662) 2022-09-28 17:18:55 +01:00

Microsoft PowerToys

Hero image for Microsoft PowerToys

How to use PowerToys | Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap

Build status

Architecture Solution (Main) Solution (Stable) Installer (Main)
x64 Build Status for Main Build Status for Stable Build Status Installer pipeline
ARM64 Build Status for Main Build Status for Stable Build Status Installer pipeline

About

Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. For more info on PowerToys overviews and how to use the utilities, or any other tools and resources for Windows development environments, head over to learn.microsoft.com!

Current utilities:
Advanced Paste Always on Top PowerToys Awake
Command Not Found Color Picker Crop And Lock
Environment Variables FancyZones File Explorer Add-ons
File Locksmith Hosts File Editor Image Resizer
Keyboard Manager Mouse utilities Mouse Without Borders
Peek Paste as Plain Text PowerRename
PowerToys Run Quick Accent Registry Preview
Screen Ruler Shortcut Guide Text Extractor
Video Conference Mute

Installing and running Microsoft PowerToys

Requirements

  • Windows 11 or Windows 10 version 2004 (code name 20H1 / build number 19041) or newer.
  • x64 or ARM64 processor
  • Our installer will install the following items:

Go to the Microsoft PowerToys GitHub releases page and click on Assets at the bottom to show the files available in the release. Please use the appropriate PowerToys installer that matches your machine's architecture and install scope. For most, it is x64 and per-user.

Description Filename sha256 hash
Per user - x64 PowerToysUserSetup-0.83.0-x64.exe C78E24F21C611F2BD774D8460ADD4B9AC8519085CA1253941CB46129331AB8C8
Per user - ARM64 PowerToysUserSetup-0.83.0-arm64.exe BA1C16003D55587D523A41B960D4A03718123CA37577D5F2A75E151D7653E6D3
Machine wide - x64 PowerToysSetup-0.83.0-x64.exe 7EC435A10849187D21A383E56A69213C1FF110B7FECA65900D9319D2F8162F35
Machine wide - ARM64 PowerToysSetup-0.83.0-arm64.exe 5E147424D1D12DFCA88DC4AA0657B7CC1F3B02812F1EBA3E564FAF691908D840

This is our preferred method.

Via Microsoft Store

Install from the Microsoft Store's PowerToys page. You must be using the new Microsoft Store which is available for both Windows 11 and Windows 10.

Via WinGet

Download PowerToys from WinGet. Updating PowerToys via winget will respect current PowerToys installation scope. To install PowerToys, run the following command from the command line / PowerShell:

User scope installer [default]

winget install Microsoft.PowerToys -s winget

Machine-wide scope installer

winget install --scope machine Microsoft.PowerToys -s winget

Other install methods

There are community driven install methods such as Chocolatey and Scoop. If these are your preferred install solutions, you can find the install instructions there.

Third-Party Run Plugins

There is a collection of third-party plugins created by the community that aren't distributed with PowerToys.

Contributing

This project welcomes contributions of all types. Besides coding features / bug fixes, other ways to assist include spec writing, design, documentation, and finding bugs. We are excited to work with the power user community to build a set of tools for helping you get the most out of Windows.

We ask that before you start work on a feature that you would like to contribute, please read our Contributor's Guide. We would be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort.

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you grant us the rights to use your contribution and that you have permission to do so.

For guidance on developing for PowerToys, please read the developer docs for a detailed breakdown. This includes how to setup your computer to compile.

What's Happening

PowerToys Roadmap

Our prioritized roadmap of features and utilities that the core team is focusing on.

0.83 - July 2024 Update

In this release, we focused on stability and improvements.

Highlights

General

  • Reordered GPO policies, making it easier to find some policies. Thanks @htcfreek!

Advanced Paste

  • Fixed CSV parser to support double quotes and escape delimiters when pasting as JSON. Thanks @GhostVaibhav!
  • Improved double quote handling in the CSV parser when pasting as JSON. Thanks @htcfreek!

Awake

  • Different modes will now show different icons in the system tray. Thanks @dend, and @niels9001 for the icon design!
  • Removed the dependency on Windows Forms and used native Win32 APIs instead for the tray icon. Thanks @dend and @BrianPeek!
  • Fixed an issue where the UI would become non-responsive after selecting no time for the timed mode. Thanks @dend!
  • Refactored code for easier maintenance. Thanks @dend!
  • The tray icon will now be shown when running Awake standalone to signal mode. Thanks @dend!
  • The tray icon tooltip shows how much time is left on the timer. Thanks @dend!
  • Added DPI awareness to the tray icon context menu. Thanks @dend!

Color Picker

  • Added support to using the mouse wheel to scroll through the color history. Thanks @Fefedu973!

File Explorer add-ons

  • Allow copying from the right-click menu in Monaco and Markdown previewers.

File Locksmith

  • Fixed a crash when there were a big number of entries being shown by moving the opened files of a process to another dialog.

Installer

  • Fixed the path where DSC module files were installed for the user-scope installer. (This was a hotfix for 0.82)

Mouse Without Borders

  • Disabled non supported options in the old Mouse Without Borders UI. Thanks @htcfreek!
  • Added new GPO policies to control the use of some features. Thanks @htcfreek!

Peek

  • Allow copying from the right-click menu in Dev files and Markdown previews.

PowerToys Run

  • Fixed a crash on Windows 11 build 22000. (This was a hotfix for 0.82)
  • Blocked a transparency fix code from running on Windows 10, since it was causing graphical glitches. (This was a hotfix for 0.82)
  • Accept speed abbreviations like kilometers per hour (kmph) in the Unit Converter plugin. Thanks @GhostVaibhav!
  • Added settings to configure behavior of the "First week of year" and "First day of week" calculations in the DateTime plugin. Thanks @htcfreek!
  • Fixed wrong initial position of the PowerToys Run when switching between monitors with different dpi values.
  • Started allowing interchangeable use of / and \ in the registry plugin paths.
  • Added support to automatic sign-in after rebooting with the System plugin. Thanks @htcfreek!
  • Added suggested use example results to the Value Generator plugin. Thanks @azlkiniue!

Quick Accent

Runner

  • Add code to handle release tags with an upper V when trying to detect new updates. Thanks @davidegiacometti!

Settings

  • Fixed the UI spacing in the "update available" card. Thanks @Agnibaan!
  • Fixed the information bars in the Mouse Without Borders settings page to hide when the module is disabled. Thanks @htcfreek!
  • Improved consistency of the icons used in the Mouse Without Borders settings page. Thanks @htcfreek!
  • Improved action keyword information bar padding in the PowerToys Run plugins section. Thanks @htcfreek!
  • Fixed a crash in the dashboard when Keyboard Manager Editor settings file became locked.

Documentation

  • Added the RDP plugin to PowerToys Run thirdPartyRunPlugins.md docs. Thanks @anthony81799!
  • Added the GitHubRepo and ProcessKiller plugins to PowerToys Run thirdPartyRunPlugins.md docs. Thanks @8LWXpg!
  • Fixed a typo in the 0.82.0 release notes in README. Thanks @walex999!

Development

  • Disabled FancyZone UI tests, to unblock PRs. We plan to bring them back in the future. (This was a hotfix for 0.82)
  • Fixed an issue where flakiness in CI was causing the installer custom actions DLL from being signed. (This was a hotfix for 0.82)
  • Upgraded the Microsoft.Windows.Compatibility dependency to 8.0.7.
  • Upgraded the System.Text.Json dependency to 8.0.4.
  • Upgraded the Microsoft.Data.Sqlite dependency to 8.0.7.
  • Upgraded the MSBuildCache dependency to 0.1.283-preview. Thanks @dfederm!
  • Removed an unneeded /Zm compiler flag from Keyboard Manager Editor common build flags.
  • Fixed the winget publish action to handle upper case V in the tag name. Thanks @mdanish-kh!
  • Removed wildcard items from vcxproj files. Thanks @davidegiacometti!
  • Removed the similar issues bot GitHub actions. Thanks @craigloewen-msft!
  • Fixed CODEOWNERS to better protect changes in some files.
  • Switched machines being used in CI and pointed status badges in README to the new machines.
  • Fixed NU1503 build warnings when building PowerToys. Thanks @davidegiacometti!
  • Use the MSTest meta dependency for running the tests instead of the individual testing packages. Thanks @stan-sz!
  • Added missing CppWinRT references.

What is being planned for version 0.84

For v0.84, we'll work on the items below:

  • Stability / bug fixes
  • New utility: Dev Projects
  • Language selection
  • New module: File Actions Menu

PowerToys Community

The PowerToys team is extremely grateful to have the support of an amazing active community. The work you do is incredibly important. PowerToys wouldnt be nearly what it is today without your help filing bugs, updating documentation, guiding the design, or writing features. We want to say thank you and take time to recognize your work. Month by month, you directly help make PowerToys a better piece of software.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct.

Privacy Statement

The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has the trends from the telemetry. Please read the Microsoft privacy statement for more information.