diff --git a/.gitignore b/.gitignore index e1bcb518..98f806a4 100644 --- a/.gitignore +++ b/.gitignore @@ -307,4 +307,8 @@ GitHub.sublime-settings #Service Worker mappings src/renderer/sw.js.map -src/renderer/workbox-962786f2.js.map \ No newline at end of file +src/renderer/workbox-962786f2.js.map + +#Mac certs +*.p12 +keys.sh \ No newline at end of file diff --git a/build/afterPack.js b/build/afterPack.js new file mode 100644 index 00000000..963caa17 --- /dev/null +++ b/build/afterPack.js @@ -0,0 +1,16 @@ +exports.default = function(context) { + const { execSync } = require('child_process') + + console.log('Castlabs-evs update start') + execSync('python3 -m pip install --upgrade castlabs-evs') + console.log('Castlabs-evs update complete') + + if (process.platform !== 'darwin') + return + + console.log('VMP signing start') + + execSync('python3 -m castlabs_evs.vmp -n sign-pkg dist/mac',{stdio: 'inherit'}) + + console.log('VMP signing complete') +} \ No newline at end of file diff --git a/build/entitlements.mac.plist b/build/entitlements.mac.plist new file mode 100644 index 00000000..fcb8d4a3 --- /dev/null +++ b/build/entitlements.mac.plist @@ -0,0 +1,14 @@ + + + + + + com.apple.security.cs.allow-jit + + com.apple.security.cs.allow-unsigned-executable-memory + + + com.apple.security.cs.disable-library-validation + + + \ No newline at end of file diff --git a/build/notarize.js b/build/notarize.js new file mode 100644 index 00000000..acf45d78 --- /dev/null +++ b/build/notarize.js @@ -0,0 +1,9 @@ +exports.default = function(context) { + const { execSync } = require('child_process') + + if (process.platform === "win32") { + console.log('VMP signing start') + execSync('python3 -m castlabs_evs.vmp sign-pkg ' + context.appOutDir,{stdio: 'inherit'}) + console.log('VMP signing complete') + } +} \ No newline at end of file diff --git a/package.json b/package.json index d930a0ca..5fc6d3cf 100644 --- a/package.json +++ b/package.json @@ -81,6 +81,7 @@ "mirror": "https://github.com/castlabs/electron-releases/releases/download/v" }, "appId": "cider", + "afterPack": "./build/afterPack.js", "protocols": [ { "name": "Cider", @@ -132,8 +133,12 @@ "mac": { "icon": "./resources/icons/icon.icns", "category": "public.app-category.music", - "entitlements": "resources/entitlements.mac.plist", - "darkModeSupport": true + "entitlements": "build/entitlements.mac.plist", + "entitlementsInherit": "build/entitlements.mac.plist", + "darkModeSupport": true, + "target": [ + "dmg" + ] } } }