[wpkg-users] Can WPKG install packages while user is at desktop

Rainer Meier r.meier at wpkg.org
Wed Mar 26 21:35:36 CET 2008


Hi Adam,

 > My understanding is that even with execute="once", when the revision
 > is incremented, it will rerun the check/install/upgrade.  am I
 > mistaken?

What do you mean by "it will return".
Let me explain the 1.0+ algorithm regarding this:

If execute="once" is set:
- if the package is not installed (not in local wpkg.xml)
   - execute checks to verify if software is actually already there
     - if yes, add it to wpkg.xml
     - if no, install it and add it to wpkg.xml
- if package is installed (entry in wpkg.xml already exists)
   - check revision
     - if new revision is available => upgrade and update wpkg.xml
     - if revision on server is equal or lower => skip, leaving entry

If execute="once" is not set:
- if package is not installed (not in wpkg.xml)
   - execute checks to verify if software is actually already there
     - if yes, add it to wpkg.xml
     - if no, install it and add it to wpkg.xml
- if package is installed (netry in wpkg.xml already exists)
   - check version
     - if new revision is available
       - upgrade
       - add to wpkg.xml
     - if revision on server is equal or lower
       - execute checks to verify software is installed
         - if installed, skip
         - if checks fail, re-install



So proper checks will on one side speed up installation of a package in 
case the software is already there (it will not be re-installed if it is 
already installed). And on the other side it will make sure that the 
application is really installed on each WPKG execution in case 
execute="once" is not set.


So again. execute="once" is used to tell WPKG that a package is a 
one-shot installation. Kind of "fire-and-forget". No matter if the user 
is going to uninstall it or not - it will not be verified. Unless the 
user removes the package manually from the local wpkg.xml (but this is 
not done by uninstall procedures of any application).

Hope that clarifies slightly the (quite complex) algorithm behind.
This algorithm is also the reason why I am very careful when touching 
the install method within wpkg.js. There are really a lot of special 
cases and flags taken into account.

br,
Rainer



More information about the wpkg-users mailing list