fix(permissions): add macOS entitlements and signing config for permission visibility#9
Merged
blueberrycongee merged 1 commit intomainfrom Feb 21, 2026
Merged
Conversation
…ssion visibility - Add entitlements.mac.plist for main app (JIT, unsigned memory, library validation, camera, microphone) - Add entitlements.mac.inherit.plist for child processes (no JIT, only what's needed) - Add entitlements.native-helper.plist for AppKit-only helpers (cursor-kind-monitor, mouse-button-monitor) - Add entitlements.native-helper-av.plist for AV helpers (sck-recorder, speech-transcriber) - Enable hardenedRuntime and reference entitlements in electron-builder.json5 - Add NSScreenCaptureUsageDescription to extendInfo - Make missing entitlements a hard build error instead of silent skip - Per-helper entitlements based on actual framework usage Closes #5 Co-Authored-By: Claude Opus 4.6 <[email protected]>
bfc6f8f to
08c2ec4
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Users cannot find CursorLens in macOS System Settings → Privacy & Security permission lists (Screen Recording, Camera, Microphone, etc.), making it impossible to grant permissions via the system toggle switches.
PR #8 correctly added code to trigger permission request dialogs, but the app still doesn't appear in the system settings because the build was missing entitlements and hardened runtime configuration.
Root Cause
electron-builder.json5was missinghardenedRuntime: trueNSScreenCaptureUsageDescription— the screen recording usage description was not declared in Info.plistsck-recorderand other helpers were compiled without codesign or entitlementsChanges
build/entitlements.mac.plist— Main app entitlements (camera, microphone, JIT, unsigned memory, library validation)build/entitlements.mac.inherit.plist— Inherited entitlements for child processesbuild/entitlements.native-helper.plist— Entitlements for Swift helper binarieselectron-builder.json5— EnablehardenedRuntime, reference entitlements files, addNSScreenCaptureUsageDescriptionscripts/build-native-macos-helper.mjs— Ad-hoc codesign each Swift helper with entitlements after compilationNotes
-identity), no Apple Developer account requiredCloses #5