tags:

views:

876

answers:

2

The default license for an MSI generated by WiX is the common public license. How do I change this to GPLv2?

+9  A: 

To answer my own question, the WixVariable XML node can be used.

<WixVariable Id="WixUILicenseRtf" Value="path\License.rtf" />

And here's a few others...

<WixVariable Id="WixUIBannerBmp" Value="path\banner.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="path\dialog.bmp" />
<WixVariable Id="WixUIExclamationIco" Value="path\exclamation.ico" />
<WixVariable Id="WixUIInfoIco" Value="path\information.ico" />
<WixVariable Id="WixUINewIco" Value="path\new.ico" />
<WixVariable Id="WixUIUpIco" Value="path\up.ico" />

Just a note about the GPLv2, officially it's only available in TXT, when converted to RTF using something like WordPad, the hard coded new lines make for an untidy view in the MSI.

nbolton
+1  A: 

Also worth mentioning is that you can provide variables on the command line, very handy when building localized MSI packages.

Example NANT code:

<light out="setup_${language}.msi"
  extensions="WixUIExtension"
  cultures="${language}" >

  <arg line="-loc &quot;setup-${language}.wxl&quot;" />
  <arg line="-dWixUILicenseRtf=EULA_${language}.rtf" />

  <!-- etc... -->

</light>
sascha
Nice! I'll have to try this. I assume these arguments will work with...light foo=bar... for example.
nbolton
Don't forget the -d, e.g. "light -dfoo=bar"
sascha

related questions