Recentment hem vist en molts webs com podem instal·lar el nou Firefox 3.5. Una opció es fer-ho des dels repositoris, ja sigui la versió de continuu desnvolupament o amb un repositori exclusiu per a la versió 3.5. També tenim l’opció de descarregar-nos el paquet executable, tal i com s’explica des de somgnu.
Afegint el repositori de desenvolupament, tenim l’avantatge que sempre disponem de l’última versió però amb el desavantatge que aquest mateix fet ens suposa, que moltes extensions no seran compatibles amb la versió més nova, i que al tractar-se d’una versió de desenvolupament pot contenir errors. Descarregant-nos l’executable tenim l’avantatge que no haurem d’esperar que el mantenidor del repositori l’actualitzi cada cop que surt una versió nova de la branca 3.5, ja que serà el mateix programa el que s’encarregarà d’actualitzar-se per si mateix.
Bé doncs, ens centraren en aquesta darrera opció, que és la que trobem més interessant. Però no ens descarregarem l’executable de la web, sinó que crearem l’executable nosaltres mateixos a partir del codi font, i només amb les opcions que més ens interessin. D’aquest procés se’n diu “compilar un programa”. Perquè ho fem així? Perquè si compilem el programa a partir del codi font, obtindrem un firefox que s’engega molt més ràpid al estar optimitzat per a la nostra màquina. Particularment, i comprada la versió del firefox compilada amb la que et pots baixar ja compliada des de la web de mozzila, he aconseguit que el firefox se m’engegui quasi instantaniament, i mira que utilitzo extencions!
Anem a veure com ho fem per compilar el firefox 3.5. Ja veureu com és un procés molt senzill que l’únic que necessiteu és una mica de temps perquè el procés de compliació pot durar una bona mitja horeta, així que anar a fer un café mentres l’ordinador treballa pot ser una bona opció.
Primer de tot instal·lem les llibreries necessaries per compilar el programa.
sudo apt-get build-dep firefox
sudo apt-get install libcairo2 libcairo2-dev libasound2-dev libcurl4-openssl-dev libnotify-dev libxt-dev libasound2-dev
Ara ens descarregarem el codi font del firefox
wget ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/3.5/source/firefox-3.5-source.tar.bz2
El descomprimim tenint present que la descompressió tardarà una miqueta
tar -xvf firefox-3.5-source.tar.bz2
Entrem al directori on hi tenim el codi preparat per a ser compilat
cd mozilla-1.9.1/
Ara hem d’aplicar un pedaç al codi font per tal que pugui ser compilat usant el motor gràfic “cairo”, que ens permetrà gaudir d’unes tipografies ben boniques
wget -O - http://hg.mozilla.org/mozilla-central/raw-file/9eca240fc4b8/gfx/thebes/src/gfxASurface.cpp > gfx/thebes/src/gfxASurface.cpp
Ara que ja tenim preparat el codi, prepararem les opcions de compilació que volem
gedit mozconfig
Hi hi escrivim aquestes opcions de compilació. Guardarem el document i el tanquem. Aquestes opcions són per compilar el firefox sense que reporti errors en cas de fallida, sense opcions pel desenvolupament, optimitzat, sense fer tests durant la compilació, amb el que estalviareu molt de temps, amb suport criptogràfic i usant el cairo com a motor gràfic. Podeu trobar més opcions de compilació al final d’aquesta web.
mk_add_options MOZ_CO_PROJECT=browser
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/ff-opt
ac_add_options --enable-application=browser
ac_add_options --disable-tests
ac_add_options --enable-optimize --disable-debug
ac_add_options --enable-default-toolkit=cairo-gtk2 --enable-system-cairo
ac_add_options --disable-crashreporter
ac_add_options --enable-crypto
Ara li diem on està el fitxer de configuració al sistema. Val la pena comentar que el símbol “~” en gnu/linux equival a escriure la ruta cap a la teva carpeta d’usuari, en el meu cas equivaldria a escriure “/home/guillem”
export MOZCONFIG=~/mozilla-1.9.1/mozconfig
I bé, ara ja només cal compilar-lo. Agafeu una tassa de te i mireu un capítol de lost. Tingueu present que necessitareu força memòria RAM per fer la compilació i una memòria lliure de 500 Mb al disc dur.
make -f client.mk build
Si teniu dos processadors, per exemple, podeu utilitzar-ne la potència compilant amb aquesta comanda. Noteu que per a dos processadors l’opció és “-j (N+1)”
make -j 3 -f client.mk build
Ara ja teniu el programa compilat, felicitats! El podeu provar anant al directori
cd ff-opt/dist/bin
I executant el firefox. Quan feu això assegureu-vos que no tingueu cap firefox obert, sinó només us obirarà una finestra més de la versio que estigueu fent servir.
./firefox
Ara només ens queda fer-ne l’executable independent de la resta de llibreries que hi ha a la carpeta mozzila-1.9.1, que ja deveu haver vist que ocupa quasi 500 Mb. Això ho farem amb l’orde següent.
cd mozilla-1.9.1/ff-opt/
make package
Ara haurem obtingut el programa executable en aquesta carpeta, llest per ser passat als vostres amics.
~/mozilla-1.9.1/ff-opt/dist/firefox-3.5.en-US.linux-i686.tar.bz2
Us el podeu instal·lar, per exemple, creant una carpeta per al vostre usuari que es digui “bin”, o a on més us agradi. A tall d’exemple
mkdir ~/bin
cp ~/mozilla-1.9.1/ff-opt/dist/firefox-3.5.en-US.linux-i686.tar.bz2 ~
tar -xvf ~/firefox-3.5.en-US.linux-i686.tar.bz2
mv ~/firefox ~/bin/firefox
Perquè quan crideu el firefox se us obri sempre el firefox 3.5 que acabeu de compilar i que l’heu ficat a la carpeta ~/bin
unlink /usr/bin/firefox
ln -s ~/bin/firefox/firefox /usr/bin/firefox
Ara que ja us funciona el Firefox 3.5, només és ens queda catalantizar-lo. Això ho farem un cop obert, anirem a aquesta web i ens instal·larem el paquet de traducció pel català. Un cop fet, reiniciarem el Firefox.
http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.5/linux-i686/xpi/ca.xpi
Ara si volem, podem optimitzar el firefox perquè navegui més ràpid, tal i com s’explica en aquest article.
Nota de l’autor pels més Geeks
Altres opcions que he pensat que també podrien estar bé són aquestes, encara que jo no ho he provat. Us recomano que les afegiu si heu aconseguit ja compilar-lo un cop, llavors us podeu dedicar a optimitzar-lo més al vostre gust. Aquestes opcions són per deshabilitar l’accessibilitat que suposo que no necessito, per deshabilitar el lector de feeds del firefox que tampoc utilitzo, el viso d’ajuda, qui l’utilitza?, els constrols parentals??, i els perfils que tampoc crec que utilitzi massa gent, i un nivell d’optimització superior, podeu provar també amb -O2.
--disable-accessibility
--disable-feeds
--disable-help-viewer
--disable-parental-controls
--disable-profile-modules
--disable-profilelocking
--disable-profilesharing
--enable-optimize=-O3
I segur que em deixo moltes coses, així que si en sabeu d’altres o en descobriu de noves, no dubteu en deixar-ho escrit als comentaris. 😉