Skip to content

expand building desktop apps, new macOS intel, add macOS arm, and windows 11 #1

@cudmore

Description

@cudmore

We need to update the release.yml github workflow to include the following:

  • build exe for windows
  • build both macOS intel and apple silicon with updated workflows.

For macOS, there are new developments:

The macOS-13 based runner images are being deprecated, consider switching to macOS-15 (macos-15-intel) or macOS 15 arm64 (macos-latest) instead. For more details see actions/runner-images#13046

Our current build for macOS x86 is:

  macos-intel-app:
    name: Build macOS Intel app and attach to release
    runs-on: macos-13   # Intel macOS runner
    needs: build-and-publish
    if: startsWith(github.ref, 'refs/tags/v')

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Set up Python
        uses: actions/setup-python@v5
        with:
          python-version: "3.11"

      - name: Install kymflow (GUI + PyInstaller) and pack tooling
        run: |
          python -m pip install --upgrade pip
          # install your package with GUI + pyinstaller extras
          python -m pip install ".[gui,pyinstaller]"
          # install nicegui pack CLI (for `nicegui-pack`)
          python -m pip install "nicegui[pack]"

      - name: Clean previous build artifacts
        run: |
          rm -rf dist build

      - name: Build macOS app with nicegui-pack
        env:
          KYMFLOW_GUI_RELOAD: "0"
        run: |
          nicegui-pack \
            --windowed \
            --name "KymFlow" \
            --icon "pyinstaller/macos/kymflow.icns" \
            src/kymflow_gui/main.py

      - name: Archive KymFlow.app
        run: |
          mkdir -p release
          cd dist
          # Zip the .app bundle into a single download artifact
          zip -r "../release/KymFlow-macos-intel-${{ github.ref_name }}.zip" "KymFlow.app"
          cd ..

      - name: Upload macOS Intel app to GitHub Release
        uses: softprops/action-gh-release@v1
        with:
          files: release/KymFlow-macos-intel-${{ github.ref_name }}.zip
          generate_release_notes: true
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions