You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/BUILDING.md

43 lines
1.7 KiB
Markdown

# Building
Building session binaries is done using github actions. Windows and linux binaries will build right out of the box but there are some extra steps needed for Mac OS
## Mac OS
The build script for Mac OS requires you to have a valid `Developer ID Application` certificate. Without this the build script cannot sign and notarize the mac binary which is needed for Catalina 10.15 and above.
If you would like to disable this then comment out `"afterSign": "build/notarize.js",` in package.json.
You will also need an [App-specific password](https://support.apple.com/en-al/HT204397) for the apple account you wish to notarize with
### Setup
Once you have your `Developer ID Application` you need to export it into a `.p12` file. Keep a note of the password used to encrypt this file as it will be needed later.
We need to Base64 encode this file, so run the following command:
```
base64 -i certificate.p12 -o encoded.txt
```
#### On GitHub:
1. Navigate to the main page of the repository.
2. Under your repository name, click **Settings**.
3. In the left sidebar, click **Secrets**.
4. Add the following secrets:
1. Certificate
* Name: `MAC_CERTIFICATE`
* Value: The encoded Base64 certificate
2. Certificate password
* Name: `MAC_CERTIFICATE_PASSWORD`
* Value: The password that was set when the certificate was exported.
3. Apple ID
* Name: `SIGNING_APPLE_ID`
* Value: The apple id (email) to use for signing
4. Apple Password
* Name: `SIGNING_APP_PASSWORD`
* Value: The app-specific password that was generated for the apple id
5. Team ID (Optional)
* Name: `SIGNING_TEAM_ID`
* Value: The apple team id if you're sigining the application for a team