msi: 64 bit installer done

This commit is contained in:
Dag Heyman 2019-10-22 14:00:52 +02:00 committed by Dennis Fokin
parent dc6e0d0479
commit 9bdd8d260f
2 changed files with 106 additions and 2 deletions

View File

@ -80,7 +80,8 @@ jobs:
windeployqt .\release\yubioath-desktop.exe --qmldir=qml --no-translations --angle --release
shell: cmd
- name: Copy over files and create .zip archive
- name: Copy over files to release folder
shell: powershell
run: |
Copy-Item .\pymodules .\release -recurse
Get-ChildItem -File -Include *.pyc -Recurse | Remove-Item -Force
@ -88,13 +89,42 @@ jobs:
Get-ChildItem -Include *.cpp -Recurse | Remove-Item -Force
Get-ChildItem -Include *.obj -Recurse | Remove-Item -Force
- name: Create .zip artifact
shell: powershell
run: |
$arr = $env:GITHUB_REF -split '/'
$branch = $arr[2]
7z a yubioath-desktop-$branch-win64.zip release
mkdir deploy
cp yubioath-desktop-$branch-win64.zip deploy
- name: Install Visual Studio C++ 2019 Redistributable MSMs
shell: cmd
run: |
choco install visualstudio2019community --package-parameters "--add Microsoft.VisualStudio.Component.VC.Redist.MSM"
- name: Create an unsigned .msi installer package
shell: cmd
run: |
set PATH=%WIX%\bin;%PATH%
set SRCDIR=.\release\
heat dir .\release -out fragment.wxs -gg -scom -srd -sfrag -dr INSTALLDIR -cg ApplicationFiles -var env.SRCDIR
candle .\fragment.wxs .\resources\win\yubioath-desktop.wxs -arch x64
light fragment.wixobj yubioath-desktop.wixobj -ext WixUIExtension -ext WixUtilExtension -o yubioath-desktop.msi
cp yubioath-desktop.msi deploy
- name: Run installer
shell: cmd
run: |
msiexec /i yubioath-desktop.msi /quiet /l .\log.txt
cat .\log.txt
- name: Rename installer
shell: powershell
run: |
$arr = $env:GITHUB_REF -split '/'
$branch = $arr[2]
mv .\deploy\yubioath-desktop.msi .\deploy\yubioath-desktop-$branch-win64.msi
- name: Run GUI
shell: bash

View File

@ -0,0 +1,74 @@
<?xml version="1.0"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<?define ProductVersion="5.0.1" ?>
<?define ProductName="Yubico Authenticator" ?>
<Product Id="*" UpgradeCode="12345678-1234-1234-1234-111111111111" Name="$(var.ProductName)" Version="$(var.ProductVersion)" Manufacturer="Yubico AB" Language="1033">
<Package InstallerVersion="301" Compressed="yes" InstallScope="perMachine" Platform="x64" Description="$(var.ProductName) $(var.ProductVersion)" />
<Media Id="1" Cabinet="yubioathdesktop.cab" EmbedCab="yes"/>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLDIR" />
<UI>
<UIRef Id="WixUI_InstallDir" />
<Publish Dialog="WelcomeDlg"
Control="Next"
Event="NewDialog"
Value="InstallDirDlg"
Order="2">1</Publish>
<Publish Dialog="InstallDirDlg"
Control="Back"
Event="NewDialog"
Value="WelcomeDlg"
Order="2">1</Publish>
<Publish Dialog="ExitDialog"
Control="Finish"
Event="DoAction"
Value="LaunchApplication">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed</Publish>
</UI>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="ProgramFiles64Folder" Name="PFiles">
<Directory Id="YubicoDir" Name="Yubico">
<Directory Id="INSTALLDIR" Name="Yubico Authenticator">
</Directory>
</Directory>
</Directory>
<Directory Id="ProgramMenuFolder">
<Directory Id="ApplicationProgramsFolder" Name="Yubico Authenticator"/>
</Directory>
</Directory>
<DirectoryRef Id="ApplicationProgramsFolder">
<Component Id="ApplicationShortcut" Guid="*">
<Shortcut Id="ApplicationStartMenuShortcut"
Name="Yubico Authenticator"
Target="[#fil9AD596424AE112BC3458900952B5BE58]"
WorkingDirectory="APPLICATIONROOTDIRECTORY"/>
<RemoveFolder Id="CleanUpShortCut" Directory="ApplicationProgramsFolder" On="uninstall"/>
<RegistryValue Root="HKCU" Key="Software\MyCompany\Yubico Authenticator" Name="installed" Type="integer" Value="1" KeyPath="yes"/>
</Component>
</DirectoryRef>
<DirectoryRef Id="TARGETDIR">
<Merge Id="VCRedist" SourceFile="C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Redist\MSVC\14.23.27820\MergeModules\Microsoft_VC142_CRT_x64.msm" DiskId="1" Language="0"/>
</DirectoryRef>
<Feature Id="VCRedist" Title="Visual C++ Runtime" AllowAdvertise="no" Display="hidden" Level="1">
<MergeRef Id="VCRedist"/>
</Feature>
<Feature Id="DefaultFeature" Level="1">
<ComponentGroupRef Id="ApplicationFiles"/>
</Feature>
<Feature Id="MainApplication" Title="Main Application" Level="1">
<ComponentRef Id="ApplicationShortcut" />
</Feature>
<Property Id="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="Launch Yubico Authenticator" />
<Property Id="WixShellExecTarget" Value="[#fil9AD596424AE112BC3458900952B5BE58]" />
<CustomAction Id="LaunchApplication" BinaryKey="WixCA" DllEntry="WixShellExec" Impersonate="yes" />
</Product>
</Wix>