17

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

JasonMArcher
  • 14,195
  • 22
  • 56
  • 52
Nick Bolton
  • 38,276
  • 70
  • 174
  • 242

2 Answers2

38

The WixVariable XML element 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.

Peter Mortensen
  • 30,738
  • 21
  • 105
  • 131
Nick Bolton
  • 38,276
  • 70
  • 174
  • 242
6

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>
saschabeaumont
  • 22,080
  • 4
  • 63
  • 85