Windows Package Manager Winget Registry Keys
The Windows Package Manager (winget) utilizes specific Windows
Registry keys primarily to enforce administrative policies, manage
security constraints, and toggle core features across system
installations. While individual user preferences are stored in a local
JSON configuration file, enterprise-level configuration and policy
control for winget are managed under the
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PackageManagement\PackageInstaller
registry key.
Primary Winget Registry Path
Administrative control and Group Policy configurations for winget are located at the following path in the Registry Editor (Regedit):
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PackageManagement\PackageInstaller
If the policies have not yet been configured via Group Policy or manual administration, this key may need to be created manually.
Key Registry Values and Controls
Under the PackageInstaller key, several DWORD (32-bit)
values dictate how winget operates on the system:
- EnableWindowsPackageManager: Set to
1to enable winget functionality or0to completely disable the Windows Package Manager execution on the machine. - EnableWindowsPackageManagerCommandLineInterfaces: Controls access to command-line interactions for the package manager.
- EnableSettingsJSON: Controls whether users can edit
their local
settings.jsonfile using thewinget settingscommand. Setting this to0locks user-level configurations. - EnableMSStoreSource: Set to
1to allow winget to search and install packages from the Microsoft Store, or0to disable the Microsoft Store source repository. - EnableDefaultSource: Controls the official
community repository (
wingetsource). Set to0to prevent installations from the public community catalog. - EnableAdditionalSources: Set to
0to block administrators or users from adding third-party or private winget sources. - EnableHashOverride: Dictates whether users can
bypass installer hash verification using the
--ignore-security-hashcommand-line switch. Setting this to0enforces strict integrity checks.
User-Level Settings vs. Registry Policies
User-level configuration options (such as visual preferences, progress bar styles, and installation telemetry toggles) are not stored in the Windows Registry. Instead, they reside in a JSON file located at:
%LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json
Any policies configured within the PackageInstaller
registry key in HKEY_LOCAL_MACHINE supersede user
preferences defined in settings.json.