Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSIX installer #61793

Open
petroemil opened this issue Oct 25, 2018 · 57 comments
Open

MSIX installer #61793

petroemil opened this issue Oct 25, 2018 · 57 comments
Assignees
Labels
feature-request Request for new features or functionality install-update VS Code installation and upgrade system issues windows VS Code on Windows issues
Milestone

Comments

@petroemil
Copy link

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
Copy link

vscodebot bot commented Oct 25, 2018

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

@vscodebot vscodebot bot added the install-update VS Code installation and upgrade system issues label Oct 25, 2018
@joaomoreno
Copy link
Member

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?

@joaomoreno joaomoreno added the info-needed Issue requires more information from poster label Oct 25, 2018
@petroemil
Copy link
Author

@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.

@joaomoreno joaomoreno added feature-request Request for new features or functionality windows VS Code on Windows issues and removed info-needed Issue requires more information from poster labels Oct 25, 2018
@joaomoreno joaomoreno added this to the Backlog milestone Oct 25, 2018
@alexhass
Copy link

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
Copy link

alexhass commented Nov 12, 2018

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
Copy link

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

@okieselbach
Copy link

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
Copy link

alexhass commented Nov 13, 2018

@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
Copy link

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
Copy link

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

I had already started this work with #59152

@alexhass
Copy link

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
Copy link

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.

  • The result is a setup that has no features at all.
  • The current MSI installer I shared has 128 features and allow you to select/deselect every single file association. There may be conflicting file association with other software.
  • MSIX seems to be a one button setup. Ok, for beginners this may be ok as it is easy to install with just one click, but in real live I need full controll over features.
  • The icons is completly broken as it is transparent - no idea where it is extracted from - maybe from code.exe. But this may be fixable with some work.
  • You cannot select if code will be added to path via features.
  • File context menu cannot enabled/disabled via features.
  • Folder context menu cannot enabled/disabled via features.
  • Start menu shortcut cannot enabled/disabled via features.
  • Desktop shortcut cannot enabled/disabled via features.

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
Copy link
Author

@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
Copy link

gjsman commented Dec 8, 2018

#10759 (comment) is closer...

@bluikko
Copy link

bluikko commented Mar 25, 2019

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

Please put it to the roadmap!

@janparttimaa
Copy link

janparttimaa commented Oct 17, 2019

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

@bluikko
Copy link

bluikko commented Oct 17, 2019

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
Copy link

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
Copy link

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
Copy link

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

@cconrado
Copy link

Yes, need this

@MathiasMagnus
Copy link

@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
Copy link

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
Copy link

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

@alexhass
Copy link

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

@seilermi
Copy link

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

@MathiasMagnus
Copy link

@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
Copy link
Member

sbatten commented Aug 27, 2020

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
Copy link

claell commented Sep 29, 2020

@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.

@joaomoreno joaomoreno removed their assignment Nov 11, 2020
@tony-tone
Copy link

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
Copy link

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
Copy link

Bump. Any update?

@felipecrs
Copy link
Contributor

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
Copy link

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
Copy link

bluikko commented Nov 2, 2021

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
Copy link

alexhass commented Nov 2, 2021

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
Copy link

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

@belibug
Copy link

belibug commented Jan 18, 2022

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

@JimMoyle
Copy link

MSIX (or AppX) would make vscode available to Desktop Virtualisation users via App Attach.

This would give large organisations the ability to deploy vscode without installing it with full fidelity to an installed application.

@MathiasMagnus
Copy link

Packaging as MSIX (and updating via the Store mechanism) would automatically solve VS Code not caring about metered connections. IMHO that 76 MBs may have waited until I get WiFi.

@StephenHodgson
Copy link

Another advantage of using MSIX installer is that the Open in VS Code context menu would appear in the new modern windows 11 context area without having to expand to more options. Check out this blog post detailing the requirements.

@MattBDev
Copy link

I wish we could get a reason as to why this is still on the backlog. This seems very trivial to add since they have already added a sparse manifest.

@AkazaRenn
Copy link

Based on my experience with VS Code as a Flatpak, it might not be very helpful to deploy it as MSIX. An exception could be it is only used to access remote machines, then you could try tunnel + vscode.dev PWA.

@alexhass
Copy link

MSI Installer is much more important and vscodium has implemented it. This can be ported easily.

@oppressor1761
Copy link

Also pls use Appcontainer when packaging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality install-update VS Code installation and upgrade system issues windows VS Code on Windows issues
Projects
None yet
Development

No branches or pull requests