The data contained in this repository can be downloaded to your computer using one of several clients.
Please see the documentation of your version control software client for more information.

Please select the desired protocol below to get the URL.

This URL has Read-Only access.

Statistics
| Branch: | Revision:

main_repo / tools / msvs / msi / product.wxs @ 35a1421e

History | View | Annotate | Download (8.32 KB)

1
<?xml version="1.0" encoding="UTF-8"?>
2
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"
3
     xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">
4

    
5
  <?define ProductName = "Node.js" ?>
6
  <?define ProductDescription = "Node.js" ?>
7
  <?define ProductAuthor = "Joyent, Inc. and other Node contributors" ?>
8

    
9
  <?define RepoDir="$(var.ProjectDir)..\..\..\" ?>
10
  <?define SourceDir="$(var.RepoDir)\$(var.Configuration)\" ?>
11

    
12
  <Product Id="*"
13
           Name="$(var.ProductName)"
14
           Language="1033"
15
           Version="$(var.ProductVersion)"
16
           Manufacturer="$(var.ProductAuthor)"
17
           UpgradeCode="1d60944c-b9ce-4a71-a7c0-0384eb884baa">
18

    
19
    <Package InstallerVersion="200" Compressed="yes" />
20

    
21
    <Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
22

    
23
    <MajorUpgrade AllowSameVersionUpgrades="yes"
24
                  DowngradeErrorMessage="A later version of node.js is already installed. Setup will now exit." />
25

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

    
28
      <Directory Id="ProgramMenuFolder">
29
          <Directory Id="ApplicationProgramsFolder" Name="Node.js ($(var.Platform))"/>
30
      </Directory>
31

    
32
      <Directory Id="$(var.ProgramFilesFolderId)">
33
        <Directory Id="APPLICATIONROOTDIRECTORY" Name="nodejs">
34
          <Directory Id="NodeModulesFolder" Name="node_modules">
35
            <Directory Id="NPMFolder" Name="npm">
36
              <Component Id="npmrc" Guid="55B2B03F-8F32-4D62-A54A-FA428615591D">
37
                 <File Id="filenpmrc" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\npm\npmrc" />
38
              </Component>
39
            </Directory>
40
          </Directory>
41
          <Component Id="nodeexe" Guid="AEC0F08E-89B3-4C35-A286-8DB8598597F2">
42
            <File Id="filenodeexe" KeyPath="yes" Source="$(var.SourceDir)\node.exe" />
43
            <?if $(var.NoETW) != 1 ?>
44
            <File Id="node_etw_provider_man" Name="node_etw_provider.man" Source="$(var.RepoDir)\src\res\node_etw_provider.man" >
45
              <util:EventManifest MessageFile="[APPLICATIONROOTDIRECTORY]node.exe" ResourceFile="[APPLICATIONROOTDIRECTORY]node.exe"/>
46
            </File>
47
            <?endif?>
48
            <Environment Id="npm_env"
49
                         Action="set"
50
                         Name="PATH"
51
                         Part="last"
52
                         System="yes"
53
                         Value="[AppDataFolder]npm\" />
54
            <Environment Id="node_env"
55
                         Action="set"
56
                         Name="PATH"
57
                         Part="last"
58
                         System="yes"
59
                         Value="[APPLICATIONROOTDIRECTORY]" />
60
          </Component>
61
          <Component Id="npmcmd" Guid="31e9986d-74cd-44e1-878c-194d3e997d32">
62
            <File Id="filenpmcmd" KeyPath="yes" Source="$(var.NPMSourceDir)\bin\npm.cmd" />
63
          </Component>
64
          <Component Id="npmsh" Guid="57754e12-9269-4198-a38c-2c098bf5276e">
65
            <File Id="filenpmsh" KeyPath="yes" Source="$(var.NPMSourceDir)\bin\npm" />
66
          </Component>
67
          <?if $(var.Configuration) = Debug ?>
68
          <Component Id="nodepdb" Guid="BEC0F08E-89B3-4C35-A286-8DB8598597F2">
69
            <File Id="filenodepdb" KeyPath="yes" Source="$(var.SourceDir)\node.pdb" />
70
          </Component>
71
          <?endif?>
72
          <Component Id="nodejsvars" Guid="*">
73
            <File Id="filenodejsvars" KeyPath="yes" Source="$(var.RepoDir)\tools\msvs\nodejsvars.bat" />
74
          </Component>
75
        </Directory>
76
      </Directory>
77

    
78
      <Directory Id="AppDataFolder">
79
        <Directory Id="NPMAppData" Name="npm">
80
          <Component Id="npmappdata_folder" Guid="994B1F7F-60CD-4792-A96D-63BC7FFF29BF" Permanent="yes">
81
            <RegistryKey Action="none" Key="dummy" Root="HKCU" >
82
              <RegistryValue Type="integer"  Value="1" KeyPath="yes" />
83
            </RegistryKey >
84
            <CreateFolder/>
