element-desktop icon indicating copy to clipboard operation
element-desktop copied to clipboard

Option to install Riot electron under Windows in Program Files rather than Local

Open ara4n opened this issue 9 years ago • 26 comments

ara4n avatar Dec 24 '16 21:12 ara4n

would simply be a question of enabling msi output on squirrel.windows, build would have to be done twice for Windows (one for silent installing exe and one for msi)

t3chguy avatar May 08 '17 18:05 t3chguy

This would also help with RDS support I believe

turt2live avatar Feb 15 '19 00:02 turt2live

So uh yeah can we revisit this topic please? it's well over 2 years later now, and the installer is only installing in the user profile right now. Some people are even getting confused with how streamlined it is.

So, I think we should:

  1. Add options as to how it's installed (user profile/all users)
  2. Make the installer clearly say something like "Installation complete!", as right now it just closes without any indication of success/failure.

Also, installing for all users means the credentials will need to be securely stored inside the user profile, including E2E keys.

BloodyIron avatar Mar 12 '19 21:03 BloodyIron

@BloodyIron the update mechanism (Squirrel) simply does not support it: https://github.com/electron-userland/electron-builder/issues/605 NSIS is not being used due to issues caused by it doing a full uninstall followed by a full install and calling it an "Update" iirc

t3chguy avatar Mar 12 '19 21:03 t3chguy

NSIS? Nullsoft Scriptable Install System?

So each user needs to install it themselves on a multi-user system?

BloodyIron avatar Mar 12 '19 21:03 BloodyIron

the NSIS mode in electron-builder anyway

t3chguy avatar Mar 12 '19 21:03 t3chguy

Has any thought been put to a UWP/PWA version of Riot in the Windows Store? Could even help discoverability there. Potentially opens up running on Xbox as well that way (unsure if there would be demand for that).

LoneFenris avatar Mar 14 '19 19:03 LoneFenris

Seems like appx is only supported under nsisWeb mode on electron-builder which as outlined above is undesired for other reasons

t3chguy avatar Mar 14 '19 22:03 t3chguy

I think I was actually suggesting forgoing electron for Windows and making use of either the WebView in UWP or the ability to package a PWA as an appx. However, since the update process appeared to be reason to avoid NSIS, it's worth asking does that problem still apply when the MS Store would be handling the updates?

LoneFenris avatar Mar 14 '19 23:03 LoneFenris

I have used Rocket.Chat so far. Again, Electron is the base, but I have a /allusers switch here and even get an MSI installer that allows me to deploy the application comfortably in the organization. So the problem seems to be solvable. It would be great if there was such an installer for element-desktop as well.

https://github.com/RocketChat/Rocket.Chat.Electron/

stroetgen avatar Feb 17 '22 15:02 stroetgen

Would be good to be able to install element on a secondary drive or a different drive of my choosing.

ThePharaohArt avatar Jul 29 '22 20:07 ThePharaohArt

Seems like appx is only supported under nsisWeb mode on electron-builder which as outlined above is undesired for other reasons

MS store now allows win32 apps, Discord which i think is installed in a similar way to Element is available at the moment on the MS store. https://developer.microsoft.com/en-us/microsoft-store/desktop-apps/

ThePharaohArt avatar Jul 29 '22 20:07 ThePharaohArt

https://winget.run/pkg/Element/Element

RokeJulianLockhart avatar Dec 30 '22 00:12 RokeJulianLockhart

@t3chguy Any guide how to enable MSI build ? Can I pass the homeserver as silent parameter ? Thank you in advance

AnassDriate avatar Mar 17 '23 15:03 AnassDriate

@AnassDriate https://github.com/vector-im/element-desktop/pull/387 - you can pas homeserver during build via a custom config.json - https://github.com/vector-im/element-desktop#config

t3chguy avatar Mar 17 '23 15:03 t3chguy

@t3chguy Thank you for your replay.

Regarding the msi, i managed to build it but it intsall the app in LOCAL path. My goal is to install the app in system/program files.

Am I missing something?

By the way i tried to install the exe with --profile-dir (program files) does not work.

AnassDriate avatar Mar 17 '23 17:03 AnassDriate

--profile-dir is a runtime flag, not an installation flag

The MSI requires admin privileges and installs into Program Files, if you have an exe then it isn't an msi

t3chguy avatar Mar 17 '23 17:03 t3chguy

@t3chguy

Thank you for the clarification about --profile-dir .

I have admin privileges and I have Both .exe and .msi ( sorry if it was not clear).

I will give it retry, i keep you updated.

Thank you

AnassDriate avatar Mar 17 '23 17:03 AnassDriate

As you can see in the screenshots in https://github.com/vector-im/element-desktop/pull/387 the installation is directly into C:\Program Files\Element so it must be something going on with your build. Are you definitely specifying perMachine=true as per the diff in that PR?

t3chguy avatar Mar 17 '23 17:03 t3chguy

I just add it but it triggers an issue in my CICD

Please provide more detail than "an issue"

t3chguy avatar Mar 17 '23 17:03 t3chguy

Actually, your JSON looks wrong. You have "msi" in the "win" block where it should be its own sibling block.

image

t3chguy avatar Mar 17 '23 17:03 t3chguy

@t3chguy

You are right the json was wrong.

I manged to build and install the msi correctly. everything works as expected.

Thank you very much.

Regards,

AnassDriate avatar Mar 17 '23 18:03 AnassDriate

What about MSIX rather than APPX? Is it in any way less stringent?

RokeJulianLockhart avatar Apr 18 '23 21:04 RokeJulianLockhart

What about MSIX rather than APPX? Is it in any way less stringent?

It doesn't look like electron-builder has MSIX support - https://github.com/electron-userland/electron-builder/issues/5021

t3chguy avatar Apr 18 '23 23:04 t3chguy

@t3chguy, https://github.com/tom-james-watson/breaktimer-app/issues/223#issuecomment-1509643236. Microsoft provides some ridiculously easy-to-use GUI applications to do so, and it can be automated.

RokeJulianLockhart avatar Apr 21 '23 20:04 RokeJulianLockhart

Similar response as to that thread, you're more than welcome to maintain an MSIX package yourself. Community packages drive open source forward. We can't feasibly maintain all the various packages users want to any level or standard. The line has to be drawn somewhere and right now it's the intersection of what electron builder has native support for and we have experience in maintaining within the team. We're more than happy to help as much as we can. We moved all our packaging into github actions to make it more transparent and reproducible.

t3chguy avatar Apr 22 '23 00:04 t3chguy