Skip to content
mbackup.wxs 4.92 KiB
Newer Older
Yuanle Song's avatar
Yuanle Song committed
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="*" UpgradeCode="3030B91E-5E3E-4151-9A69-B53B72690430" Version="$(var.Version)" Language="1033" Name="mbackup" Manufacturer="Yuanle Song">
Yuanle Song's avatar
Yuanle Song committed
    <Package InstallerVersion="300" Compressed="yes"/>
    <Media Id="1" Cabinet="mbackup.cab" EmbedCab="yes" />

    <MajorUpgrade AllowDowngrades="yes"/>

Yuanle Song's avatar
Yuanle Song committed
    <Directory Id="TARGETDIR" Name="SourceDir">
        <Directory Id="ProgramFiles64Folder">
          <Directory Id="MBACKUP_PROGRAM_FILES" Name="mbackup" />
        </Directory>
        <Directory Id="CommonAppDataFolder">
          <Directory Id="MBACKUP_DATA" Name="mbackup"/>
        </Directory>
        <Directory Id="DesktopFolder" Name="Desktop" />
        <Directory Id="ProgramMenuFolder">
          <Directory Id="mbackup_start_menu_dir" Name="mbackup" />
        </Directory>
Yuanle Song's avatar
Yuanle Song committed
    </Directory>
    <DirectoryRef Id="MBACKUP_DATA">
      <Component Id="default_exclude.txt" Guid="*">
          <File Id="default_exclude.txt" Source="mbackup-config\default-exclude.txt" KeyPath="yes"/>
      </Component>
      <Component Id="default_list.txt" Guid="*">
          <File Id="default_list.txt" Source="mbackup-config\default-list.txt" KeyPath="yes"/>
      </Component>
      <Component Id="local_list.txt" NeverOverwrite="yes" Permanent="yes" Guid="*">
          <!-- do not overwrite this component/file if it already exists on target system -->
          <File Id="local_list.txt" Source="mbackup-config\local-list.txt" KeyPath="yes"/>
      </Component>
      <Component Id="local_exclude.txt" NeverOverwrite="yes" Permanent="yes" Guid="*">
          <!-- do not overwrite this component/file if it already exists on target system -->
          <File Id="local_exclude.txt" Source="mbackup-config\local-exclude.txt" KeyPath="yes"/>
      </Component>
      <Component Id="mbackup_config.txt" NeverOverwrite="yes" Permanent="yes" Guid="*">
          <!-- do not overwrite this component/file if it already exists on target system -->
          <File Id="mbackup_config.txt" Source="mbackup-config\mbackup-config.txt" KeyPath="yes"/>
      </Component>
      <Component Id="user_default_list.txt" Guid="*">
          <File Id="user_default_list.txt" Source="mbackup-config\user-default-list.txt" KeyPath="yes"/>
      </Component>
    </DirectoryRef>

    <DirectoryRef Id="DesktopFolder">
        <Component Id="mbackup_desktop_shortcuts" Guid="*">
            <Shortcut Id="DesktopMbackupExe"
                Name="mbackup"
                Description="Backup your computer using rsync"
                Target="[!filE3FFB5E42FD6DDB7AD945F29409779F0]"
                WorkingDirectory="MBACKUP_PROGRAM_FILES"/>
            <RemoveFolder Id="DesktopShortcut" On="uninstall"/>
            <RegistryValue Root="HKCU" Key="Software\mbackup\desktopshortcuts" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
        </Component>
    </DirectoryRef>

    <DirectoryRef Id="mbackup_start_menu_dir">
        <Component Id="mbackup_start_menu" Guid="F7C168BA-BDC9-4C4D-8AE7-722AC399AFD5">
            <Shortcut Id="StartMenuMbackupExe"
                      Name="mbackup"
                      Description="Backup your computer using rsync"
                      Target="[!filE3FFB5E42FD6DDB7AD945F29409779F0]"
                      WorkingDirectory="MBACKUP_PROGRAM_FILES"/>
            <Shortcut Id="StartMenuMbackupConfig"
                      Name="mbackup-config.txt"
                      Description="mbackup config file"
                      Target="[!mbackup_config.txt]"
                      WorkingDirectory="MBACKUP_PROGRAM_FILES"/>
            <Shortcut Id="StartMenuLocalList"
                      Name="local-list.txt"
                      Description="mbackup local-list.txt file"
                      Target="[!local_list.txt]"
                      WorkingDirectory="MBACKUP_PROGRAM_FILES"/>
            <Shortcut Id="StartMenuLocalExclude"
                      Name="local-exclude.txt"
                      Description="mbackup local-exclude.txt file"
                      Target="[!local_exclude.txt]"
                      WorkingDirectory="MBACKUP_PROGRAM_FILES"/>
            <RemoveFolder Id="MBACKUP_START_MENU_DIR" On="uninstall"/>
            <RegistryValue Root="HKCU" Key="Software\mbackup\startmenushortcuts" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
        </Component>
    </DirectoryRef>
Yuanle Song's avatar
Yuanle Song committed
    <Feature Id="MainApplication" Title="Main Application" Level="1">
      <ComponentGroupRef Id="MbackupHeatGenerated" />
      <ComponentGroupRef Id="RsyncHeatGenerated" />
      <ComponentRef Id="default_exclude.txt" />
      <ComponentRef Id="default_list.txt" />
      <ComponentRef Id="local_list.txt" />
      <ComponentRef Id="local_exclude.txt" />
      <ComponentRef Id="mbackup_config.txt" />
      <ComponentRef Id="user_default_list.txt" />
      <ComponentRef Id="mbackup_start_menu" />
      <ComponentRef Id="mbackup_desktop_shortcuts" />
Yuanle Song's avatar
Yuanle Song committed
    </Feature>
  </Product>
</Wix>