Skip to content

Add branded macOS installer welcome and background#79

Closed
RenanGBarreto wants to merge 8 commits into
mainfrom
feat/gui-v2
Closed

Add branded macOS installer welcome and background#79
RenanGBarreto wants to merge 8 commits into
mainfrom
feat/gui-v2

Conversation

@RenanGBarreto

@RenanGBarreto RenanGBarreto commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Add branded macOS installer welcome and background

🤔 Why?

  • Make the macOS installer more professional and informative by displaying the product name and version during installation and presenting a branded welcome screen.

🔧 What changed

  • Added assets/installer/distribution.xml (installer manifest used by productbuild) with an __ART_VERSION__ placeholder.
  • Moved the welcome RTF to assets/installer/Welcome.rtf; CI injects the real version into this file during the build.
  • Added scripts/gen_installer_background.py to generate a simple polished background image and produced assets/images/installer-background.png.
  • Updated the macOS packaging step in .github/workflows/ci.yml to embed the .icns into the app bundle, copy installer resources from assets/, substitute ART_VERSION into the manifest and welcome RTF, and call productbuild --distribution so the installer UI shows the title, background, and welcome.
  • Included a postinstall script that writes Applications/MkPFS.app/Contents/Resources/VERSION.txt with the installed version.

🧪 How to test

  • On macOS: build the app bundle with the same PyInstaller invocation used in CI, then run the packaging steps from the workflow to produce the .pkg.
  • Open the produced .pkg: the installer title should read MkPFS <version> and show the welcome screen and background.
  • After install, check /Applications/MkPFS.app/Contents/Resources/VERSION.txt for the version string.

💬 Notes for reviewers

  • The installer intentionally omits a license screen (requested change).
  • The background image is a generated placeholder; we plan to replace it with a higher-quality design in a follow-up.

Closes: none

@github-code-quality

github-code-quality Bot commented Jun 29, 2026

Copy link
Copy Markdown

Code Coverage Overview

Languages: Python

Python / code-coverage/pytest

The overall coverage remains at 75%, unchanged from the branch.


Updated June 29, 2026 04:06 UTC
Code Coverage is in Public Preview. Learn more and provide us with your feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant