Windows Package Manager (WinGet)
Eintrag zuletzt aktualisiert am: 12.11.2022
Der Windows Package Manager (WinGet) ist ein Softwarepaketmanager für Windows, den Microsoft im Mai 2020 eingeführt hat.
Das Werkzeug winget.exe gehört mittlerweile zum Lieferumfang von
Windows 11 und aktuellen Versionen von
Windows 10. Es kann auf älteren
Windows 10 nachinstalliert werden per
Windows Apps Store [
https://apps.microsoft.com/store/detail/appinstaller/9NBLGGH4NNS1?hl=de-de&gl=de]. Für Serverversionen von Windows gibt es winget.exe noch nicht.
Hintergründe (Stand Mai 2022)
Mit dem Windows Package Manager will Microsoft insbesondere Softwareentwicklern auf einfache Weise ermöglichen, ihren Entwicklersystemen reproduzierbar zu installieren. Der Windows Package Manager besteht zwei Teilen: Das Windows Package Manager Community Repository [
https://github.com/microsoft/winget-pkgs] besteht aus einer Sammlung von Manifest-Dateien im YAML-Format, die eine zu installierende Anwendung mit ihrer Installationsquelle festlegen. Listing 1 zeigt ein Beispiel für eine solche Manifestdatei.
Als Client kommt eine Kommandozeilenanwendung (winget.exe) [
https://github.com/microsoft/winget-cli] zum Einsatz, das Microsoft als
MSIX-Paket auf GitHub anbietet [
https://github.com/microsoft/winget-cli/releases].
Aktuell sind bereits einige Dutzend Manifestdateien [
https://github.com/microsoft/winget-pkgs/tree/master/manifests] verfügbar, darunter Frameworks wie
node.js,
Oracle JRE und OpenJDK sowie Anwendungen wie Git, DropBox, Chrome, Firefox, Opera, Zoom, Spotify, CCleaner, Notepad++, vim, TreeSize, File Zilla, OBS Studio, VLC WhatsApp und 7Zip. Auch eine Ubuntu-Installation für das
Windows Subsystem for Linux (
WSL) ist dabei.
Da sich die Anwendungen nicht auf typischer Entwicklerprodukte beschränkt, könnte der Windows Package Manager auch außerhalb der Entwicklergemeinde auf Interesse stoßen. Jedermann kann Manifestdateien per Pull Request in das Windows Package Manager-Repository einbringen. Beim Erstellen einer Manifestdatei hilft das von Microsoft bereitgestellte
PowerShell-Skript YAMLCreate.ps1 [
https://github.com/microsoft/winget-pkgs/blob/master/Tools/YamlCreate.ps1].
Mit winget.exe lassen sich auch Manifeste aus anderen Quellen einschließlich der lokalen Festplatte installieren. Allerdings ist der neue Paketmanager auf
Windows 10 ab Version 1709 (Creators Update) beschränkt.
In einem Blogeintrag [
https://devblogs.microsoft.com/commandline/windows-package-manager-preview/] betont Microsoft, dass der neue Paketmanager eine Ergänzung zum bestehenden Microsoft Store auf Kommandozeilenebene darstellen soll und nicht den Microsoft Store ablösen. Der Windows Package Manager soll auch keine Bezahlsysteme umfassen. Der Blogeintrag begründet auch, warum Microsoft die Notwendigkeit für einen weiteren Paketmanager in Ergänzung zu bestehenden Lösungen wie Chocolatey, Scoop, AppGet, Npackd und den eigenen
OneGet-Paketmanager für
PowerShell sieht. Microsoft will ein vertrautes Repository erschaffen, indem die Manifeste automatisch geprüft werden. Microsoft will dazu u.a. SmartScreen [
https://support.microsoft.com/de-de/help/17443/microsoft-edge-smartscreen-faq], das im
Microsoft Edge-Browser zum Einsatz kommt, verwendet.
Beispiel: YAML-Datei für die Installation von Notepad++
Id: Notepad++.Notepad++
Name: Notepad++
App
Moniker: NPP
Version: 7.8.6
Publisher: Notepad++
Author: DonHo
License: Copyright -
GPL License
LicenseUrl:
https://github.com/notepad-plus-plus/notepad-plus-plus/blob/master/LICENSE
MinOSVersion: 10.0.0.0
Homepage:
https://notepad-plus-plus.org/
Tags: "notepad,text editor,notepadPP, notepad++, editor"
InstallerType: exe
Installers
Installers:
- Arch: x64
Url:
https://github.com/notepad-plus-plus/notepad-plus-plus/releases/download/v7.8.6/npp.7.8.6.Installer.x64.exe
Sha256: 03B3A8E2D0395B2DCAF7CD30CB47106EBAC678CBCD72E81BB5EE0E618927D3DD
Language: en-US
Switches:
Silent: "/S"
SilentWithProgress: "/S"