85
            <RemoveFolder Id="RemoveAppData" On="uninstall" />
86
          </Component>
87
        </Directory>
88
      </Directory>
89
    </Directory>
90

    
91
    <DirectoryRef Id="ApplicationProgramsFolder">
92
      <Component Id="ApplicationShortcut" Guid="9b1ab94a-8f54-4f19-a5c4-b890de474162">
93
        <Shortcut Id="ApplicationStartMenuShortcut" Name="Node.js"
94
                  Description="$(var.ProductDescription)" Target="[APPLICATIONROOTDIRECTORY]node.exe"
95
                  WorkingDirectory="APPLICATIONROOTDIRECTORY"/>
96
        <Shortcut Id="NodePromptStartMenuShortcut" Name="Node.js command prompt"
97
                  Description="Node.js Command Prompt" Target="[%ComSpec]"
98
                  Arguments='/k "[APPLICATIONROOTDIRECTORY]nodejsvars.bat"'
99
                  Show="normal"
100
                  WorkingDirectory="APPLICATIONROOTDIRECTORY"/>
101
        <util:InternetShortcut Id="OnlineWebsiteShortcut"
102
                  Name="Node.js website"
103
                  Target="http://nodejs.org"/>
104
        <util:InternetShortcut Id="OnlineDocumentationShortcut"
105
                  Name="Node.js documentation"
106
                  Target="http://nodejs.org/dist/v$(var.ProductVersion)/docs/api/"/>
107
        <Shortcut Id="UninstallProduct"
108
                  Name="Uninstall Node.js"
109
                  Target="[SystemFolder]msiexec.exe"
110
                  Arguments="/x [ProductCode]"
111
                  Description="Uninstalls $(var.ProductName)" />
112
        <RemoveFolder Id="ApplicationProgramsFolder" On="uninstall"/>
113
        <RegistryValue Root="HKCU" Key="Software\Joyent\$(var.ProductName)" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
114
      </Component>
115
    </DirectoryRef>
116

    
117

    
118
    <ComponentGroup Id="allfiles">
119
      <ComponentRef Id="nodeexe"/>
120
      <ComponentRef Id="npmcmd"/>
121
      <ComponentRef Id="npmsh"/>
122
      <ComponentRef Id="npmrc" />
123
      <ComponentRef Id="npmappdata_folder" />
124
      <ComponentGroupRef Id="NPMFiles" />
125
      <?if $(var.Configuration) = Debug ?>
126
      <ComponentRef Id="nodepdb"/>
127
      <?endif?>
128
      <ComponentRef Id="ApplicationShortcut" />
129
      <ComponentRef Id="nodejsvars" />
130
    </ComponentGroup>
131

    
132
    <Feature Id="nodejs" Title="node.js engine" Level="1" Description="$(var.ProductDescription)">
133
      <ComponentGroupRef Id="allfiles" />
134
      <ComponentGroupRef Id="Product.Generated" />
135
    </Feature>
136

    
137
    <UI Id="NodeInstallUI">
138
      <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" />
139
      <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" />
140
      <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" />
141

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

    
145
      <DialogRef Id="ErrorDlg" />
146
      <DialogRef Id="FatalError" />
147
      <DialogRef Id="FilesInUse" />
148
      <DialogRef Id="MsiRMFilesInUse" />
149
      <DialogRef Id="PrepareDlg" />
150
      <DialogRef Id="ProgressDlg" />
151
      <DialogRef Id="ResumeDlg" />
152
      <DialogRef Id="UserExit" />
153
      <DialogRef Id="WelcomeDlg" />
154
      <DialogRef Id="LicenseAgreementDlg"/>
155

    
156
      <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="LicenseAgreementDlg">1</Publish>
157
      <Publish Dialog="LicenseAgreementDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
158
      <Publish Dialog="LicenseAgreementDlg" Control="Next" Event="NewDialog" Value="PrepareDlg">1</Publish>
159
      <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish>
160
      <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
161
      <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish>
162
      <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
163
      <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" Event="NewDialog" Value="VerifyReadyDlg">1</Publish>
164
      <Publish Dialog="MaintenanceTypeDlg" Control="Back" Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish>
165

    
166
      <Property Id="ARPNOMODIFY" Value="1" />
167
      <Property Id="WIXUI_EXITDIALOGOPTIONALTEXT" Value="Node.js has been succesfully installed. To run Node.js open command prompt (cmd.exe), and run 'node'." />
168

    
169
    </UI>
170

    
171
    <UIRef Id="WixUI_Common" />
172
    <WixVariable Id="WixUIBannerBmp" Value="..\..\..\doc\thin-white-stripe.jpg" />
173
    <WixVariable Id="WixUIDialogBmp" Value="..\..\..\doc\full-white-stripe.jpg" />
174
    <WixVariable Id="WixUILicenseRtf" Value="$(var.SourceDir)\LICENSE.rtf" />
175
  </Product>
176

    
177
</Wix>