Как стать автором
Обновить

Подписываем установщик Developer ID сертификатом

Время на прочтение1 мин
Количество просмотров5K
Если вы распространяете свои приложения сами, вне MacAppStore, в виде установщика, то вы должны знать, что Xcode не позволяет подписывать установщик Developer ID сертификатом. Это странно, если учесть, сколько обновлений Xcode уже выпущено после введения Developer ID.

В документации так и написано:
If you want to distribute your application outside of the Mac App Store as part of an installer package, create the package as you normally do, perhaps by using the packagemaker(1) command. Code sign the resulting package with your Developer ID Installer certificate by using the productsign command.

Необходимость вручную подписывать установщик немного раздражает, особенно, если это необходимо проделывать часто. Поэтому я написал небольшой сервис, который позволяет обойтись буквально несколькими кликами мышкой.

Итак, сначала необходимо экспортировать нужное приложение в виде установщика:



На следующем шаге выбираем любой сертификат для подписи (в этом списке нет Developer ID сертификатов) и сохраняем установщик в удобное вам место.

Пока он подписан неверным сертификатом, но сейчас мы это исправим.



Подписываем установщик. В контекстном меню выбираем СлужбыProduct Sign.



Если у вас есть несколько подходящих Developer ID сертификатов — вы сможете выбрать нужный.

Подписанный установщик сохраняется рядом с исходным, с добавлением _s к имени. Подписывать можно несколько установщиков одновременно, выделив несколько файлов или даже папку целиком.

Результат:



Сам сервис со скриптом его установки можно забрать на github. Сервис распространяется по лицензии WTFPL.

Удачи!
Теги:
Хабы:
Всего голосов 12: ↑12 и ↓0+12
Комментарии14

Публикации

Истории

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
24 сентября
Конференция Fin.Bot 2024
МоскваОнлайн
24 сентября
Astra DevConf 2024
МоскваОнлайн
25 сентября
Конференция Yandex Scale 2024
МоскваОнлайн
28 – 29 сентября
Конференция E-CODE
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
30 сентября – 1 октября
Конференция фронтенд-разработчиков FrontendConf 2024
МоскваОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн