Muito se tem falado da polémica decisão da Canonical de passar a instalar o Firefox no Ubuntu 22.04 exclusivamente ( pelo menos da forma oficial ) através da snap store.
A maioria dos utilizadores do Ubuntu não gosta muito desse formato.
A grande desvatagem do snap é o arranque dos programas que fica mais lento. Além disso não é tão flexivél como uma instalação via apt.
Mas como se trata de software open source, já existe três alternativas para instalar o Firefox sem o snap store.
A primeira é através do flatpak que embora seja mais flexível que o snaps também é um formato que compacta com o recurso ao OStree. Ou seja o arranque também pode ser mais lento.
A segunda é através de um repositório ppa da Mozilla. Mas até onde eu sei está dependente de voluntários para manter o repositório atualizado. Ou seja pode acontecer de novas versões do Firefox ficarem disponíveis primeiro no snap (que é oficial), e só depois aparecem no ppa, que depende de trabalho voluntário.
A terceira e última alternativa é instalar o Firefox baixando os binários Linux diretamente do site Mozilla.
Para isso criei um script para baixar e instalar o Firefox do site da Mozilla. A desvantagem do script é que o Firefox para ter updates automáticos, tem de ser instalado na pasta "$HOME". A pasta /opt/local seria a melhor opção, mas é necessário rodar o script com permição de root de cada vez que há uma atualização. Por isso optei pela pasta "$HOME" no script.
#!/bin/bash
# Install Firefox from "mozilla.org" builds in Ubuntu 22.04 LTS
# The fasted way to startup firefox on Ubuntu 22.04 LTS
# No snaps, no flatpak, no mounts, no fat multilocale Firefox, no squashfs OStree compressions :)
# This script creat a NEW user profile for Firefox, and don't mess width your older user profiles or snap user profiles
# João Sousa 2022
# tuxmind.blogspot.com
# Dependencies: uuidgen and wget
# sudo apt install uuid-runtime wget
BASEDIR="$(realpath "$(dirname "$0")")"
# Install firefox in your system language
# OSLANG="pt-PT"
OSLANG=`echo $LANG | cut -d. -f1 | tr _ -`
# Note:
# It's possible ( very low possibility ) that Firefox dont have a version for your system language
# In this case you need to edite "OSLANG" variable.
OS="linux64"
# Get firefox from mozilla.org page
wget -O /tmp/FirefoxSetup.tar.bz2 "https://download.mozilla.org/?product=firefox-latest&os=${OS}&lang=${OSLANG}"
# Creat a folder to hold firefox instalation
mkdir -p ${HOME}/apps-local
# Decompress the tar bz2 file to firefox instalation folder
tar -xvjf /tmp/FirefoxSetup.tar.bz2 -C ${HOME}/apps-local
# Create ~/bin folder in case not exist yet, and add path to .bashrc
mkdir -p "${HOME}/bin"
LINE='PATH="$HOME/bin:$PATH"'
FILE=/home/$USER/.bashrc
grep -q "$LINE" "$FILE" || echo "$LINE" >> "$FILE"
# Creat simbolic link to firefox
ln -s ${HOME}/apps-local/firefox/firefox ${HOME}/bin/firefox
# Creat NEW profile folder (this script don't mess width your old profiles or snap profiles)
if [ -e ${HOME}/.mozilla/firefox/profile-???????? ]; then
# Profile creat from this script exist
PROFILE=`ls ${HOME}/.mozilla/firefox/ | grep profile- | head -1`
else
# Option to creat unique ID for your profile if not exist
ID=`uuidgen | cut -d- -f1`
mkdir -p ${HOME}/.mozilla/firefox/profile-${ID}
PROFILE=`echo profile-${ID}`
fi
# Firefox version
VERSION=`cat ${HOME}/apps-local/firefox/application.ini | grep Version | cut -d= -f2 | head -1`
# Creat Mozilla-Firefox.desktop file
cat > ~/.local/share/applications/Mozilla-Firefox-build.desktop << EOF
[Desktop Entry]
Version=${VERSION}
Name=Firefox Mozilla
Comment=Web Browser Firefox Build from Mozilla
GenericName=Web Browser Firefox
Keywords=Internet;WWW;Browser;Web;Explorer
Exec=${HOME}/apps-local/firefox/firefox --profile ${HOME}/.mozilla/firefox/${PROFILE} %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=${HOME}/apps-local/firefox/browser/chrome/icons/default/default128.png
Categories=GNOME;GTK;Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;x-scheme-handler/chrome;video/webm;application/x-xpinstall;
StartupNotify=true
EOF
# Restart gnome shell. Mozilla-Firefox-build.desktop will apear in gnome menus
busctl --user call org.gnome.Shell /org/gnome/Shell org.gnome.Shell Eval s 'Meta.restart("Restarting…")'
Conclusão. Cada opção tem os seus prós e contras. Cabe a cada um decidir qual é a melhor. Se não quiser ter trabalho, a melhor opção é deixar o Firefox da snap store. O Firefox só vai ser lento no primeiro arranque. Mas terá de lidar com as outras desvantagens. Como por exemplo, não conseguir abrir ficheiros em discos que não estejam montados em /media ou /mnt. Com snap é tudo mais restrito.
Nenhum comentário:
Postar um comentário