Skip to content
  • There are no suggestions because the search field is empty.

Deploying Winget Packages

K12Panel can install or uninstall thousands of Windows Package Manager (winget) community packages on your Windows computers, without building or subscribing to a blueprint. You find an app in Team Blueprints search, create a Deploy or Undeploy modifier, and add that modifier to an asset group like any other.

Note: Packages are provided by their publishers through Microsoft's Windows Package Manager. K12Panel does not review or warrant third-party software. Check the publisher and license before you deploy.


What winget is

Winget is Microsoft's Windows Package Manager, included with Windows 11. Its community catalog describes each app with a manifest that lists the exact installer, its silent-install options, and the installer's SHA-256 hash. Winget checks that hash on the computer before it installs anything.

K12Panel reads Microsoft's catalog every night, so the packages you search are current. You don't manage any blueprints for winget: K12Panel keeps two managed blueprints in your organization, Winget Install and Winget Uninstall, and every winget modifier runs on one of them.


What you need

  • Role: Architect or higher, in an organization licensed for CORE+DEPLOY.
  • Computers: Windows 11 (Windows 11 Pro recommended) with the Panel Service Agent installed. If winget isn't registered yet on a freshly imaged computer, K12Panel registers it.
  • Setting: Winget Packages turned on for your organization. It's on by default.

To check the setting, open Blueprints › Team Libraries; the toolbar shows Winget Packages: On or Off. Admins can turn it on or off in Settings.


Find a package

  1. Go to Blueprints › Team Blueprints.
  2. In Search, type an app name, publisher, or winget package ID (for example, Mozilla.Firefox).
    • Your team blueprints are listed first, followed by matching winget packages marked Winget Community.
    • Each winget row shows the package ID, the latest version, and a short description.
  3. To see only winget packages, choose Winget Packages in the Library filter. You can browse this list without typing a search.

Winget packages are hidden when you browse all libraries without search text, so your team blueprints stay easy to find.

Only packages that install for all users of a computer are listed. Microsoft Store apps and per-user installers aren't included.

You can also search winget packages without signing in, in the public Panel Blueprint Catalog.


