aboutsummaryrefslogtreecommitdiff
path: root/tools/build/star-product.wxs
blob: 7e1dc46f3acddbcf8059afa9110a1e96facd25b5 (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
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product Id="*" Language="1033" Manufacturer="Rakudo Perl 6" Name="Rakudo Star $(var.STARVERSION)" UpgradeCode="{08B7EB05-7EAC-4B60-9F5B-AF6E367FE0FD}" Version="1.0.0">
        <Package Compressed="yes" InstallerVersion="200" />

        <!-- force installation to C: drive -->
        <Property Id="ROOTDRIVE"><![CDATA[C:\]]></Property>

        <Directory Id="TARGETDIR" Name="SourceDir">
          <Component Id="RakudoPath" Guid="{45669CAC-166D-4569-900A-6EF775EDC8F5}">
            <Environment Id="MYPATH" Name="PATH" Action="set" Part="last" Value="[INSTALLROOT]bin;[INSTALLROOT]share\perl6\site\bin" System="no" Permanent="no" />
            <Condition>MYENVIRONMENTSETPATH</Condition>
          </Component>
          <Directory Id="INSTALLROOT" Name="rakudo"/>

          <!-- start menu shortcuts, adapted from http://wix.sourceforge.net/manual-wix3/create_start_menu_shortcut.htm -->
          <Directory Id="ProgramMenuFolder">
            <Directory Id="RakudoMenuFolder" Name="Rakudo Perl 6">
              <Component Id="RakudoStartItems" Guid="B5BD7AEC-C8dC-4F84-AF2E-4A417350D642">
                <Shortcut Id="RakudoShortcut" 
                          Name="Rakudo Perl 6"
                          Target="[INSTALLROOT]bin\perl6" 
                          WorkingDirectory="INSTALLROOT" />
                <RemoveFolder Id="RakudoMenuFolder" On="uninstall" />
                <RegistryValue Root="HKCU" Key="Software\Microsoft\RakudoPerl6" Name="installed" Type="integer" Value="1" KeyPath="yes" />
              </Component>
            </Directory>
          </Directory>
        </Directory>

        <Feature Id="ProductFeature" Level="1" Title="Rakudo Star $(var.STARVERSION)">
            <ComponentGroupRef Id="RakudoStar" />
            <ComponentRef Id="RakudoStartItems" />
            <ComponentRef Id="RakudoPath" />
        </Feature>
        <Media Id="1" Cabinet="product.cab" EmbedCab="yes" />

        <!-- This is just like WixUI_Minimal but we skip the EULA part -->
        <UI Id="WixUI_Minimal">
            <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
            <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
            <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />

            <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" />
            <Property Id="WixUI_Mode" Value="Minimal" />

            <DialogRef Id="ErrorDlg" />
            <DialogRef Id="FatalError" />
            <DialogRef Id="FilesInUse" />
            <DialogRef Id="MsiRMFilesInUse" />
            <DialogRef Id="PrepareDlg" />
            <DialogRef Id="ProgressDlg" />
            <DialogRef Id="ResumeDlg" />
            <DialogRef Id="UserExit" />
            <DialogRef Id="WelcomeDlg" />
            <Dialog Id="MySetPathDlg" Width="370" Height="270" Title="!(loc.InstallDirDlg_Title)">
                <Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" >
                  <Publish Property="WixUI_InstallMode" Value="Update">Installed AND PATCH</Publish>
                </Control>
                <Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)">
                  <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish>
                </Control>
                <Control Id="Bitmap" Type="Bitmap" X="0" Y="0" Width="370" Height="234" TabSkip="no" Text="!(loc.WelcomeDlgBitmap)" />
                <Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" />
                <Control Id="BottomLine" Type="Line" X="0" Y="234" Width="370" Height="0" />
                <Control Id="Title" Type="Text" X="135" Y="20" Width="220" Height="60" Transparent="yes" NoPrefix="yes" Text="Environment Variables" />
                <Control Id="Description" Type="Text" X="135" Y="60" Width="220" Height="15" Transparent="yes" NoPrefix="yes" Text="The following directories need to be added to PATH:" />
                <Control Id="Path1" Type="Text" X="145" Y="80" Width="220" Height="10" Transparent="yes" NoPrefix="yes" Text="[INSTALLROOT]bin" />
                <Control Id="Path2" Type="Text" X="145" Y="90" Width="220" Height="15" Transparent="yes" NoPrefix="yes" Text="[INSTALLROOT]share\perl6\site\bin" />
                <Control Id="MyCheckBoxSetPath" Type="CheckBox" X="135" Y="160" Width="290" Height="17" Property="MYENVIRONMENTSETPATH" CheckBoxValue="1" Text="Set PATH environment variable automatically." />
            </Dialog>

            <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="MySetPathDlg">1</Publish>
            <Publish Dialog="MySetPathDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
            <Publish Dialog="MySetPathDlg" Control="Next" Event="NewDialog" Value="PrepareDlg">1</Publish>
            <Publish Dialog="PrepareDlg" Control="Back" Event="NewDialog" Value="MySetPathDlg">1</Publish>
            <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>

            <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>

            <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>

            <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
            <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
            <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>

            <Property Id="ARPNOMODIFY" Value="1" />
            <Property Id="MYENVIRONMENTSETPATH">1</Property>
        </UI>

        <UIRef Id="WixUI_Common" />
    </Product>
</Wix>