Skip to content

fix(release): add Debian package maintainer #4

fix(release): add Debian package maintainer

fix(release): add Debian package maintainer #4

Workflow file for this run

name: Release desktop apps
on:
push:
tags:
- "v*"
workflow_dispatch:
permissions:
contents: write
jobs:
build:
name: Build ${{ matrix.platform }}
strategy:
fail-fast: false
matrix:
include:
- platform: mac
os: macos-latest
builder_args: --mac --x64 --arm64
artifacts: |
dist/*.dmg
dist/*.zip
- platform: windows
os: windows-latest
builder_args: --win --x64
artifacts: dist/*.exe
- platform: linux
os: ubuntu-latest
builder_args: --linux AppImage deb --x64
artifacts: |
dist/*.AppImage
dist/*.deb
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 11.9.0
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Verify desktop contract
run: pnpm electron:check
- name: Build standalone web server
run: pnpm build:desktop
- name: Package desktop app
shell: bash
run: pnpm exec electron-builder ${{ matrix.builder_args }} --publish never
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CSC_IDENTITY_AUTO_DISCOVERY: "false"
- name: Upload package artifacts
uses: actions/upload-artifact@v4
with:
name: codex-slides-${{ matrix.platform }}
if-no-files-found: error
path: ${{ matrix.artifacts }}
release:
name: Publish GitHub Release
if: startsWith(github.ref, 'refs/tags/')
needs: build
runs-on: ubuntu-latest
steps:
- name: Download packages
uses: actions/download-artifact@v4
with:
path: release-artifacts
merge-multiple: true
- name: Generate SHA-256 checksums
working-directory: release-artifacts
run: find . -maxdepth 1 -type f -print0 | sort -z | xargs -0 sha256sum | sed 's# \./# #' > SHA256SUMS.txt
- name: Publish release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
files: release-artifacts/**