Deploy (install) a package

  1. On the package's row, click Action.
  2. Review the publisher, description, license, and publisher website.
  3. Under Version, choose:
    • Any version (keep what's installed): installs the package when it's missing, and leaves any installed version alone.
    • At least this version: installs the package when it's missing or older than the version you pick.
    • Exactly this version: installs the version you pick.
  4. Optionally enter a Modifier name. If you leave it blank, K12Panel names it Winget: Deploy app name.
  5. Click Create Deploy. K12Panel creates the modifier and opens it.
  6. Add the modifier to an asset group. Computers in that group install the package at their next check-in.

Tip: Try a new package on a small test group first, check the modifier's report, then add it to larger groups.


Undeploy (uninstall) a package

  1. On the package's row, click Action.
  2. Optionally enter a Modifier name. If you leave it blank, K12Panel names it Winget: Undeploy app name.
  3. Click Create Undeploy. K12Panel creates the modifier and opens it.
  4. Add the modifier to an asset group.

Computers in that group uninstall the package if it's installed. Computers that don't have it are left alone.

Note: Don't put the same computer in groups that both deploy and undeploy the same package. Like adding and removing the same printer, the two modifiers would undo each other on every check-in.


Find your winget modifiers later

  • From the package: click Action again. If a Deploy or Undeploy modifier already exists, the dialog shows Open Deploy modifier or Open Undeploy modifier instead of creating a duplicate.
  • From Modifiers: winget modifiers are listed on the Modifiers page with all your other modifiers.
  • From the Winget Install or Winget Uninstall blueprint page: any link to a winget modifier's blueprint opens a page listing that blueprint's modifiers, with edit, delete, and report links.
  • From assets and asset groups: winget modifiers appear on asset and asset group pages like any other modifier.

The Winget Install and Winget Uninstall blueprints are managed by K12Panel. They don't appear in your blueprint libraries or the new-modifier picker, and you can't edit, publish, or delete them. K12Panel updates them for every organization when their scripts improve.


How K12Panel checks a computer

At every check-in, K12Panel looks at the programs installed on the computer and compares them with the uninstall information in the package's manifest: product codes, upgrade codes, and display names. Nothing is downloaded for this check.

  • Deploy runs winget only when the package is missing, or when it's older than (or, for Exactly this version, different from) the version you chose.
  • Undeploy runs only when the package is installed. If winget can't match the installed app to its package, K12Panel uses the app's Windows Installer (MSI) uninstall when the manifest provides one.
  • If K12Panel can't tell whether the app is installed, it doesn't run anything and reports the result as indeterminate.

"Can't deploy yet"

Some packages show Can't deploy yet instead of an Action button. Their manifests don't include the uninstall information K12Panel needs to tell whether the app is installed, so K12Panel can't manage them reliably. The catalog refreshes nightly, so a package can become deployable when its publisher updates the manifest.


Results and reports

To see what happened, open the modifier's View Report link, or an asset's modifier history. Each result is a short line that includes winget's result code, for example:

  • Winget Mozilla.Firefox: installed or already up to date (0x00000000)
  • Winget Mozilla.Firefox: already installed; no newer version applies (0x8A15002B)
  • Winget Mozilla.Firefox: uninstalled (0x00000000)
  • Winget Mozilla.Firefox: no installer applies to this device (architecture or machine scope) (0x8A150010)
  • Winget Mozilla.Firefox: installed; restart required to finish (0x8A150109)

When a result isn't recognized, the report shows the code and the last few lines of winget's output. You can look up any code in Microsoft's winget documentation.


Editing a winget modifier

You can rename a winget modifier, change its priority, and add it to or remove it from asset groups like any other modifier.

The modifier's Properties are filled in by Create Deploy or Create Undeploy. Leave the package ID and detection values as they are. On a Deploy modifier, advanced users can change $VersionPolicy (Present, Minimum, or Pinned) and the matching $Version and $DetectVersion values, or set $Override to replace the installer's own silent arguments. To switch to a different package, create a new modifier from Team Blueprints instead.


Ask an AI assistant

AI assistants can look up winget packages for you through K12Panel's public catalog. Point your assistant at https://my.k12panel.com/llms.txt and ask, for example, "Can K12Panel deploy Zoom?"


Common Questions

Do I need to subscribe to a blueprint to use winget packages? No. K12Panel manages the Winget Install and Winget Uninstall blueprints for your organization. You only create and assign modifiers.

Why don't I see winget packages in Team Blueprints? Winget packages appear when you type search text, or when you choose Winget Packages in the Library filter. If they still don't appear, an Admin may have turned Winget Packages off in Settings. The Team Libraries page shows whether it's on. Winget packages also don't appear when the Category filter is set to something other than Software Install or Software Uninstall.

Why doesn't a package have an Action button? It shows Can't deploy yet because its manifest doesn't include the uninstall information K12Panel needs to check whether the app is installed.

Does K12Panel review or approve winget packages? No. Packages come from their publishers through Microsoft's Windows Package Manager, which checks each submission before it's added to the community catalog. K12Panel doesn't review or warrant third-party software.

Which Windows versions are supported? Windows 11, with the Panel Service Agent installed. Winget is part of Windows 11, and K12Panel registers it on computers where it isn't registered yet.

Can I install Microsoft Store apps or per-user apps? No. Only community packages that install for all users of a computer are offered.

Will Deploy update an app that's already installed? With Any version, no: K12Panel leaves the installed version alone. With At least this version, K12Panel installs when the installed version is older than the version you chose. With Exactly this version, it installs the chosen version when a different version is installed.

What happens if I delete a winget modifier? K12Panel stops managing the package on those computers. Deleting a Deploy modifier doesn't uninstall the app; create an Undeploy modifier to remove it.

Who can create winget modifiers? Architects and above, in organizations licensed for CORE+DEPLOY. Only Admins can turn Winget Packages on or off.