Jak korzystać z wbudowanego menedżera pakietów systemu Windows 10?

13

Uważam, że zarządzanie pakietami systemu Windows 10 nie jest zbyt intuicyjne. Poniżej znajdują się moje przygody z instalowaniem VLC, co brzmi jak bardzo częsty przypadek testowy dla menedżera pakietów.

Find-Package vlc

nie

Find-Package -Update

nie

Install-Package --help

nie

Install-Package /?

nie

Install-Package vlc

The provider 'nuget v2.8.5.127' is not installed.
nuget may be manually downloaded from https://oneget.org/nuget-anycpu-2.8.5.127.exe and installed.
Would you like PackageManagement to automatically download and install 'nuget' now?
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"):
Install-Package : No match was found for the specified search criteria and package name 'vlc'.
At line:1 char:1
+ Install-Package vlc
+ ~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package], Ex
   ception
    + FullyQualifiedErrorId : NoMatchFoundForCriteria,Microsoft.PowerShell.PackageManagement.Cmdlets.InstallPackage

nie

Register-PackageSource -Name chocolatey -Location http://chocolatey.org/api/v2 -Provider PSModule -Trusted -Verbose

Może?

Install-Package vlc
WARNING: The module 'vlc' cannot be installed or updated because it is not a properly-formed module.

nie

Jonathan
źródło
Spróbować Install-Package -Name VLC.
MC10
Install-Package -Name VLC Install-Package : No match was found for the specified search criteria and package name 'VLC'.
Jonathan
Czy Find-Package -Name VLCcoś dla ciebie znajduje? Sprawdź także, czy wielkość liter ma znaczenie.
MC10
Find-Package -Name VLCFind-Package: Nie znaleziono dopasowania dla określonych kryteriów wyszukiwania i nazwy pakietu „VLC”. W linii: 1 char: 1 + Find-Package -Name VLC + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo: ObjectNotFound: (Microsoft.Power ... ets .FindPackage: FindPackage) [Find-Package], Exceptio n + FullyQualifiedErrorId: NoMatchFoundForCriteria, Microsoft.PowerShell.PackageManagement.Cmdlets.FindPackage
Jonathan
1
Możesz zrobić update-helppierwszy.
BrunoLM,

Odpowiedzi:

10

Byłeś blisko Najpierw musisz ustawić zasady wykonywania, aby zezwalały na skrypty, w przeciwnym razie po cichu zakończy się niepowodzeniem podczas zgłaszania sukcesu ( błąd ):

Set-ExecutionPolicy RemoteSigned

Zarówno dostawca pakietu (wtyczka Chocolatey), jak i źródło pakietu (adres URL do konkretnego repozytorium Chocolatey) muszą zostać zainstalowane / zarejestrowane w PackageManagement. Get-PackageProvider z -Forceflagą powoduje, że uruchamia się, co najwyraźniej zajmuje się obydwoma (więcej w pomocy na temat -Force):

Get-PackageProvider Chocolatey -Force | Out-Null

Następnie mogę wyszukać pakiet:

Find-Package vlc -Force

Name       Version          Source           Summary
----       -------          ------           -------
vlc        2.2.1.20150630   chocolatey       VLC Media Player

I zainstaluj go ( -Forceaby nie wyświetlał monitu o potwierdzenie):

Install-Package vlc -Force | Out-Null

wprowadź opis zdjęcia tutaj

Vimes
źródło
Nie działa to dla mnie na czystym systemie Windows 10 RTM, po prostu umieszcza wszystko w C: \ Chocolatey \ lib, ale tak naprawdę nie instaluje programów ani nie uruchamia skryptów wymaganych do tego.
RedShift,
3
Och, w PackageManagement jest strasznie mylący błąd, w którym takie zachowanie się dzieje, chyba że przed zainstalowaniem pakietów ustawisz zasady wykonywania zezwalające na skrypty (używam RemoteSigned). Zaktualizuję moją odpowiedź.
Vimes,
1
Świetnie to słyszeć. Mam nadzieję, że usuną te zmarszczki. Nie zapomnij zaznaczyć odpowiedzi, jeśli chcesz :-)
Vimes,
Jak zainstalować wiele pakietów w jednym wierszu? To standard branżowy dla wszystkich menedżerów pakietów. Wygląda na to, że dostaję błąd, jeśli uruchomięInstall-Package vlc firefox -Force
Jonathan
1
@JathanathanLeaders, po prostu wstaw przecinki między nazwami pakietów.
Vimes,