Microsoft Technical Takeoff: Windows and Microsoft Intune
Oct 24 2022 07:00 AM - Oct 27 2022 12:00 PM (PDT)

Packaging standards, MSI or MSIX?

Occasional Visitor

Does anyone know the roadmap for the MSIX application packaging format? Is this format a replacement for MSI? Is there an expectation that this will become an industry standard going forward.

 

I still have thousands of MSI packages, I really like the features of MSIX but i am wondering if worth the investment in moving to MSIX.

 

9 Replies
What do you mean by investment?

Do you want to learn MSIX while creating new setup packages? I would definitely recommend this. MSIX is here to stay, and even though its adoption trend is not going crazy, this technology is here for the long term.

Do you want to migrate thousands of working MSI packages to MSIX? I don't know if this is worth it, it depends on the problem you want to solve and its return on investment. In many cases deploying the classic MSI packages (which you have probably tested very well) is enough for some IT teams.

I'm new to MSIX but far enough in to realize MSIX is not just about deployment. For client apps it's the way to go because of it's containerization and safety. Not so sure about system level services, etc.   @Bogdan Mitrache 

MSIX is a modern application packaging and deployment technology, and Microsoft is investing and developing MSIX. However at this time, we don't have a roadmap to publicly share out.
MSIX It's not optimized for system resource deployment. Per-user deployment is the core focus for MSIX. There is support for services, but it is not the best.

Most apps don't need per-machine resources like services and drivers so MSIX should do the job should for many use cases. Plus, its support for automatic updates without writing additional code or using third-party tools is another key feature (|even though currently there are some issues with it - the MS team is working hard on it).
Yeah it's Per User Deployment is nice, and fast auto-updates are great. Just wish there was some direction on preserving .net user.config settings. Are we supposed to use registry HKCU? I can easily switch to that. Are we supposed to? We can't all store our user settings in the cloud. And wiping them out on every update is not a good feature.

@Aditi_Narvekar do you know if there is anything available in private preview . or like the MSIX packaging Insider program?

MSIX packaging tool insider program - MSIX | Microsoft Docs

 

I also noticed this guidance was recently updated

MSIX Packaging Tool Overview - MSIX | Microsoft Docs

MSIX, by default, preserves user settings upon upgrade, whether registry or file based.

This can get messed up when things like package name or certificates change, but generally you keep the settings.

I am using a test cert. C# NET 6 WPF/Winforms. Never works for me. @TIMOTHY MANGAN 

As long as the package family name, which means that the two fields in the AppXManifest file, PackageName and Publisher (which comes from your cert) do not change between versions, an installation of the new package over the old should upgrade in-place without loss of data. Don't uninstall/reinstall, and if you change the cert keep the subject field identical (if possible).