dotnet / runtime

.NET is a cross-platform runtime for cloud, mobile, desktop, and IoT apps.
https://docs.microsoft.com/dotnet/core/
MIT License
15.14k stars 4.71k forks source link

Is there a .NET Runtime package for Windows Store? #51574

Open lostmsu opened 3 years ago

lostmsu commented 3 years ago

I use PackageDependency to reference other Microsoft frameworks like Visual C++ runtime in my packaged Windows app, which is very convenient, as I do not need to bundle the whole C++ runtime every time an update is released.

Are there similar packages for .NET 5+ runtime and certain libraries (like WPF)?

huoyaoyuan commented 3 years ago

I remember that it should be planned. Currently, the answer should be no.

NikolaMilosavljevic commented 3 years ago

cc @rconard

rconard commented 3 years ago

@AdamBraden

AdamBraden commented 3 years ago

@richlander - yet another customer request for a .net framework package

richlander commented 3 years ago

The only option is self-contained applications for Windows Store, as clearly demonstrated via this thread. We're waiting for Project Reunion to release and get adopted to consider publishing a runtime package.

NikolaMilosavljevic commented 3 years ago

@jamshedd

yoshiask commented 2 years ago

The only option is self-contained applications for Windows Store, as clearly demonstrated via this thread. We're waiting for Project Reunion to release and get adopted to consider publishing a runtime package.

Windows App SDK has released v1.0 now, are there any updates on this?

jamshedd commented 2 years ago

Sorry I do not have an update to share yet, but since we are currently in the middle of .NET 7 planning this is something we will look into carefully for the 7.0 cycle.

lostmsu commented 2 years ago

@jamshedd guys, you need to help the community on this, as regular folk can not publish framework packages to Windows Store.

jamshedd commented 2 years ago

@jamshedd guys, you need to help the community on this, as regular folk can not publish framework packages to Windows Store.

Ack. This is not completely in our part of the world, for the end to end experience to work we need work from the Store and Winget folks . We're in discussions with those teams but don't have anything concrete to report back at the moment.

Rarisma commented 2 years ago

The lack of a framework package has directly affected me and if one was made available it would make my life easier.

razaraz commented 1 year ago

Creating a self-contained package creates a huge msix file. I'm migrating from Xamarin.Forms to .NET MAUI, and my previous installer was 4MB, with an optional check to install .NET if not already installed. This allows us to push updates via a file share to a team across multiple countries with minimal latency.

Using MSIX, the installer is now always 48MB introducing major latency for installation on every update regardless of update to .NET runtime.

MatthewSteeples commented 1 year ago

Please don't read this as me saying this feature isn't necessary (because I 100% think it is) but you might be able to improve the MSIX scenario @razaraz. The MSIX packaging manifest can re-use files that are already installed. To make the most of this you'll want to include the framework files individually (rather than having them in a single exe file, if that's what you're doing).

We've only used this over HTTPS (and in the store) so I don't know if it will make a difference when copying from a fileshare.

razaraz commented 1 year ago

Thank you @MatthewSteeples, I'm doing investigations currently on the feasibility of fully using MSIX. Very good to know that doing selfcontained publishes won't cause huge downloads by everyone from the file share.

szanto90balazs commented 1 year ago

We also keen to have framework packages: https://github.com/dotnet/runtime/issues/78379

Neme12 commented 7 months ago

Why is there still no package available? :( I don't want to bundle the whole .NET Runtime with my app.

amarzavery commented 6 months ago

@jamshedd This has been a long ask for 4 years now. Why is this not a priority? What is stopping MSFT from investing here?

jamshedd commented 6 months ago

Sorry, I get that this is important to you and some other customers this has not made the cut because there's always other higher priorities that benefit a larger set of customers and we work on those first.

That said we've not forgotten this so we're exploring the possibility of a partnership with Winget to achieve the same outcome. As you know the .NET runtime is already on Winget so we're exploring the possibility of exposing that endpoint as a dependency for Store apps.

MatthewSteeples commented 6 months ago

@jamshedd Depending on how you manage to bundle it there may be an issue: MSIX and Store apps don't require administrative privileges to install, but installing the .NET Runtime through WinGet does. Just something to take into consideration.

jamshedd commented 6 months ago

@MatthewSteeples, thanks for flagging the elevation issue, we will need to consider this.

ekalchev commented 6 months ago

I see there are recommendations of using self-contained deployment to work around the lack of framework package for .net runtime. We did that for our product and now we decided to use new and shiny background tasks in WinRT and guess what? Microsoft documentation states that background tasks are not supported in self-contained deployments. So framework dependent deployments are completely unusable for desktop apps, because we can't guarantee the framework will be present, because of the lack of framework package but self-contained deployments don't support core functionality as COM servers. This is embarrassing Microsoft. You failed us once again.