github.com/yanyiwu/go@v0.0.0-20150106053140-03d6637dbb7f/misc/makerelease/windows/installer.wxs (about) 1 <?xml version="1.0" encoding="UTF-8"?> 2 <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> 3 <!-- 4 # Copyright 2010 The Go Authors. All rights reserved. 5 # Use of this source code is governed by a BSD-style 6 # license that can be found in the LICENSE file. 7 --> 8 9 <?if $(var.Arch) = 386 ?> 10 <?define ProdId = {FF5B30B2-08C2-11E1-85A2-6ACA4824019B} ?> 11 <?define UpgradeCode = {1C3114EA-08C3-11E1-9095-7FCA4824019B} ?> 12 <?define SysFolder=SystemFolder ?> 13 <?else?> 14 <?define ProdId = {716c3eaa-9302-48d2-8e5e-5cfec5da2fab} ?> 15 <?define UpgradeCode = {22ea7650-4ac6-4001-bf29-f4b8775db1c0} ?> 16 <?define SysFolder=System64Folder ?> 17 <?endif?> 18 19 <Product 20 Id="FF5B30B2-08C2-11E1-85A2-6ACA4824019B" 21 Name="Go Programming Language $(var.Arch) $(var.GoVersion)" 22 Language="1033" 23 Codepage="1252" 24 Version="$(var.WixGoVersion)" 25 Manufacturer="http://golang.org" 26 UpgradeCode="$(var.UpgradeCode)" > 27 28 <Package 29 Id='*' 30 Keywords='Installer' 31 Description="The Go Programming Language Installer" 32 Comments="The Go programming language is an open source project to make programmers more productive." 33 InstallerVersion="300" 34 Compressed="yes" 35 InstallScope="perMachine" 36 SummaryCodepage="1252" 37 Languages="1033" /> 38 <!-- Platform="x86 or x64" --> 39 40 <Property Id="ARPCOMMENTS" Value="The Go programming language is a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language." /> 41 <Property Id="ARPCONTACT" Value="golang-nuts@googlegroups.com" /> 42 <Property Id="ARPHELPLINK" Value="https://golang.org/help/" /> 43 <Property Id="ARPREADME" Value="https://golang.org" /> 44 <Property Id="ARPURLINFOABOUT" Value="https://golang.org" /> 45 <Property Id="LicenseAccepted">1</Property> 46 <Icon Id="gopher.ico" SourceFile="images\gopher.ico"/> 47 <Property Id="ARPPRODUCTICON" Value="gopher.ico" /> 48 <Media Id='1' Cabinet="go.cab" EmbedCab="yes" CompressionLevel="high" /> 49 <Condition Message="Windows 2000 or greater required."> VersionNT >= 500</Condition> 50 <MajorUpgrade AllowDowngrades="yes" /> 51 <SetDirectory Id="INSTALLDIRROOT" Value="[%SYSTEMDRIVE]"/> 52 53 <CustomAction 54 Id="SetApplicationRootDirectory" 55 Property="ARPINSTALLLOCATION" 56 Value="[INSTALLDIR]" /> 57 58 <!-- Define the directory structure and environment variables --> 59 <Directory Id="TARGETDIR" Name="SourceDir"> 60 <Directory Id="INSTALLDIRROOT"> 61 <Directory Id="INSTALLDIR" Name="Go"/> 62 </Directory> 63 <Directory Id="ProgramMenuFolder"> 64 <Directory Id="GoProgramShortcutsDir" Name="Go Programming Language"/> 65 </Directory> 66 <Directory Id="EnvironmentEntries"> 67 <Directory Id="GoEnvironmentEntries" Name="Go Programming Language"/> 68 </Directory> 69 </Directory> 70 71 <!-- Programs Menu Shortcuts --> 72 <DirectoryRef Id="GoProgramShortcutsDir"> 73 <Component Id="Component_GoProgramShortCuts" Guid="{f5fbfb5e-6c5c-423b-9298-21b0e3c98f4b}"> 74 <Shortcut 75 Id="GoDocServerStartMenuShortcut" 76 Name="GoDocServer" 77 Description="Starts the Go documentation server (http://localhost:6060)" 78 Show="minimized" 79 Arguments='/c start "Godoc Server http://localhost:6060" "[INSTALLDIR]bin\godoc.exe" -http=localhost:6060 -goroot="[INSTALLDIR]." && start http://localhost:6060' 80 Icon="gopher.ico" 81 Target="[%ComSpec]" /> 82 <Shortcut 83 Id="UninstallShortcut" 84 Name="Uninstall Go" 85 Description="Uninstalls Go and all of its components" 86 Target="[$(var.SysFolder)]msiexec.exe" 87 Arguments="/x [ProductCode]" /> 88 <RemoveFolder 89 Id="GoProgramShortcutsDir" 90 On="uninstall" /> 91 <RegistryValue 92 Root="HKCU" 93 Key="Software\GoProgrammingLanguage" 94 Name="ShortCuts" 95 Type="integer" 96 Value="1" 97 KeyPath="yes" /> 98 </Component> 99 </DirectoryRef> 100 101 <!-- Registry & Environment Settings --> 102 <DirectoryRef Id="GoEnvironmentEntries"> 103 <Component Id="Component_GoEnvironment" Guid="{3ec7a4d5-eb08-4de7-9312-2df392c45993}"> 104 <RegistryKey 105 Root="HKCU" 106 Key="Software\GoProgrammingLanguage" 107 Action="create" > 108 <RegistryValue 109 Name="installed" 110 Type="integer" 111 Value="1" 112 KeyPath="yes" /> 113 <RegistryValue 114 Name="installLocation" 115 Type="string" 116 Value="[INSTALLDIR]" /> 117 </RegistryKey> 118 <Environment 119 Id="GoPathEntry" 120 Action="set" 121 Part="last" 122 Name="PATH" 123 Permanent="no" 124 System="yes" 125 Value="[INSTALLDIR]bin" /> 126 <Environment 127 Id="GoRoot" 128 Action="set" 129 Part="all" 130 Name="GOROOT" 131 Permanent="no" 132 System="yes" 133 Value="[INSTALLDIR]" /> 134 <RemoveFolder 135 Id="GoEnvironmentEntries" 136 On="uninstall" /> 137 </Component> 138 </DirectoryRef> 139 140 <!-- Install the files --> 141 <Feature 142 Id="GoTools" 143 Title="Go" 144 Level="1"> 145 <ComponentRef Id="Component_GoEnvironment" /> 146 <ComponentGroupRef Id="AppFiles" /> 147 <ComponentRef Id="Component_GoProgramShortCuts" /> 148 </Feature> 149 150 <!-- Update the environment --> 151 <InstallExecuteSequence> 152 <Custom Action="SetApplicationRootDirectory" Before="InstallFinalize" /> 153 </InstallExecuteSequence> 154 155 <!-- Include the user interface --> 156 <WixVariable Id="WixUILicenseRtf" Value="LICENSE.rtf" /> 157 <WixVariable Id="WixUIBannerBmp" Value="images\Banner.jpg" /> 158 <WixVariable Id="WixUIDialogBmp" Value="images\Dialog.jpg" /> 159 <Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" /> 160 <UIRef Id="WixUI_InstallDir" /> 161 162 </Product> 163 </Wix>