mozilla

Mozilla Firefox în Debian

Articol scris de
Malea Raul Nicolae

O problemă comună în rândul utilizatorilor sistemului de operare Debian se pare că este înlocuirea pachetului Iceweasel cu ultima versiune de Mozilla Firefox. Am ajuns la această concluzie după ce am fost abordat pe această temă în repetate rânduri, drept pentru care voi prezenta în continuare un mic ghid, care sper să vă ajute la efectuarea tranziției dintre cele două navigatoare de internet.

Am două precizări importante înainte de a continua, și pentru a elimina unele confuzii ușor de făcut:

  • am toată considerația pentru munca administratorilor de pachete din depozitele Debian. Au făcut întotdeauna o treabă excelentă, și nu mă pot plânge de calitatea sau cantitatea lor (deși sunt destui care o fac). Kudos, glandium, for taking your time to integrate the Mozilla-related packages into Debian!
  • nu sunt un maniac al versiunilor. Nu am nicio intenție de a rula ultimele versiuni ale programelor, în afara cazurilor în care le testez sau depind de funcționalități specifice lor. Aș putea trăi în oldstable pentru o săptămână de lucru, fără să am mari probleme de acomodare 🙂

Atenție: exemplele de mai jos sunt construite utilizând „sudo”, dar dacă „sudo” nu este configurat pe sistem, toate comenzile care încep astfel vor trebui executate ca „root”.

1. Primul lucru de care avem nevoie este cea mai recentă versiune stabilă a Mozilla Firefox:

wget http://releases.mozilla.org/pub/mozilla.org/firefox/releases/latest/linux-i686/en-US/firefox-15.0.1.tar.bz2

2. Arhiva astfel obținută va fi dezarhivată:

tar -xf firefox-15.0.1.tar.bz2

3. …și mutată într-o locație tipică programelor adiționale, de exemplu /opt

sudo mv firefox/ /opt
cd /opt/firefox/

4. Pentru a nu avea probleme la actualizări, recomand trecerea directorului nou creat în proprietatea utilizatorului obișnuit de lucru, pe mașinile cu un singur utilizator de mediu grafic, sau a grupului comun utilizatorilor, pe sistemele unde este cazul. Voi oferi un exemplu care le combină pe ambele:

sudo chown victor:users . -R

Opțional, dacă setarea se face pe grup:

chmod 774 . -R

5. Acum avem Firefox pe sistem, mai trebuie puțină grijă de extensii (voi păstra locația implicită a Iceweasel pentru asta):

ln -s /usr/lib/mozilla/plugins /opt/firefox/plugins

6. Pentru a înlocui comanda care lansează Iceweasel cu Firefox, am mutat-o pe cea veche:

sudo mv /usr/bin/firefox /usr/bin/firefox-iceweasel

7. …și am creat-o pe cea nouă:

sudo ln -s /opt/firefox/firefox /usr/bin/firefox

8. Sistemul mai are câteva mici nevoi pentru a accepta liniștit schimbarea. Întâi, o intrare .desktop:

sudo nano /usr/share/applications/firefox.desktop

și lipit următorul conținut:

[Desktop Entry]
Name=Firefox
GenericName=Web Browser
Comment=Mozilla Firefox
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’

ATENȚIE: Numele pictogramei se poate schimba de la o versiune la alta, de verificat periodic în caz că dispare brusc 🙂

8′. La fiecare actualizare de sistem, Iceweasel va vrea să rescrie legătura din /usr/bin/firefox cu o legătură către el însuși. De aceea, de moment ce nu mai suntem interesați de Iceweasel, vom instrui aptitude să oprească actualizările pentru acesta(pentru asta va fi nevoie de root, probabil):

echo „iceweasel hold” | dpkg –set-selections

9. În continuare, am folosit update-alternatives pentru a obține efectul de navigator implicit pe sistem:

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

Am făcut pașii de mai sus pe un sistem pe 32 de biți, după cum se poate vedea din calea aleasă pentru descărcare. Ar fi interesant dacă cineva mi-ar trimite o adăugire și pentru 64 de biți (e foarte posibil să fie ceva diferit la extensii sau ia32-libs), pentru a acoperi cele mai importante arhitecturi.

