Verstehen Sie den Unterschied zwischen Package Management (früher OneGet) und Chocolatey und machen Sie sich mit der Verwendung von OneGet in Win10 RTM vertraut?

2716
Warren P

Ich bin verwirrt über Chocolatey und OneGet (später umbenannt in Package Management).

Installiert man derzeit gerade chocolatey und verwendet es, wenn man sich auf Windows 10 Pro RTM befindet, das angeblich bereits mit OneGet-Cmdlets in der Powershell geliefert wurde? (Sie scheinen auf meinem Windows 10 Pro-Computer nicht vorhanden zu sein).

Zunächst die praktische Frage: Wie kann ich Paketmanagement (früher OneGet) in Windows 10 installieren und damit arbeiten? Wenn ich auf meiner Maschine tippe, get-command -Module OneGeterhalte ich KEINE Ergebnisse. Auf Get-PackageProvidermeinem Rechner ist kein Cmdlet mit einem Namen wie derzeit vorhanden. Ich habe jedoch gelesen, dass OneGet Teil von Windows 10 RTM ist oder in Windows 10 RTM ausgeliefert wird. Ich habe auch gelesen, dass Sie die One-Get-Cmdlets hinzufügen können, Import-Moduleaber das kann ich auch nicht.

Zweitens die Frage des Verständnisses: Ist OneGet wirklich ein Meta-Manager für zukünftig verschiedene Quellen, wobei Chocolatey nur eine Quelle für ein Repository ist, oder habe ich das falsch verstanden? Ich habe gelesen, dass die Dinge gerade "in Fluss" sind. Wie ist die Situation und wann wird es aufgeräumt?

