Nested Packages Deployment

In the scope of package deployment, it is possible to install and uninstall MSIX packages that are part of the installation. This functionality can be used, in particular, to deploy MSIX Sparse Packages that provide access to new Windows APIs and UWP features such as BackgroundTasks, Notifications, LiveTiles, Share, and others.

During monitoring, the program automatically detects MSIX packages deployed by the repackaged installation and creates corresponding entries in the Nested Packages view, which is displayed when the Nested Packages node is selected in the Projects view. You can use the following action to configure a nested package change in the project.

Nested Packages

Nested MSIX Package

The Nested MSIX Package button from the New group on the regular Project and contextual Nested Packages Ribbon pages should be used to add a new nested MSIX package to the currently configured project.

In the Nested Packages view, you can add a new nested MSIX package, edit properties of configured packages, change the package deployment order, and delete a package.

Package Properties Editing

When you use monitoring to repackage existing installations, the program detects changes to the MSIX packages installed in the system and adds corresponding packages to the project configuration as nested packages. If you need to review or modify nested packages, you have to open the Nested Packages view. This view displays the configured nested packages Pic 1.

Nested packages view

Pic 1. Nested packages view

You can use the context menu to change packages deployment order, create a new package, delete a package, and exclude/include a package from the build. To modify package properties, you can use the Edit action available in the context menu. As a result, the Edit Nested MSIX Package dialog is opened Pic 2.

Nested MSIX package editing

Pic 2. Nested MSIX package editing

When you configure a new package, you need to choose an Operation for the package, such as Install or Uninstall. If you configure a package installation, you must choose a package file to be deployed from those stored in the project; select it in the Package File field. If you are deploying a Sparse Package, you also need to specify a folder in the External Location field that is set as the root for the installing MSIX package. Additionally, you must configure how a package should be deployed in the Apply To field, whether it should be deployed to the current user, all users or use the same settings specified for the owner MSI package.

To configure package uninstallation, you must specify package uninstallation conditions such as Package Name, Publisher, Architecture, and Version Pic 3.

Nested MSIX package uninstall options

Pic 3. Nested MSIX package uninstall options

The program will uninstall only those packages that meet the entered conditions. To automatically fill in these fields, you can use the Read Identity from Package button, so conditions are extracted from the selected package file, and the program will uninstall only packages with the same identity during deployment. You can configure to uninstall multiple packages at once by specifying regular expressions in the package properties. The program also supports simple placeholders, so you can use "*" as a replacement for varying string width and "?" as a replacement for one symbol. You can leave the Publisher and Version values empty, so they aren’t evaluated to find suitable packages.