microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
162.65k stars 28.68k forks source link

MSIX installer #61793

Open petroemil opened 5 years ago

petroemil commented 5 years ago

After 2 years of conversation in issue #10759 (Release in the Windows Store) I think this is the right time to reevaluate the request.

What we originally wanted is all the goodness of UWP lifecycle management (clean install/uninstall and updates received in the background without having to run the app), but now it's possible outside of the Store with MSIX packaging without having to comply with some of the stricter rules of the Store and resource/capability management of UWP apps.

So the proposal is simple: Please make an MSIX installer for VS Code even if it's not distributed through the Store (for numerous technical reasons).

As a first step, Windows 10 users would benefit from it, later, as MSIX is designed to be cross-platform, it can evolve into the only installer format on all platforms (Linux, macOS, Windows 7+) and as the Store evolves, it can be a good foundation to potentially publish VS Code to the Store.

vscodebot[bot] commented 5 years ago

(Experimental duplicate detection) Thanks for submitting this issue. Please also check if it is already covered by an existing one, like:

joaomoreno commented 5 years ago

but now it's possible outside of the Store with MSIX packaging without having to comply with some of the stricter rules of the Store and resource/capability management of UWP apps.

Can you elaborate on this?

petroemil commented 5 years ago

@joaomoreno MSIX gives non-Store apps all the lifecycle-management of Store apps. An app packaged up as MSIX doesn't have to be published to the Store, you can just share the .msix file as you'd do with any other installer and people can download and install it to their machines.

You get the clean install/uninstall, you get background updates and you can still keep your freedom and talk to command line tools like the .NET Core SDK or Git and attach to running processes to debug them, etc. - things you probably wouldn't be able to do if you'd want to publish the app to the Store.

alexhass commented 5 years ago

Is it possible to have per machine only installations?

How are version distributed? Gpo?

Updates are controlled by admins and not by a releasy cycles that may published a broken version that disallow developers to work?

I hope we are not get another per user installer where the application gets auto-deleted when the user logs off and his roaming profile is cleaned from disk including all per user apps like the current per user installer.

alexhass commented 5 years ago

This requires Minimum Windows 10 Build 17701 or later. Is this min September 2018 or March 2019? Not sure about the build version.

There are a lot of users with Windows 7 around.

Looks not like a working solution for the masses in short or mid term.

alexhass commented 5 years ago

Is it correct that MSIX is the new name for previous AppX technology?

okieselbach commented 5 years ago

Microsoft wants to push MSIX for everything, why not making a kind of lighthouse project and bringing VSCode with a MSIX installer. Beneficial for users because of clean install and uninstall. Support of the proposed new MS installer way 👍, and sure a good PR sign to show. Look here we support MSIX, go ahead and provide MSIX installer for your application as well. Just my 2 cents. I would love to have it as MSIX installer.

alexhass commented 5 years ago

@okieselbach: Can you read? I said this is future musik. Check the dependencies yourself. MSIX should be done for sure.

But there are older windows 10/7 systems around. Until the MSIX can be used we need MSI. No way around. Ignoring is no option and I provided the vscode MSI installer to the vscode team.

Not your two cents, but mine.

saschanaz commented 5 years ago

https://github.com/Microsoft/msix-packaging#windows-7-support

MSIX has been advertised to be cross-platform, so there of course is Windows 7 support 👍

WilliamABradley commented 5 years ago

@petroemil According to this documentation MakeAppX.exe can create MSIX too.

I had already started this work with #59152

alexhass commented 5 years ago

Fascinating... just wonder how users should install anything on windows 7 as they have no permissions to install software per machine. There is no windows store on windows 7, too. And I cannot deploy an msix via active directory as software gpo only allows msi files.

alexhass commented 5 years ago

I just converted my vscode MSI setup to MSIX with new MSIX Packager in Windows 10 R1809. The converter first requires that you have a MSI setup at hand.

Enterprise need full controll about every file association and every feature that get's installed or not. MST customization files are the way to customize setups to your needs. Something ONLY possible with MSI and not with current InnoSetup and MSIX.

MSIX looks like a nice start for beginners, but the limitation of MSIX are just bad. Decission makers here should start listening and understand that we mainly need a full-fledged MSI setup and not this here.

petroemil commented 5 years ago

@alexhass MSIX is intentionally designed to be a streamlined (Click-Once-like) install experience. Most (if not all) of the settings you describe could be set as a "First Start" dialog or any time later from app settings.

