{"id":670,"date":"2021-03-25T11:06:03","date_gmt":"2021-03-25T10:06:03","guid":{"rendered":"https:\/\/lukas.kurth.rocks\/blog\/?p=670"},"modified":"2021-03-29T14:13:36","modified_gmt":"2021-03-29T12:13:36","slug":"paketmanagement-unter-windows","status":"publish","type":"post","link":"https:\/\/lukas.kurth.rocks\/blog\/2021\/03\/25\/paketmanagement-unter-windows\/","title":{"rendered":"Paketmanagement unter Windows"},"content":{"rendered":"<p>Guten Morgen,<\/p>\n<p>wollte dazu auch mal ein, zwei S\u00e4tze schreiben. Unter dem GitHub Repository <a href=\"https:\/\/github.com\/microsoft\/winget-cli\" target=\"_blank\" rel=\"noopener\">winget-cli<\/a> gibt es den Paketmanager <strong>WinGet<\/strong>, der im AppInstaller im Windows 10 Insider vorhanden ist, sich aber auch \u00fcber ein *.appxbundle installieren l\u00e4sst. Dazu einfach mal bei Release schauen, da kann man die herunterladen und installieren. Die letzte Meldung war bei mir was komisch und abgehakt, aber Installation ging durch.<\/p>\n<p><!--more--><\/p>\n<p>WinGet ist noch nicht offiziell erschienen, der Release der v1.0 ist f\u00fcr Mai geplant, daher sind manche Funktionen wie <strong>uninstall<\/strong> und <strong>list<\/strong> nur \u00fcber die Settings \u2013 <strong>winget settings<\/strong> \u2013 verf\u00fcgbar. Der Stand der aktivierten\/deaktivierten Features ist unter <strong>winget features<\/strong> ersichtlich. Die einzelnen Settings und verstecken Einstellungen sind unter <a href=\"https:\/\/github.com\/microsoft\/winget-cli\/blob\/master\/doc\/Settings.md\" target=\"_blank\" rel=\"noopener\">GitHub \u2013 WinGet Settings<\/a> verf\u00fcgbar. Es gibt auch die Rainbow-Funktion f\u00fcr Status-Leiste, reinschauen lohnt sich also.<\/p>\n<p>WinGet geht den Weg, den Linux schon seit laaaaaaanger Zeit geht. Es lassen sich Anwendungen bequem \u00fcber die Kommandozeile, egal ob CMD oder PowerShell, installieren, deinstallieren und aktualisieren. Das funktioniert an sich auch ganz gut, so braucht man allerdings <strong>winget list<\/strong> (ist noch experimentell) um zu \u00fcberpr\u00fcfen, ob eine Version der Anwendung bereits installiert ist. Es erkennt alle installierten Anwendungen, daher sollte man auf bestimmte Namen und Versionen einfach pr\u00fcfen. Die Ausgabe ist leider noch nicht in CSV oder JSON vorhanden, sondern wird als statische Tabelle ausgegeben. F\u00fcr mich gibt es da nur die M\u00f6glichkeiten \u00fcber LastIndexOf() und SubString() auf Name, ID und Version zu pr\u00fcfen und dann die Namen, IDs und Versionen der Programme in ein PSCustomObject-Array zu packen. Nicht sch\u00f6n, funktioniert aber und ist bestimmt nur von kurzem Zweck.<\/p>\n<p>Alles weitere l\u00e4sst sich bisher noch nicht pr\u00fcfen oder in Projekte implementieren, da es noch keinen Release hat. Wenn es fertig ist, werde ich es sicherlich in mein <a href=\"https:\/\/github.com\/LukasKurthRocks\/Windows-10-Custom-ISO\" target=\"_blank\" rel=\"noopener\">Windows 10 Custom ISO<\/a>-Projekt einbauen. Bisher habe ich daf\u00fcr den <a href=\"https:\/\/patchmypc.com\/home-updater#download\" target=\"_blank\" rel=\"noopener\">Patch My PC Home Updater<\/a> mit einer vor-konfigurierten Settings.ini. Beide M\u00f6glichkeiten lassen sich aber sicherlich auch kombinieren. Ich stecke das in meinen PowerShell Public Test Bereich auf GitHub, dann k\u00f6nnt ihr euch auch ein paar Sachen \u00fcberlegen, wenn gewollt.<\/p>\n<p>Ich h\u00e4tte das nat\u00fcrlich auch gerne in SCCM drin, am besten von Microsoft direkt mit eingebaut, damit sich Anwendungen \u00fcber den Paketmanager aktualisieren lassen. Bis sowas \u00fcberhaupt m\u00f6glich sein k\u00f6nnte, vergehen an sich bestimmt schon 10 Jahre. Also wohl eher unwahrscheinlich. Schade eigentlich. Hier der dazu passende <a href=\"https:\/\/configurationmanager.uservoice.com\/forums\/300492-ideas\/suggestions\/40472728-windows-application-packager-winget-integration\" target=\"_blank\" rel=\"noopener\">UserVoice<\/a>.<\/p>\n<p><strong>TL;DR<\/strong><\/p>\n<blockquote><p>WinGet nicht ver\u00f6ffentlicht\/released, n\u00fctzlich f\u00fcr neues System (ISO), eventuell irgendwann SCCM. Testen auf eigene Gefahr. 1000 Pakete bereits vorhanden. Siehe GitHub!<\/p><\/blockquote>\n<p>PS.: Habe dar\u00fcber nachgedacht mehrere Blogs f\u00fcr mehrere Zwecke zu bauen, die Pflege w\u00fcrde sich f\u00fcr mich aber wohl nicht lohnen. Daher schreibe ich wie gewohnt alles hier rein.<\/p>\n<p>Quellen:<\/p>\n<ul>\n<li><a title=\"https:\/\/github.com\/microsoft\/winget-cli\" href=\"https:\/\/github.com\/microsoft\/winget-cli\">https:\/\/github.com\/microsoft\/winget-cli<\/a><\/li>\n<li><a title=\"https:\/\/github.com\/microsoft\/winget-cli\/blob\/master\/doc\/Settings.md\" href=\"https:\/\/github.com\/microsoft\/winget-cli\/blob\/master\/doc\/Settings.md\">https:\/\/github.com\/microsoft\/winget-cli\/blob\/master\/doc\/Settings.md<\/a><\/li>\n<li><a title=\"https:\/\/docs.microsoft.com\/de-de\/windows\/package-manager\/winget\/\" href=\"https:\/\/docs.microsoft.com\/de-de\/windows\/package-manager\/winget\/\">https:\/\/docs.microsoft.com\/de-de\/windows\/package-manager\/winget\/<\/a><\/li>\n<li><a title=\"https:\/\/github.com\/LukasKurthRocks\/Windows-10-Custom-ISO\" href=\"https:\/\/github.com\/LukasKurthRocks\/Windows-10-Custom-ISO\">https:\/\/github.com\/LukasKurthRocks\/Windows-10-Custom-ISO<\/a><\/li>\n<li><a title=\"https:\/\/configurationmanager.uservoice.com\/forums\/300492-ideas\/suggestions\/40472728-windows-application-packager-winget-integration\" href=\"https:\/\/configurationmanager.uservoice.com\/forums\/300492-ideas\/suggestions\/40472728-windows-application-packager-winget-integration\">https:\/\/configurationmanager.uservoice.com\/forums\/300492-ideas\/suggestions\/40472728-windows-application-packager-winget-integration<\/a><\/li>\n<li><a title=\"https:\/\/patchmypc.com\/home-updater#download\" href=\"https:\/\/patchmypc.com\/home-updater#download\">https:\/\/patchmypc.com\/home-updater#download<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Guten Morgen, wollte dazu auch mal ein, zwei S\u00e4tze schreiben. Unter dem GitHub Repository winget-cli gibt es den Paketmanager WinGet, der im AppInstaller im Windows 10 Insider vorhanden ist, sich aber auch \u00fcber ein *.appxbundle installieren l\u00e4sst. Dazu einfach mal bei Release schauen, da kann man die herunterladen und installieren. Die letzte Meldung war bei [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[379,9,387,386,385],"tags":[392,389,383,388,393,391,395,394,357,390],"class_list":["post-670","post","type-post","status-publish","format-standard","hentry","category-git","category-programmierung","category-watching","category-windows","category-windows-10","tag-custom-iso","tag-git","tag-github","tag-paketmanager","tag-patch","tag-release","tag-sccm","tag-uservoice","tag-windows-10","tag-winget"],"_links":{"self":[{"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/posts\/670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/comments?post=670"}],"version-history":[{"count":4,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions"}],"predecessor-version":[{"id":680,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/posts\/670\/revisions\/680"}],"wp:attachment":[{"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/media?parent=670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/categories?post=670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lukas.kurth.rocks\/blog\/wp-json\/wp\/v2\/tags?post=670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}