aboutsummaryrefslogtreecommitdiff
path: root/windows/pandoc.wxs
blob: 85edd29a88e2d70af3d9c2793ab84f62f0a0fa49 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?xml version="1.0"?>
<?define UpgradeCode = "A68E8EF6-ABB1-4F22-A3C5-68DFDF0AB562" ?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="*"
  UpgradeCode="$(var.UpgradeCode)" Name="Pandoc $(var.VERSION)"
  Version="$(var.VERSION)" Manufacturer="John MacFarlane"
  Language="1033">

    <Package InstallerVersion="200" Compressed="yes" InstallScope="perUser"
    Comments="Windows Installer Package" />
    <Media Id="1" Cabinet="product.cab" EmbedCab="yes" />
    <Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
    <Upgrade Id="$(var.UpgradeCode)">
      <UpgradeVersion Property='PREVIOUSVERSIONSINSTALLED'
        Minimum='0.0.0.0'  IncludeMinimum='yes'
        Maximum="99.0.0.0" IncludeMaximum="no" />
    </Upgrade>
    <Property Id="ARPURLINFOABOUT" Value="http://johnmacfarlane.net/pandoc/" />

    <InstallExecuteSequence>
      <RemoveExistingProducts After="InstallFinalize"/>
    </InstallExecuteSequence>

    <Property Id="DISABLEADVTSHORTCUTS" Value="1" />

    <CustomAction Id="SetPerUserFolder" Property="APPLICATIONFOLDER" Value="[LocalAppDataFolder]Pandoc" Execute="immediate" />
    <CustomAction Id="SetPerMachineFolder" Property="APPLICATIONFOLDER" Value="[ProgramFilesFolder]Pandoc" Execute="immediate" />
    <InstallExecuteSequence>
      <Custom Action="SetPerUserFolder" Before="CostFinalize">ACTION="INSTALL" AND APPLICATIONFOLDER="" AND (ALLUSERS="" OR (ALLUSERS=2 AND (NOT Privileged)))</Custom>
      <Custom Action="SetPerMachineFolder" After="SetPerUserFolder">ACTION="INSTALL" AND APPLICATIONFOLDER="" AND (ALLUSERS=1 OR (ALLUSERS=2 AND Privileged))</Custom>
    </InstallExecuteSequence>
    <InstallUISequence>
      <Custom Action="SetPerUserFolder" Before="CostFinalize">ACTION="INSTALL" AND APPLICATIONFOLDER="" AND (ALLUSERS="" OR (ALLUSERS=2 AND (NOT Privileged)))</Custom>
      <Custom Action="SetPerMachineFolder" After="SetPerUserFolder">ACTION="INSTALL" AND APPLICATIONFOLDER="" AND (ALLUSERS=1 OR (ALLUSERS=2 AND Privileged))</Custom>
    </InstallUISequence>

    <Directory Id="TARGETDIR" Name="SourceDir">

      <Directory Id="ProgramFilesFolder">
        <Directory Id="APPLICATIONFOLDER" Name="Pandoc">
          <Component Id="MainExecutable"
          Guid="ECD35082-4C28-49E1-977E-B90FC7C400C7">
            <RegistryValue Root="HKMU" Key="Software\John MacFarlane\Pandoc"
            Name="Version" Type="string" Value="[ProductVersion]" KeyPath="yes"/>
            <RemoveFolder Id="APPLICATIONFOLDER" On="uninstall"/>
            <File Id="pandocEXE" Name="pandoc.exe"
            Source="..\cabal-dev\bin\pandoc.exe" />
            <File Id="pandocCOPYRIGHT" Name="COPYRIGHT.txt"
            Source="..\COPYRIGHT.txt" />
            <File Id="pandocCOPYING" Name="COPYING.rtf"
            Source="..\COPYING.rtf" />
          </Component>

          <Component Id="UpdatePathUser"
            Guid="C7B71304-09FC-421D-9EA2-AEFB7D61759D">
            <Condition><![CDATA[ ALLUSERS="" OR (ALLUSERS=2 AND (NOT Privileged)) ]]></Condition>
            <Environment Id="UpdatePathUser" Name="PATH" Action="set"
            Part="last" Value="[APPLICATIONFOLDER]" System="no" />
            <RegistryValue Root="HKCU" Key="Software\John MacFarlane\Pandoc"
            Name="UserPathUpdated" Type="integer" Value="1" KeyPath="yes"/>
          </Component>

          <Component Id="UpdatePathMachine"
            Guid="0C642D0A-7175-4CD7-B11F-0A69F73FD757">
            <Condition><![CDATA[ ALLUSERS=1 OR (ALLUSERS=2 AND Privileged) ]]></Condition>
            <Environment Id="UpdatePathMachine" Name="PATH" Action="set"
            Part="last" Value="[APPLICATIONFOLDER]" System="yes" />
            <RegistryValue Root="HKLM" Key="Software\John MacFarlane\Pandoc"
            Name="SystemPathUpdated" Type="integer" Value="1" KeyPath="yes"/>
          </Component>

          <Component Id="Documentation"
          Guid="A8D54A76-1A3D-4647-8327-81B69D39D8A3">
            <File Id="pandocREADME" Name="Pandoc User's Guide.html"
            Source="..\README.html" KeyPath="yes">
              <Shortcut Id="ApplicationStartMenuShortcut" Directory="ApplicationProgramsFolder"
              Name="Pandoc User’s Guide" Advertise="yes" />
            </File>
          </Component>
        </Directory>
      </Directory>

      <Directory Id="ProgramMenuFolder">
        <Directory Id="ApplicationProgramsFolder" Name="Pandoc">
          <Component Id="ApplicationShortcut" Guid="7F807DD5-CC54-474A-B571-89630893F563">
            <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
            <RegistryValue Root="HKMU" Key="Software\John MacFarlane\Pandoc"
            Name="ShortcutInstalled" Type="integer" Value="1" KeyPath="yes"/>
          </Component>
        </Directory>
      </Directory>

    </Directory>

    <Feature Id="Complete" Level="1" Title="Pandoc $(var.VERSION)" Description="Complete package"  Display="expand" ConfigurableDirectory="APPLICATIONFOLDER">
      <Feature Id="MainProgram" Title="Program" Description="The main executable." Level="1">
        <ComponentRef Id="MainExecutable" />
        <ComponentRef Id="UpdatePathUser" />
        <ComponentRef Id="UpdatePathMachine" />
      </Feature>
      <Feature Id="Manual" Title="Manual">
        <ComponentRef Id="Documentation" />
        <ComponentRef Id="ApplicationShortcut" />
      </Feature>
    </Feature>

    <Property Id="WIXUI_INSTALLDIR" Value="APPLICATIONFOLDER" />
    <UIRef Id="WixUI_Minimal" />
    <UIRef Id="WixUI_ErrorProgressText" />
    <WixVariable Id="WixUILicenseRtf" Value="..\COPYING.rtf" />

  </Product>
</Wix>