<?xml version="1.0" encoding="UTF-8"?> | |
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> | |
<!-- | |
# Copyright 2010 The Go Authors. All rights reserved. | |
# Use of this source code is governed by a BSD-style | |
# license that can be found in the LICENSE file. | |
--> | |
<?if $(var.Arch) = 386 ?> | |
<?define SYSFOLDER=SystemFolder ?> | |
<?define Win64=no ?> | |
<?else?> | |
<?define SYSFOLDER=System64Folder ?> | |
<?define Win64=yes ?> | |
<?endif?> | |
<Product | |
Id="FF5B30B2-08C2-11E1-85A2-6ACA4824019B" | |
Name="The Go Programming Language $(var.Arch) $(var.Version)" | |
Language="1033" | |
Version="0.0.0.0" | |
Manufacturer="http://golang.org" | |
UpgradeCode="1C3114EA-08C3-11E1-9095-7FCA4824019B" > | |
<!-- Version="$(var.Version)" TODO: Version requires X.X.X.X format --> | |
<Package | |
Id='*' Keywords='Installer' | |
Description="The Go Programming Language Installer" | |
Comments="The Go programming language is an open source project to make programmers more productive." | |
InstallerVersion="300" | |
Compressed="yes" | |
Manufacturer="http://golang.org" | |
InstallScope="perMachine" | |
Languages="1033" /> | |
<!-- Platform="x86 or x64" --> | |
<!-- | |
<Upgrade Id=""> | |
<UpgradeVersion | |
IncludeMaximum="yes" | |
IncludeMinimum="yes" | |
Language="1033" | |
Maximum="" | |
Minimum="" | |
Property="" /> | |
</Upgrade> | |
--> | |
<Media Id='1' Cabinet="go.cab" EmbedCab="yes" CompressionLevel="high" /> | |
<Condition Message="Windows 2000 or greater required."> VersionNT >= 500</Condition> | |
<SetDirectory Id="INSTALLDIRROOT" Value="C:\"/> | |
<CustomAction | |
Id="SetApplicationRootDirectory" | |
Property="ARPINSTALLLOCATION" | |
Value="[INSTALLDIR]" /> | |
<!-- Define the directory structure and environment variables --> | |
<Directory Id="TARGETDIR" Name="SourceDir"> | |
<Directory Id="INSTALLDIRROOT"> | |
<Directory Id="INSTALLDIR" Name="Go"/> | |
</Directory> | |
<Directory Id="ProgramMenuFolder"> | |
<Directory Id="GoProgramShortcutsDir" Name="Go Programming"/> | |
</Directory> | |
<Directory Id="DesktopFolder" Name="Desktop"/> | |
</Directory> | |
<!-- Programs Menu & Desktop Shortcuts --> | |
<DirectoryRef Id="GoProgramShortcutsDir"> | |
<Component Id="Component_GoShortCuts" Guid="f5fbfb5e-6c5c-423b-9298-21b0e3c98f4b"> | |
<Shortcut | |
Id="GoEnvStartMenuShortcut" | |
Name="GoEnv" | |
Description="Sets the Go environment and spawns a shell window" | |
Target="[INSTALLDIR]goenv.bat" /> | |
<Shortcut | |
Id="GoEnvDesktopShortcut" | |
Directory="DesktopFolder" | |
Name="GoEnv" | |
Description="Sets the Go environment and spawns a shell window" | |
Target="[INSTALLDIR]goenv.bat" /> | |
<Shortcut | |
Id="GoDocServerStartMenuShortcut" | |
Name="GoDocServer" | |
Description="Starts the godoc server on localhost:6060" | |
Target="[INSTALLDIR]godocserver.bat" /> | |
<Shortcut | |
Id="GoDocServerDesktopShortcut" | |
Directory="DesktopFolder" | |
Name="GoDocServer" | |
Description="Starts the godoc server on localhost:6060" | |
Target="[INSTALLDIR]godocserver.bat" /> | |
<Shortcut | |
Id="UninstallShortcut" | |
Name="Uninstall Go" | |
Description="Uninstalls Go and all of its components" | |
Target="[$(var.SYSFOLDER)]msiexec.exe" | |
Arguments="/x [ProductCode]" /> | |
<RemoveFolder | |
Id="GoProgramShortcutsDir" | |
On="uninstall" /> | |
<RegistryValue | |
Root="HKCU" | |
Key="Software\Microsoft\TheGoProgrammingLanguage" | |
Name="installed" | |
Type="integer" | |
Value="1" | |
KeyPath="yes" /> | |
</Component> | |
</DirectoryRef> | |
<!-- Components --> | |
<DirectoryRef Id="INSTALLDIR"> | |
<Component Id="Component_GoDocServerBAT" Guid="c40ea60a-4290-4a91-864d-e1d8eb5cf693"> | |
<File | |
Id="FILE_GoDocServerBat" | |
Source="godocserver.bat" | |
KeyPath="yes" /> | |
</Component> | |
<Component Id="Component_GoEnvBAT" Guid="ee4587d3-fba3-47f9-b45e-ec9ca9c8a9c3"> | |
<File | |
Id="FILE_GoEnvBat" | |
Source="goenv.bat" | |
KeyPath="yes" /> | |
</Component> | |
</DirectoryRef> | |
<!-- Install the files --> | |
<Feature | |
Id="GoTools" | |
Title="Go" | |
Level="1"> | |
<ComponentGroupRef Id="AppFiles" /> | |
<ComponentRef Id="Component_GoDocServerBAT" /> | |
<ComponentRef Id="Component_GoEnvBAT" /> | |
<ComponentRef Id="Component_GoShortCuts" /> | |
</Feature> | |
<!-- Update the environment --> | |
<InstallExecuteSequence> | |
<Custom | |
Action="SetApplicationRootDirectory" | |
Before="InstallFinalize" /> | |
</InstallExecuteSequence> | |
<!-- Include the user interface --> | |
<WixVariable Id="WixUILicenseRtf" Value="LICENSE" /> | |
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" /> | |
<UIRef Id="WixUI_InstallDir" /> | |
</Product> | |
</Wix> |