Как настроить Firefox через скрипт?


8

Я ищу, чтобы настроить следующие параметры Firefox через скрипт (VBS или пакет)

  • Домашняя страница по умолчанию
  • поисковая система по умолчанию
  • отключить автоматическое обновление

Это возможно?

Ответы:


9

Вы можете сделать это, создав файлы настроек Mozilla или манипулируя ими с помощью предпочитаемого вами языка сценариев.

Список настроек, которые можно установить с помощью этих файлов, см. В настройках Mozilla и документации about: config , хотя те, которые соответствуют вашему списку, выглядят так:

  • browser.startup.homepage (Домашняя страница по умолчанию)
  • browser.search.defaultenginename (поисковая система по умолчанию)
  • app.update.auto (включить / отключить автоматическое обновление)

Однако, в зависимости от вашей среды, может оказаться, что лучше передать настройки через пользовательскую надстройку (см. Комментарии XPI в Кратком руководстве по настройкам Mozilla ) или через GPO с FirefoxADM или аналогичным.


Позволит ли FirefoxADM выбрать поисковую систему по умолчанию?
asp316

Нажмите на ссылку, чтобы узнать!
surfasb

Я не использовал FADM, но просматривая источник, он не выглядит так. Тем не менее, вы можете изменить его, чтобы сделать это, и внести свои изменения обратно в проект.
Кандзи

Сегодня, два года спустя, настройка browser.search.defaultenginenameне имеет эффекта. Обновление на этот ответ было бы неплохо.
Герман

2

Вы можете переопределить параметры приватного браузера в файле user.js в папке профилей пользователей. Я часто использую его, чтобы переопределить некоторые параметры, например конвейерную обработку. Firefox должен быть перезапущен после того, как вы обновите user.js. Если файл user.js не существует, вы должны создать его.


0

буквально скопировать / вставить ту часть ответа, которую я искал (win env.)

'C:\Users\User\AppData\Roaming\Mozilla\Firefox\Profiles\#####.default\prefs.js'

Добавить

user_pref("browser.startup.homepage", "http://www.URL");

мои попытки скопировать на удаленные машины с помощью Get-Content / cat string.txt / "String" >> path закончились вставкой в prefs.jsфайл мусора из-за escape-символов в строке.


0
cd /D "%APPDATA%\Mozilla\Firefox\Profiles\*.default"

set ffile=%cd%

echo user_pref("browser.startup.homepage", "http://superuser.com");>>"%ffile%\prefs.js"
echo user_pref("browser.search.defaultenginename", "Google");>>"%ffile%\prefs.js"
echo user_pref("app.update.auto", false);>>"%ffile%\prefs.js"
set ffile=

cd %windir%

1
Добро пожаловать в Супер пользователя. Ваш ответ будет лучше, если вы немного объясните код. Я исправил его форматирование для вас (и я надеюсь, что не нарушил код). У меня есть сомнения: я полагаю, ваш код добавляет строки вместо перезаписи уже существующих. Я прав? Даже если учитывается только последнее появление определенной опции (и, следовательно, ваши изменения вступают в силу), файл будет без необходимости увеличиваться при каждой перенастройке, собирая все больше и больше экземпляров этих опций, если только сам Firefox не перезаписывает файл в более безопасном файле. путь. Было ли ваше решение протестировано по этому сценарию?
Камиль Мачоровски

0

Нить немного старая, но я все равно хочу поделиться своим решением. Надеюсь, это кому-нибудь поможет. У нас была похожая проблема, и мы хотели добавить сертификаты из магазина Windows в Firefox. Поэтому я создал скрипт для этого. В любом случае, вы можете изменить его по своему усмотрению: просто добавьте или удалите строки в: create cfg_file_name.cfg [...] и вставьте то, что вам нужно, например, для начальной домашней страницы и так далее. Не забудьте установить ^ перед последним), иначе он не будет работать! echo pref("browser.startup.homepage", "http://superuser.com"^);

С версии 49 вы можете сделать это так:

@echo off
setlocal enabledelayedexpansion
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: MAIN INFORMATION
:: Title: Change about:config entries in Mozilla Firefox
:: Author: I-GaLaXy-I
:: Version: 1.1
:: Last Modified: 10.01.2018
:: Last Modified by: I-GaLaXy-I
::------------------------------------------------------------------------------
:: This script will add two files, which will change about:config parameters of
:: Mozilla Firefox. You can change the name of these two files and remove or add
:: parameters according to your needs. Renaming the files could be essential, if
:: a user creates own files and you don't want to overwrite them.
:: 
:: If the two files already exist and the script is run, the complete content
:: of both files will be overwritten!
::
:: Note: You may have to run it with administrative privileges!
::
:: More information: https://developer.mozilla.org/en-US/Firefox/Enterprise_deployment
:: http://kb.mozillazine.org/Locking_preferences
::------------------------------------------------------------------------------
:: Subtitle: Import CAs from Windows certificate store
:: More information: https://serverfault.com/questions/722563/how-to-make-firefox-trust-system-ca-certificates
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: Set the name of the .cfg file
set cfg_file_name=add_win_certstore_cas

:: Set the name of the .js file
set js_file_name=add_win_certstore_cas

:: Registry keys to check for the installation path of Mozilla Firefox
set regkey1="HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\Windows\CurrentVersion\App Paths\firefox.exe" /v "Path"
set regkey2="HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet\FIREFOX.EXE\shell\open\command" /ve

:: Get installation path of Mozilla Firefox (if not found exit script):
reg query %regkey1%
if %errorlevel%==0 (
    :: First key found, getting path
    for /f "tokens=2* delims=    " %%a in ('reg query %regkey1%') do set path_firefox=%%b
) else (
    :: If first key not found, try another one:
    reg query %regkey2%
    if !errorlevel!==0 (
        for /f "tokens=2* delims=    " %%a in ('reg query %regkey2%') do set path_firefox=%%b
        set path_firefox=!path_firefox:\firefox.exe=!
        for /f "useback tokens=*" %%a in ('!path_firefox!') do set path_firefox=%%~a
) else (
    :: No key found, exit script
    exit
))

:: Create cfg_file_name.cfg if it doesn't exist and input the following lines.
:: Caution! If cfg_file_name.cfg already exists, all lines will be overwritten!
:: Add more lines as needed with the following syntax: 
::echo pref("<name_of_config_entry>", <value>^);
(
    echo //Firefox Settings rolled out via KACE from Systec
    echo //Do not manually edit this file because it will be overwritten!
    echo //Import CAs that have been added to the Windows certificate store by an user or administrator.
    echo pref("security.enterprise_roots.enabled", true^);
) > "%path_firefox%\%cfg_file_name%.cfg"

:: Create js_file_name.js if it doesn't exist and input the following lines.
:: Caution! If js_file_name.js already exists, all lines will be overwritten!
(
    echo /* Firefox Settings rolled out via KACE from Systec
    echo Do not manually edit this file because it will be overwritten! */
    echo pref("general.config.obscure_value", 0^);
    echo pref("general.config.filename", "%cfg_file_name%.cfg"^);
) > "%path_firefox%\defaults\pref\%js_file_name%.js"

:: Files created, exit
exit
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.