1<?xml version="1.0"?> 2<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" 3 xmlns:bal="http://schemas.microsoft.com/wix/BalExtension" 4 xmlns:dep="http://schemas.microsoft.com/wix/DependencyExtension"> 5 <Bundle Name="!(loc.FullProductName)" 6 UpgradeCode="$(var.CoreUpgradeCode)" 7 Version="$(var.Version)" 8 IconSourceFile="..\..\..\PC\icons\setup.ico" 9 Manufacturer="!(loc.Manufacturer)" 10 AboutUrl="https://www.python.org/" 11 Compressed="no" 12 dep:ProviderKey="CPython-$(var.MajorVersionNumber).$(var.MinorVersionNumber)$(var.PyArchExt)$(var.PyTestExt)"> 13 <BootstrapperApplication Id="PythonBA" SourceFile="$(var.BootstrapApp)"> 14 <Payload Compressed='yes' SourceFile='Default.thm' /> 15 <Payload Compressed='yes' SourceFile='$(var.DefaultWxl)' /> 16 <Payload Compressed='yes' SourceFile='SideBar.png' /> 17 </BootstrapperApplication> 18 19 <!-- May be set to "Removing" or "Repairing" --> 20 <Variable Name="ActionLikeInstalling" Value="Installing" /> 21 <!-- May be set to "Uninstallation" or "Repair" --> 22 <Variable Name="ActionLikeInstallation" Value="Setup" /> 23 24 <Variable Name="ShortVersion" Value="$(var.MajorVersionNumber).$(var.MinorVersionNumber)" /> 25 <Variable Name="ShortVersionNoDot" Value="$(var.MajorVersionNumber)$(var.MinorVersionNumber)" /> 26 <Variable Name="WinVer" Value="$(var.MajorVersionNumber).$(var.MinorVersionNumber)$(var.PyArchExt)$(var.PyTestExt)" /> 27 <Variable Name="WinVerNoDot" Value="$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.PyArchExt)$(var.PyTestExt)" /> 28 29 <Variable Name="InstallAllUsers" Value="0" bal:Overridable="yes" /> 30 <?if "$(var.PyTestExt)"="" ?> 31 <Variable Name="InstallLauncherAllUsers" Value="-1" bal:Overridable="yes" /> 32 <?else ?> 33 <Variable Name="InstallLauncherAllUsers" Value="-1" /> 34 <?endif ?> 35 36 <Variable Name="TargetDir" Value="" bal:Overridable="yes" /> 37 <?if $(var.Platform)~="x64" ?> 38 <Variable Name="DefaultAllUsersTargetDir" Value="[ProgramFiles64Folder]Python[WinVerNoDot]" bal:Overridable="yes" /> 39 <Variable Name="TargetPlatform" Value="x64" /> 40 <?elseif $(var.Platform)~="ARM64" ?> 41 <Variable Name="DefaultAllUsersTargetDir" Value="[ProgramFiles64Folder]Python[WinVerNoDot]" bal:Overridable="yes" /> 42 <Variable Name="TargetPlatform" Value="ARM64" /> 43 <?else ?> 44 <Variable Name="DefaultAllUsersTargetDir" Value="[ProgramFilesFolder]Python[WinVerNoDot]" bal:Overridable="yes" /> 45 <Variable Name="TargetPlatform" Value="x86" /> 46 <?endif ?> 47 <Variable Name="DefaultJustForMeTargetDir" Value="[LocalAppDataFolder]Programs\Python\Python[WinVerNoDot]" bal:Overridable="yes" /> 48 <Variable Name="OptionalFeaturesRegistryKey" Value="Software\Python\PythonCore\[WinVer]\InstalledFeatures" /> 49 <Variable Name="TargetDirRegistryKey" Value="Software\Python\PythonCore\[WinVer]\InstallPath" /> 50 51 <!-- 52 An empty string will use the other defaults based on InstallAllUsers 53 (and switch dynamically in the UI). To get the old default, pass 54 this property on the command line: 55 DefaultCustomTargetDir=[WindowsVolume]Python[ShortVersionNoDot] 56 --> 57 <Variable Name="DefaultCustomTargetDir" Value="" bal:Overridable="yes" /> 58 59 <Variable Name="InstallAllUsersState" Value="enabled" bal:Overridable="yes" /> 60 <?if "$(var.PyTestExt)"="" ?> 61 <Variable Name="InstallLauncherAllUsersState" Value="enabled" bal:Overridable="yes" /> 62 <?else ?> 63 <Variable Name="InstallLauncherAllUsersState" Value="disable" bal:Overridable="yes" /> 64 <?endif ?> 65 <Variable Name="CustomInstallLauncherAllUsersState" Value="[InstallLauncherAllUsersState]" /> 66 <Variable Name="TargetDirState" Value="enabled" /> 67 <Variable Name="CustomBrowseButtonState" Value="enabled" /> 68 69 <Variable Name="Include_core" Value="1" /> 70 <Variable Name="Include_exe" Value="1" bal:Overridable="yes" /> 71 <Variable Name="Include_dev" Value="1" bal:Overridable="yes" /> 72 <Variable Name="Include_lib" Value="1" bal:Overridable="yes" /> 73 <Variable Name="Include_test" Value="1" bal:Overridable="yes" /> 74 <Variable Name="Include_doc" Value="1" bal:Overridable="yes" /> 75 <Variable Name="Include_tools" Value="0" bal:Overridable="yes" /> 76 <Variable Name="Include_tcltk" Value="1" bal:Overridable="yes" /> 77 <Variable Name="Include_pip" Value="1" bal:Overridable="yes" /> 78 <Variable Name="Include_launcher" Value="-1" bal:Overridable="yes" /> 79 <?if "$(var.PyTestExt)"="" ?> 80 <Variable Name="Include_launcherState" Value="enabled" bal:Overridable="yes" /> 81 <?else ?> 82 <Variable Name="Include_launcherState" Value="disable" /> 83 <?endif ?> 84 <Variable Name="Include_symbols" Value="0" bal:Overridable="yes" /> 85 <Variable Name="Include_debug" Value="0" bal:Overridable="yes" /> 86 <?if $(var.IncludeFreethreaded)~="true" ?> 87 <Variable Name="Include_freethreaded" Value="0" bal:Overridable="yes" /> 88 <Variable Name="Include_freethreadedState" Value="enabled" /> 89 <?else ?> 90 <Variable Name="Include_freethreaded" Value="0" /> 91 <Variable Name="Include_freethreadedState" Value="disable" /> 92 <?endif ?> 93 94 <Variable Name="LauncherOnly" Value="0" bal:Overridable="yes" /> 95 <Variable Name="BlockedLauncher" Value="0" /> 96 <Variable Name="DetectedLauncher" Value="0" /> 97 <Variable Name="DetectedOldLauncher" Value="0" /> 98 99 <Variable Name="AssociateFiles" Value="-1" bal:Overridable="yes" /> 100 <Variable Name="Shortcuts" Value="1" bal:Overridable="yes" /> 101 <Variable Name="PrependPath" Value="0" bal:Overridable="yes" /> 102 <Variable Name="AppendPath" Value="0" bal:Overridable="yes" /> 103 <Variable Name="CompileAll" Value="0" bal:Overridable="yes" /> 104 105 <Variable Name="SimpleInstall" Value="0" bal:Overridable="yes" /> 106 <Variable Name="SimpleInstallDescription" Value="" bal:Overridable="yes" /> 107 108 <Chain ParallelCache="yes"> 109 <?if $(var.Platform)!="ARM64" ?> 110 <PackageGroupRef Id="crt" /> 111 <?endif ?> 112 <PackageGroupRef Id="core" /> 113 <PackageGroupRef Id="exe" /> 114 <PackageGroupRef Id="dev" /> 115 <PackageGroupRef Id="lib" /> 116 <?if $(var.IncludeFreethreaded)~="true" ?> 117 <PackageGroupRef Id="freethreaded" /> 118 <?endif ?> 119 <PackageGroupRef Id="test" /> 120 <PackageGroupRef Id="doc" /> 121 <PackageGroupRef Id="tcltk" /> 122 <PackageGroupRef Id="launcher" /> 123 <PackageGroupRef Id="pip" /> 124 <PackageGroupRef Id="packageinstall" /> 125 <PackageGroupRef Id="postinstall" /> 126 </Chain> 127 </Bundle> 128</Wix> 129