Skip to content

Update release notes template #32

Update release notes template

Update release notes template #32

Workflow file for this run

name: Build & Release
on:
push:
tags:
- 'v*'
workflow_dispatch:
inputs:
tag:
description: 'Release tag (e.g. v2.1.3-beta)'
required: true
default: 'v2.3.0'
jobs:
verify:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- run: npm ci
- name: Verify renderer types
run: npm run lint
- name: Verify Electron types
run: npx tsc -p electron/tsconfig.json --noEmit
- name: Run tests
run: npm test
- name: Build application bundles
run: npm run build
build-linux:
needs: verify
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- run: npm ci
- name: Install Linux build dependencies
run: sudo apt-get install -y rpm fakeroot dpkg
- name: Build application bundles
run: npm run build
- name: Package Linux targets
run: npx electron-builder --linux AppImage deb --x64 --publish never
- uses: actions/upload-artifact@v4
with:
name: linux-packages
path: |
release/*.AppImage
release/*.deb
build-windows:
needs: verify
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
- run: npm ci
- name: Build application bundles
run: npm run build
- name: Package Windows
run: npx electron-builder --win nsis --x64 --publish never
- uses: actions/upload-artifact@v4
with:
name: windows-installer
path: release/*.exe
publish-release:
needs: [build-linux, build-windows]
if: needs.build-linux.result == 'success' && needs.build-windows.result == 'success'
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/download-artifact@v4
with:
path: release-artifacts
merge-multiple: true
- name: Resolve tag name
id: tag
run: |
if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then
echo "name=${{ github.event.inputs.tag }}" >> $GITHUB_OUTPUT
else
echo "name=${{ github.ref_name }}" >> $GITHUB_OUTPUT
fi
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ steps.tag.outputs.name }}
name: "${{ steps.tag.outputs.name }}"
body: |
macOS OneClick ${{ steps.tag.outputs.name }}
This release fixes USB target flow, backup-check timeouts, and clearer flash error guidance. Method selection now opens the USB and local partition paths correctly, the drive check no longer sits on long-running inspection text, and repeated write failures no longer jump straight to blaming the USB drive when the real cause is permissions, timeouts, or verification.
Included assets:
- Windows NSIS installer
- Linux AppImage
- Linux Debian package
Safety checks for flashing, EFI validation, BIOS gating, and backup handling remain in place.
files: release-artifacts/**/*
draft: false
prerelease: false
overwrite_files: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}