1<?xml version="1.0"?>
2<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
3    <Fragment>
4        <PackageGroup Id="postinstall">
5            <MsiPackage Id="path_AllUsers"
6                        SourceFile="path.msi"
7                        Compressed="$(var.CompressMSI)"
8                        DownloadUrl="$(var.DownloadUrl)"
9                        ForcePerMachine="yes"
10                        InstallCondition="InstallAllUsers and PrependPath and not LauncherOnly">
11                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
12                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
13            </MsiPackage>
14            <MsiPackage Id="path_JustForMe"
15                        SourceFile="path.msi"
16                        Compressed="$(var.CompressMSI)"
17                        DownloadUrl="$(var.DownloadUrl)"
18                        ForcePerMachine="no"
19                        InstallCondition="not InstallAllUsers and PrependPath and not LauncherOnly">
20                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
21                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
22            </MsiPackage>
23
24            <MsiPackage Id="appendpath_AllUsers"
25                        SourceFile="appendpath.msi"
26                        Compressed="$(var.CompressMSI)"
27                        DownloadUrl="$(var.DownloadUrl)"
28                        ForcePerMachine="yes"
29                        InstallCondition="InstallAllUsers and AppendPath and not LauncherOnly">
30                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
31                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
32            </MsiPackage>
33            <MsiPackage Id="appendpath_JustForMe"
34                        SourceFile="appendpath.msi"
35                        Compressed="$(var.CompressMSI)"
36                        DownloadUrl="$(var.DownloadUrl)"
37                        ForcePerMachine="no"
38                        InstallCondition="not InstallAllUsers and AppendPath and not LauncherOnly">
39                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
40                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
41            </MsiPackage>
42
43
44
45            <?define CompileAllCommand=-E -s -Wi "[TargetDir]\Lib\compileall.py" -f -x "bad_coding|badsyntax|site-packages|py2_|lib2to3\\tests|venv\\scripts" "[TargetDir]\Lib"?>
46            <ExePackage Id="compileall_AllUsers"
47                        SourceFile="py.exe"
48                        Compressed="yes"
49                        DisplayName="!(loc.CompileAllDescription)"
50                        InstallCommand='-[WinVer] $(var.CompileAllCommand)'
51                        RepairCommand='-[WinVer] $(var.CompileAllCommand)'
52                        Permanent="yes"
53                        PerMachine="yes"
54                        Vital="no"
55                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />
56            <ExePackage Id="compileallO_AllUsers"
57                        SourceFile="py.exe"
58                        Compressed="yes"
59                        DisplayName="!(loc.CompileAllODescription)"
60                        InstallCommand='-[WinVer] -O $(var.CompileAllCommand)'
61                        RepairCommand='-[WinVer] -O $(var.CompileAllCommand)'
62                        Permanent="yes"
63                        PerMachine="yes"
64                        Vital="no"
65                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />
66            <ExePackage Id="compileallOO_AllUsers"
67                        SourceFile="py.exe"
68                        Compressed="yes"
69                        DisplayName="!(loc.CompileAllOODescription)"
70                        InstallCommand='-[WinVer] -OO $(var.CompileAllCommand)'
71                        RepairCommand='-[WinVer] -OO $(var.CompileAllCommand)'
72                        Permanent="yes"
73                        PerMachine="yes"
74                        Vital="no"
75                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />
76
77            <ExePackage Id="compileall_JustForMe"
78                        SourceFile="py.exe"
79                        Compressed="yes"
80                        DisplayName="!(loc.CompileAllDescription)"
81                        InstallCommand='-[WinVer] $(var.CompileAllCommand)'
82                        RepairCommand='-[WinVer] $(var.CompileAllCommand)'
83                        Permanent="yes"
84                        PerMachine="no"
85                        Vital="no"
86                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
87            <ExePackage Id="compileallO_JustForMe"
88                        SourceFile="py.exe"
89                        Compressed="yes"
90                        DisplayName="!(loc.CompileAllODescription)"
91                        InstallCommand='-[WinVer] -O $(var.CompileAllCommand)'
92                        RepairCommand='-[WinVer] -O $(var.CompileAllCommand)'
93                        Permanent="yes"
94                        PerMachine="no"
95                        Vital="no"
96                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
97            <ExePackage Id="compileallOO_JustForMe"
98                        SourceFile="py.exe"
99                        Compressed="yes"
100                        DisplayName="!(loc.CompileAllOODescription)"
101                        InstallCommand='-[WinVer] -OO $(var.CompileAllCommand)'
102                        RepairCommand='-[WinVer] -OO $(var.CompileAllCommand)'
103                        Permanent="yes"
104                        PerMachine="no"
105                        Vital="no"
106                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
107        </PackageGroup>
108    </Fragment>
109</Wix>
110