Managing software on a Windows PC has traditionally involved a mix of manual downloads, installations, and updates. However, with the introduction of Windows Package Manager (winget), this process has become much more streamlined and efficient. In this blog post, we will explore how to use winget to manage your software, making it easier to install, update, and maintain your applications.

What is Winget? Link to heading

Winget is a command-line tool designed to simplify the process of discovering, installing, updating, and configuring applications on Windows 10 and Windows 11. It functions similarly to package managers found on Linux systems, providing a centralized and automated way to handle software packages.

Installing Winget Link to heading

Winget is included with the App Installer on Windows 10 (version 1809 and later) and Windows 11. To ensure you have winget installed, you can open a PowerShell window and run the following command:

winget --version

If winget is not installed, you can download the App Installer package from the Microsoft Store here.

Installing Software with Winget Link to heading

To install software using winget, you simply need to know the package name or search for it. Here’s how you can do it:

  1. Search for a Package: If you’re not sure about the exact package name, you can search for it.

    winget search <package-name>
    

    For example, to search for Google Chrome:

    winget search google chrome
    
  2. Install a Package: Once you know the package name, you can install it using the install command.

    winget install <package-name>
    

    For example, to install Google Chrome:

    winget install Google.Chrome
    

Updating Software with Winget Link to heading

One of the most powerful features of winget is its ability to update all installed software to the latest versions effortlessly. Here’s how you can update your software:

  1. List Upgradable Packages: To see which packages have updates available, use:

    winget upgrade
    
  2. Upgrade a Specific Package: If you want to update a specific package, use the upgrade command followed by the package name.

    winget upgrade <package-name>
    

    For example, to upgrade Google Chrome:

    winget upgrade Google.Chrome
    
  3. Upgrade All Packages: To update all packages that have updates available, simply use:

    winget upgrade --all
    

    This command will automatically update all installed software to the latest versions.

Removing Software with Winget Link to heading

Uninstalling software is just as easy with winget. You can use the uninstall command followed by the package name.

winget uninstall <package-name>

For example, to uninstall Google Chrome:

winget uninstall Google.Chrome

Creating a Script to Automate Updates Link to heading

To ensure your software is always up-to-date, you can create a PowerShell script that automates the update process. Here’s a simple script to update all installed packages:

# PowerShell Script to Update Installed Software Using winget

# Check if winget is installed
if (-not (Get-Command winget -ErrorAction SilentlyContinue)) {
    Write-Host "winget is not installed. Please install winget and try again."
    exit
}

# Get the list of upgradable packages
$upgradablePackages = winget upgrade --all

if (-not $upgradablePackages) {
    Write-Host "No packages have updates available."
    exit
}

# Iterate through each package and update
foreach ($package in $upgradablePackages) {
    $packageName = $package.Package
    Write-Host "Updating: $packageName"

    # Update the package
    winget upgrade --id $package.Id --silent --accept-package-agreements --accept-source-agreements
}

Write-Host "All available packages have been updated."

Save this script as UpdateSoftware.ps1, and you can run it periodically to keep your software up-to-date.

Conclusion Using winget, managing software on your Windows PC becomes a breeze. From installing and updating to removing software, winget offers a unified and efficient approach to software management. Whether you’re a power user looking to automate your workflow or simply someone who wants to keep their software up-to-date with minimal effort, winget is a powerful tool to have in your arsenal. Give it a try and streamline your software management process today!