build_sig.sh 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. #!/bin/bash
  2. ############################################################################
  3. #
  4. # Title: Sign Package Script for macOS
  5. # Authors: Shane Lee
  6. # Date: December 2015
  7. #
  8. # Description: This signs an macOS Installer Package (.pkg)
  9. # /opt/salt
  10. #
  11. # Requirements:
  12. # - XCode Command Line Tools (xcode-select --install)
  13. # - A valid signing certificate in the login.keychain. Signing Certificates
  14. # can be optained from the Apple Developer site.
  15. #
  16. # Usage:
  17. # This script must be passed 2 parameters
  18. # $1 : <source package> : the package that will be signed
  19. # $2 : <signed package> : the name to give the signed package (can't be
  20. # the same as the source package)
  21. #
  22. # Example:
  23. # The following will sign the 'salt-v2015.8.3.pkg' file and save it as
  24. # 'salt-v2015.8.3.signed.pkg'
  25. #
  26. # ./build_sig.sh salt-v2015.8.3.pkg salt-v2015.8.3.signed.pkg
  27. #
  28. ############################################################################
  29. ############################################################################
  30. # Check input parameters
  31. ############################################################################
  32. if [ "$1" == "" ]; then
  33. echo "Must supply a source package"
  34. else
  35. INPUT=$1
  36. fi
  37. if [ "$2" == "" ]; then
  38. echo "Must supply a signed package name"
  39. else
  40. OUTPUT=$2
  41. fi
  42. ############################################################################
  43. # Import the Salt Developer Signing certificate
  44. ############################################################################
  45. security import "Developer ID Installer.p12" -k ~/Library/Keychains/login.keychain
  46. ############################################################################
  47. # Sign the package
  48. ############################################################################
  49. productsign --sign "Developer ID Installer: Salt Stack, Inc. (VK797BMMY4)" $INPUT $OUTPUT
  50. #
  51. # codesign --sign "Developer ID Application: Salt Stack, Inc. (XXXXXXXXXX)" $INPUT $OUTPUT
  52. # https://developer.apple.com/documentation/xcode/notarizing_macos_software_before_distribution?language=objc
  53. # stapler or altool