# This workflow will build a golang project # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go name: Build Windows on: push: branches: [ "main" ] pull_request: branches: [ "main" ] jobs: build: runs-on: windows-latest timeout-minutes: 30 defaults: run: shell: msys2 {0} steps: - uses: msys2/setup-msys2@v2 with: path-type: inherit update: true install: >- make wget zip p7zip - uses: actions/checkout@v4 - name: Set up Go uses: actions/setup-go@v5 with: go-version: '1.24' - name: Install Dependencies run: > pacman -Syu && pacman --noconfirm -S mingw-w64-x86_64-toolchain mingw-w64-x86_64-mpv - name: Install Fyne tool run: go install fyne.io/fyne/v2/cmd/fyne@latest - name: Package run: make package_windows - name: Download mpv dll run: > wget https://github.com/shinchiro/mpv-winbuild-cmake/releases/download/20260110/mpv-dev-x86_64-20260110-git-3d980d8.7z && 7z x mpv-dev-x86_64-20260110-git-3d980d8.7z - name: Download smtc dll run: > wget https://github.com/supersonic-app/smtc-dll/releases/download/v0.1.2/SMTC.dll - name: Generate zip bundle run: zip Supersonic-windows.zip Supersonic.exe libmpv-2.dll SMTC.dll - name: Generate installer uses: Minionguyjpro/Inno-Setup-Action@v1.2.7 with: path: win_inno_installscript.iss - name: Upload zip uses: actions/upload-artifact@v4 with: name: Supersonic_windows_x64.zip path: Supersonic-windows.zip - name: Upload installer uses: actions/upload-artifact@v4 with: name: Supersonic_windows_x64_installer.exe path: Output/supersonic-installer.exe