Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix macOS 10.15.4 codesigning crash #4564

Merged
merged 1 commit into from
Apr 9, 2020

Conversation

phoerious
Copy link
Member

@phoerious phoerious commented Apr 9, 2020

The recent macOS security patch renders our codesigning "fix" of setting the sandbox entitlement to false twice unusable. This patch adds a full provisioning profile and adjusts the signing procedure to not include entitlements for Qt frameworks.

The patch also changes the app and bundle ID, so granted accessibility privileges have to be granted again after installing the update.

Fixes #4398
Fixes #4515

@droidmonkey Since this is an actual fix and not just a workaround or rebuild, I suggest we release it as 2.5.4 despite there not being any changes on other platforms. I believe the extent to which things were changed (including the bundle ID change, which was long overdue anyway) merits a version number upgrade.

Type of change

  • ✅ Bug fix (non-breaking change which fixes an issue)

Checklist:

  • ✅ I have read the CONTRIBUTING document. [REQUIRED]
  • ✅ My code follows the code style of this project. [REQUIRED]
  • ✅ All new and existing tests passed. [REQUIRED]
  • ✅ I have compiled and verified my code with -DWITH_ASAN=ON. [REQUIRED]

@phoerious phoerious added this to the v2.5.4 milestone Apr 9, 2020
@phoerious phoerious requested a review from a team April 9, 2020 11:50
@phoerious phoerious force-pushed the hotfix/macos-entitlements-crash branch 2 times, most recently from 4b34e89 to da7ba8a Compare April 9, 2020 11:53
@droidmonkey
Copy link
Member

Concur with the version bump

Copy link
Member

@droidmonkey droidmonkey left a comment

Choose a reason for hiding this comment

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

That is some voodoo magic! Makes sense to only apply entitlements to the executable that needs it.

@phoerious
Copy link
Member Author

Yeah, and then there are entitlements and entitlements. Some can be set just like that, others need to be whitelisted by a provisioning profile.

@droidmonkey
Copy link
Member

I'm glad this is all thoroughly documented and doesn't require special Apple engineer intervention to figure out! 😏

@phoerious
Copy link
Member Author

Oh indeed, 'twas a walk in the park.

The recent macOS security patch renders our codesigning
"fix" of setting the sandbox entitlement to false twice
unusable. This patch adds a full provisioning profile
and adjusts the signing procedure to not include
entitlements for Qt frameworks.

The patch also changes the app and bundle ID, so granted
accessibility privileges have to be granted again after
installing the update.

Fixes #4398
Fixes #4515
@phoerious phoerious force-pushed the hotfix/macos-entitlements-crash branch from da7ba8a to 2271498 Compare April 9, 2020 13:00
@phoerious phoerious merged commit e9754ef into release/2.5.4 Apr 9, 2020
@phoerious phoerious deleted the hotfix/macos-entitlements-crash branch April 9, 2020 14:22
phoerious added a commit that referenced this pull request Apr 9, 2020
Fixed

- Return keyboard focus after saving database edits [#4287]
- Windows: Use bare minimum settings in portable version [#4131]
- Windows: Use SHA256 code signing [#4129]
- macOS: Fix code signing incompatibility in latest macOS release [#4564]
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.

2 participants