Endlich ein kommandozeilenbasierter Paketmanager!

Windows 10 Paketmanager: Ein Hauch von Linux
Kommentare

Eines der interessanten neuen Features von Windows 10 ist der neue, Powershell-basierte Paketmanager. Damit lassen sich wie unter Linux Programme, wie beispielsweise Firefox, über die Kommandozeile aufspüren, installieren, aktualisieren und deinstallieren. Was sich für Linux-Nutzer seit langem bewährt hat, erfreut mit Windows 10 nun auch die Windows-Nutzer.

Welcher Linux-Nutzer kennt sie nicht: Die kommandozeilenbasierten Paketmanager wie Apt oder Zypper, die zum Aufspüren und Verwalten von Programmen eingesetzt werden.

Für Entwickler, Administratoren und Kommandozeilen-Liebhaber bedeutet „kommandozeilenbasiert“, dass sich Installationen und generell das Verwalten von Software sehr einfach durch Skripts automatisieren lassen. Und genau dieses automatisierte Verwalten von Software gestaltet sich für Windows-Nutzer bisher als schwierig: Unter Windows gibt es verschiedene Installationstechnologien wie MSI, MSU oder APPX, die alle ihre proprietäre Art und Weise haben, um Software zu installieren, was die Automatisierung erschwert. Doch in Windows 10 räumt Microsoft mit diesem Problem auf: Windows 10 kommt mit einem neuen, Linux-ähnlichen und kommandozeilenbasierten Paketmanager daher, der sich in der Powershell nutzen lässt. Dadurch werden das Skripten von Installationen und beispielsweise das Installieren von Software auf hunderten von Rechnern mit den Windows-eigenen Werkzeugen deutlich einfacher und komfortabler.

Von OneGet zum PackageManagement Feature

Der in Windows 10 integrierte Paketmanager war ursprünglich unter dem Namen OneGet bekannt. OneGet ist eine Erfindung des Open Source Technology Centers von Microsoft. Und sicherlich kann man nicht verleugnen, dass sich Microsoft beim Entwickeln des Paketmanagers von den Linux-Paketmanagern inspirieren ließ.

OneGet ist keine brandneue Erfindung: Der Paketmanager wurde bereits im April 2014 auf der Build-Konferenz vorgestellt. Auch für Windows 8.1 stand OneGet als Teil des Windows Management Frameworks 5.0 zur Verfügung. Der Quellcode von OneGet liegt offen und wird auf Github gepflegt und weiterentwickelt. Interessierte können sich somit direkt auf der offiziellen Github-Seite ihr eigenes Bild machen: https://github.com/OneGet/oneget.

Mit der festen Integration des Paketmanagers in Windows 10 bezeichnet Microsoft den Paketmanager nicht mehr als OneGet, sondern als Package Management Feature.

Mit dem Package Management loslegen

Um das Package Management in Windows 10 zu nutzen, wird ein neues Powershell-Fenster geöffnet. Als erstes kann man sich mit folgendem Befehl einen Überblick der verfügbaren Cmdlets des PackageManagement-Moduls verschaffen:

Get-command -module PackageManagement
Abb. 1: Überblick der Cmdlets des PackageManagement-Moduls

Abb. 1: Überblick der Cmdlets des PackageManagement-Moduls

Mit den verfügbaren Cmdlets lassen sich drei Kategorien verwalten:

  • Provider
  • PackageSource
  • Package

Die Aufteilung ist dabei hierarchisch: Der Provider hat PackageSource-Objekte. Eine PackageSource wiederum hat Packages.

Die Package Sourcen ansehen

Standardmäßig ist unter Windows 10 lediglich die Powershell Gallery als PackageSource eingerichtet, was das Ausführen des Befehls Get-PackageSource zeigt (Abb. 2). Wie in Abbildung 2 zu sehen ist, gehört diese PackageSource zum Provider PSModule.

Abb. 2 Package Sources anzeigen

Abb. 2 Package Sources anzeigen

Die Powershell Gallery bietet keine typische Anwendersoftware, wie bspw. Firefox. Es muss also eine weitere PackageSource her, um mit dem Package Management etwas zu experimentieren.

Welche Package Source verwenden?

Im Package Management lassen sich beliebige und somit auch eigene Quellen für Pakete einrichten. Das tolle ist, dass Microsofts Package Management nicht nur mit NuGet vollständig kompatibel ist, sondern auch mit dem NuGet-basierten Package Manager Chocolatey. Chocolatey hat ein umfangreiches Repository von stand heute mehr als 2850 Paketen. Die Pakete lassen sich hier einsehen: https://chocolatey.org/packages.

Das Chocolatey-Repository enthält einige interessante Pakete, wie Google Chrome, Firefox, Notepad++, AutoHotkey, Sysinternals und viele weitere, die das Entwickler-Herz höher schlagen lassen. Und damit kann der Installations-Spaß losgehen.

Chocolatey Pakete abfragen

In der Powershell lässt sich mit folgendem Befehl das Notepad++ Paket von Chocolatey abfragen:

Find-package notepadplusplus -provider Chocolatey

Dabei wird die .exe-Datei des Providers Chocolatey im Benutzerverzeichnis %User%\AppData\Local\PackageManagement\ProviderAssemblies installiert, damit der Zugriff auf das Chocolatey-Repository klappt. Und wie Abbildung 3 zeigt, wird durch diesen Befehl das Paket notepadplusplus im Chocolatey-Repository gefunden.

Abb. 3: Notepad++-Paket von Chocolatey abfragen

Abb. 3: Notepad++-Paket von Chocolatey abfragen

Notepad++ von Chocolatey installieren

Um jetzt Notepad++ vom Chocolatey-Repository zu installieren, genügt folgender Befehl:

install-package notepadplusplus -provider Chocolatey

Mit diesem Befehl wird automatisch Notepad++ vom Chocolatey-Repository heruntergeladen und auf dem Rechner installiert.

Abb. 4: Notepad++ von Chocolatey installieren

Abb. 4: Notepad++ von Chocolatey installieren

Fazit

Der integrierte Paketmanager in Windows 10 räumt endlich auf mit den verschiedenen Installationsarten unter Windows. Mit Skripts und eigenen Paketquellen lässt sich somit die Software auf den eigenen Rechner komfortabel verwalten. Auch Entwickler können sich ein Skript erstellen, das auf einer blanken Windows 10-Maschine alle wichtigen Tools für das Entwickler-Leben von einem Repository wie Chocolatey herunterlädt und installiert.
 Mehr zum Thema finden Interessierte außerdem auf unserer Windows-10-Themenseite.

Aufmacherbild: Shipping, delivery and logistics technology via Shutterstock / Urheberrecht: Oleksiy Mark

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -