name: deploy-github-page

on:
  workflow_dispatch:

permissions:
  contents: write

jobs:
  build-web:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v3
      - name: Install rust toolchain
        uses: dtolnay/rust-toolchain@master
        with:
          toolchain: stable
      - name: Install Dependencies
        run: sudo apt-get update; sudo apt-get install pkg-config libx11-dev libasound2-dev libudev-dev
      - name: Install trunk
        uses: jetli/trunk-action@v0.4.0
        with:
          version: 'latest'
      - name: Add wasm target
        run: |
          rustup target add wasm32-unknown-unknown
      - name: Build Release
        run: |
          trunk build --release
      - name: optimize Wasm
        uses: NiklasEi/wasm-opt-action@v2
        with:
          file: dist/*.wasm
      - name: Deploy to GitHub Pages
        uses: JamesIves/github-pages-deploy-action@v4.2.5
        with:
          branch: gitea-pages
          folder: dist
