Contents
- Digital Signing
- Why should you sign an MSIX package?
- How to sign an MSIX package?
- Where do I get a certificate from?
- How to protect the Certificate with a password
- Certificate Timestamps
- Package Support Framework
- Using the PsfLauncher
- Predefined Fixups
- Applying the PSF
- Config.JSON and Config.XML
- Inspecting Fixups that are in a Package
- Scripting
- MSIX Modification Packages
- Is the MSIX Modification Package the new MST equivalent?
- A deep dive inside the manifest
- How does an MSIX Modification Package work?
- Application Updates
- User Settings and Data Associated with a Package
- Getting Settings and Data Off the Local Profile
Application Updates
MSIX deployment utilizes the concept of matching the Package Name, as referenced in the internal AppxMainifest.xml file, along with version numbers to enable good application upgrade and downgrade scenarios.
An upgrade package may be created using one of two methods:
Type | Description |
Edit existing package | The original package can be opened for edit, modified, and saved using a higher Version Number. Currently, tooling vendors are supporting this scenario by using a strict editor, which prevents recapture of a traditional upgrade/patch installer. Edit scenarios involving recapture (similar to how it is done in the App-V Sequencer) is not precluded by the MSIX technology and may become available in the future as well. |
New package | A completely new package can be created using the same Package Name as the original package and a higher Version Number. |
When creating an upgrade package, some packaging tools use some form of file naming that involves the Package Name. Some include the Version Number in the package name by default and some do not. Care should be taken to properly identify the package filename so that each version is unique.
The MSIX installation methods in the OS will recognise a situation where a different version of the same Package Name is being installed. It is capable of performing both upgrade and downgrade operations.
By default, an upgrade or downgrade will cause the user preferences data to be retained. After installation of this version, the previously installed version will be removed for this user, and if no other user profile on the system has the previous version published it will be removed from the system completely.
Thanks to single-instance download and storage, there are significant performance benefits for a version installation. As these benefits are based on file block hashes, they should be roughly the same no matter which method for packaging the new version is used.