Files
duplicati/Installer/Windows/Duplicati.wxs
T
BlueBlock c14c4a8009 add FORSERVICE option to installer
FORSERVICE will only install DuplicatiCore
2019-09-06 13:54:30 -04:00

101 lines
4.7 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<?include UpgradeData.wxi ?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<!-- Various nice-to-have shorthands for x64/x32 -->
<?if $(var.Platform) = "x64" ?>
<?define SystemFolder = "System64Folder" ?>
<?define SystemFolderX86 = "SystemFolder" ?>
<?define SoftwareKey = "Software" ?>
<?define SoftwareKeyX86 = "Software\Wow6432Node" ?>
<?define ProgramFilesFolder = "ProgramFiles64Folder" ?>
<?define ProgramFilesFolderX86 = "ProgramFilesFolder" ?>
<?else?>
<?define SystemFolder = "SystemFolder" ?>
<?define SystemFolderX86 = "SystemFolder" ?>
<?define SoftwareKey = "Software" ?>
<?define SoftwareKeyX86 = "Software" ?>
<?define ProgramFilesFolder = "ProgramFilesFolder" ?>
<?endif?>
<?define DisplayName = "Duplicati 2" ?>
<Product Id="$(var.ProductCode)" Name="$(var.DisplayName)" Language="1033" Version="$(var.ProductVersion)" Manufacturer="$(var.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
<Package InstallerVersion="405" Compressed="yes" Id="$(var.PackageCode)" Platform="$(var.Platform)" InstallScope="perMachine" />
<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
<PropertyRef Id="WIX_IS_NETFRAMEWORK_462_OR_LATER_INSTALLED"/>
<Condition Message="The .NET Framework 4.6.2 must be installed">
<![CDATA[Installed OR WIX_IS_NETFRAMEWORK_462_OR_LATER_INSTALLED]]>
</Condition>
<WixVariable Id="WixUILicenseRtf" Value="Resources/LGPL21.rtf" />
<WixVariable Id="WixUIBannerBmp" Value="Resources/InstallerSmall.bmp" />
<WixVariable Id="WixUIDialogBmp" Value="Resources/InstallerLarge.bmp" />
<UI>
<UIRef Id="WixUI_FeatureTree"/>
<Publish Dialog="ExitDialog"
Control="Finish"
Event="DoAction"
Value="LaunchApplication">
<![CDATA[WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and FORSERVICE = "false" and NOT Installed]]>
</Publish>
</UI>
<Property Id="FORSERVICE" Value="false" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramMenuFolder" Name="Programs"/>
<Directory Id="DesktopFolder" Name="Desktop"/>
<Directory Id="$(var.ProgramFilesFolder)">
<Directory Id="INSTALLLOCATION" Name="Duplicati 2" />
</Directory>
</Directory>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLLOCATION" />
<!-- TODO: Make expanded -->
<Feature Id="DuplicatiCore" Title="Duplicati core files" Level="1" Description="Installs the required files for Duplicati." AllowAdvertise="no" TypicalDefault="install" InstallDefault="local" Absent="disallow" ConfigurableDirectory="INSTALLLOCATION" >
<Feature Id="DuplicatiDesktopShortCutFeature" Title="Desktop Shortcut" Level="1" Description ="Installs a shortcut to Duplicati on the desktop" Absent="allow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
<ComponentRef Id="DuplicatiDesktopShortcutComponent"/>
<Condition Level="0">FORSERVICE = "true"</Condition>
</Feature>
<Feature Id="DuplicatiProgramMenuShortCutFeature" Title="Program Menu Shortcut" Level="1" Description ="Installs a shortcut to Duplicati in the Program menu" Absent="allow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
<ComponentRef Id="DuplicatiProgramMenuShortcutComponent"/>
<Condition Level="0">FORSERVICE = "true"</Condition>
</Feature>
<ComponentGroupRef Id="DUPLICATIBIN" />
</Feature>
<Feature Id="DuplicatiStartupShortCutFeature" Title="Launch Duplicati at startup" Level="1" Description ="Automatically launches Duplicati when you log on to the computer" Absent="allow" AllowAdvertise="no" TypicalDefault="install" InstallDefault="local">
<ComponentRef Id="StartupMenuItem"/>
<Condition Level="0">FORSERVICE = "true"</Condition>
</Feature>
<!-- Launch duplicati setup -->
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch Duplicati now" />
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value="1" />
<CustomAction Id="LaunchApplication" FileKey="Duplicati.GUI.TrayIcon.exe" Impersonate="yes" ExeCommand="" Return="asyncNoWait" />
<!-- Set the Add/Remove icon -->
<Property Id="ARPPRODUCTICON" Value="DuplicatiIcon.exe" />
<!-- Remove old versions -->
<InstallExecuteSequence>
<RemoveExistingProducts After="InstallInitialize" />
</InstallExecuteSequence>
<Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
<Upgrade Id="$(var.UpgradeCode)">
<UpgradeVersion Minimum="2.0.0.0" Property="PREVIOUSVERSIONSINSTALLED" Maximum="99.0.0.0" IncludeMinimum="yes" IncludeMaximum="no" />
</Upgrade>
</Product>
</Wix>