<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
        <PackageGroup Id="postinstall">
            <MsiPackage Id="path_AllUsers"
                        SourceFile="path.msi"
                        Compressed="$(var.CompressMSI)"
                        DownloadUrl="$(var.DownloadUrl)"
                        ForcePerMachine="yes"
                        InstallCondition="InstallAllUsers and PrependPath and not LauncherOnly">
                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
            </MsiPackage>
            <MsiPackage Id="path_JustForMe"
                        SourceFile="path.msi"
                        Compressed="$(var.CompressMSI)"
                        DownloadUrl="$(var.DownloadUrl)"
                        ForcePerMachine="no"
                        InstallCondition="not InstallAllUsers and PrependPath and not LauncherOnly">
                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
            </MsiPackage>

            <MsiPackage Id="appendpath_AllUsers"
                        SourceFile="appendpath.msi"
                        Compressed="$(var.CompressMSI)"
                        DownloadUrl="$(var.DownloadUrl)"
                        ForcePerMachine="yes"
                        InstallCondition="InstallAllUsers and AppendPath and not LauncherOnly">
                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
            </MsiPackage>
            <MsiPackage Id="appendpath_JustForMe"
                        SourceFile="appendpath.msi"
                        Compressed="$(var.CompressMSI)"
                        DownloadUrl="$(var.DownloadUrl)"
                        ForcePerMachine="no"
                        InstallCondition="not InstallAllUsers and AppendPath and not LauncherOnly">
                <MsiProperty Name="TARGETDIR" Value="[TargetDir]" />
                <MsiProperty Name="OPTIONALFEATURESREGISTRYKEY" Value="[OptionalFeaturesRegistryKey]" />
            </MsiPackage>


            
            <?define CompileAllCommand=-E -s -Wi "[TargetDir]\Lib\compileall.py" -f -x "bad_coding|badsyntax|site-packages|py2_|lib2to3\\tests|venv\\scripts" "[TargetDir]\Lib"?>
            <ExePackage Id="compileall_AllUsers"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllDescription)"
                        InstallCommand='-[WinVer] $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="yes"
                        Vital="no"
                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />
            <ExePackage Id="compileallO_AllUsers"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllODescription)"
                        InstallCommand='-[WinVer] -O $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] -O $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="yes"
                        Vital="no"
                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />
            <ExePackage Id="compileallOO_AllUsers"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllOODescription)"
                        InstallCommand='-[WinVer] -OO $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] -OO $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="yes"
                        Vital="no"
                        InstallCondition="InstallAllUsers and CompileAll and not LauncherOnly" />

            <ExePackage Id="compileall_JustForMe"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllDescription)"
                        InstallCommand='-[WinVer] $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="no"
                        Vital="no"
                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
            <ExePackage Id="compileallO_JustForMe"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllODescription)"
                        InstallCommand='-[WinVer] -O $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] -O $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="no"
                        Vital="no"
                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
            <ExePackage Id="compileallOO_JustForMe"
                        SourceFile="py.exe"
                        Compressed="yes"
                        DisplayName="!(loc.CompileAllOODescription)"
                        InstallCommand='-[WinVer] -OO $(var.CompileAllCommand)'
                        RepairCommand='-[WinVer] -OO $(var.CompileAllCommand)'
                        Permanent="yes"
                        PerMachine="no"
                        Vital="no"
                        InstallCondition="not InstallAllUsers and CompileAll and not LauncherOnly" />
        </PackageGroup>
    </Fragment>
</Wix>