gjsman commented 5 years ago

https://github.com/Microsoft/vscode/issues/10759#issuecomment-445425735 is closer...

bluikko commented 5 years ago

Absolutely stunned that an MS product does not have an MSI installer.

Please put it to the roadmap!

janparttimaa commented 4 years ago

33184 If MSIX-installer would be released, there is no need of MSI-installer, right? Ping @alexhass

bluikko commented 4 years ago

I'm not sure if MSIX can be used in AD Software Installation - if that is the case then MSI would be more widely useful than MSIX.

MatthewSteeples commented 4 years ago

https://docs.microsoft.com/en-us/windows/msix/group-policy-msix - according to here, group policy can not be used to deploy MSIX apps.

There are other alternatives though. InTune natively supports deploying them, and I wouldn't be surprised if you could install the AppX by some form of command (which you could trigger through GPO)

MathiasMagnus commented 4 years ago

I believe this part is touched upon the intro part of the MSIX-Labs tutorial series in the overview part. Watch the first video and seek to 17:25

ThomasRunting commented 4 years ago

I would love this for deployment via Intune for my highschool students

cconrado commented 4 years ago

Yes, need this

xmha97 commented 4 years ago

+1

alexhass commented 4 years ago

@janparttimaa an MSI installer is seriously still needed. MSIX cannot deployed via AD.

wenqiangx325 commented 4 years ago

Dose they release MSIX installer? I can find that was marked as completed in #97432, but in 6/11 they update VSCode and I can't find MSIX installer in the VSCode website, both stable and insider. How about the plan to release MSIX installer?

sbatten commented 4 years ago

Just to update everyone here. I am currently making progress on the exploration of an MSIX package for VS Code. We are still working through the hurdles of releasing such a package, but progress has been made. Note that we still intend to ship our other packaged formats for the variety of surface areas they support.

wenqiangx325 commented 4 years ago

Just to update everyone here. I am currently making progress on the exploration of an MSIX package for VS Code. We are still working through the hurdles of releasing such a package, but progress has been made. Note that we still intend to ship our other packaged formats for the variety of surface areas they support.

