[wpkg-users] Excluding particular OS and architecture types from patch application
Lukasz Zalewski
lukas at dcs.qmul.ac.uk
Wed Apr 28 16:15:40 CEST 2010
On 28/04/2010 13:59, Rainer Meier wrote:
> Hi Lukas,
>
Hi Rainer,
> On 28.04.2010 14:00, Lukasz Zalewski wrote:
>> I was wondering if it would be possible to add an option to package
>> definition which will apply a patch to only particular OS version(s)
>> ignoring others, i.e. applying patches to XP only, or Windows 7 or
>> Vista, maybe with the architecture as well
>> e.g.
>> <applyToOS condition="equal" target="Windows XP" architecture="x86"/>
>> <applyToOS condition="lessorequal" target="Windows Vista"
>> architecture="AMD64" />
>> <applyToOS condition="greaterorequal" target="Windows 7"/>
>
> A similar request has been pushed to the list recently. See
> <http://lists.wpkg.org/pipermail/wpkg-users/2010-January/006209.html>.
I quite like the above but i see two issues with it:
1. It would make the package seem to be installed and appear in local
wpkg.xml file although the package does not exist on the target machine.
2. It would not be processed during the upgrade stage hence executing
the upgrade cmd - in most cases it would result in failed install but
could have more serious implications (do correct me if im wrong -
increasing the revision does not perfomr checks it executes the upgrade
section and then checks if the conditions are met)
>
> First of all I am still not convinced that this is the right way to go. It
> increases complexity of package trees and wpkg.js while some information might
> be hard to retrieve by WSH or not available at all. In addition it's pretty easy
> to create a package which does not apply any software to a system with an
> architecture not matching. Please see the post I linked above.
>
> The required sample scripts which can be re-used for almost any application can
> be found here
> <http://rapidshare.com/files/381162609/Microsoft_Internet_Explorer_8.zip.html>.
>
I think the beauty of wpkg is that it has a lot of built-in logic to
perform various checks for various scnearios making upgrading and
maintaning a large number of packages a breeze. Before moving to wpkg we
had a in-house system that had most of the logic placed in the package
scripts themselves - It took significant ammount of time to write and
test those scripts - as you mentioned, the IE8 scripts in the link above
could be used as a template but still will have to be modified to suit
needs of a particular package, hence increasing the number of scripts
that would have to be maintained (this is besides main .xml package
definition) and having scripts-that-invoke-scripts dependency. It would
be nice to avoid writing complex cmd scripts for logic that could be
incorporated in the wpkg itself
> br,
> Rainer
This feature might not be for everyone but IMHO its a veryh very useful
feature to have.
Kind Regards
Luk
P.S. In addition (sorry for being so cheeky) it would be nice to have
arch="" in install, upgrade and remove <install arch="x86|AMD64">. I
know one can use if %PROCESDSOR_ARCHITECTURE% == "x86" but it would
remove some of the duplicated code and reduce possibility of a mistake
(i did have a typo in the above statement and could not figure out why
it fails)
More information about the wpkg-users
mailing list