Solution: Installing the MSIX Packaging Tool and Driver when Internet is not accessible.
A customer asked for my help in getting the packaging tool and associated driver installed on a VM that is not connected to the internet. In their case, the VM disk was online for a prep phase as part of a Citrix MCS image-prep scenario.
Microsoft has a document Using the MSIX Packaging Tool in a disconnected environment – MSIX | Microsoft Learn which attempts to explain what is needed, but really covers the offline case (meaning that the image you are installing is not the running OS), and this leads to confusion. I am documenting the approach that I came up with for this online, but detached from the internet, scenario.
First, read the article mentioned above and gather the files that you will need. You will want the two files for the packaging tool (the msixbundle and the license), and the appropriate FOD cab file for the OS version that you will be installing into. For the script below, I added the cab file to a subfolder (W10Driver).
You copy the folder with these files onto the target system somewhere, and then open a PowerShell (or ISE) window with elevated privileges and run the script.
NOTE: Forum rules prevent me from putting in the real name of the command needed to install the driver. So it appears below as XDISM. Please remove the letter X.
# Get folder that this PS1 file is in so that we can find files correctly from relative references
$executingScriptDirectory = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent
Add-AppxProvisionedPackage -online -PackagePath “$($executingScriptDirectory)MSIXPackagingtoolv1.2024.405.0.msixbundle” -LicensePath “$($executingScriptDirectory)Microsoft.MSIXPackagingTool_8wekyb3d8bbwe_cef5ab15-7bbf-b9b8-e614-3a6718b22258.xml”
XDISM /Online /add-package /packagepath:”$($executingScriptDirectory)W10DriverMsix-PackagingTool-Driver-Package~31bf3856ad364e35~amd64~~.cab”
Start-Sleep 10
A customer asked for my help in getting the packaging tool and associated driver installed on a VM that is not connected to the internet. In their case, the VM disk was online for a prep phase as part of a Citrix MCS image-prep scenario.
Microsoft has a document Using the MSIX Packaging Tool in a disconnected environment – MSIX | Microsoft Learn which attempts to explain what is needed, but really covers the offline case (meaning that the image you are installing is not the running OS), and this leads to confusion. I am documenting the approach that I came up with for this online, but detached from the internet, scenario.
First, read the article mentioned above and gather the files that you will need. You will want the two files for the packaging tool (the msixbundle and the license), and the appropriate FOD cab file for the OS version that you will be installing into. For the script below, I added the cab file to a subfolder (W10Driver).
You copy the folder with these files onto the target system somewhere, and then open a PowerShell (or ISE) window with elevated privileges and run the script.
NOTE: Forum rules prevent me from putting in the real name of the command needed to install the driver. So it appears below as XDISM. Please remove the letter X.
# Get folder that this PS1 file is in so that we can find files correctly from relative references$executingScriptDirectory = Split-Path -Path $MyInvocation.MyCommand.Definition -Parent
Add-AppxProvisionedPackage -online -PackagePath “$($executingScriptDirectory)MSIXPackagingtoolv1.2024.405.0.msixbundle” -LicensePath “$($executingScriptDirectory)Microsoft.MSIXPackagingTool_8wekyb3d8bbwe_cef5ab15-7bbf-b9b8-e614-3a6718b22258.xml”
XDISM /Online /add-package /packagepath:”$($executingScriptDirectory)W10DriverMsix-PackagingTool-Driver-Package~31bf3856ad364e35~amd64~~.cab”
Start-Sleep 10