Hi Falko Falko Trojahn wrote: > Firefox updated itself, e.g. to Revision 2.0.0.13. Next time Wpkg starts, > the uninstall check looks for 2.0.0.12 (which of course is missing then) > and > reinstalls the old version, until the xml on the server is updated, too. This is true - but non-admin users cannot do the auto-update (most users should be non-administrators). This is exactly the intended behavior. The Administrator decides which version is to be installed. As long as 2.0.0.12 is the supported version it should be installed (and not another one). In case the administrator decides that 2.0.0.13 is allowed as well (but not distributed) he might just extend the package check and add 2.0.0.13 version as valid as well (even without actually installing it). > If I remember right, this hasn't been so with 0.9.x versions of wpkg. This I don't know - but if it was like this, then I would consider it as a bug. Leaving 2.0.0.13 installed (while 2.0.0.12 is actually not installed any more) is not the intention of a system administrator. > So, setting 'execute="once"' in the firefox packages would prevent this? Yes, in this case the check will not be done on each synchronization. So no matter if the user removes or upgrades the supported version WPKG will not take any action (just assuming 2.0.0.12 is still in place). NOTE: WPKG will also not re-install in case the user removes FF completely. > Other possibilities I could imagine are: > - disable autoupdate in prefs.js (which I won't prefer for security reasons) Why not? The system administrator decides which version is to be used in hes environment and which version is tested and compatible with corporate environment. Sometimes (most often) compatibility checks take somewhat more time than 5 minutes - so sysadmins might not like that all users automatically upgrade to any new version immediately. Additionally FF (AFAIK) fixed this strange behavior that it is downloading and trying to install an update even if the user has no rights to install it (non-admin). Therefore normal users are not asked to upgrade by FF itself. > - include logical "or" check for the next Revision, e.g. 2.0.0.14 within > the recent 20013 package (see here: > http://wpkg.org/Firefox#Firefox_with_extensions_and_default_profile) Yes, this is an option - as outlined above. I still think it's not the best option to give this choice to the user. The Administrator should actually take care of the upgrade itself. By the way - this "problem" is only caused by software packages which use their version number within the uninstall entry in the control panel. Actually I think applications should NOT use the version within the description string there. Most applications don't do (especially not showing patch-revision within this string). For example Pidgin is not showing up as "Pidgin 2.4.0" it is just showing up as "Pidgin". A check for uninstall values will therefore be true for all custom upgrades done by the user itself. If you need to limit to a specific version you can add another check which is verifying the pidgin.exe version. The opposite you can do for your FF package. If you don't want to verify that a specific FF version is installed (which is inherently done when checking for the uninstall entry which contains the version number) then just check for the file _existence_ (not version) of the firefox.exe file. In case the users completely deletes FF, WPKG will notice and re-install the default version. In case the user upgrades by himself, then firefox.exe will still be there (assuming that FF is not changing the binary name *g*). WPKG will not actually verify the installed version number in that case and assume that 2.0.0.12 is still properly installed (checks yield true). In case the administrator decides to roll out 2.0.0.13 he simply upgrades the package. WPKG will install it. This should work no matter if 2.0.0.13 is already installed or not. As the check still only checks for firefox.exe everything is fine. I would call such a check a kind of "lazy verify". However in most cases I think corporate Administrators want to know exactly which versions are installed and enforce exactly this software revisions. Allowing each user to use any newer (uncertified) version of any application creates a real support nightmare. Final word... I think WPKG 1.0+ behaves correctly here since it allows full control of the application revision while still allowing administrators to specify lazy checking by using any kind of check which does not verify the version number. > What do you think? See above ;-) > BTW: > * Is there a chance to do something like a "include" in xml (see the > template package in the above link for repeating parts of packages)? I don't think this is easily possible. WPKG web-gui could provide such a thing probably... > * Does your way of installing firefox using unattended.cmd prevent the > old-version-install? No. As I wrote above - if WPKG is configured to verify the version and executes the unattended.cmd script then I assume it is my real intention to enforce this version to be installed. If not, I just make sure that the checks are true no matter which version of FF the user installed. Of course you can also modify unattended.cmd to do some additional checks (for example checking that the version is 2.0.0.12 or higher, and NOT lower) and then skip installation. However this is truly application specific since this checks will look different for each application. So it's entirely correct to move them to a FF-specific unattended.cmd. The only drawback in this case would be that the checks of WPKG would always return false (uninstall entry not available) and then call unattended.cmd which probably skips installation completely as a newer version is already installed. I know this would be a very quick execution, but nevertheless it would require invoking of unattended.cmd each time unless the admin is going to upgrade the package. Therefore I really recommend in your case just to check for the existence of firefox.exe. With WPKG you can even speify a check for version equal or greater. So check firefox.exe for version equal or greater than 2.0.0.12 - but this I did not try. Checking for existence is probably enough for you. Again: I do not recommend this for all system administrators as it allows variations in the working environment (which you usually want to prevent when certifying and rolling out software from a central point, which is the main intention of WPKG). Small side-note: There is a change request which request an extension to allow version checking of the uninstall entry as well. This will probably be part of WPKG 1.1+. Unfortunately I just checked and Firefox is using a version string like "2.0.0.13 (en-US)". I think it's an absolutely bad idea to put " (en-US)" to the version string - while keeping the version number within the uninstall string as well ("Mozilla Firefox (2.0.0.13)"). This would make a version equal check more difficult for this specific package. But for lots of other packages this might improve the situation. For FF it will anyway not help unless they finally remove this silly version tag from the uninstall entry. br, Rainer |