# crimata-electron ## Project setup ``` yarn install ``` ### Compiles and hot-reloads for development ``` yarn electron:serve ``` ### Compiles and minifies for production ``` yarn electron:build ``` ### Customize configuration See [Configuration Reference](https://cli.vuejs.org/config/). ## Sign and Notarize Prerequisites: * Apple Developer Account ($99) * Valid Apple Developer ID Application Certificate on keychain Clear debris from app before signing: xattr -cr Electron.app Sign and Notarize: node notarize.js Debug electron-osx-sign: export DEBUG=electron-osx-sign* ### Some things to note: Notarize only when distributing outside the Mac App Store. #### Gatekeeper Assess Electron-osx-sign seems to have a bug where the sign will fail if "gatekeeper-assess" is true (default). #### Entitlements.plist Not to be confused with Info.plist, this file specifies entitlements the app can have in hardened runtime (e.g. Can I use the microphone?). Only including the ones Electron reccommends seems to work (including audio of course and omitting allow-unsigned-executable-memory). #### The Benifit of Electron OSX Sign Without this package, we would have to manually go in and figure out how to sign each level of the app. While it didn't work out of the box (gatekeeper-assess) it seems to be good otherwise. However, there is a bug where it puts multiple runtime flags on each command - not catastrophic though. #### Apple Password This must be an app specific password, not your normal Apple ID password. #### --Signiture-Flags OSX Sign Not exactly sure what this does or why its important, but Electron includes it.