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.
OpenTTD-patches/os/macosx/notarize.sh

59 lines
1.6 KiB
Bash

#!/bin/bash
set -e
# This script attempts to notarize the OpenTTD DMG generated by CPack.
# If you are building an unofficial branch of OpenTTD, please change the bundle
# ID in Info.plist and below.
#
# This uses `gon' to perform notarization:
#
# https://github.com/mitchellh/gon
#
# Follow the setup instructions on the gon site to install.
#
# Before executing this script, you must first configure CMake with at least the following
# parameters:
#
# -DCPACK_BUNDLE_APPLE_CERT_APP={certificate ID}
# "-DCPACK_BUNDLE_APPLE_CODESIGN_PARAMETER=--deep -f --options runtime"
#
# then run "make package" or "cpack".
#
# This will sign the application with your signing certificate, and will enable
# the hardened runtime.
#
# You also need to set your Apple Developer username and password (app-specific password
# is recommended) in the AC_USERNAME and AC_PASSWORD environment variables.
#
# Then, ensuring you're in your build directory and that the "bundles" directory
# exists with a .dmg in it (clear out any old DMGs first), run:
#
# ../os/macosx/notarize.sh
if [ -z "${AC_USERNAME}" ]; then
echo AC_USERNAME not set, skipping notarization.
exit 0
fi;
dmg_filename=(bundles/*.dmg)
if [ "${dmg_filename}" = "bundles/*.dmg" ]; then
echo "No .dmg found in the bundles directory, skipping notarization. Please read this"
echo "script's source for execution instructions."
exit 1
fi;
cat <<EOF > notarize.json
{
"notarize": [
{
"path": "${dmg_filename[0]}",
"bundle_id": "org.openttd.openttd",
"staple": true
}
]
}
EOF
gon notarize.json