feat(packaging): use msix for msvc builds
Signed-off-by: seth <getchoo@tuta.io>
This commit is contained in:
parent
2cb22ad280
commit
c3770a9a32
37
.github/workflows/build.yml
vendored
37
.github/workflows/build.yml
vendored
@ -428,14 +428,23 @@ jobs:
|
||||
|
||||
Get-ChildItem ${{ env.INSTALL_PORTABLE_DIR }} -Recurse | ForEach FullName | Resolve-Path -Relative | %{ $_.TrimStart('.\') } | %{ $_.TrimStart('${{ env.INSTALL_PORTABLE_DIR }}') } | %{ $_.TrimStart('\') } | Out-File -FilePath ${{ env.INSTALL_DIR }}/manifest.txt
|
||||
|
||||
- name: Package (Windows, installer)
|
||||
if: runner.os == 'Windows'
|
||||
- name: Package (Windows MinGW-w64, installer)
|
||||
if: runner.os == 'Windows' && (matrix.msystem != '' || matrix.architecture == "win32")
|
||||
run: |
|
||||
cd ${{ env.INSTALL_DIR }}
|
||||
makensis -NOCD "${{ github.workspace }}/${{ env.BUILD_DIR }}/program_info/win_install.nsi"
|
||||
|
||||
- name: Sign installer (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
- name: Package (Windows MSVC, installer)
|
||||
if: runner.os == 'Windows' && matrix.msystem == '' && matrix.architecture != "win32"
|
||||
shell: pwsh
|
||||
run: |
|
||||
cd ${{ env.INSTALL_DIR }}
|
||||
Copy-Item ..\program_info\prismlauncher_*x*.png .
|
||||
Copy-Item ..\program_info\AppxManifest.xml .
|
||||
makeappx.exe pack /v /h SHA256 /d . /p prismlauncher.msix
|
||||
|
||||
- name: Sign installer (Windows MinGW-w64/MSVC Legacy)
|
||||
if: runner.os == 'Windows' && (matrix.msystem != '' || matrix.architecture == "win32")
|
||||
run: |
|
||||
if (Get-Content ./codesign.pfx){
|
||||
SignTool sign /fd sha256 /td sha256 /f codesign.pfx /p '${{ secrets.WINDOWS_CODESIGN_PASSWORD }}' /tr http://timestamp.digicert.com PrismLauncher-Setup.exe
|
||||
@ -443,6 +452,15 @@ jobs:
|
||||
":warning: Skipped code signing for Windows, as certificate was not present." >> $env:GITHUB_STEP_SUMMARY
|
||||
}
|
||||
|
||||
- name: Sign installer (Windows MSVC)
|
||||
if: runner.os == 'Windows' && matrix.msystem == '' && matrix.architecture != "win32"
|
||||
run: |
|
||||
if (Get-Content ./codesign.pfx){
|
||||
SignTool sign /fd sha256 /td sha256 /f codesign.pfx /p '${{ secrets.WINDOWS_CODESIGN_PASSWORD }}' /tr http://timestamp.digicert.com ${{ env.INSTALL_DIR }}/prismlauncher.msix
|
||||
} else {
|
||||
":warning: Skipped code signing for Windows, as certificate was not present." >> $env:GITHUB_STEP_SUMMARY
|
||||
}
|
||||
|
||||
- name: Package (Linux)
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
@ -521,13 +539,20 @@ jobs:
|
||||
name: PrismLauncher-${{ matrix.name }}-Portable-${{ env.VERSION }}-${{ inputs.build_type }}
|
||||
path: ${{ env.INSTALL_PORTABLE_DIR }}/**
|
||||
|
||||
- name: Upload installer (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
- name: Upload installer (Windows MinGW-w64/MSVC Legacy)
|
||||
if: runner.os == 'Windows' && (matrix.msystem != '' || matrix.architecture == "win32")
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: PrismLauncher-${{ matrix.name }}-Setup-${{ env.VERSION }}-${{ inputs.build_type }}
|
||||
path: PrismLauncher-Setup.exe
|
||||
|
||||
- name: Upload installer (Windows MSVC)
|
||||
if: runner.os == 'Windows' && matrix.msystem == '' && matrix.architecture != "win32"
|
||||
uses: actions/upload-artifact@v3
|
||||
with:
|
||||
name: PrismLauncher-${{ matrix.name }}-MSIX-${{ env.VERSION }}-${{ inputs.build_type }}
|
||||
path: ${{ env.INSTALL_DIR }}/prismlauncher.msix
|
||||
|
||||
- name: Upload binary tarball (Linux, Qt 5)
|
||||
if: runner.os == 'Linux' && matrix.qt_ver != 6
|
||||
uses: actions/upload-artifact@v3
|
||||
|
57
program_info/AppxManifest.xml
Normal file
57
program_info/AppxManifest.xml
Normal file
@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Package
|
||||
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
|
||||
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
|
||||
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
|
||||
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
|
||||
xmlns:virtualization="http://schemas.microsoft.com/appx/manifest/virtualization/windows10"
|
||||
xmlns:desktop6="http://schemas.microsoft.com/appx/manifest/desktop/windows10/6"
|
||||
IgnorableNamespaces="rescap virtualization desktop6">
|
||||
<Identity Name="github.PrismLauncher.PrismLauncher" Version="7.0.0.0" Publisher="CN=PrismLauncher, O=PrismLauncher, L=MyCity, S=MyState, C=MyCountry" ProcessorArchitecture="x64" />
|
||||
<Properties>
|
||||
<DisplayName>Prism Launcher</DisplayName>
|
||||
<PublisherDisplayName>Prism Launcher</PublisherDisplayName>
|
||||
<Description>A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once</Description>
|
||||
<Logo>prismlauncher_150x150.png</Logo>
|
||||
</Properties>
|
||||
<Resources>
|
||||
<Resource Language="en-us" />
|
||||
</Resources>
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.19041.0" MaxVersionTested="10.0.22621.0" />
|
||||
</Dependencies>
|
||||
<Capabilities>
|
||||
<Capability Name="internetClientServer"/>
|
||||
<rescap:Capability Name="runFullTrust"/>
|
||||
<rescap:Capability Name="unvirtualizedResources"/>
|
||||
<DeviceCapability Name="humaninterfacedevice">
|
||||
<!--
|
||||
This allows for any
|
||||
generic gaming device,
|
||||
such as a controller or joystick
|
||||
*and* any HID device.
|
||||
-->
|
||||
<Device Id="any">
|
||||
<Function Type="usage:0004 *"/>
|
||||
<Function Type="usage:0005 *"/>
|
||||
<Function Type="usage:ffa0 0001"/>
|
||||
</Device>
|
||||
</DeviceCapability>
|
||||
</Capabilities>
|
||||
<Applications>
|
||||
<Application
|
||||
Id="PrismLauncher"
|
||||
Executable="prismlauncher.exe"
|
||||
uap10:RuntimeBehavior="win32App"
|
||||
uap10:TrustLevel="mediumIL"
|
||||
>
|
||||
<uap:VisualElements
|
||||
DisplayName="Prism Launcher"
|
||||
Description="A custom launcher for Minecraft that allows you to easily manage multiple installations of Minecraft at once"
|
||||
Square150x150Logo="prismlauncher_150x150.png"
|
||||
Square44x44Logo="prismlauncher_44x44.png"
|
||||
BackgroundColor="transparent"
|
||||
/>
|
||||
</Application>
|
||||
</Applications>
|
||||
</Package>
|
BIN
program_info/prismlauncher_150x150.png
Normal file
BIN
program_info/prismlauncher_150x150.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.4 KiB |
BIN
program_info/prismlauncher_44x44.png
Normal file
BIN
program_info/prismlauncher_44x44.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
Loading…
Reference in New Issue
Block a user