Would you release a MSIX install after 'Iteration Plan for June 2020'( #100100 ) finish? Or more time will be need? Thank you.

sbatten commented 4 years ago

@wenqiangxie There will not be an MSIX at the end of the milestone unfortunately. There are quite a few processes that we need to do that we don't have to do currently. Right now we are still enumerating and evaluating the impact of all of these changes that need to be made. For that reason, we are still in progress.

bluikko commented 4 years ago

Does an MSIX installer bring some value that an MSI installer doesn't?

MSI installer can be used in cases where MSIX is unsupported, so I would've expected MSI installer to be more useful.

wenqiangx325 commented 4 years ago

Does an MSIX installer bring some value that an MSI installer doesn't?

MSI installer can be used in cases where MSIX is unsupported, so I would've expected MSI installer to be more useful.

So why Microsoft release MSIX technology?

As for me, I love MSIX installer because MSIX doesn't change my system space as traditional installer, and if most software in my computer use MSIX installer, my system could be more clear. That not means VSCode harm my computer, but VSCode team of Microsoft, they could be the leader who use Microsoft new technology, the technology are more friendly and safe for user. If more and more companies use the technology, word of Windows will be more friendly and safe, more better.

And the changes with package a MSIX installer should be help VSCode to release to MS Store, The most friendly package manager of Windows user.

bluikko commented 4 years ago

I see, some of those are indeed somewhat useful features for home users.

Business environment would still benefit from an MSI installer for managed systems since MSIX is not supported by traditional deployment tools (including some from Microsoft).

With the "5,000+" open issues it may be futile to open an issue for MSI installer (if one doesn't already exist).

wenqiangx325 commented 4 years ago

I see, some of those are indeed somewhat useful features for home users.

Business environment would still benefit from an MSI installer for managed systems since MSIX is not supported by traditional deployment tools (including some from Microsoft).

With the "5,000+" open issues it may be futile to open an issue for MSI installer (if one doesn't already exist).

Have a MSIX installer or release to MS Store not means VSCode team should drop MSI installer, we can have both or more choose but not only one. In Windows, VSCode have exe installer, MSI installer and Zip archive. And most time I use a Zip archive(if have a MSIX installer, it's my new pick), but I never ask to drop official support of EXE installer and MSI installer.

And become more friendly and safe are so important of Windows. Windows not only server office in company or government with IT support, but for every one who have a PC and manage that by themselves.

bluikko commented 4 years ago

An MSIX installer provides marginal benefits for home users and none for business.

An MSI installer provides tangible benefits for businesses and marginal for home. The absence of an MSI installer is an actual problem for many while MSIX installer is barely a nicety.

wenqiangx325 commented 4 years ago

An MSIX installer provides marginal benefits for home users and none for business.

An MSI installer provides tangible benefits for businesses and marginal for home. The absence of an MSI installer is an actual problem for many while MSIX installer is barely a nicety.

But for many VSCode user, MSIX or MS Store is more better choose. And now, a good news is that VSCode team take official process for that. It's a big and good news for people who wait for MSIX installer and MS Store release, and those action never harm other people who choose others, such as who choose EXE installer, MSI installer even ZIP archive.

And that action help MSIX technology become better, help Windows become friendly and safe. And winget also have a better experience(many MSI or EXE installer will pop a window but MSIX not )

MathiasMagnus commented 4 years ago

@bluikko Do you install all you Android apps by going to a vendor's webpage, download the APK and install it manually? No. There's a centrallized, OS supported digital store you install from. MSIX enables just that.

lukeblevins commented 4 years ago

Rejecting Community Contributions

image

It's a shame that the Microsoft engineers behind this project rejected a community contribution last year which would make this possible. The extent at which new packaging technology is dismissed by those responsible for implementing it, as a consequence of their own selfish reasons is disappointing at best. Not to mention, it is unmistakably an act of unjust favoritism towards non-Windows platforms such as Ubuntu (Snap), which are used by very few of us, to cater to their modern package format and not ours's.

On behalf of the 450+ people who state they want an MSIX-packaged version of VS Code, we kindly request that @joaomoreno, et al. act like they support the native Windows packaging format, MSIX, by prioritizing all necessary changes to build infrastructure which enable this.

AkazaRenn commented 4 years ago

Now I'm curious how Microsoft internally think about MSIX lol

alexhass commented 4 years ago

The more shame is that I developed the full-fledged MSI setup and they simply closed the case.

seilermi commented 4 years ago

What is the status here? What is the next step?

MathiasMagnus commented 4 years ago

@seilermi This issue was on the list of exploration in the July plan but isn't on the August plan. Was a blocker hit?

sbatten commented 4 years ago

I mentioned above a set of processes that need to happen before shipping the MSIX installer would be possible. Those processes are taking place but we are not actively pursuing the installer itself until afterward.

claell commented 3 years ago

@sbatten Can you maybe add the corresponding issues to those processes here? (Ideally in the above description, maybe as a checklists or something)? Unfortunately GitHub does not seem to support blocker issues afaik, but that would be a good thing to use them, I guess. That way people interested can follow up there and maybe help with the effort needed to make this happen.

tony-tone commented 3 years ago

Advanced installer have categorised this as simple complexity. https://www.advancedinstaller.com/msix-ready-visual-studio-code.html

Its should be trivial for MS to create a MSIX package

vitordelucca commented 3 years ago

Any update this? It's pretty absurd a not complex app (we are not talking about full Visual Studio!), not having msix option.
Remember the times when Microsoft actually dogfooding their products?

MattBDev commented 3 years ago

Bump. Any update?

felipecrs commented 3 years ago

The cool part IMO is that, if VSCode do the needful to make Electron apps work properly when packaged as MSIX, probably other Electron apps can follow the same, such as MS Teams and Discord, paving their way to MS Store.

AsciiWolf commented 2 years ago

Please, consider distributing the official Visual Studio Code installer for Windows as msi or msix instead of a exe binary blob. Distributing installers as exe is a bad practice from security standpoint.

bluikko commented 2 years ago

Please, consider distributing the official Visual Studio Code installer for Windows as msi

MSI offers the superset of features provided by EXE. Should there be an MSI installer, then EXE would probably be not needed at all anymore. At least I do not see any reason for it to exist if it increases workload.

alexhass commented 2 years ago

That is correct. Exe is not needed at all if MSI exists. Aside - the installer I provided also removed the need to have separate installers for „per user“ and „per machine“. The installer code has implemented all-in-one setup.

looks like there is high demand for msi setup.

maciekcar commented 2 years ago

It would be great to have an MSIX installer! (And available through Microsoft Store!)

belibug commented 2 years ago

This will make it easy for app attach on Azure Virtual Devices.