xenadmin/WixInstaller/XenCenter.wxs
Gabor Apati-Nagy 5e8c3b4f62 CP-15402: Replaced existing to a new, html-based Home Page
* Changed the installer to use the (yet) manually generated MHT file that encapsulates all the source files of the HomePage, so we don't have to have the installer to deploy every single file, so have changed the installer as well. This also makes branding easier.
* Added the license to the LegalNoticesDialog

Signed-off-by: Gabor Apati-Nagy <gabor.apati-nagy@citrix.com>
2016-02-15 15:37:21 +00:00

349 lines
23 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) Citrix Systems Inc.
All rights reserved.
Redistribution and use in source and binary forms,
with or without modification, are permitted provided
that the following conditions are met:
* Redistributions of source code must retain the above
copyright notice, this list of conditions and the
following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other
materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
SUCH DAMAGE.
-->
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:netfx="http://schemas.microsoft.com/wix/NetFxExtension">
<?define ProductVersion="1.0.0" ?>
<?define UpgradeCode="{[BRANDING_XENCENTER_UPGRADE_CODE_GUID]}"?>
<?define ProductCode="{65AE1345-A520-456D-8A19-2F52D43D3A09}"?>
<Product Id="$(var.ProductCode)" Name="[Citrix] [XenCenter]" Language="$(env.WixLangId)" Version="$(var.ProductVersion)" Manufacturer="[BRANDING_COMPANY_NAME_LEGAL]" UpgradeCode="$(var.UpgradeCode)">
<Package Description="[Citrix] [XenCenter]" Comments="none." InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="XenCenter.cab" EmbedCab="yes" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder">
<Directory Id="Citrix" Name="[Citrix]">
<Directory Id="INSTALLDIR" ShortName="XenCente" Name="[XenCenter]">
<Component Id="ReportViewer" Guid="[BRANDING_REPORT_VIEWER_GUID]">
<File Id="MicRepVwrCmnDLL" Source="..\XenAdmin\ReportViewer\Microsoft.ReportViewer.Common.dll" />
<File Id="MicRepVwrPrcObjDLL" Source="..\XenAdmin\ReportViewer\Microsoft.ReportViewer.ProcessingObjectModel.dll" />
<File Id="MicRepVwrWFDLL" Source="..\XenAdmin\ReportViewer\Microsoft.ReportViewer.WinForms.dll" />
<File Id="HostHealthHistoryRDLC" Source="..\XenAdmin\ReportViewer\host_health_history.rdlc" />
<File Id="PoolHealthRDLC" Source="..\XenAdmin\ReportViewer\pool_health.rdlc" />
<File Id="opt_perf_histRDLC" Source="..\XenAdmin\ReportViewer\optimization_performance_history.rdlc" />
<File Id="vmMovementHistoryRDLC" Source="..\XenAdmin\ReportViewer\vm_movement_history.rdlc" />
<File Id="vmPerformanceHistoryRDLC" Source="..\XenAdmin\ReportViewer\vm_performance_history.rdlc" />
<File Id="PoolHealthHistoryRDLC" Source="..\XenAdmin\ReportViewer\pool_health_history.rdlc" />
<File Id="ReportConfigXML" Source="..\XenAdmin\ReportViewer\reports.xml" />
<File Id="ResourceReportRDLC" Source="..\XenAdmin\ReportViewer\resource_report.rdlc" />
</Component>
<Component Id="MainExecutable" Guid="[BRANDING_MAIN_EXECUTABLE_GUID]">
<!-- XenCenter EXE -->
<File Id="XenCenterEXE" Source="..\XenAdmin\bin\Release\[XenCenter].exe" KeyPath="yes" />
<!-- other EXEs -->
<File Id="XenCenterMainEXE" Source="..\XenAdmin\bin\Release\XenCenterMain.exe" />
<File Id="XeEXE" Source="..\xe\bin\Release\xe.exe" />
<File Id="xva_verifyEXE" Source="..\xva_verify\bin\Release\xva_verify.exe" />
<File Id="PuTTYEXE" Source="..\XenAdmin\bin\Release\putty.exe" />
<!-- config -->
<File Id="XenCenterMainCONFIG" Source="..\XenAdmin\bin\Release\XenCenterMain.exe.config" />
<!-- DLLs -->
<File Id="CommandLibDLL" Source="..\XenAdmin\bin\Release\CommandLib.dll" />
<File Id="CookComputingDLL" Source="..\XenAdmin\bin\Release\CookComputing.XmlRpcV2.dll" />
<File Id="log4netDLL" Source="..\XenAdmin\bin\Release\log4net.dll" />
<File Id="SharpZipLibDLL" Source="..\XenAdmin\bin\Release\ICSharpCode.SharpZipLib.dll" />
<File Id="IonicZipDLL" Source="..\XenAdmin\bin\Release\Ionic.Zip.dll" />
<File Id="MSTSCLibDLL" Source="..\XenAdmin\bin\Release\MSTSCLib.dll" />
<File Id="XenCenterLibDLL" Source="..\XenAdmin\bin\Release\XenCenterLib.dll" />
<File Id="XenCenterVNCDLL" Source="..\XenAdmin\bin\Release\XenCenterVNC.dll" />
<File Id="XenModelDLL" Source="..\XenAdmin\bin\Release\XenModel.dll" />
<File Id="DiscUtils" Source="..\XenAdmin\bin\Release\DiscUtils.dll" />
<File Id="XenOvf" Source="..\XenAdmin\bin\Release\XenOvf.dll" />
<File Id="XenOvfTransport" Source="..\XenAdmin\bin\Release\XenOvfTransport.dll" />
<!-- Homepage -->
<File Id="" Source="..\XenAdmin\bin\Release\HomePage\index.mht" />
<!-- Icons -->
<File Id="XenCenterIcon" Source="..\Branding\Images\AppIcon.ico" />
<File Id="XvaIcon" Source="..\Branding\Images\file_vm.ico" />
<File Id="XslicIcon" Source="..\Branding\Images\file_license.ico" />
<File Id="XkbIcon" Source="..\Branding\Images\file_backup.ico" />
<File Id="XsupdateIcon" Source="..\Branding\Images\file_updates.ico" />
<!-- Define XVA extension -->
<ProgId Id="XenCenter.xva" Description="XVA File" Icon="XvaIcon">
<Extension Id="xva" ContentType="application/xva">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="import &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define OVF extension -->
<ProgId Id="XenCenter.ovf" Description="OVF File" Icon="XvaIcon">
<Extension Id="ovf" ContentType="application/ovf">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="import &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define OVA extension -->
<ProgId Id="XenCenter.ova" Description="OVA File" Icon="XvaIcon">
<Extension Id="ova" ContentType="application/ova">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="import &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define VHD extension -->
<ProgId Id="XenCenter.vhd" Description="VHD File" Icon="XvaIcon">
<Extension Id="vhd" ContentType="application/vhd">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="import &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define VMDK extension -->
<ProgId Id="XenCenter.vmdk" Description="VMDK File" Icon="XvaIcon">
<Extension Id="vmdk" ContentType="application/vmdk">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="import &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define XSLIC extension -->
<ProgId Id="XenCenter.xslic" Description="[XenServer] License File" Icon="XslicIcon">
<Extension Id="xslic" ContentType="application/xslic">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="license &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define XBK extension -->
<ProgId Id="XenCenter.xbk" Description="[XenServer] Backup File" Icon="XkbIcon">
<Extension Id="xbk" ContentType="application/xbk">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="restore &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define XSUPDATE extension -->
<ProgId Id="XenCenter.[xsupdate]" Description="[XenServer] Update File" Icon="XsupdateIcon">
<Extension Id="[xsupdate]" ContentType="application/[xsupdate]">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="update &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define XSOEM extension -->
<ProgId Id="XenCenter.xsoem" Description="[XenServer] OEM Update File" Icon="XsupdateIcon">
<Extension Id="xsoem" ContentType="application/xsoem">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="update &quot;%1&quot;" />
</Extension>
</ProgId>
<!-- Define XENSEARCH extension -->
<ProgId Id="XenCenter.[xensearch]" Description="[XenCenter] Saved Search" Icon="XenCenterIcon">
<Extension Id="[xensearch]" ContentType="application/[xensearch]">
<Verb Id="open" Command="Open" TargetFile="XenCenterEXE" Argument="search &quot;%1&quot;" />
</Extension>
</ProgId>
</Component>
<Component Id="UpdateFiles" Guid="[BRANDING_XSUPDATE_FILE_GUID]">
<?if "$(env.Branding)"="XenCenter"?>
<File Id="hotfixBoston" Source="..\Branding\Hotfixes\XS60E001.xsupdate" />
<File Id="hotfixBostonSource" Source="..\Branding\Hotfixes\XS60E001-src-pkgs.tar.gz" />
<File Id="hotfixSanibelToClearwater" Source="..\Branding\Hotfixes\RPU001.xsupdate" />
<File Id="hotfixSanibelToClearwaterSource" Source="..\Branding\Hotfixes\RPU001-src-pkgs.tar.gz" />
<?endif?>
<File Id="hotfixCreedence" Source="..\Branding\Hotfixes\RPU002.[xsupdate]" />
</Component>
<?if "$(env.Branding)"="XenCenter"?>
<!-- TestResources -->
<Directory Id="TestReso" ShortName="TestReso" Name="TestResources">
<Component Id="TestResources" Guid="[BRANDING_TEST_RESOURCES_GUID]">
<File Source="..\XenAdmin\bin\Release\TestResources\credits.xml" />
<File Id="interes1.xml" Source="..\XenAdmin\bin\Release\TestResources\interesting-development.xml" />
<File Id="interes2.xml" Source="..\XenAdmin\bin\Release\TestResources\interesting-production.xml" />
<File Id="interes3.xml" Source="..\XenAdmin\bin\Release\TestResources\interesting-xenapp.xml" />
</Component>
</Directory>
<?else?>
<Component Id="readmefile" Guid="[BRANDING_README_FILE_GUID]">
<File Id="Readme" Source="..\Branding\WixInstaller\README.TXT" />
</Component>
<?endif?>
<Directory Id="Help" Name="Help">
<Component Id="HelpFiles" Guid="EA8D4F56-A94A-467c-9E6B-F3DC26F95B1E">
<File Id="XenCenterCHM" Source="..\XenAdmin\bin\Release\Help\[XenCenter].chm" />
<File Id="WLBCHM" Source="..\XenAdmin\bin\Release\Help\WLB.chm" />
</Component>
</Directory>
<Directory Id="EXTERNALTOOLS" ShortName="External" Name="External Tools">
<Component Id="ExternalToolsComponent" Guid="[BRANDING_EXTERNAL_TOOLS_GUID]">
<File Id="XENSERVERLINUXFIXUP" Source="..\XenOvfApi\External Tools\xenserver-linuxfixup-disk.iso" />
<File Id="REFERENCEVHD" Source="..\XenOvfApi\External Tools\bootablereference.vhd.bz2" />
</Component>
</Directory>
<Directory Id="SCHEMAS" Name="Schemas">
<Component Id="SchemasFilesComponent" Guid="[BRANDING_SCHEMAS_FILES_GUID]">
<File Id="CIMOSXML" Source="..\XenAdmin\bin\Release\Schemas\CIM_OperatingSystem.xml" />
<File Id="CIMRASDXML" Source="..\XenAdmin\bin\Release\Schemas\CIM_ResourceAllocationSettingData.xml" />
<File Id="CIMRASDXSD" Source="..\XenAdmin\bin\Release\Schemas\CIM_ResourceAllocationSettingData.xsd" />
<File Id="CIMVSSDXML" Source="..\XenAdmin\bin\Release\Schemas\CIM_VirtualSystemSettingData.xml" />
<File Id="CIMVSSDXSD" Source="..\XenAdmin\bin\Release\Schemas\CIM_VirtualSystemSettingData.xsd" />
<File Id="COMMONXSD" Source="..\XenAdmin\bin\Release\Schemas\common.xsd" />
<File Id="DSP8023XSD" Source="..\XenAdmin\bin\Release\Schemas\DSP8023.xsd" />
<File Id="DSP8027XSD" Source="..\XenAdmin\bin\Release\Schemas\DSP8027.xsd" />
<File Id="SECEXTXSD" Source="..\XenAdmin\bin\Release\Schemas\secext-1.0.xsd" />
<File Id="WSSUTILXSD" Source="..\XenAdmin\bin\Release\Schemas\wss-utility-1.0.xsd" />
<File Id="XENCXSD" Source="..\XenAdmin\bin\Release\Schemas\xenc-schema.xsd" />
<File Id="XMLXSD" Source="..\XenAdmin\bin\Release\Schemas\xml.xsd" />
<File Id="XMLDSIGXSD" Source="..\XenAdmin\bin\Release\Schemas\xmldsig-core-schema.xsd" />
</Component>
</Directory>
</Directory>
<?if "$(env.Branding)"="XenCenter"?>
<Directory Id="HEALTHCHECKSERVICEDIR" Name="XenServerHealthCheckService">
<Component Id="XenServerHealthCheck" Guid="{[BRANDING_HEALTH_CHECK_GUID]}">
<File Id="HealthCheck_XenServerHealthCheck.exe" Name="XenServerHealthCheck.exe" KeyPath="yes" Source="..\XenServerHealthCheck\bin\Release\XenServerHealthCheck.exe" />
<File Id="HealthCheck_CommandLib.dll" Name="CommandLib.dll" Source="..\XenServerHealthCheck\bin\Release\CommandLib.dll" />
<File Id="HealthCheck_CookComputing.XmlRpcV2.dll" Name="CookComputing.XmlRpcV2.dll" Source="..\XenServerHealthCheck\bin\Release\CookComputing.XmlRpcV2.dll" />
<File Id="HealthCheck_ICSharpCode.SharpZipLib.dll" Name="ICSharpCode.SharpZipLib.dll" Source="..\XenServerHealthCheck\bin\Release\ICSharpCode.SharpZipLib.dll" />
<File Id="HealthCheck_Ionic.Zip.dll" Name="Ionic.Zip.dll" Source="..\XenServerHealthCheck\bin\Release\Ionic.Zip.dll" />
<File Id="HealthCheck_log4net.dll" Name="log4net.dll" Source="..\XenServerHealthCheck\bin\Release\log4net.dll" />
<File Id="HealthCheck_XenCenterLib.dll" Name="XenCenterLib.dll" Source="..\XenServerHealthCheck\bin\Release\XenCenterLib.dll" />
<File Id="HealthCheck_XenModel.dll" Name="XenModel.dll" Source="..\XenServerHealthCheck\bin\Release\XenModel.dll" />
<File Id="HealthCheck_XenServerHealthCheck.exe.config" Name="XenServerHealthCheck.exe.config" Source="..\XenServerHealthCheck\bin\Release\XenServerHealthCheck.exe.config" />
<ServiceInstall
Id="ServiceInstaller"
Type="ownProcess"
Vital="no"
Name="XenServerHealthCheck"
DisplayName="[Citrix] [XenServer] Health Check Service"
Description="[Citrix] [XenServer] Health Check Service"
Start="auto"
Account="LocalSystem"
ErrorControl="normal"
Interactive="no"
/>
<ServiceControl
Id="StartService"
Start="install"
Stop="both"
Remove="uninstall"
Name="XenServerHealthCheck"
Wait="yes"
/>
</Component>
</Directory>
<?endif?>
</Directory>
</Directory>
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="[Citrix]" />
</Directory>
<Directory Id="DesktopFolder" Name="Desktop">
<Component Id="ProgramFilesShortcut" Guid="63b44222-b5e8-4ab1-8f68-baed79abbf36">
<Condition>INSTALLSHORTCUT</Condition>
<Shortcut Id="ApplicationDesktopShortcut" Name="[XenCenter]" Description="[XenCenter] Shortcut" Target="[INSTALLDIR][XenCenter].exe" WorkingDirectory="INSTALLDIR"/>
<RemoveFolder Id="DesktopFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\[Citrix]\[XenCenter]" Name="installed" Type="integer" Value="1" KeyPath="yes" />
</Component>
</Directory>
</Directory>
<DirectoryRef Id="TARGETDIR">
<Component Id="RegistryEntries" Guid="[BRANDING_REGISTRY_ENTRIES_GUID]">
<RegistryKey Root="HKMU" Key="Software\[Citrix]\[XenCenter]">
<RegistryValue Type="string" Name="InstallDir" Value="[INSTALLDIR]" />
<RegistryValue Type="string" Name="HiddenFeatures" Value="[BRANDING_HIDDEN_FEATURE]" />
</RegistryKey>
</Component>
</DirectoryRef>
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="[BRANDING_APPLICAION_SHOTCUT_GUID]">
<Shortcut Id="startmenuXenCenter" ShortName="XenCen50" Name="[Citrix] [XenCenter]" Description="[XenCenter] Shortcut" Target="[INSTALLDIR][XenCenter].exe" WorkingDirectory="INSTALLDIR" Icon="XenCenterICO" />
<RemoveFolder Id="ApplicationProgramsFolder" On="uninstall" />
<RegistryValue Root="HKCU" Key="Software\[Citrix]\[XenCenter]" Name="installed" Type="integer" Value="1" KeyPath="yes" />
</Component>
</DirectoryRef>
<Feature Id="MainProgram" Title="[Citrix] [XenCenter]" Description="[Citrix] [XenCenter]" Display="expand" Level="1" ConfigurableDirectory="INSTALLDIR" AllowAdvertise="no" InstallDefault="local" Absent="disallow" >
<ComponentRef Id="MainExecutable" />
<ComponentRef Id="HelpFiles" />
<ComponentRef Id="ReportViewer" />
<ComponentRef Id="UpdateFiles" />
<?if "$(env.Branding)"="XenCenter"?>
<ComponentRef Id="TestResources" />
<?else?>
<ComponentRef Id="readmefile" />
<?endif?>
<ComponentRef Id="SchemasFilesComponent" />
<ComponentRef Id="ExternalToolsComponent" />
<ComponentRef Id="RegistryEntries" />
<ComponentRef Id="ApplicationShortcut" />
<ComponentRef Id="ProgramFilesShortcut" />
<?if "$(env.Branding)"="XenCenter"?>
<Feature Id="HealthCheckService" Title="[Citrix] [XenServer] Health Check Service" Description="[Citrix] [XenServer] Health Check Service" Display="expand" Level="1" ConfigurableDirectory="HEALTHCHECKSERVICEDIR" AllowAdvertise="no" InstallDefault="local" Absent="allow" >
<ComponentRef Id="XenServerHealthCheck" />
</Feature>
<?else ?>
<?endif?>
</Feature>
<?if "$(env.Branding)"="XenCenter"?>
<UIRef Id="WixUI_FeatureTree" />
<?else ?>
<UIRef Id="My_WixUI_InstallDir" />
<?endif?>
<UIRef Id="WixUI_ErrorProgressText" />
<Property Id="Install_All" Value="0" />
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<Property Id="ARPPRODUCTICON" Value="XenCenterICO" />
<MajorUpgrade AllowDowngrades="no" AllowSameVersionUpgrades="yes" DowngradeErrorMessage="!(loc.ErrorNewerProduct)" Schedule="afterInstallInitialize"/>
<PropertyRef Id="NETFRAMEWORK45" />
<Condition Message=".NET Framework 4.5 is required for this installation."><![CDATA[Installed OR NETFRAMEWORK45]]></Condition>
<Property Id="PERMACHINEINSTALL">
<RegistrySearch Id="InstallRegistry" Type="raw" Root="HKLM" Key="Software\[Citrix]\[XenCenter]" Name="InstallDir" />
</Property>
<Property Id="REINSTALLMODE" Value="amus" />
<Property Id="INSTALLSHORTCUT" />
<CustomAction Id="ClearAllUsers" Property="ALLUSERS" Value="" />
<CustomAction Id="SetAllUsers" Property="ALLUSERS" Value="1" />
<InstallExecuteSequence>
<AppSearch Sequence="50" />
<FindRelatedProducts Before="LaunchConditions" />
<LaunchConditions Sequence="100" />
<ValidateProductID Sequence="700" />
<CostInitialize Sequence="800" />
<FileCost Sequence="900" />
<CostFinalize Sequence="1000" />
<MigrateFeatureStates Sequence="1200" />
<InstallValidate Sequence="1400" />
<InstallInitialize Sequence="1500" />
<ProcessComponents Sequence="1600" />
<UnpublishFeatures Sequence="1800" />
<RemoveRegistryValues Sequence="2600" />
<RemoveShortcuts Sequence="3200" />
<RemoveFiles Sequence="3500" />
<InstallFiles Sequence="4000" />
<CreateShortcuts Sequence="4500" />
<WriteRegistryValues Sequence="5000" />
<RegisterUser Sequence="6000" />
<RegisterProduct Sequence="6100" />
<PublishFeatures Sequence="6300" />
<PublishProduct Sequence="6400" />
<InstallFinalize Sequence="6600" />
</InstallExecuteSequence>
<InstallUISequence>
<Custom Action="SetAllUsers" Before="FindRelatedProducts">NOT Installed AND PERMACHINEINSTALL</Custom>
<FindRelatedProducts Before="LaunchConditions" />
<Custom Action="ClearAllUsers" After="FindRelatedProducts">NOT Installed AND PERMACHINEINSTALL</Custom>
<ExecuteAction Sequence="1102" />
</InstallUISequence>
<Icon Id="XenCenterICO" SourceFile="..\Branding\Images\AppIcon.ico" />
</Product>
</Wix>