Как вы упаковываете и самостоятельно размещаете свои расширения Firefox?
-
11-07-2019 - |
Вопрос
Я разрабатываю специфичное для сайта расширение Firefox. Официальный механизм размещения / обновления на addons.mozilla.org вынуждает моих пользователей войти в систему, чтобы загрузить мой плагин (пока он не будет утвержден для публичного статуса), что не очень хорошо для меня, тем более что мой плагин вряд ли будет сочтен полезным для сеть в целом и застрянет в песочнице навсегда.
Кажется, что я вынужден использовать McCoy (программу только с графическим интерфейсом) для подписать некоторые из моих артефактов и openssl, чтобы создать хеш, который я вручную вставляю в update.rdf перед его подписанием. Я действительно хочу иметь некоторые инструменты, которые я могу использовать в своем автоматическом процессе сборки, которые не требуют от меня ручных шагов каждый раз. Существует ли инструмент с открытым исходным кодом, который имитирует поведение addons.mozilla.org, который я могу использовать для самостоятельного хостинга? Или набор инструментов командной строки (которые работают на OS X), которые я могу вызвать из моей сборки перед развертыванием? Р>
Рад, что у вас есть какой-то опыт в этом процессе ... как вы это делаете сейчас? что ты пробовал? что сработало, а что нет? Р>
Решение 2
Я просто прикусил пулю и использовал сертификат SSL. Если ваш файл update.rdf находится на безопасном сервере, процесс обновления и дескрипторы работают очень легко ... а у меня нет сделать что-нибудь сверхъестественное в моем процессе сборки.
Вам все еще нужен хеш:
openssl sha1 plugin.xpi
результирующий хеш должен оказаться в файле upgrade.rdf
<em:updateHash>sha1:b100d1207b38bbbea1add4eb96947ee4ea4b7a3e</em:updateHash>
но больше не нужно разбираться с mccoy и всем, что связано с подписью.
Другие советы
Вы можете следовать инструкциям здесь о том, как подписать файл XPI. Вы можете легко объединить шаги в сценарий, который будет выполняться как часть вашей сборки.