Pentru a ușura toate etapele, am compus un script simplu, care execută tot. Sunt două opțiuni de utilizare:

  • cu „sudo”, caz în care nu se va alege dezactivarea actualizărilor. Pe sistemul meu a fost nevoie de „root”, altfel primeam:
  • dpkg: error: operation requires read/write access to dpkg status area
  • de sub contul de „root”, în caz contrar

Codul este:

#!/bin/bash

echo -n „Introdu numele utilizatorului care va folosi Mozilla Firefox [$(whoami)]: ”
read USER
echo -n „Introdu grupul care va utiliza Firefox [$(id -gn)]: ”
read GROUP
echo -n „URL-ul arhivei pentru instalare: ”
read URL
echo -n „Vrei să blochezi actualizările Iceweasel (recomandat) – doar dacă ești logat ca root [D/n] ”
read DPKG
if [ -n „$DPKG” ] || DPKG=’Y’

if [ -z „$URL” ]; then
URL=”http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/linux-i686/en-US/firefox-15.0.1.tar.bz2″
else
#if [ -n „$(curl -sr 0-1 $URL | grep ‘404’)” || $URL =~ ‘[.]*firefox-([0-9\.-_]*).tar.bz2’ ]; then
if [ -n „$(curl -sr 0-1 $URL | grep ‘404’)” ]; then
echo ‘Eroare: URL nevalid!’ ;
exit;
else
echo ‘URL valid, continuă…’
fi
fi

echo ‘==========[ Pasul 1/3: Descărcarea navigatorului Mozilla Firefox ]==========’
curl $URL | tar -jxv

echo ‘==========[ Pasul 2/3: Copierea navigatorului Mozilla Firefox În sistem ]==========’

mv firefox/ /opt

if [ -z „$USER” ]; then
USER=$(id -un)
fi

if [ -z „$GROUP” ]; then
GROUP=$(id -gn)
chown $USER:$GROUP /opt/firefox/ -R
chmod 754 /opt/firefox/ -R
else
chown $USER:$GROUP /opt/firefox/ -R
chmod 774 /opt/firefox/ -R
fi

echo ‘==========[ Pasul 3/3: Crearea legăturilor în sistem ]==========’

ln -s /usr/lib/mozilla/plugins /opt/firefox/plugins
mv /usr/bin/firefox /usr/bin/firefox-iceweasel
ln -sf /opt/firefox/firefox /usr/bin/firefox
echo ‘[Desktop Entry]
Name=Firefox
GenericName=Web Browser
Comment=Mozilla Firefox
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

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

if [ „$DPKG” = „Y” ] ; then
echo „iceweasel hold” | dpkg –set-selections
else
echo „Atenție: pentru a dezactiva actualizările Iceweasel, execută ca root comanda:”
echo ‘echo „iceweasel hold” | dpkg –set-selections”‘
fi

echo ‘==========[ Instalarea a reușit! Mozilla Firefox este navigatorul implicit și se află în meniul cu aplicații de rețea ]==========’

Cu câteva cunoștințe minime de GNU Bash, sau cu ceva intuiție, codul se poate altera după plac pentru a ajunge la efectele dorite fără a da prea multe comenzi de mână.

Acesta trebuie copiat într-o locație unde utilizatorul curent are drepturi de scriere, apoi făcut executabil și rulat — presupunând că fișierul se numește install_mozilla-ff.sh, ar trebui:

chmod +x install_mozilla-ff.sh
./install_mozilla-ff.sh

Notă: Acest articol liber a apărut pentru prima dată în jurnalul lui Victor Nițu din comunitatea Ceata, jurnale.ceata.org/~vnitu. Codul din acest articol este licențiat sub GPLv3+.

Acest articol liber a fost preluat de pe saitul revistei fii-liber.ro.

Ți-a plăcut? Partajează acest articol

  1. Creation

    Pentru un ghid așa de complex este explicat destul de bine, felicitări lui Victor pentru redactarea lui.

android ceata Comunitate concurs contribuie Contribuții download Evenimente Firefox Firefox OS html5 lansare Lansări Mozilla Mozilla România Personas Review Testday Thunderbird Știri