Corrupt PackageManager? Unable to find module providers (PowerShellGet)

Question:

This is a common error that is not solved by the common solutions I have found on the internet.

Unable to run Get-PsRepository, Install-Module, and related (OneGet?) commands without them throwing the “Unable to find module providers (PowerShellGet)” error. This appears to be an issue with the NuGet packagemanager module but I do not know how to recover. The package provider installed appears valid

Symptom patterns:
C:> [Net.ServicePointManager]::SecurityProtocol

Get-PSRepository

Register-PSRepository -Default -Verbose

Install-Module PowerShellGet -Force

Facts:
Windows 10 (1903)
Powershell 5.1.18362.1171
Running PowerShell as Administrator
Not behind a proxy
Have access to https://www.powershellgallery.com/api/v2
Have access to nuget.org
`[Net.ServicePointManager]::SecurityProtocol = Tls12
FIPS is disabled (HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\Enabled DWORD=0)
Get-PackageProvider shows only NuGet 2.8.5.208
PowerShellGet version is 1.0.0.1 ; when trying force a sxs install with Install-Module PowerShellGet -Force I get the same: PackageManagement\Install-Package : Unable to find module providers (PowerShellGet).

Answer:

We encountered the same problem. Found this thread without a solution. But I dug a bit further and on the computer that had this problem we found version 1.4.7 of PackageManagement installed.
After removing this folder everything started working normally. I have not found how this thing got installed. Seems like a legit powershell module from Microsoft but it’s interacting with the ‘normal’ PowershellGet module and seems to break it.
For us it was located in the %USERPROFILE%/documents/WindowsPowershell/Modules.
Also worth nothing that this %USERPROFILE% was a corporate OneDrive.

Edit: Microsoft have fixed this issue: https://github.com/PowerShell/vscode-powershell/issues/3432

Source:

Corrupt PackageManager? Unable to find module providers (PowerShellGet) by licensed under CC BY-SA | With most appropriate answer!

Leave a Reply