From 3a73912a86f9c7fac85cc1bb1fd228563874d385 Mon Sep 17 00:00:00 2001 From: "DESKTOP-RTLN3BA\\$punk" Date: Thu, 30 Apr 2026 15:39:12 -0700 Subject: [PATCH] feat(desktop): enable hardened runtime and entitlements for mac signing Made-with: Cursor --- .../build/entitlements.mac.plist | 35 +++++++++++++++++++ surfsense_desktop/electron-builder.yml | 5 ++- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 surfsense_desktop/build/entitlements.mac.plist diff --git a/surfsense_desktop/build/entitlements.mac.plist b/surfsense_desktop/build/entitlements.mac.plist new file mode 100644 index 000000000..5647e7759 --- /dev/null +++ b/surfsense_desktop/build/entitlements.mac.plist @@ -0,0 +1,35 @@ + + + + + + com.apple.security.cs.allow-jit + + com.apple.security.cs.allow-unsigned-executable-memory + + + + com.apple.security.cs.allow-dyld-environment-variables + + com.apple.security.cs.disable-library-validation + + + + com.apple.security.network.client + + com.apple.security.network.server + + + + com.apple.security.device.camera + + + + com.apple.security.automation.apple-events + + + + com.apple.security.files.user-selected.read-write + + + diff --git a/surfsense_desktop/electron-builder.yml b/surfsense_desktop/electron-builder.yml index b0014a57b..e4e7670ec 100644 --- a/surfsense_desktop/electron-builder.yml +++ b/surfsense_desktop/electron-builder.yml @@ -46,8 +46,11 @@ mac: icon: assets/icon.icns category: public.app-category.productivity artifactName: "${productName}-${version}-${arch}.${ext}" - hardenedRuntime: false + hardenedRuntime: true gatekeeperAssess: false + entitlements: build/entitlements.mac.plist + entitlementsInherit: build/entitlements.mac.plist + notarize: true extendInfo: NSAccessibilityUsageDescription: "SurfSense uses accessibility features to bring the app to the foreground and interact with the active application when you use desktop assists." NSScreenCaptureUsageDescription: "SurfSense uses screen capture so you can attach a selected region to chat (Screenshot Assist) or capture the full screen from the composer."