5
verwandt: http://superuser.com/questions/952223/how-to-get-oneget-packagemanagement-to-work-on-windows-10-home Warren P vor 8 Jahren 0
[OneGet verwendet einfach das Anwendungs-Repository `Chocolatey '.] (Http://superuser.com/questions/957712/how-do-i-use-windows-10-built-in-package-manager/970766#970766) Ramhound vor 8 Jahren 0
Aber ist es auf jedem Windows-System oder NICHT? Ich glaube, das ist eine berechtigte Frage, die der Klarstellung bedarf. Warren P vor 8 Jahren 0
OneGet ist meines Erachtens ein Paketmanager-Aggregator, der versucht, allen Paketmanagern eine gemeinsame Schnittstelle zur Verfügung zu stellen. ferventcoder vor 8 Jahren 0
OneGet funktioniert möglicherweise mit Chocolatey-Paketen, aber auch nicht. Im Moment würde ich OneGet für PowerShell-Galerieelemente und andere verwenden, aber wahrscheinlich nicht bei Chocolatey, bis die offizielle Version herauskommt. Es ist noch nicht fertig, aber wenn es so ist, wird es Ankündigungen geben. ferventcoder vor 8 Jahren 0
Das "Fließen" könnte sein, dass der OneGet-Entwickler bei Microsoft zu anderen Projekten übergegangen ist, sodass einige Dinge (wie die Arbeit des Chocolatey-Providers) noch nicht auf den neuesten Stand gebracht wurden. Außerdem wurden die Entwickler, die bei der Integration des Chocolatey-Providers helfen, blockiert Sie können entweder Choco hinzufügen und / oder haben keinen OneGet-Entwickler mehr, um die Arbeit zu überprüfen. ferventcoder vor 8 Jahren 1
OK. Und ich sollte auf jeden Fall darauf hinweisen, dass, wenn Sie Chocolatey nur über den Befehl choco verwenden, es auf anderen Windows-Versionen als nur Windows 10 funktioniert, was gut ist. Warren P vor 8 Jahren 0
OneGet wurde 2016 in ** PackageManagement ** umbenannt. @WarrenP Sollten wir den Titel aktualisieren? Siehe https://github.com/OneGet/oneget/commit/4e3969e1496030ae5ab1f071f5e5def093be91a7 yzorg vor 6 Jahren 0
Ja, der Titel wurde aktualisiert Warren P vor 6 Jahren 0

2 Antworten auf die Frage

5
Warren P

Es sieht so aus, als wäre es installiert, und die vor der Veröffentlichung veröffentlichten Blog- Import-Module -Name OneGetEinträge, die den Typ angeben, sind für Win10 rtm nicht mehr korrekt.

Sie müssen jedoch weiterhin eine solche Paketquelle aus einer PowerShell mit Administratorberechtigung in Windows 10 Professional manuell hinzufügen:

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

Sie können wie folgt suchen:

Find-Package paint -provider Chocolatey 

Oben sollte der tatsächliche Choco-Paketname von Paint.net für mich gefunden werden.

Dann kannst du so etwas installieren:

Install-Package paint.net -provider Chocolatey 

(Zum Beispiel, um Paint.NET zu installieren).

enter image description here

Wenn Sie das Install-packageCmdlet nicht finden können (es scheint, als wäre es nicht installiert?), Wechseln Sie von einer normalen nicht erhöhten Powershell zu einer erhöhten (Administrator) Powershell.

Registrieren Sie den Speicherort als https, nicht als http. Andernfalls gibt es keine Bestätigung, dass Sie die sichere Quelle erreichen. ferventcoder vor 8 Jahren 4
Anscheinend können Sie auch ein `Find-Package sysinternals -ProviderName chocolatey` ausführen, und Sie werden aufgefordert, den Chocolatey-Paketanbieter zu installieren. Es wird das für alle Standardanbieter tun. Basierend auf der Hilfe ist das `. Unsicher, ob es jetzt offiziell unterstützt wird. lordcheeto vor 8 Jahren 0
Anscheinend müssen Sie `Install-PackageProvider -Name chocolatey 'zuerst ausführen, um Chocolatey als Paketanbieter verwenden zu können: https://github.com/OneGet/oneget/issues/182 CMCDragonkai vor 7 Jahren 0
2
Mahmoud Al-Qudsi

Ich bin nicht sicher, warum Sie abgelehnt wurden, aber eine Möglichkeit, das derzeitige Durcheinander des Windows-Paket-Ökosystems zu untersuchen, besteht darin, dass OneGet der neue und von MS (von MS) offiziell genehmigte Paketmanager für Windows 10 (und darüber hinaus) ist ). OneGet ist von Chocolatey "inspiriert", so dass es dasselbe Repository / Upstream-Provider wie die Chocolatey-Quellen verwenden kann.

OneGet wurde in Windows 10 RTM ausgeliefert und ist in der PowerShell enthalten . Es ist noch nicht wirklich "fertig" für die Verwendung mit Paketen von Drittanbietern, obwohl die Idee ist, dass Microsoft irgendwann (vielleicht?) Ein Repository / ein Ökosystem von Drittanbietern enthüllt, um Chocolateys zu ersetzen rate jetzt.

Wenn Sie OneGet anstelle von Chocolatey verwenden möchten (was im Wesentlichen nichts anderes bedeutet, als dass Sie Chocolatey nicht installieren müssen), können -provider ChocolateySie die OneGet-Befehle auf der Befehlszeile anheften, damit sie eine Verbindung zum Chocolatey-Provider herstellen und verwenden können.

Von welchen One-Get-Befehlen sprechen Sie? Ich kann solche Befehle auf meinem System nicht finden. Muss ich ein .psd1 für OneGet von GitHub herunterladen? Wenn ja, wie ist es wahr zu sagen, dass "in der Powershell enthalten ist"? Warren P vor 8 Jahren 0
Demnach ist es in RTM enthalten, widerspricht jedoch sich selbst und sagt, dass WMF 5 zuerst installiert werden muss: https://github.com/OneGet/oneget Mahmoud Al-Qudsi vor 8 Jahren 0
@ MahmoudAl-Qudsi - `WMF 5` ist in der Version von` Powershell` enthalten, die auf Windows 10-Computern standardmäßig installiert ist Ramhound vor 8 Jahren 1
Es sieht so aus, als ob es installiert ist, aber nur von erhöhten (Admin-) Powershell-Computern verwendet werden kann. Warren P vor 8 Jahren 0
@ Ramhound Danke für das Aufräumen. +1 Mahmoud Al-Qudsi vor 8 Jahren 0
Kann man OneGet verwenden, um Chocolatey zu installieren, und dann nur noch Chocolatey-Befehle wie `choco install` verwenden? CMCDragonkai vor 7 Jahren 1