Проблема: при установке панели (тулбара, toolbar) от Google для Firefox 3.5.x выскакивает вот такая ошибка:
Firefox could not install the file at «http://dl.google.com/firefox/google-toolbar-win.xpi»
Давайте рассмотрим 2 решения данной проблемы:
1 решение:
Определение сертификата
Первое что вы должны сделать, это определить сертификат для данного файла.xpi.
Скачайте расширение.Разархивируйте это расширение.Найдите файл./META-INF/zigbert.rsa.Найдите в нем строку типа: .Class 3 Public Primary Certification AuthorityТеперь мы знаем, что.xpi файл подписан VeriSign.
Установление доверия сертификату
Запустите Firefox.Настройки -> Дополнительно -> ШифрованиеПросмотр сертификатов -> Центры сертификацииНайдите VeriSign сертификат.
Нажмите на кнопку Изменить…
Поставьте галку, как на рисунке и перезапустите браузер.
2 решение:
Настройки -> Дополнительно -> ШифрованиеКнопка Настройки OCPS (Online Certificate Status Protocol).отметьте галкой, см. рисунок.Перезапустите Firefox.
Аналогично для плагинов, тем и т.д.
В свете последних событий связанных с релизом Mozilla Firefox 48, который навёл шухеру среди части пользователей, в связи с обязательным наличием подписи у расширений, люди столкнувшиеся с этой проблемой встали перед выбором, либо:
- не пользоваться неподписанными расширениями (плохой вариант);
- использовать небрэндированные сборки;
- идти окольными путями, пытаясь отключить проверки любыми способами, некоторые из которых предложены в следующих комментариях:
https://geektimes.ru/post/279132/#comment_9480372
https://geektimes.ru/post/279132/#comment_9480382 - подписать необходимое расширение самостоятельно.
Для этого нам понадобятся:
- учётная запись на addons.mozilla.org
- установленный nodejs версии >= 0.10
- npm версии >=3.0.0 (npm up npm)
- jpm для nodejs (npm install jpm).
Итак, учётную запись зарегистрировали, программное окружение установлено, можно приступать.
Берём подопытное расширение и распаковываем его в отдельную папку, в нашем случае используем слепок репозитория, расположенного по адресу https://github.com/dillbyrne/random-agent-spoofer .
Получим следующую структуру каталогов:
test\
lib\
doc\
data\
.gitignore
LICENSE
package.json
README.md
Если используется готовое собранное расширение, то в корне папки где оно распаковано, необходимо удалить файлы «bootstrap.js» и
«install.rdf», они создаются программой сборки, а при модификации уже подписанных дополнений ещё и папку «META-INF». Т.к. мы имеем дело с ещё не собранным дополнением, то это не требуется. Следующим шагом будет редактирование файла «package.json», расположенного опять же в корне каталога распакованного расширения. В нашем случае его начало выглядит так:
{
"name": "random-agent-spoofer",
"title": "Random Agent Spoofer",
"id": "jid1-AVgCeF1zoVzMjA@jetpack",
"description": "Allows the use of various browser profiles (including useragent ,platform, oscpu, accept headers and other options), which it can randomly switch between after a chosen period of time has expired",
"author": "dbyrne",
...
}
Если в нём содержится параметр «id» его надо либо изменить, либо удалить. В противном случае, мы получим ошибку при попытке подписи о том, что не являемся его владельцем.
Далее командуем следующее «заклинание» для сборки расширения в архив:
Jpm xpi --addon-dir <путь к папке куда распаковали>
Или просто:
Jpm xpi , если текущий каталог это и есть корень распакованного расширения.
На выходе должен появиться файл собранного расширения.xpi, который и будем подписывать.
А теперь приготовим свой api-ключ, ради получения которого и регистрировались на addons.mozilla.org . Его можно увидеть по адресу addons.mozilla.org/ru/developers/addon/api/key в таком виде:
Издатель JWT: Где Jpm sign --api-key Если всё пройдёт без ошибок и автоматическая проверка будет пройдена, то в текущем каталоге мы получим подписанное расширение, в котором и нуждались. Полезные ссылки: Всем спасибо за внимание, удачи!
Документация по jpm: developer.mozilla.org/en-US/Add-ons/SDK/Tools/jpm
Signing Api: olympia.readthedocs.io/en/latest/topics/api/signing.html