Как установить winget на Windows Server 2016?
В Windows появился собственный package manager, и я захотел им воспользоваться на одном из тестовых серверов (Windows Server 2016)
Но вот беда. Сам Winget нужно устанавливать... откуда то.
я прочитал дискуссию на reddit
Она сводится к тому, что нужно загружить файл с расширенимем .msixbundle, потом дабл - кликнуть на него и... у вас должен запуститься Application Installer!
Нет такой программы? Не беда. Возьмите её в Windows Store.. Ах, у вас сервер, и там нет Windows Store?
Тогда выполните команду в PowerShell
Add-AppxPackage -Path Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle
А вот что делать, если эта команда выдаёт ошибку
Add-AppxPackage : Deployment failed with HRESULT: 0x80073CF0, Package could not be opened.
error 0x8007007B: Opening the package from location Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle failed.
NOTE: For additional information, look for [ActivityId] 5b68f429-2386-0000-d0ee-765b8623da01 in the Event Log or use
the command line Get-AppxLog -ActivityID 5b68f429-2386-0000-d0ee-765b8623da01
At line:1 char:1
+ Add-AppxPackage -Path Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OpenError: (C:\Distrib\Micr...bbwe.msixbundle:String) [Add-AppxPackage], FileNotFoundExc
eption
+ FullyQualifiedErrorId : DeploymentError,Microsoft.Windows.Appx.PackageManager.Commands.AddAppxPackageCommand
этого я не нашел нигде
Была наджеда на расширенную диагностику, но запись в эвентлоге ничего не проясняет:
PS C:\Distrib> Get-AppxLog -ActivityID 99f74e13-2a5e-0001-dc57-f7995e2ada01
Time ID Message
---- -- -------
12/9/2023 10:51:54 AM 301 The calling process is powershell.exe
12/9/2023 10:51:54 AM 603 Started deployment Add operation on a package with main parameter:
Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle and Options: 0. See
http://go.microsoft.com/fwlink/?LinkId=235160 for help diagnosing app
deployment issues.
12/9/2023 10:51:54 AM 164 The app bundle signature was validated for core content of the app bundle
published by CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond,
S=Washington, C=US. App packages won't be validated until they are read.
12/9/2023 10:51:54 AM 465 error 0x8007007B: Opening the package from location
Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle failed.
12/9/2023 10:51:54 AM 403 error 0x8007007B: Failure to get staging session for:
file:///C:/Distrib/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle.
12/9/2023 10:51:54 AM 404 AppX Deployment operation failed for package with error 0x80073CF0. The
specific error text for this failure is: error 0x8007007B: Opening the package
from location Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle failed.
Никто с таким не сталкивался и не решал как нибудь проблему?
Спасибо.
Ответы (1 шт):
я почитал еще немного, к сожалению, короткий ответ довольно простой:
"Подержки winget для Windows server 2016 нет. Даже подержка Windows server 2019 является проблемой". Так что пока про winget на сервере можно забыть.
Также, я былне прав насчет того, что на серверах нет windows store: есть его аналог, "business windows store", но туда не подходят "персональные" микрософтовские экаунты, а нужны корпортавные. ТО есть, только официальная покупка продуктов с одновременной регистрацией.
Что касается формата .msixbundle - то это удивительно специфичное ( то есть, по простому говоря, глупое ) изобретение: это zip-архив, внутри которого лежат *.msix - файлы для нескольких архитектур. Правда, и *.msix - файл поставить при помощи powershell у меня не получилось, теперь он уже ругается на отсутствие манифеста, но разбираться с тем, откуда он должен браться я уже не стал.
Небольшое дополнение.
я немного поэкспериментировал, и в общем могу сказать: даже на "подходящей винде" winget - это очень специфическая штука... например, что будет происходить при попытке установки git for windows при помощи winget? Думаете, он, как в линуксе, "молча поставится"? не-е-ет! Просто скачается дистрибутив и... барабанная дробь... запустится обычный десктопный инсталлятор, в котором точно так же надо будет выбирать опции и нажимать кнопочку Next!