Try appveyor for MSI (not finished)

This commit is contained in:
Neil Alexander 2019-11-27 19:53:23 +00:00
parent ad8d30ce74
commit 74ea971748
No known key found for this signature in database
GPG key ID: A02A2019A2BB0944
3 changed files with 200 additions and 0 deletions

112
contrib/msi/yggdrasil.wxs Normal file
View file

@ -0,0 +1,112 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
SPDX-License-Identifier: GPL-2.0
Copyright (C) 2019 WireGuard LLC. All Rights Reserved.
-->
<?if $(var.YGGDRASILTUN_PLATFORM) = "amd64"?>
<?define UpgradeCode = "68601386-a5e7-48e1-bdfd-f08c907f419a"?>
<?elseif $(var.YGGDRASILTUN_PLATFORM) = "x86"?>
<?define UpgradeCode = "7e76f74b-9ed7-4654-867a-10467ffb7ca6"?>
<?else?>
<?error Unknown platform ?>
<?endif?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Product
Id="*"
Name="Yggdrasil ($(var.YGGDRASIL_PKGNAME) branch)"
Keywords="Installer"
Description="Yggdrasil Network Installer"
Language="1033"
Version="$(var.YGGDRASIL_PKGVERSION)"
Manufacturer="github.com/yggdrasil-network"
UpgradeCode="$(var.UpgradeCode)">
<Package
InstallerVersion="400"
Compressed="yes"
InstallScope="perMachine"
Description="Yggdrasil Network"
ReadOnly="yes" />
<Media
Id="1"
Cabinet="Media.cab"
EmbedCab="yes"
DiskPrompt="CD-ROM #1" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFilesFolder" Name="PFiles">
<Directory Id="YggdrasilInstallFolder" Name="Yggdrasil">
<Component Id="MainExecutable" Guid="f1ac3e74-e500-41a5-b35c-fc90a2d95445">
<File
Id="Yggdrasil"
Name="yggdrasil.exe"
DiskId="1"
Source="yggdrasil.exe"
KeyPath="yes" />
<ServiceInstall
Id="ServiceInstaller"
Account="LocalSystem"
Description="Yggdrasil Network router process"
DisplayName="Yggdrasil Service"
ErrorControl="normal"
LoadOrderGroup="NetworkProvider"
Name="yggdrasil"
Start="auto"
Type="ownProcess"
Arguments="-autoconf"
Vital="yes" />
<ServiceControl
Id="ServiceControl"
Name="yggdrasil"
Start="install"
Stop="both"
Remove="uninstall" />
</Component>
<Component Id="CtrlExecutable" Guid="f1ac3e74-e500-41a5-b35c-fc90a2d95445">
<File
Id="Yggdrasilctl"
Name="yggdrasilctl.exe"
DiskId="1"
Source="yggdrasilctl.exe"
KeyPath="yes"/>
</Component>
<Component Id="ConfigScript" Guid="f1ac3e74-e500-41a5-b35c-fc90a2d95445">
<File
Id="Configbat"
Name="config.bat"
DiskId="1"
Source="config.bat"
KeyPath="yes"/>
</Component>
</Directory>
</Directory>
</Directory>
<MediaTemplate EmbedCab="yes" CompressionLevel="high" />
<Property Id="ARPNOMODIFY" Value="yes" />
<Property Id="ARPSYSTEMCOMPONENT" Value="1" />
<Property Id="DISABLEADVTSHORTCUTS" Value="yes" />
<Property Id="DISABLEROLLBACK" Value="yes" />
<Property Id="MSIDISABLERMRESTART" Value="1" />
<Property Id="MSIRMSHUTDOWN" Value="1" />
<MajorUpgrade
AllowDowngrades="no"
AllowSameVersionUpgrades="yes"
DowngradeErrorMessage="A newer version of [ProductName] is already installed."
Schedule="afterInstallExecute" />
<Directory Id="TARGETDIR" Name="SourceDir">
<Merge Id="WintunMergeModule" Language="0" DiskId="1" SourceFile=".deps\wintun-$(var.YGGDRASILTUN_PLATFORM).msm" />
</Directory>
<Feature Id="WintunFeature" Title="Wintun" Level="1">
<MergeRef Id="WintunMergeModule" />
</Feature>
</Product>
</Wix>