Един хитър трик за подобряване на скоростта на firefox браузъра ви е като вакумирате sqlite базата му данни. VACUUM процеса преизгражда базата данни като по този начин я дефрагментира, намаля размера и прави търсенето в нея по бързо, използването на диска по ефективно евентуално намаля и натоварването върху диска ви тъй като чете в последователност от секторите ми. Като цяло това важи за всяка база данни която не извършва автоматично vacuum/defrag на себе си.

Самият процес по дефрагментиране на базата данни на Firefox е доста тривиален – изпълняваме sqlite3 db-file VACUUM в профилната директория на firefox. В linux пътя до нея обикновенно е ~/.mozilla/firefox/random-name.default. По принцип трябва да имате само 1 диркетория в .mozilla/firefox ако имате повече може да проверите ~/.mozilla/firefox/profiles.ini за коректната директория в е профила на вашият браузър. Тъй като не ми се занимава да извършвам процеса на ръка разписах елементарен скрипт с който да дефрагментирам базите данни:

for db in $(find ~/.mozilla/firefox/$(grep Path ~/.mozilla/firefox/profiles.ini | cut -d'=' -f2) -maxdepth 1 -name "*.sqlite" -type f)
do
   echo "VACUUM ${db}"
   sqlite3 ${db} VACUUM
   sqlite3 ${db} REINDEX
done

След изпълняване на скрипта търсенето в history-то и самото зареждане на лисика е чувствително по бързо. Скрипта предполагам че с малки модификации може да се ползва и в Mac OS.

p.s Ето варианта и за Mac OS X – тестван на Mac OS X Sierra. Налага се да форсираме делимитъра да е нов ред заради space в пътя до папката в която се съдържа профила на firefox

OIFS="$IFS"
IFS=$'\n'
for db in $(find ~/Library/Application\ Support/Firefox/$(grep Path ~/Library/Application\ Support/Firefox/profiles.ini | cut -d'=' -f2)  -maxdepth 1  -name "*.sqlite" -type f)
do
echo "VACUUM && REINDEX ${db}"
sqlite3 "${db}" VACUUM;
sqlite3 "${db}" REINDEX;
done

От време на време ми се налага да ползва Bitcoin URI и когато ми се наложи клиента ми не се е асоциирал е дразнещо, че трянва да правя всичко на ръка. Продцедурата е изключително тривиална по въпросната асоциация. Може да бъде синтезирана в следните 5 точки

  1. Отворете в адрес бара си about:config
  2. Създайте нов ключ от тип boolean (клис с десен бутон на мишката -> new -> boolean)
  3. Въведете име: network.protocol-handler.expose.bitcoin
  4. Изберете стойност false
  5. Следващият път когато кликнете на Bitcoin URI ще бъдете попитани за избор път до Bitcoin клиента си. Бъдете сигурни че е с изпълними права.

Аз лично използвам MultiBit клиента който е има всичката необходима фунционалност и е достатъчно пъргавичък

Official Iceweasel Icon, used in Debian Package

Използвам Debian от почти 5-6 години вече. Едно от нещата което винаги ме е смущавало е, че хората от Debian team-а са заместили Firefox с Iceweasel. Причината е съвсем идеологическа – тъй като Debian-ци държат да имат напълно 100% свободна дистрибуция а някой компоненти като шрифтове и други неща са собственически в Firefox се използва fork-а в който е освободен от тези неща. Понякога „Ледената Невестулка“ се е държала странно, но никога не съм имал 100% ясно доказателство, че маргинално е различен browser. Поне така беше до вчера. Вчера си направих html5 test на browser-а ми и установих неприятния факт, че правя 10-15 точки по малко от стандартната версия. Изключително неприятно, веднага сверих версиите ми бяха еднакви 18.0.1. От тук нататък нещата са ясни, че ще се завърна към стандартната версия но се чудя защо важни компонентни не работят както се очаква и това не е споменато. Като цяло доста се дразня на фанатизирани идеолози които ще предпочетат 100% отворено решение което дори и да не работи толкова добре колкото трябва ще бъде основно. Това е като да загубя основната производителност на GPU-то за да използвам свободния драйвер за Nvidia вместо този който ми предлага производителя – лично аз не мога да си позволя подобна загуба на производителност. Та нека да се върнем на миграцията от единия на другия browser. Като цяло е доста простичка ако мога да я изброя в няколко стъпки ще наблегна на най важните

  1. Сваляне на правилната версия за вашата архитектура има значение дали ще ползвате x86 или x64 версията за плъгините като флаш и някой други който вече са инсталирани на системата ви. Ако не сте сигурни каква е архитектурата ви може да проверите с uname -m командата в козолата.
