Skip to content

XS⚠️ ◾ 351 yakshaver code sign config#652

Merged
steven0x51 merged 19 commits intomainfrom
351-apple-code-sign
Feb 4, 2026
Merged

XS⚠️ ◾ 351 yakshaver code sign config#652
steven0x51 merged 19 commits intomainfrom
351-apple-code-sign

Conversation

@steven0x51
Copy link
Member

@steven0x51 steven0x51 commented Feb 3, 2026

  1. AI Development - Prompt & Model (include prompts/models used or N/A)

✏️

  1. What triggered this change? (PBI link, Email Subject, conversation + reason, etc)
  1. What was changed?

Added Apple Code Sign configuration
Add code Notarization

  1. I paired or mob programmed with:

✏️

Copilot AI review requested due to automatic review settings February 3, 2026 07:48
@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

PR Metrics

Thanks for keeping your pull request small.
⚠️ Consider adding additional tests.

Lines
Product Code 8
Test Code -
Subtotal 8
Ignored Code 76
Total 84

Metrics computed by PR Metrics. Add it to your Azure DevOps and GitHub PRs!

@github-actions github-actions bot changed the title 351 yakshaver code sign config XS⚠️ ◾ 351 yakshaver code sign config Feb 3, 2026
Copy link
Contributor

Copilot AI left a comment

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 Apple code signing configuration to the Electron app build process to enable proper macOS distribution.

Changes:

  • Updated macOS build target from "zip" to "default" with support for both arm64 and x64 architectures
  • Added hardened runtime and Gatekeeper configuration with entitlements file
  • Configured GitHub Actions workflow to use code signing secrets

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
electron-builder.config.js Updated macOS build configuration with code signing settings and multi-architecture support
assets/entitlements.mac.plist Added macOS entitlements file defining required permissions for camera, microphone, JIT compilation, and debugging
.github/workflows/release-electron-app.yml Added environment variables for code signing certificate and password

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 5 to 10
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>
Copy link

Copilot AI Feb 3, 2026

Choose a reason for hiding this comment

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

The entitlements include debugging and unsigned executable memory permissions which should not be enabled in production builds. These permissions (com.apple.security.cs.debugger, com.apple.security.cs.allow-unsigned-executable-memory, com.apple.security.cs.allow-jit) weaken the security posture and may be rejected by Apple during the notarization process. Consider removing these or creating separate entitlement files for development and production.

Suggested change
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.cs.debugger</key>
<true/>

Copilot uses AI. Check for mistakes.
Copy link
Member Author

Choose a reason for hiding this comment

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

The PR feedback is partially right and partially wrong.

  • True: com.apple.security.cs.debugger must be removed. It lets anyone attach a debugger to your app and inspect its memory, which is a huge security risk for production.
  • False: allow-jit and allow-unsigned-executable-memory must stay. Electron apps (which run on Chromium/V8) require these to compile and run JavaScript. If you remove them, your app will crash immediately on startup. Apple is aware of this and allows these entitlements for Electron/web-based apps.

I have updated entitlements.mac.plist to remove the insecure debugger entitlement but kept the ones required for Electron to function.

steven0x51 and others added 3 commits February 3, 2026 18:49
@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770106234

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770108436

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770109094

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770109561

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770110333

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770110796

@@ -39,6 +39,7 @@
"devDependencies": {
Copy link
Contributor

Choose a reason for hiding this comment

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

This file doesn't require review.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770112740

@github-actions
Copy link
Contributor

github-actions bot commented Feb 3, 2026

✅ Code sign & notarisation enabled

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770114754

@github-actions
Copy link
Contributor

github-actions bot commented Feb 4, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770163139

@github-actions
Copy link
Contributor

github-actions bot commented Feb 4, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770168245

@github-actions
Copy link
Contributor

github-actions bot commented Feb 4, 2026

🚀 Pre-release build is available for this PR:
https://github.com/SSWConsulting/SSW.YakShaver.Desktop/releases/tag/0.6.0-beta.652.1770168680

…ic publishing and clean up environment variables
@steven0x51 steven0x51 merged commit 3e5594b into main Feb 4, 2026
4 of 6 checks passed
@steven0x51 steven0x51 deleted the 351-apple-code-sign branch February 4, 2026 03:27
@github-actions
Copy link
Contributor

github-actions bot commented Feb 4, 2026

Automated Release Created Successfully

Release Details:

You can monitor the build progress in the Actions tab.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants