moonlight-qt/wix/MoonlightSetup/Bundle.wxs
2025-11-20 00:02:05 -06:00

119 lines
6.8 KiB
XML

<!-- This block is autogenerated using scripts\update-msvcredist.ps1 -->
<?define VCREDIST_VER = "14.50.35710.0" ?>
<?define VCREDIST_X64_SIZE = "18537912" ?>
<?define VCREDIST_X64_SHA512 = "AA420688EFABFB3F999BC2D2D6049668EE12CC4E9D3CC9D1EA04F1D91CA7F8B027D0E5F1D680C2E208F9AA2F1F91F5C63CD4C8F0D0C915DC28A5FB07EC2BE334" ?>
<?define VCREDIST_X64_URL = "https://download.visualstudio.microsoft.com/download/pr/528148d3-d7cc-4b5e-b034-0225693b1232/CE1A6F9F3EB3F9581A100BE793AD4D7D043632E1776FB40CB654C59504776151/VC_redist.x64.exe" ?>
<?define VCREDIST_X64_UPGRADE_CODE = "36F68A90-239C-34DF-B58C-64B30153CE35" ?>
<?define VCREDIST_ARM64_SIZE = "11724736" ?>
<?define VCREDIST_ARM64_SHA512 = "77D24F053E95C2C6B7F39B0BF17DF3D0A425A399583724A85EF2B0BD4585014CDE9FD884137FBFB7DF29B1AEC4386CBF2114741C6F90146EA2412E4EFC043F0A" ?>
<?define VCREDIST_ARM64_URL = "https://download.visualstudio.microsoft.com/download/pr/528148d3-d7cc-4b5e-b034-0225693b1232/ED888947FD1292919960B793F54945690A7A5BEDA1798256D415B80F16114FCA/VC_redist.arm64.exe" ?>
<?define VCREDIST_ARM64_UPGRADE_CODE = "DC9BAE42-810B-423A-9E25-E4073F1C7B00" ?>
<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" xmlns:bal="http://wixtoolset.org/schemas/v4/wxs/bal" xmlns:util="http://wixtoolset.org/schemas/v4/wxs/util">
<Bundle Name="Moonlight Game Streaming Client"
Version="!(bind.PackageVersion.Moonlight_x64)"
Manufacturer="Moonlight Game Streaming Project"
UpgradeCode="466fa35d-4be4-40ef-9ce5-afadc3b63bc5"
HelpUrl="https://github.com/moonlight-stream/moonlight-docs/wiki/Setup-Guide"
UpdateUrl="https://github.com/moonlight-stream/moonlight-qt/releases"
DisableModify="yes"
IconSourceFile="..\..\app\moonlight.ico">
<bal:Condition Message="This version of Moonlight requires Windows 10 or later." Condition="VersionNT &gt;= v10.0" />
<bal:Condition Message="This version of Moonlight requires a 64-bit version of Windows." Condition="NativeMachine &lt;&gt; 332" />
<Variable Name="InstallFolder" Type="formatted" Value="[ProgramFiles6432Folder]Moonlight Game Streaming" />
<!-- Define "Add desktop shortcut" -checkbox's state by defining a variable
which has same name as the checkbox has. Value 1 means that checkbox
is checked, 0 means that is unchecked-->
<!-- Set checkbox's state as checked by default -->
<Variable Name="AddDesktopShortcutCheckbox" Type="numeric" Value="1" />
<!-- Get checkbox's state from registry if present. The registry value
"DesktopShortcutInstallState" is set in Product.wxs. -->
<util:RegistrySearch Variable="HasDesktopShortcutInstallStateRegKey" Root="HKCU" Key="Software\Moonlight Game Streaming Project" Value="DesktopShortcutInstallState" Result="exists" />
<util:RegistrySearch Variable="AddDesktopShortcutCheckbox" Root="HKCU" Key="Software\Moonlight Game Streaming Project" Value="DesktopShortcutInstallState" Condition="HasDesktopShortcutInstallStateRegKey" />
<util:ProductSearch Id="VCREDIST_14_x64"
UpgradeCode="$(var.VCREDIST_X64_UPGRADE_CODE)"
Result="version"
Variable="VCREDIST_14_x64" />
<util:ProductSearch Id="VCREDIST_14_ARM64"
UpgradeCode="$(var.VCREDIST_ARM64_UPGRADE_CODE)"
Result="version"
Variable="VCREDIST_14_ARM64" />
<BootstrapperApplication>
<bal:WixStandardBootstrapperApplication ShowVersion="yes"
LicenseFile="license.rtf"
LogoFile="..\..\app\moonlight_wix.png"
LaunchTarget="[InstallFolder]\Moonlight.exe"
ThemeFile="RtfTheme.xml"
Theme="rtfLicense" />
<Payload Name="Moonlight.ico" SourceFile="..\..\app\moonlight.ico" Compressed="yes" />
</BootstrapperApplication>
<Chain>
<ExePackage Cache="remove"
PerMachine="yes"
Permanent="yes"
Vital="yes"
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
DetectCondition="VCREDIST_14_x64 &gt;= v$(var.VCREDIST_VER)"
InstallArguments="/install /quiet /norestart">
<ExePackagePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - x64"
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - x64"
Size="$(var.VCREDIST_X64_SIZE)"
Version="$(var.VCREDIST_VER)"
Hash="$(var.VCREDIST_X64_SHA512)"
Name="VC_redist.x64.exe"
DownloadUrl="$(var.VCREDIST_X64_URL)" />
<!-- Newer version installed is fine -->
<ExitCode Value="1638" Behavior="success" />
</ExePackage>
<ExePackage Cache="remove"
PerMachine="yes"
Permanent="yes"
Vital="yes"
InstallCondition="NativeMachine = 43620"
DetectCondition="VCREDIST_14_ARM64 &gt;= v$(var.VCREDIST_VER)"
InstallArguments="/install /quiet /norestart">
<ExePackagePayload Description="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
ProductName="Microsoft Visual C++ 2015-2022 Redistributable - ARM64"
Size="$(var.VCREDIST_ARM64_SIZE)"
Version="$(var.VCREDIST_VER)"
Hash="$(var.VCREDIST_ARM64_SHA512)"
Name="VC_redist.arm64.exe"
DownloadUrl="$(var.VCREDIST_ARM64_URL)" />
<!-- Newer version installed is fine -->
<ExitCode Value="1638" Behavior="success" />
</ExePackage>
<MsiPackage Id="Moonlight_x64"
SourceFile="$(env.BUILD_ROOT)\build-x64-$(env.BUILD_CONFIG)\Moonlight.msi"
Name="Moonlight_x64.msi"
InstallCondition="(VersionNT64 AND NOT NativeMachine) OR (NativeMachine = 34404)"
Vital="yes">
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
</MsiPackage>
<MsiPackage Id="Moonlight_arm64"
SourceFile="$(env.BUILD_ROOT)\build-arm64-$(env.BUILD_CONFIG)\Moonlight.msi"
Name="Moonlight_arm64.msi"
InstallCondition="NativeMachine = 43620"
Vital="yes">
<MsiProperty Name="INSTALLFOLDER" Value="[InstallFolder]" />
<MsiProperty Name="ADDDESKTOPSHORTCUT" Value="[AddDesktopShortcutCheckbox]" />
</MsiPackage>
</Chain>
</Bundle>
</Wix>