wget ftp://ftp.mozilla.org/pub/firefox/releases/$VERSION/linux-$(uname -m)/en-US/firefox-18.0.1.tar.bz2 -O /tmp/firefox.tar.bz2
  1. Разархивиране на browser-a това може да го направите където си искате /home /opt или където душа ви сака лично аз предпочтох /opt
tar jxfv /tmp/firefox.tar.bz2 -C /opt/
  1. Добавяне на линк към стария изпълним файл към новата локация на browser-а
ln -s /opt/firefox/firefox /usr/bin/firefox
  1. добавяне на линк за plugin-ите към новата локация за да можем да гледаме flash клипове и прочие
ln -s /usr/lib/mozilla/plugins /opt/firefox/plugins
  1. обновяване на broser-a по подразбиране
update-alternatives --install  /usr/bin/x-www-browser x-www-browser /opt/firefox/firefox 100
  1. и добавяне на запис за новата програма във вашата система
echo '[Desktop Entry]
Name=Firefox
GenericName=Web Browser
Comment=Surf the internet
Exec=/opt/firefox/firefox %u
Terminal=false
Icon=/opt/firefox/icons/mozicon128.png
Type=Application
Categories=Application;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;
StartupWMClass=Firefox-bin
StartupNotify=true' > /usr/share/applications/firefox.desktop

В общи линии това са стъпките който трябва да следваме. Понеже аз съм мързели и не ми се прави всичко на ръка всеки път си направих следния скрипт.

#!/bin/bash

VERSION='18.0.1'

if [ $EUID -ne 0 ]
then
echo -en "�33[1;31mERROR: Must be a 'root'!!! nUse 'su' or 'sudo ./ff_install' :) �33[0m n"
exit
fi

wget ftp://ftp.mozilla.org/pub/firefox/releases/$VERSION/linux-$(uname -m)/en-US/firefox-18.0.1.tar.bz2 -O /tmp/firefox.tar.bz2

tar jxfv /tmp/firefox.tar.bz2 -C /opt/
chown $1:$1 -R /opt/firefox
mv /usr/bin/firefox /usr/bin/firefox-iw
ln -s /opt/firefox/firefox /usr/bin/firefox
ln -s /usr/lib/mozilla/plugins /opt/firefox/plugins

update-alternatives --install  /usr/bin/x-www-browser x-www-browser /opt/firefox/firefox 100

echo '[Desktop Entry]
Name=Firefox
GenericName=Web Browser
Comment=Surf the internet
Exec=/opt/firefox/firefox %u
Terminal=false
Icon=/opt/firefox/icons/mozicon128.png
Type=Application
Categories=Application;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;
StartupWMClass=Firefox-bin
StartupNotify=true' > /usr/share/applications/firefox.desktop

Важно нещо което пропуснах е че директорията където се намира версията на firefox-а трябва да е на настоящия ви потребител за да може да надграждате версиите без проблеми. Затова горния скрипт трябва да се стартира със атрибут вашия потребител.

./ff_install your_user_name

Тая прекрасна съботна вечер съм си в къщи и от нямане на какво да правяреших да си ъпдеитна темичката че беше 2 версии назад 😆 като цяло хубаво че си знам кои фаил каде съм го чоплил всичко мина доста гладско само забравих да направя 2 фикса по css-a и една допълнителна настроика 🙂 Определено темата оправя доста досадни бъгове например сърч бара преди беше един кривичък и разминат сега нещата изглеждат Доста по гладки

От седмица позлвам Firefox 3.1beta2 немога въобще да се оплача от браузърчето. Страхотно е от към скорост. Поне 2-3 пъти по бърз малко са олекотили линуксия вариант че беше адски зле даже повече от скаип ;). Само ми се наложи да забраня проверката за съвместимост на добавките това ства супер лесно. Като се отвори нов таб и в адрес бара се пише about:config След това с десен бутион на мишката кликванете и new->boolean за име слагате extensions.checkCompatibility а стоиност избирате false И сте готови