Firefox в Ubuntu 14.04 только что обновился до v 47, и это сломало некоторые вещи, над которыми я работал. Это, однако, не так уж и важно, подумал я, потому что я могу просто скачать предыдущую версию и работать с ней, подумал я. Итак, я делаю что-то вроде этого:
wget https://ftp.mozilla.org/pub/firefox/releases/46.0.1/linux-i686/en-US/firefox-46.0.1.tar.bz2
tar xjvf firefox-46.0.1.tar.bz2
mv firefox firefox-46.0.1
./firefox-46.0.1/firefox # to run
Пока все хорошо, но, к сожалению, как только я нажимаю Alt / Help / About Firefox, проклятая вещь начинает обновляться:
... и меня это даже не спрашивает, что я считаю крайне неуважительным.
Проблема в том, что при запуске даже эта версия использует профиль «Пользователь по умолчанию», который используется моей обычной системой Firefox. Теперь я мог бы создать отдельную папку профиля только для этого Firefox, но тогда мне нужно управлять большим количеством вещей - что я не считаю нужным, поскольку все, что я хочу сделать в любом случае, это просто остановить обновления.
Итак, я немного поднял глаза:
Вы можете установить эти префы в about: config, чтобы отключить автоматическое обновление:
app.update.auto - false
app.update.enabled - false
app.update.silent - false
....
Вы можете создать новый файл в текстовом редакторе ... с именем user.js ... Поместите этот файл в свою папку профиля.
// turn off application updates:
user_pref("app.update.enabled", false);
Это было бы хорошо, если бы я хотел использовать отдельный каталог профиля, но, как я уже сказал, я не (и я не Я тоже не хочу связываться с моим профилем "Default User". Затем я нашел это:
/ defaults / profile
Хорошо, так что это что-то вне папки Profile, и в каталоге приложения это I может использовать, но все еще работает? В настоящее время у меня есть это:
$ find firefox-46.0.1/ -name '*.js'
firefox-46.0.1/defaults/pref/channel-prefs.js
$ cat firefox-46.0.1/defaults/pref/channel-prefs.js
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
pref("app.update.channel", "release");
Ну, я подумал, если этот файл будет прочитан, то я могу просто добавить настройки, чтобы остановить обновления здесь?
$ cat >> firefox-46.0.1/defaults/pref/channel-prefs.js << 'EOF'
> pref("app.update.auto", false);
> pref("app.update.enabled", false);
> pref("app.update.silent", false);
> EOF
Перезапустить Firefox , как только я вижу Справка / О программе, она снова начинает обновляться :(
Пробовала также добавить их в отдельный файл user.js
в том же каталоге:
$ cat >> firefox-46.0.1/defaults/pref/user.js << 'EOF'
> pref("app.update.auto", false);
> pref("app.update.enabled", false);
> pref("app.update.silent", false);
> EOF
.. но все еще не игра в кости - снова Firefox начинает обновляться немедленно, как только я вижу Справку / О программе; и даже about:config
указывает, что эти предпочтения не изменились по сравнению с их значениями по умолчанию.
Итак, есть ли способ остановить обновления этой «внешней» версии Firefox на уровне «приложения» (то есть в папке приложения), так что он по-прежнему использует профиль «Пользователь по умолчанию», в противном случае пользователь является основным Версия Firefox?
Хорошо, вот обходное решение, пока надлежащий ответ не прибывает; понятие:
firefox
от папки приложения с "определенным" профилем, созданным ранее (в 46, и firefox
и firefox-bin
, файлы являются двоичными) user.js
, внутренняя часть с необходимыми предпочтениями Вот является всем этим в bash
сценарий:
wget https://ftp.mozilla.org/pub/firefox/releases/46.0.1/linux-i686/en-US/firefox-46.0.1.tar.bz2
tar xjvf firefox-46.0.1.tar.bz2
mv firefox firefox-46.0.1
# create a new, "specific" profile folder
mkdir firefox-46.0.1/profile-46
# create a new bash script to run firefox:
cat > firefox-46.0.1/firefox46.sh <<'EOF'
#!/usr/bin/env bash
# set -x
# SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" # nowork 4 symlink
SCRIPT_DIR="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
cd ${SCRIPT_DIR} # just in case
# -no-remote implies --new-instance.
exec "${PWD}/firefox" -profile "${PWD}/profile-46" -new-instance
EOF
# make bash script executable:
chmod +x firefox-46.0.1/firefox46.sh
# run once, just to init the profile-46 directory, then exit manually:
./firefox-46.0.1/firefox46.sh
# create user.js to override; firefox-46.0.1/profile-46/prefs.js should not be edited manually
# (https://developer.mozilla.org/en-US/docs/Mozilla/Preferences/A_brief_guide_to_Mozilla_preferences)
# (http://practical-admin.com/blog/firefox-customization-file/)
cat > firefox-46.0.1/profile-46/user.js << 'EOF'
pref("app.update.auto", false);
pref("app.update.enabled", false);
pref("app.update.silent", false);
EOF
# finally, symlink to /usr/bin:
sudo ln -s $PWD/firefox-46.0.1/firefox46.sh /usr/bin/firefox46
Теперь, каждый раз, когда я запускаю firefox46
с терминала, Firefox 46 запускается с правильного профиля и не хочет обновлять больше, который является тем, что я хотел...
Можно просто удалить исполняемый файл Updater в папке Firefox. Больше никаких обновлений. Когда-либо.