-
-
Save crutkas/6c2096eae387e544bd05cde246f23901 to your computer and use it in GitHub Desktop.
function InstallWinGet() | |
{ | |
$hasPackageManager = Get-AppPackage -name "Microsoft.DesktopAppInstaller" | |
if(!$hasPackageManager) | |
{ | |
$releases_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest" | |
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 | |
$releases = Invoke-RestMethod -uri "$($releases_url)" | |
$latestRelease = $releases.assets | Where { $_.browser_download_url.EndsWith("msixbundle") } | Select -First 1 | |
Add-AppxPackage -Path $latestRelease.browser_download_url | |
} | |
} | |
<# | |
Add-AppxPackage -Path "https://aka.ms/Microsoft.VCLibs.x64.14.00.Desktop.appx" | |
$releases_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest" | |
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 | |
$releases = Invoke-RestMethod -uri "$($releases_url)" | |
$latestRelease = $releases.assets | Where { $_.browser_download_url.EndsWith("appxbundle") } | Select -First 1 | |
Add-AppxPackage -Path $latestRelease.browser_download_url | |
#> |
what version of windows are you on?
if you did
$releases_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest"
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$releases = Invoke-RestMethod -uri "$($releases_url)"
$latestRelease = $releases.assets | Where { $_.browser_download_url.EndsWith("msixbundle") } | Select -First 1
$latestRelease.browser_download_url
What is outputted? Mine is https://github.com/microsoft/winget-cli/releases/download/v1.0.11692/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
Thanks for the quick reply, Clint. I'm on 21H1,
Full info:
Edition Windows 10 Pro
Version 21H1
Installed on 6/28/2021
OS build 19043.1081
Experience Windows Feature Experience Pack 120.2212.3530.0
what version of windows are you on?
if you did
$releases_url = "https://api.github.com/repos/microsoft/winget-cli/releases/latest" [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 $releases = Invoke-RestMethod -uri "$($releases_url)" $latestRelease = $releases.assets | Where { $_.browser_download_url.EndsWith("msixbundle") } | Select -First 1 $latestRelease.browser_download_url
What is outputted? Mine is
https://github.com/microsoft/winget-cli/releases/download/v1.0.11692/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
I get the same output
https://github.com/microsoft/winget-cli/releases/download/v1.0.11692/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
Try just the “Add-AppxPackage -Path “ with that url.
How can I install this with Local System account. (I am trying to install winget on the remote Azure VM)
Error while trying to install winget using above script from Azure portal (using RunPowerShellScript for the VM)
Add-AppxPackage : Deployment failed with HRESULT: 0x80073CF9, Install failed. Please contact your software vendor.
(Exception from HRESULT: 0x80073CF9)
Deployment Add operation rejected on package Microsoft.DesktopAppInstaller_2021.618.1855.0_neutral_~_8wekyb3d8bbwe
from: Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle install request because the Local System account is not
allowed to perform this operation.
NOTE: For additional information, look for [ActivityId] 6e54f4ed-76ae-0002-c58c-71cac692d701 in the Event Log or use
the command line Get-AppPackageLog -ActivityID 6e54f4ed-76ae-0002-c58c-71cac692d701
At C:\Packages\Plugins\Microsoft.CPlat.Core.RunCommandWindows\1.1.8\Downloads\script8.ps1:9 char:3
- Add-AppxPackage -Path $latestRelease.browser_download_url
-
+ CategoryInfo : WriteError: (https://github....bbwe.msixbundle:String) [Add-AppxPackage], IOException
+ FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand
Why go such length?
Add-AppxPackage -Path 'https://github.com/microsoft/winget-cli/releases/latest/download/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle'
Doesn't seem to work anymore. If I put the following on a system that doesn't have winget
I get the following error:
Add-AppxPackage : Cannot process argument transformation on parameter 'Path'. Object reference not set to an instance of an object.
At line:11 char:31
Add-AppxPackage -Path $latestRelease.browser_download_url