aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/installer/wireguard.wxs
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-04-25 09:04:51 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2019-04-25 09:05:12 +0200
commit5eb094b301815f686db857624d78e345ce06c6f7 (patch)
tree3073a672899156e1959aab96024c403684727fe4 /installer/wireguard.wxs
parentinstaller: hardcode to 0.0.1 for now (diff)
downloadwireguard-windows-5eb094b301815f686db857624d78e345ce06c6f7.tar.xz
wireguard-windows-5eb094b301815f686db857624d78e345ce06c6f7.zip
installer: Use more clever shortcut installation and dirtier upgrades
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'installer/wireguard.wxs')
-rw-r--r--installer/wireguard.wxs24
1 files changed, 8 insertions, 16 deletions
diff --git a/installer/wireguard.wxs b/installer/wireguard.wxs
index 96754ebf..ba416e2c 100644
--- a/installer/wireguard.wxs
+++ b/installer/wireguard.wxs
@@ -30,14 +30,17 @@
<Property Id="ARPPRODUCTICON" Value="icon.ico"/>
<Property Id="ARPURLINFOABOUT" Value="https://www.wireguard.com/"/>
+ <Property Id="ARPNOREPAIR" Value="yes" />
+ <Property Id="ARPNOMODIFY" Value="yes" />
<Property Id="DISABLEADVTSHORTCUTS" Value="yes"/>
<!--
Upgrading
-->
<MajorUpgrade
- AllowDowngrades="no" DowngradeErrorMessage="A newer version of [ProductName] is already installed."
- Schedule="afterInstallExecute"/>
+ AllowDowngrades="no" AllowSameVersionUpgrades="yes"
+ DowngradeErrorMessage="A newer version of [ProductName] is already installed."
+ Schedule="afterInstallExecute" />
<Property Id="INSTALLFOLDERPREV">
<ComponentSearch Id="WireGuardExecutable" Guid="c3508d23-3362-47ce-9220-321bdb1a1acc"/>
</Property>
@@ -69,24 +72,13 @@
-->
<ComponentGroup Id="WireGuardComponents">
<Component Directory="INSTALLFOLDER" Id="WireGuardExecutable" Guid="c3508d23-3362-47ce-9220-321bdb1a1acc">
- <File Source="..\wireguard.exe" KeyPath="yes"/>
+ <File Source="..\wireguard.exe" KeyPath="yes">
+ <Shortcut Id="WireGuardStartMenuShortcut" Directory="ProgramMenuFolder" Name="WireGuard" Description="WireGuard: Fast, Modern, Secure VPN Tunnel" WorkingDirectory="INSTALLFOLDER" Advertise="yes" />
+ </File>
<ServiceControl Id="RemoveWireGuardManagerService" Name="WireGuardManager" Remove="both" Stop="both"></ServiceControl>
<ServiceControl Id="RemoveWireGuardTunnelServices" Name="WireGuardTunnel$test" Remove="both" Stop="both"></ServiceControl>
<!-- TODO: "test" is just a temporary hack. We need to enumerate all services that are "WireGuardTunnel$*" and remove those. -->
</Component>
-
- <Component Directory="INSTALLFOLDER" Id="WireGuardStartMenuShortcut">
- <Shortcut
- Id="WireGuardStartMenuShortcut"
- Directory="ProgramMenuFolder"
- Name="WireGuard"
- Description="WireGuard: Fast, Modern, Secure VPN Tunnel"
- Target="[INSTALLFOLDER]wireguard.exe"
- WorkingDirectory="INSTALLFOLDER"
- Icon="icon.ico"/>
- <RemoveFolder Id="WireGuardStartMenuShortcut" Directory="ProgramMenuFolder" On="uninstall"/>
- <RegistryValue Root="HKCU" Key="SOFTWARE\WireGuard" Name="StartMenuShortcut" Type="integer" Value="1" KeyPath="yes"/>
- </Component>
</ComponentGroup>
<!--