mirror of
https://github.com/Heretek-AI/not-zune.git
synced 2026-10-12 02:04:04 +00:00
65 lines
2.0 KiB
YAML
65 lines
2.0 KiB
YAML
name: release
|
|
|
|
on:
|
|
push:
|
|
tags: ['v*']
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
publish:
|
|
runs-on: ubuntu-24.04
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- rid: linux-x64
|
|
- rid: linux-arm64
|
|
- rid: win-x64
|
|
- rid: win-arm64
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-dotnet@v4
|
|
with:
|
|
dotnet-version: 8.0.x
|
|
|
|
- name: Publish (self-contained)
|
|
run: dotnet publish src/NotZune.Desktop -r ${{ matrix.rid }} -c Release -o publish/${{ matrix.rid }} --self-contained true
|
|
|
|
- name: Verify vendored BASS natives ship
|
|
run: |
|
|
if [ "${{ matrix.rid }}" = "linux-x64" ] || [ "${{ matrix.rid }}" = "linux-arm64" ] || [ "${{ matrix.rid }}" = "win-x64" ]; then
|
|
test -n "$(find publish/${{ matrix.rid }}/Native -name 'bass*' 2>/dev/null)" || { echo "BASS natives missing for ${{ matrix.rid }}"; exit 1; }
|
|
fi
|
|
|
|
- name: Archive
|
|
run: |
|
|
cd publish
|
|
zip -r ../not-zune-${{ matrix.rid }}.zip ${{ matrix.rid }}
|
|
|
|
- uses: actions/upload-artifact@v4
|
|
with:
|
|
name: not-zune-${{ matrix.rid }}
|
|
path: not-zune-${{ matrix.rid }}.zip
|
|
|
|
github-release:
|
|
needs: publish
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
runs-on: ubuntu-24.04
|
|
permissions:
|
|
contents: write
|
|
steps:
|
|
- uses: actions/download-artifact@v4
|
|
with:
|
|
merge-multiple: true
|
|
|
|
- uses: softprops/action-gh-release@v2
|
|
with:
|
|
files: not-zune-*.zip
|
|
body: |
|
|
## Not-Zune
|
|
|
|
### Platform notes
|
|
- **Linux (x64/arm64):** video playback requires system VLC (`sudo apt install vlc`) — libVLC is loaded from the system at runtime.
|
|
- **Windows x64:** full audio + video (BASS natives vendored, VLC natives bundled via VideoLAN.LibVLC.Windows).
|
|
- **Windows arm64:** BASS has no ARM64 natives — playback runs in simulated (silent) mode; video unaffected.
|