Archive: new ideas for NSIS :)


new ideas for NSIS :)
Here are two features from a french nsis user :)

* ability to show a Welcome and a FInish page during uninstall (i didn't find anything about that in the doc.. :() !
* to choose whether to show or not 'time left' during file copy ...

Cya ;)


Time estimation:

http://forums.winamp.com/showthread....highlight=time

It basically says no because it's impossible. It is pretentious to say it's possible. For a normal time estimation one will have to bench all HDs used by installation, miraculously calculate the time required for any executed programs to run and the time that each Windows API call will consume. All of this, assuming nothing else will get in the way and add time and that nothing is cached or there are no weird accelerators running in the background. NSIS does hell of a lot more than just extract, it's impossible to estimate the time left.

As for welcome and finish pages, Joost will answer that.


You say that Windows Installers are almost always wrong with their time remaining calculations. It mostly takes less time than predicted. This will give the user the feeling that his system is very fast, or that the installer is very fast ;).
But could the installer have a constant 'initial time per byte' to calculate the time remaining, then install the first file, measuring the time that it costed. The number of bytes divided by the time returns the new 'time per byte', which is more accurate. Use this for every file, and, as the installation progresses, the time is more precise.

Just an idea. If you gonna tell me that for a small file the 'time per byte' is lower than for a big file, then ignore me please.


NSIS does hell of a lot more than just extract, it's impossible to estimate the time left.

About time :

i searched fot time left.. and didn't found anything :( Sorry about that :( !
By the way, i though too that displaying the time left was quite hard.. but, i tought you could know any tips to calculate it .... ;)

Well, by the way, i'm currently watching the first episodes of John Doe ... niiiice :p ;) :D ! Well, that has nothing to deal with NSIS :p

I'll wait Joost 's answer about MOdern UI ;)

thaaaaanks


Welcome and Finish pages are only available for the installer.

The uninstaller already has a confirmation page. And the user probably wants to check the uninstall log, so the Finish page is also not useful.


Just an idea:
Could NSIS make a fake installation run, and use that elapsed time to calculate the time in future installations?

(please, don't answer "it's impossible to...")


Originally posted by n0On3
Just an idea:
Could NSIS make a fake installation run, and use that elapsed time to calculate the time in future installations?

How would that work? There are so many variables that there is no way to tell what state the users machine is in at the time of the install that would help you estimate this. You would need to know hundreds of variables, almost all of which are not available from the installer.

My idea was something like: it took 60 seconds to install in this level 2 machine, so when installing in a level 4 it will take 30.

The machine 'levels' would be specified beforehand with things like MHz and HDD speed.

I know that this wouldn't work perfectly (which is what a programmer always wants), but this feature is not for geeks and I like to think about them.

For me this feature is one step beyond the progress bar (which can be as erroneous as the time suggested feature).

It really doesn't matter if the seconds reported in the beginning of the installation are erroneous, what matters is that that number decreases to zero when finished.


Any kind of progress bar that doesn't accurately report the time remaining is worse than useless. Progress in terms of stages completed is more useful, even if you don't know the length of the stages concerned, since the stages done/stages total can never be wrong.


You might be able to solve this by telling the user a very rough estimation, like:

'Connecting to website. This may take a few seconds.'

'Downloading file (100 bytes of 12 Mb). This may take a while.'

'Installing NSIS. This may take a few minutes.'


Hmm, perhaps web browsers are a good example. When downloading a file, the time remaining is an estimate calculated based on the portion download so far and time elapsed. Of course, download speed fluctuates, so the estimate is adjust accordingly. Also, the estimate does not even show up until enough data has transfered to make a reasonable guess.

NSIS does do more than extracting, but for most installs extracting is the most time consuming part.

Just a thought.

kz


This is a heated discussion.

GetRight (can) use 'About 2 minutes remaining', which looks better than (like IE when downloading): '2 minutes, 22 seconds remaining', which isn't even accurate.

But I agree with the fact that there should be an remaining time counter visible.


Just another improvement... surely much more easier to do ! Instead of a percentage when launching the installer, would it be possible to choose between (or just to use) this and a progress bar (which is more ergonomic ;) ) ?
Note : this is JUST an idea :D


A percentage count for file extraction is already in the todo list.