Я часто развертываю Firefox на отдельных машинах. Помимо очевидного выполнения всего этого вручную, я хотел бы иметь возможность настроить установщик Firefox так, чтобы он автоматически включал выбранные мной дополнения.
Это возможно?
Я часто развертываю Firefox на отдельных машинах. Помимо очевидного выполнения всего этого вручную, я хотел бы иметь возможность настроить установщик Firefox так, чтобы он автоматически включал выбранные мной дополнения.
Это возможно?
Я нашел эту статью, в которой рассказывается, как настроить установщик Firefox и связать с ним расширения: http://mike.kaply.com/2010/06/18/customizing-the-firefox-installer-on-windows/
Один из вопросов, которые мне часто задают, - это как настроить установщик Firefox под Windows и как связать с ним расширения. Последние несколько дней я много изучал, поэтому подумал, что воспользуюсь этой возможностью, чтобы еще раз рассказать о работе с установщиком Firefox в Windows. Я собираюсь сделать это как вопросы и ответы, так что, надеюсь, люди получат ответы на общие вопросы, которые у них есть.
Стандартный отказ от ответственности: ни при каких обстоятельствах вы не должны использовать эту информацию для создания пользовательской установки Firefox и распространять ее среди всех, кто находится за пределами вашей организации. Если вам нужна дополнительная информация, вы можете обратиться к Политике по товарным знакам Фонда Mozilla.
Основной инструмент, который вам нужен, это 7-Zip. Я устанавливаю пакет MozillaBuild, который дает мне все необходимые инструменты. Несмотря на то, что установщик Firefox основан на NSIS, нам не нужно будет использовать NSIS для большинства настроек. Я немного расскажу о конце, о том, что нужно сделать NSIS.
Установщик Firefox создан с использованием 7-Zip. Таким образом, вы можете получить любой из установщиков Windows, которые заканчиваются на EXE, и распаковать их. Любой из установщиков Windows на странице загрузки Firefox будет работать. Загрузив EXE, создайте временный каталог и введите:
7z x "Firefox Setup 3.6.3.exe"
Это распакует содержимое установщика, чтобы мы могли его изменить.
Объединение вашего расширения с установщиком Firefox - это всего лишь вопрос размещения его в нужном месте. Затем, когда мы завершим установщик в конце, он будет установлен вместе с Firefox. Для большинства расширений правильное место - нелокализованные / расширения. Внутри этого каталога создайте подкаталог, соответствующий идентификатору расширения, которое вы хотите предварительно установить с помощью Firefox. Затем разархивируйте XPI в этот каталог. Вы можете найти идентификатор, посмотрев файл install.rdf внутри XPI. Вы можете добавить в установщик столько расширений, сколько захотите.
Я создал два расширения, которые создают интересные вещи для Firefox. Первый - это мастер CCK. Мастер CCK можно использовать для изменения различных настроек по умолчанию в Firefox, чтобы вы могли настроить его для развертывания в своей организации. Второй - это Ребранд. Rebrand позволяет вам изменить внутренний брендинг, используемый в Firefox.
Да, вы можете изменить имена, используемые в установщике. Для этого вам нужно создать каталог с именем distribution внутри локализованного каталога, который был создан при распаковке установщика. Создайте файл с именем setup.ini в этом каталоге. Вот как это выглядит:
[Брендинг] BrandFullName = Браузер Майка BrandShortName = Браузер
BrandFullName будет использоваться для замены «Mozilla Firefox», а BrandShortName будет использоваться для замены «Firefox».
Да, вы можете изменить образы, используемые в установщике. В тот же каталог, куда вы положили файл setup.ini, вы можете поместить два файла, modern-wizard.bmp и modern-header.bmp. Первые изображения соответствуют большому изображению на первой странице установщика. Второе изображение соответствует небольшому изображению, которое используется на последующих страницах программы установки. Вы можете использовать связанные изображения в качестве ссылки, чтобы знать, какой размер сделать эти изображения.
Чтобы упаковать установщик, сначала нужно сжать внесенные вами изменения. Тип:
7z a -r -t7z app.7z -mx -m0 = BCJ2 -m1 = LZMA:d24 -m2 = LZMA:d19 -m3 = LZMA:d19 -mb0:1 -mb0s1:2 -mb0s2:3
Это создаст файл с именем app.7z, в котором будут все сделанные нами изменения. Теперь нам нужно упаковать этот файл с некоторыми другими файлами для создания окончательного EXE-файла. Нам понадобится файл 7zSD.sfx, который вы можете скачать с Mozilla. И нам понадобится файл с именем app.tag, который вы можете создать. Это выглядит так:
;!@ Установить @!UTF-8! Title = "Mozilla Firefox" RunProgram = "setup.exe";!@ InstallEnd @!
Когда у нас есть эти файлы, мы можем запустить команду:
copy /B 7zSD.sfx+app.tag+app.7z our_new_installer.exe
упаковать их все как EXE. Не забывайте /B. Это указывает на то, что файлы являются двоичными, поэтому Windows не будет помещать на них маркер EOF.
В настоящее время нет способа изменить значения по умолчанию в установщике без перестройки установщика. В этом патче есть открытая ошибка, так что, надеюсь, это будет исправлено в Firefox 4.
Есть несколько способов сделать это. Самый простой способ - использовать параметр -no-remote при запуске Firefox. Это приводит к тому, что Firefox, который вы начинаете, не подключается к запущенному в данный момент Firefox Когда вы делаете это, вы должны указать другой профиль, используя параметр -P. Кроме того, вы можете изменить внутренние идентификаторы, которые использует Firefox. Тогда это будет считаться совершенно другим браузером. Если вы решите сделать это, вы должны знать, что вы не будете получать обновления и будут другие побочные эффекты. Это не решение, которое следует воспринимать легкомысленно. Кроме того, ваши профили будут храниться в разных местах. Если вы хотите сделать это, проверьте файл application.ini в нелокализованном каталоге. Переменные, которые вы хотите изменить, это Vendor и Name. Опять же, вы делаете это на свой страх и риск.
Если вы хотите пересобрать установщик, вы можете изменить такие вещи, как имя записи в списке «Установка и удаление программ», а также каталог установки и другие параметры по умолчанию. Это нетривиальное упражнение, поскольку некоторые необходимые файлы создаются как часть процесса сборки Mozilla и недоступны в дереве сборки. Если вы действительно заинтересованы в этом, вы можете связаться с Kaply Consulting, и мы поговорим об этом.
Я надеюсь, что это ответило на некоторые вопросы людей. Если у кого-то есть еще вопросы, пожалуйста, не стесняйтесь спрашивать.