Easily manage Applications with WinGet v1.x

Microsoft has released WinGet, a package manager that is very well suited for installing and updating third-party applications. We are now installing applications with “WinGet” and learn how to manage applications with WinGet.

WinGet with Windows 11 and Windows Server 2025

With Windows 11 and Windows Server 2025 WinGet is a pre installed component. The WinGet Tool will only be available after your first login as a Windows users. The first login will trigger the Microsoft Storage to register the Windows Package manager. If WinGet is not available after your first login run the following command:

Add-AppxPackage -RegisterByFamilyName -MainPackage Microsoft.DesktopAppInstaller_8wekyb3d8bbwe

WinGet Preview versions

WinGet is included in the Windows App Installer. To test the latest Windows Package Manager features, you can install a preview build in one of the following ways:

Download the latest version of WinGet availble through this AKS.MS link. Please refer to the release notes for the WinGet preview on GitHub to learn about any new features.

Important: Please note that installing this package will provide you with the preview version of the WinGet client. However, it will not enable automatic updates of new preview versions from the Microsoft Store.

To receive automatic updates of new preview versions from the Microsoft Store you can register for the Windows Package Manager Insiders Program, please use a Microsoft Account (MSA). Once your Microsoft Account (MSA) has been added (approximately two days after you receive the email notification), you will receive automatic updates of new preview versions from the Microsoft Store.

The 2nd option including automatic updates is to register for the Windows Insider Dev Channel. Please use either a Microsoft Account (MSA), a work or school account, or an Entra ID account. The Windows Insider Dev Channel includes automatic updates of new preview versions from the Microsoft Store.

Search and Install Applications with Winget

With Winget, installing and managing applications from the command line is very easy. Simply open PowerShell and try out the first few commands. In my example I want to install Deepl, which is my favorite translation tool.

winget search deepl

In the output, we see which applications are available.

Microsoft Winget Search Deepl
manage Applications with WinGet – Microsoft Winget Search Deepl

If we now want to install Deepl, we use the official product Id Deepl.Deepl from the Source “Winget”.

winget install deepl.deepl

The WinGet package manager now starts the download and then carries out the installation. If you have opened the CMD / Powershell in Admin mode, then everything works without further input. If you have not activated admin mode, you must confirm the installation via UAC.

Microsoft Winget Installl Deepl
manage Applications with WinGet – Microsoft Winget Install Deepl

Update all Application

WinGet can then directly update all known packages.

winget upgrade --all

Sometimes winget cannot determine the version number. In this case, you can force the updates or installation of the current version.

winget upgrade --all --include-unknown
Manage Applications with WinGet
winget upgrade --all --include-unknown
manage Applications with WinGet – winget upgrade –all –include-unknown
winget uninstall deepl.deepl

Listing applications and installing via batch file

It is particularly convenient that winget can also update applications that have already been installed, but you can also simply transfer existing applications to another Windows installation. This can be done in a controlled manner. First, we export all installed packages to a txt file and look at them.

winget list >D:\temp\winget-list.txt

With the > you specify that winget should redirect the screen display into a file. In the command above, this would be on the D:\ hard drive in the directory temp in the file winget-list.txt. You have to redirect this appropriately for you to an existing directory and drive.

Now you can view the file in an editor and decide which software you want to install.

For me, it looks like this in a file. I selected existing software that is available via winget and read the ID.

image
image

I can now create a batch file to install this software automatically on other devices by using the ID

winget.exe install --id IrfanSkiljan.IrfanView --exact --accept-source-agreements --silent --disable-interactivity --accept-package-agreements
winget.exe install --id IrfanSkiljan.IrfanView.PlugIns --exact --accept-source-agreements --silent --disable-interactivity --accept-package-agreements
winget.exe install --id WinSCP.WinSCP --exact --accept-source-agreements --silent --disable-interactivity --accept-package-agreements
winget.exe install --id WinDirStat.WinDirStat --exact --accept-source-agreements --silent --disable-interactivity --accept-package-agreements

Export and transfer to another machine

If you want to export your applications and transfer them 1:1 to another PC, you can also do this using export and import.

REM Export of settings - you need to change the path
winget export -o D:\temp\export-winget.json
REM Import of settings - you need to change the path
winget import -o D:\temp\export-winget.json

More Scripts and Examples

For an advanced insight into the PowerShell Winget modules please check the blog “Using the PowerShell WinGet module” by Harm Veenstra.

His 19 Top Examples can be found here or directly for each command from the list below.

Prepare your own developer clients / test server

I use WinGet to get my desired standard software packages installed to my dev clients or test servers. The following script does add my standard packages including WSL for clients.

My personal scripts are available in a GitHub repository: https://github.com/Naglafarn/winget-script

Conclusion – Manage Applications with WinGet

Winget can do a lot more in the area of installing and managing applications than you might expect. I can only recommend looking into it so that you can quickly transfer your work environment or set up test environments.

If you look into it, you can also add your own software via the community repository and make it distributable.

I have explained the matching UniGet GUI for WinGet here and a German version is available here.

Spread the knowledge
Avatar for Andreas Hartig
Andreas Hartig - MVP - Cloud and Datacenter Management, Microsoft Azure

Related Posts

A dragon IT Architect in the shadowrun world using an Excel document and the Azure Quick Review Tool

Azure Quick Review 2.04 – High Level Assessments

With Azure Quick Review (azqr) you can quickly make a High Level Assessment of an “Azure Subscription” or “Resource Group”. Installation of Azure Quick Review You can download the files…

Spread the knowledge
Read more
A dragon IT Architect in the shadowrun world using Microsoft Tools like Windows LAPS to secure his datacenter, relaxing and watching a sitcom on TV

Securing Local Administrator Accounts with Windows LAPS: A Get Started Guide for Windows Server Environments

Managing local administrator accounts securely is a critical aspect of maintaining a robust and secure IT environment. With the introduction of the Windows Local Administrator Password Solution (LAPS) in newer…

Spread the knowledge
Read more
A dragon IT Architect in the shadowrun world using his notebook and keepassxc to safe the world from a virus attack

Securing Client Passwords with KeePassXC: A Consultant’s Guide to Autotyping and More

As consultants, managing multiple clients and their respective passwords can be a daunting task, especially when security is paramount. In this article, we will explore how KeePassXC, a powerful and…

Spread the knowledge
Read more
Windows Server 2025 Monitoring TCP/IP on http://hartiga.de

Windows Server 2025 – Monitoring TCP/IP

Monitoring open TCP/IP ports is crucial for maintaining the security and functionality of your Windows system. This article will guide you through using three powerful tools, netstat, powershell Get-NetTCPConnection and…

Spread the knowledge
Read more
SFTP with Powershell Logo

Use SFTP with Powershell

If you want to use SFTP with Powershell to transfer files, you can do this with the Posh-SSH module. Installation of SFTP with Powershell To retrieve or copy data via…

Spread the knowledge
Read more
hyper-v manager and a Linux Terminal

Squid on Hyper-V – new Ubuntu 24.04

A Linux VM with Proxy, such as Squid, can be used to reduce bandwidth as it caches frequently requested websites. Today we want to configure a Linux VM with Proxy and deploy…

Spread the knowledge
Read more