-
-
Notifications
You must be signed in to change notification settings - Fork 929
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
Replace NSIS by Inno Setup installer #2102
Conversation
62103f7
to
b0081c6
Compare
Now is more or less ready. Some things to notice:
For the rest, it is ready to be tested in depth by the users, to see if I forgot something... |
After playing with it, I've more info to share. Some others benefits:
|
Nice job! @McGiverGim I'm also suffering this slow installation issue, I thought that was my hardware issue. Glad to know! But I see that the zh_TW translation is not the same as zh_CN version. zh_TW version seems based on an older version. I think I need to check it by myself, otherwise it might tears the user experience. How can I “elegantly” review this Chinese translation lively? Can we have a "live" version for this? |
I think that yes, but step by step. First we need to merge this, and after that see if we have some way to use translations for this. |
Doing more tests with users without admin privileges... the problem is Windows 10 and no Inno Setup... In Windows 10, if you start the uninstaller from the Settings app (and not from the Control Panel), it will always be started with the administrator privileges. I've tried to uninstall it from the Control Panel directly and it worked perfectly. The user can uninstall it. If we want we can add directly an uninstall icon to the programs group too, I suppose it will work too. So the latest big problem for the migration I think has been solved. |
Added uninstall shortcut for non admin users. Windows 10 hides this icon, but is there. Now in the right button of the executable shortcut appears an "uninstall" option that goes to the add/remove programs Panel Control option. An ugly workaround is to add this uninstall icon twice with two different names... But I think is not necessary. |
Kudos, SonarCloud Quality Gate passed! 0 Bugs No Coverage information |
After doing a lot more of tests, only one thing remains:
|
I think changing this is a good idea, if it gets us out of the dilemma we are having in NSIS with respect to how to deal with files to uninstall. |
@@ -60,6 +60,7 @@ | |||
"universal-ga": "^1.2.0" | |||
}, | |||
"devDependencies": { | |||
"@quanle94/innosetup": "^6.0.2", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the reason to not use the innosetup
package, which seems to be a lot more commonly used than this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because it is outdated. It is using version 5 and not 6. Several users asked to update but the developer seems not answer, so I search for one fork (there are several, all of them the same fixing precisely the version).
If at some time the original code updates we can change the library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
Interesting that the vast majority of users is still using the innosetup
package.
@McGiverGim: Is this ready to be merged? |
I think that yes. Only need to decide what to do with the uninstallation each release but this can be done later. |
Fixes #1750
Follow up of #1755
The actual installer is too slow as analyzed in the PR. There we proposed some solutions but I don't see any of them good enough. Pass from the actual system to a new one that erases the complete folder has some risks and the NSIS code is not too easy...
I decided to spend some hours with Inno Setup, another tool to make installers.
It has several benefits:
Some cons:
This code works as is, some things pending:
Add languages, only English and Spanish are now available.Now the uninstaller of the old NSIS version is executing before starting the install wizard but it does not wait until it finish for some strange reason.Test with users with and without admin rights.Other little adjustments to texts, images, icons, etc.Before spending more hours fighting against all of this, I want to know if the migration from NSIS to Inno can be an accepted solution, this is the reason why I opened this PR in a draft form.
What do you think @mikeller ?