Skip to content

build(macos): 🏗️ adding macOS .dmg for arm64 - GHA workflow, Makefile targets and artifacts #111#132

Draft
dvorka wants to merge 1 commit into
dev/1.58.0from
feat-111/macos-dmg
Draft

build(macos): 🏗️ adding macOS .dmg for arm64 - GHA workflow, Makefile targets and artifacts #111#132
dvorka wants to merge 1 commit into
dev/1.58.0from
feat-111/macos-dmg

Conversation

@dvorka

@dvorka dvorka commented Jul 5, 2026

Copy link
Copy Markdown
Collaborator

@dvorka dvorka self-assigned this Jul 5, 2026
Copilot AI review requested due to automatic review settings July 5, 2026 17:49
@dvorka dvorka changed the title build(macos): 🏗️ adding macOS .dmg - GHA workflow, Makefile targets and artifacts #111 build(macos): 🏗️ adding macOS .dmg for arm64 - GHA workflow, Makefile targets and artifacts #111 Jul 5, 2026
@dvorka dvorka marked this pull request as draft July 5, 2026 17:50

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a macOS .dmg distribution path for the MyTraL desktop app, including local Makefile targets, macOS build scripts (PyInstaller -> .app -> .dmg), and a GitHub Actions workflow to produce a DMG artifact for release PRs.

Changes:

  • Add macOS DMG build/clean/install Makefile targets and wire them into the macOS release distro target.
  • Introduce build/macos-dmg/* scripts to build MyTraL.app via PyInstaller and package it into a .dmg.
  • Add a dedicated GitHub Actions workflow to build and upload the DMG artifact on release PRs; update docs/changelog with macOS DMG instructions.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
README.md Adds install/build links for macOS DMG (currently points to the wrong INSTALLATION file).
Makefile Adds macOS DMG targets and includes them in release-distros-macos.
docs/INSTALLATION.md Documents macOS DMG install and build steps, including Gatekeeper workaround.
CHANGELOG.md Notes the addition of macOS DMG distribution and where to find it in CI artifacts.
build/macos-dmg/create-spec.sh Creates a PyInstaller spec tailored for a macOS .app bundle build.
build/macos-dmg/build-app.sh Builds MyTraL.app on macOS (arm64) using PyInstaller and generated .icns.
build/macos-dmg/build-dmg.sh Packages MyTraL.app into a distributable .dmg via hdiutil.
build/macos-dmg/clean.sh Cleans macOS DMG build artifacts and generated outputs.
build/macos-dmg/.gitignore Ignores generated spec/icon files for macOS DMG builds.
.github/workflows/distro-macos-dmg.yml Builds the DMG on macos-latest for rel/* PRs and uploads it as an artifact (path resolution currently fragile).

Comment thread README.md
* [Ubuntu (PPA)](INSTALLATION.md#install-on-ubuntu-from-ppa)
* [Windows (installer)](INSTALLATION.md#install-on-windows-using-installer)
* [Windows (zip)](INSTALLATION.md#install-on-windows-using-zip)
* [macOS (dmg)](INSTALLATION.md#install-on-macos-using-dmg)
Comment thread README.md
* [Flatpak (bundle)](INSTALLATION.md#build-flatpak-on-linux)
* [Windows (installer)](INSTALLATION.md#build-windows-installer)
* [Windows (binary)](INSTALLATION.md#build-binary-on-windows)
* [macOS (dmg)](INSTALLATION.md#build-macos-dmg)
Comment thread Makefile
powershell.exe -NoProfile -ExecutionPolicy Bypass -Command "Remove-Item -Recurse -Force distro\windows -ErrorAction SilentlyContinue; Write-Host 'DONE: Windows installer artifacts removed'"

#
# MACOS: macOS .dmg distribution (Apple Silicon / arm64 only, local builds only)
Comment on lines +60 to +62
BUNDLE=$(ls distro/macos-dmg/mytral-*.dmg)
echo "path=${BUNDLE}" >> "$GITHUB_OUTPUT"
echo "name=$(basename "${BUNDLE}")" >> "$GITHUB_OUTPUT"
@dvorka dvorka linked an issue Jul 5, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature] .dmg macOS distro

2 participants