Contents

Deploy Winget Apps Through Intune — The Easy Way

In my previous post, I explained how I use Winget Auto Update (WAU) to keep apps up to date with minimal disruption. In this follow-up, I’ll show you how I deploy applications using WAU — specifically how I wrap the install script into a reusable .intunewin package and use command-line parameters to simplify deployment across multiple apps.

  • Winget Auto Update should already be deployed (I recommend deploying it as a Win32 app).
  • WAU installs several scripts locally — we’ll reuse these to streamline app deployment.

Use Winget to search for the app you want to deploy. For example, to deploy Microsoft PowerToys:

winget search 'PowerToys'

Example output:

Name        Id                  Version Source
---------------------------------------------
PowerToys   Microsoft.PowerToys 0.95.0  winget

Take note of the App ID: Microsoft.PowerToys.

We need a dummy installer to create a .intunewin file:

New-Item -ItemType Directory -Name BlankApp -Path C:\
New-Item -ItemType File -Path C:\BlankApp -Name BlankFile

If you haven’t already, download and extract the Microsoft Win32 Content Prep Tool, then run:

.\IntuneWinAppUtil.exe -c C:\BlankApp -s BlankFile -o C:\BlankApp

This creates BlankFile.intunewin — ready to upload to Intune.

  1. Go to Intune > Apps > Windows > + Create
  2. Choose Windows App (Win32) and upload BlankFile.intunewin
  3. Fill in the app details:
    • Name: PowerToys
    • Description: Microsoft PowerToys is a set of free utilities for power users to streamline their Windows experience.
    • Publisher: Microsoft
    • App Version: Winget
    • Category: Productivity
    • Notes: This app is deployed via Winget.
    • Logo: Optional, but nice to have!
"%systemroot%\sysnative\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -File "C:\Program Files\Winget-AutoUpdate\winget-install.ps1" -AppIDs Microsoft.PowerToys

This uses the 64-bit version of PowerShell to launch the already installed winget-install.ps1 script.

"%systemroot%\sysnative\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -ExecutionPolicy Bypass -File "C:\Program Files\Winget-AutoUpdate\winget-install.ps1" -AppIDs Microsoft.PowerToys -Uninstall

Same as the install command, but with -Uninstall added.

  • Minimum OS: Windows 10 1607
  • Other fields can be left as default unless your app has specific needs.
  1. Download Winget-Detect.ps1 from the WAU repository
  2. Edit line 11:
# Change app to detect [Application ID]
$AppToDetect = "Microsoft.PowerToys"
  1. Upload this script as your detection rule.

Set the Winget Auto Update Win32 package (from your previous deployment) as a dependency. This ensures all required scripts are present before installing the app.

To deploy other apps like Chrome or VS Code, just change the -AppIDs value in the install/uninstall commands. No need to create new packages!

  • Reusable Package: One .intunewin file for many apps
  • Parameter-Driven: Easy to update or extend
  • Centralized Logging: Simplifies troubleshooting
  • Clean Maintenance: Fewer packages to manage

This method has made app deployment much more efficient for me. It’s scalable, clean, and integrates seamlessly with Intune and WAU. If you’re already using WAU for updates, this is a natural next step to keep your environment tidy and manageable.