Společnost Microsoft vydala balíčkový manažer Windows Package Manager 1.0 (winget), který poskytuje nástroje pro instalaci aplikací pomocí příkazového řádku. Kód je napsán v jazyce C++ a šíří se pod licencí MIT. Balíčky se instalují z repozitáře, jehož provoz je zajištěn ve spolupráci s komunitou. Na rozdíl od instalace programů z katalogu Microsoft Store, winget umožňuje instalaci aplikací bez zbytečného marketingu a reklamy.
Windows Package Manager 1.0 je představován jako první plně funkční vydání, které podporuje automatické doplňování vstupu, dodávku sestavení pro různé architektury, instalaci v kontextu celé systému a jednotlivých uživatelů, skupinové politiky, REST API pro přístup k repozitáři, delta-aktualizace, rozhraní pro generování manifestů, šíření aplikací pro administrativním panelu.. Do plánů do budoucna patří podpora různých kategorií vydání (stabilní vydání, beta verze), balíčky, práce se závislostmi, instalační soubory ve formátu zip (kromě msi), instalace z Microsoft Store, integrace s PowerShellem, instalace webových aplikací (PWA) a písem. Syntaxe příkazů a logika práce s winget jsou blízké balíčkovým manažerům apt a dnf.
V prvním vydání jsou k dispozici následující příkazy:
- install — instalace balíčků;
- show — zobrazení informací o balíčku;
- source — správa zdrojů stahování balíčků;
- search — vyhledávání balíčků;
- list — zobrazení seznamu nainstalovaných balíčků;
- upgrade — aktualizace zadaných balíčků;
- uninstall — odstranění nainstalovaných balíčků;
- hash — práce s kontrolními hashi;
- validate — ověření integrity manifestu;
- settings — změna nastavení;
- features — zobrazení stavu experimentálních funkcí;
- export — export seznamu nainstalovaných balíčků;
- import — import seznamu nainstalovaných balíčků.
Parametry balíčku jsou definovány prostřednictvím souborů s manifesty ve formátu YAML. Pro usnadnění vytváření souborů s manifesty je k dispozici nástroj winget-create. Samotné spustitelné soubory se nacházejí v Microsoft Store nebo přímo na serverech hlavních projektech, repozitář pouze slouží jako index, a manifest odkazuje na externí msi soubor (například umístěný na Microsoft Store, GitHubu nebo webové stránce projektu). K zajištění integrity a ochraně před podvody se používá hash SHA256.
V současné době je v repozitáři navrženo více než 1400 balíčků, včetně projektů jako 7Zip, OpenJDK, iTunes, Chrome, Blender, DockerDesktop, Dropbox, Evernote, FreeCAD, GIMP, Git, Maxima, Inkscape, Nmap, Firefox, Thunderbird, Skype, Edge, VisualStudio, KiCad, LibreOffice, Minecraft, Opera, Putty, TelegramDesktop, Steam, WhatsApp, Wireguard a Wireshark, stejně jako velké množství aplikací Microsoft. Podporováno je vytváření soukromých repozitářů, s nimiž lze komunikovat prostřednictvím REST API.
Pro použití winget je vyžadována verze Windows Insider s povoleným režimem vývojáře. V blízké budoucnosti se plánuje, že winget bude dodáván jako výchozí pro uživatele Windows 10 1809 a novějších verzí. Při instalaci hotových sestavení je ve správci balíčků ve výchozím nastavení povoleno odesílání telemetry, která shromažďuje údaje o interakcích uživatele se správcem balíčků a o chybách, které se mohou objevit. Pro vypnutí telemetrie lze zvolit hodnotu „Basic“ v „Nastavení > Soukromí > Diagnostika a zpětná vazba“ nebo sestavit winget z původních zdrojů.
Zdroj: opennet.ru
