kuiperzone / PupNet-Deploy

PupNet Deploy is a cross-platform deployment utility which packages your .NET project as a ready-to-ship installation file in a single step.
GNU Affero General Public License v3.0
183 stars 6 forks source link

MSIX support on Windows #17

Open maxkatz6 opened 1 year ago

maxkatz6 commented 1 year ago

MSIX/MSIXInstaller is a newer alternative to package windows applications. Which is also supported by MS Store and winget. As a technology it has quite some noticiable benefits:

Still, it has some drawbacks:

maxkatz6 commented 1 year ago

Personally, I previously preferred to use MSIX as a packaging/installation tool with manual autoupdate functionality implemented on top of it. I won't have much time implementing it here in near future, and I understand it won't be in priority by maintainers either.

But still wanted to open this issue to see if there is any interest from the community.

maxkatz6 commented 1 year ago

Technically, MSIX also supports app add-ins which can be installed once for whole system. Like, WebView2 package as part of MSIX installation. But I never tried that so not sure how it works. In general, MSIX format is richer that just package and install.

kuiperzone commented 1 year ago

Dear @maxkatz6,

Thank you very much for your suggestion and for providing a detailed explanation.

There are a couple of package kinds I would like to see supported in PupNet in the future and MSIX would be one of those, although I think it would need some thought. For example, as you say, "It's not commonly used even today after years being available." However, I also note that it is used by MAUI and may gain traction. Whereas, InnoSetup is old, but has remained popular.

In a couple of weeks, however, I start a new full time job so I'm not sure how much time I will have available either. In the short-term, I am very keen to fix bugs and ensure that PupNet is robust.

I would be keen, also, to see if there is interest from the community, as you suggest. While I think it would be a mistake for PupNet to attempt to support every deployment kind on the planet, I would be willing to support such efforts in principle.

Thanks again

Andy

PS. I think the following note you made is applicable to most deployment kinds, and should be present in the README. Thanks again.

As mentioned above, app installation folder has restricted read only access, so apps should be changed to respect that (and use AppData folder for writeable data per user)

mysteryx93 commented 3 months ago

I got to say @maxkatz6, we're in similar situations. Over-saturated with things to do, lack of time to work on open source projects. And very very few people stepping up to contribute to those projects.