Skip to content

Fixed the issue where ScottPlot could not display CJK (and possibly other) characters by default #919

Fixed the issue where ScottPlot could not display CJK (and possibly other) characters by default

Fixed the issue where ScottPlot could not display CJK (and possibly other) characters by default #919

name: Compile Windows binaries
on:
push:
branches: [ master, project-upgrade ]
pull_request:
branches: [ master ]
release:
types:
- published
- prereleased
workflow_dispatch:
jobs:
build-x64:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.101
- name: Restore dependencies
run: dotnet restore -r win-x64 --configfile GalaxyBudsClient/nuget.config GalaxyBudsClient/GalaxyBudsClient.csproj
- name: Build x64
run: dotnet publish -r win-x64 -o bin_win64 -c Release -p:PublishSingleFile=true --self-contained true --no-restore GalaxyBudsClient/GalaxyBudsClient.csproj
#- name: Sign executable
# uses: GabrielAcostaEngler/[email protected]
# with:
# certificate: ${{ secrets.SIGN_CERTIFICATE }}
# cert-password: ${{ secrets.SIGN_PASSWORD }}
# cert-sha1: 048de957759a1837a967e61b8c97c442f7b9ec24
# folder: bin_win64/
# timestamp-server: http://timestamp.digicert.com
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: GalaxyBudsClient_win64_portable
path: bin_win64/
build-x86:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.101
- name: Restore dependencies
run: dotnet restore -r win-x86 --configfile GalaxyBudsClient/nuget.config GalaxyBudsClient/GalaxyBudsClient.csproj
- name: Build x86
run: dotnet publish -r win-x86 -o bin_win32 -c Release -p:PublishSingleFile=true --self-contained true --no-restore GalaxyBudsClient/GalaxyBudsClient.csproj
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: GalaxyBudsClient_win32_portable
path: bin_win32/
make-nsis-installer:
runs-on: windows-latest
needs: [build-x64, build-x86]
steps:
- uses: actions/checkout@v4
- name: Prepare version information (1/3)
uses: oprypin/[email protected]
with:
repository: ThePBone/GalaxyBudsClient
releases-only: true
id: last_release
- name: Prepare version information (2/3)
uses: benjlevesque/[email protected]
id: short-sha
with:
length: 6
- name: Prepare version information (3/3)
run: echo 'version={${{steps.last_release.outputs.tag}}-${{steps.short-sha.outputs.sha}}}' >> $GITHUB_OUTPUT
id: version
# Make x64 installer
- name: Download artifact (x64)
uses: actions/download-artifact@v4
with:
name: GalaxyBudsClient_win64_portable
- name: Rename artifact (x64)
run: ren GalaxyBudsClient.exe "Galaxy Buds Client.exe"
- name: Create nsis installer (x64)
uses: joncloud/[email protected]
with:
script-file: "install.nsi"
arguments: "-DBASE_DIR=\"D:\\a\\GalaxyBudsClient\\GalaxyBudsClient\" -DPRODUCT_VERSION=\"${{steps.version.outputs.version}}\" -DPRODUCT_ARCH=\"64bit\""
#- name: Sign installer
# uses: GabrielAcostaEngler/[email protected]
# with:
# certificate: ${{ secrets.SIGN_CERTIFICATE }}
# cert-password: ${{ secrets.SIGN_PASSWORD }}
# cert-sha1: 048de957759a1837a967e61b8c97c442f7b9ec24
# folder: .
# timestamp-server: http://timestamp.digicert.com
- name: Upload artifact (x64)
uses: actions/upload-artifact@v4
with:
name: GalaxyBudsClient_Setup_64bit_${{steps.version.outputs.version}}.exe
path: GalaxyBudsClient_Setup_64bit_${{steps.version.outputs.version}}.exe
- name: Clean artifacts
run: del "Galaxy Buds Client.exe"
# Make x86 installer
- name: Download artifact (x86)
uses: actions/download-artifact@v4
with:
name: GalaxyBudsClient_win32_portable
- name: Rename artifact (x86)
run: ren GalaxyBudsClient.exe "Galaxy Buds Client.exe"
- name: Create nsis installer (x86)
uses: joncloud/[email protected]
with:
script-file: "install.nsi"
arguments: "-DBASE_DIR=\"D:\\a\\GalaxyBudsClient\\GalaxyBudsClient\" -DPRODUCT_VERSION=\"${{steps.version.outputs.version}}\" -DPRODUCT_ARCH=\"32bit\""
#- name: Sign installer
# uses: GabrielAcostaEngler/[email protected]
# with:
# certificate: ${{ secrets.SIGN_CERTIFICATE }}
# cert-password: ${{ secrets.SIGN_PASSWORD }}
# cert-sha1: 048de957759a1837a967e61b8c97c442f7b9ec24
# folder: .
# timestamp-server: http://timestamp.digicert.com
- name: Upload artifact (x86)
uses: actions/upload-artifact@v4
with:
name: GalaxyBudsClient_Setup_32bit_${{steps.version.outputs.version}}.exe
path: GalaxyBudsClient_Setup_32bit_${{steps.version.outputs.version}}.exe
attach-to-release:
runs-on: windows-latest
needs: [make-nsis-installer]
if: github.event_name == 'release'
steps:
- name: Prepare version information (1/3)
uses: oprypin/[email protected]
with:
repository: ThePBone/GalaxyBudsClient
releases-only: true
id: last_release
- name: Prepare version information (2/3)
uses: benjlevesque/[email protected]
id: short-sha
with:
length: 6
- name: Prepare version information (3/3)
run: echo 'version={${{steps.last_release.outputs.tag}}-${{steps.short-sha.outputs.sha}}}' >> $GITHUB_OUTPUT
id: version
- name: Download setup artifact (x64)
uses: actions/download-artifact@v4
with:
name: GalaxyBudsClient_Setup_64bit_${{steps.version.outputs.version}}.exe
- name: Download portable artifact (x64)
uses: actions/download-artifact@v4
with:
name: GalaxyBudsClient_win64_portable
- name: Rename (x64)
run: |
ren GalaxyBudsClient_Setup_64bit_${{steps.version.outputs.version}}.exe GalaxyBudsClient_Windows_64bit_Setup.exe
ren GalaxyBudsClient.exe GalaxyBudsClient_Windows_64bit_Portable.exe
- uses: AButler/[email protected]
with:
files: '*.exe'
repo-token: ${{ secrets.GH_TOKEN }}