12

Um ein Problem zu beheben, dachte ich, ich würde versuchen, den Chocolatey-Paketanbieter neu zu installieren. Es scheint kein Cmdlet zum Entfernen oder Deinstallieren eines Paketanbieters zu geben. Ich beziehe mich nicht auf das Entfernen einer Paketquelle oder eines Pakets. Ich verwende PowerShell 5 unter Windows 10.PowerShell PackageManagement, wie wird ein Paketanbieter deinstalliert?

Gibt es eine Möglichkeit, einen Paketanbieter zu deinstallieren?

+0

Welche Version? Ist das Powershell 5? – briantist

+0

Das stimmt. Ich verwende PowerShell 5 unter Windows 10 (oben hinzugefügt). – Vimes

Antwort

9

Paketanbieter sind mit der WMF-Installation gebündelt.

Sie können einfach Paketanbieter hinzufügen (und entfernen), wenn Sie die Suchorte kennen (sogar Ihre eigenen benutzerdefinierten Paketanbieter).

finden, wo Ihr Paket-Provider installiert ist:

$ p = (Get-packageProvider -name Chocolatey); $ p.ProviderPath

Wenn Sie die Assembly außerhalb des Standardsuchpfads des Anbieters entfernen/verschieben; es wird nicht verfügbar sein (NB: Starten Sie Ihren Host neu, um die Effekte zu sehen).

Similary können Sie Paketanbieter hinzufügen, indem Sie eine exe/dll kopieren, die die Spezifikationen für einen Paketanbieter an den Suchpfad implementiert.

Weitere Dokumentation finden Sie hier (Umsetzung Ihrer eigenen und die Standardsuchpositionen):

https://github.com/OneGet/oneget/wiki/Provider-assembly-search-locations https://github.com/OneGet/oneget/wiki/ImplementingPackageProvider

+3

In der Hoffnung auf Cmdlets zum Hinzufügen/Entfernen von Anbietern in der Zukunft, aber jetzt scheint dies der Weg zu sein. – Vimes

+0

Einverstanden. Ich hoffe, das ist etwas, das jetzt auf dem Weg ist, dass WMF5 produktionsbereit ist. Es wäre nützlich, Paketanbieter mit Standard-Cmdlets hinzufügen/entfernen zu können, genauso einfach wie das Hinzufügen/Entfernen von Modulen. – CmdrTchort

+0

Einige Paketanbieter können nur nach dem Import angezeigt werden: 'Import-PackageProvider -name chocolateyget'. Nicht sicher warum. – CMCDragonkai

0

Wenn ich verstehe, was Sie wollen:

Uninstall-Paket [-Id] [-RemoveDependencies] [-ProjectName] [-Force] [-Version] [-WhatIf]

Verwenden Sie die -Force-Option, um die Deinstallation eines Pakets zu erzwingen.

+3

Ich denke, das ist, wie man ein Paket deinstalliert. Aber ich möchte einen Paketanbieter entfernen, zum Beispiel den Chocolate-Provider. Es ist das Plugin, mit dem Paket-Management (alias OneGet) mit Chocolatey-Repositories interagieren kann. Ich bin davon überzeugt, dass es nach dem Hinzufügen eines Anbieters keinen offiziellen Weg gibt, ihn zu entfernen. Zumindest zu diesem Zeitpunkt. – Vimes