Script para empacotamento do Firefox Beta no Debian


Nesta dica veremos uma modificação do script para empacotamento e instalação do Firefox no Debian, criado pelo colega Leandro Nkz.

Autor: Leandro

Modificado por: edps

Nesta dica veremos o download e empacotamento via script shell do Firefox Beta, o qual não pode ser incluído nos repositórios Debian por questão de licença.

Embora seja uma versão beta, a estabilidade do programa é muito boa, sua integração com extensões e plugins previamente instalados idem, então por que não testá-lo?

Caso vá usá-lo, convém remover a antiga versão do FF caso o mesmo esteja instalado.

O script.

#!/bin/bash
# Script de empacotamento para a última versão beta do Firefox em pt_BR.
# Baixa, descompacta e cria um pacote deb do Firefox.
# Criado por edps < https://edpsblog.wordpress.com >
# Modificado a partir do script de Leandro Nkz < http://brweatherproject.blogspot.com.br >
# Dica para instalação da versão estável do Firefox no Debian:
# https://edpsblog.wordpress.com/2013/05/29/firefox-script-para-empacotamento-e-instalacao-ao-modo-debian-2/
 
clear


## Verificando se o usuário é root.

if [ `whoami` = "root" ] ; then
 echo ""
 echo "Erro: Este script deve ser executado apenas como usuário normal."
 echo ""
 exit 1s
fi
 
## Checando dependências.

if [ -z `which curl` ] ; then
 clear
 echo ""
 echo "Este script necessita do pacote curl para funcionar.
Instale-o com o comando:
 
sudo apt-get install curl -y
"
exit 1
fi
 
if [ -z `which bzip2` ] ; then
 clear
 echo ""
 echo "Este script necessita do pacote bzip2 para funcionar.
Instale-o com o seguinte comando:

sudo apt-get install bzip2 -y
"
 exit 1
fi
  
## Definindo a arquitetura.

echo "Selecione a arquitetura do pacote:
 
1 = 32 bits
2 = 64 bits
"
echo -n "Resposta: " ; read ARCH
 
## Baixando pacote tar.bz2.

case $ARCH in
 "1")
    ARCH="i386"
    VERSION=`curl -s "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest-beta/linux-i686/pt-BR/" | grep tar.bz2 | head -n1 | cut -f2 -d'-' | cut -f1 -d'"'`
echo ""
    echo "Realizando o download da versão 32 bits..."
    wget -c -T0 -nv "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest-beta/linux-i686/pt-BR/firefox-$VERSION"
 
;;
 "2")
    ARCH="amd64"
    VERSION=`curl -s "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest-beta/linux-x86_64/pt-BR/" | grep tar.bz2 | head -n1 | cut -f2 -d'-' | cut -f1 -d'"'`
echo ""
    echo "Realizando o download da versão 64 bits..."
    wget -c -T0 -nv "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/latest-beta/linux-x86_64/pt-BR/firefox-$VERSION"
;;
 *)
    echo "Escolha 1 ou 2. Instalação abortada" && exit 1
;;
esac
  
## Criando diretórios.

echo ""
echo "Criando diretórios temporários..."
mkdir -p firefox/{opt,DEBIAN,usr/share/applications,usr/share/pixmaps,usr/bin}
 
## Extraindo e conferindo o arquivo baixado.

ERRO2(){
 clear
 echo "Falha ao baixar arquivo tar.bz2.
Verifique a sua conexão com a Internet e tente novamente."
 rm -r firefox
 exit 1
}
 
echo ""
echo "Extraindo..."
tar -xjf firefox-$VERSION -C firefox/opt 2>/dev/null || ERRO2
 
## Definindo versão.

VERSION=`echo $VERSION | sed 's/-//g ; s/.tar.bz2//g'`
 
## Criando o arquivo control.

echo ""
echo "Criando arquivo de controle..."

touch firefox/DEBIAN/control

echo "Package: firefox
Version: $VERSION
Architecture: $ARCH
Maintainer: Mozilla Foundation
Installed-Size: `du -s firefox/opt/firefox | cut -f1 -d'f' | sed 's/t//'`
Depends: libglib2.0-0 (>= 2.24.2), libgtk2.0-0 (>= 2.20.1), libpango1.0-0 (>= 1.28.3),libstdc++6 (>= 4.3)
Recommends: libdbus-1-3 (>= 1.2.24), libdbus-glib-1-2 (>= 0.88)
Provides: gnome-www-browser, x-www-browser
Section: web
Priority: optional
Description: Mozilla Firefox
 O Firefox oferece segurança e uma navegação web mais fácil. Possui uma interface de usuário familiar,
 recursos aprimorados de segurança, incluindo proteção contra roubo de identidade online,
 além de ser totalmente personalizável." > firefox/DEBIAN/control
 
## Criando atalhos de menus.

echo ""
echo "Criando atalhos de menus..."

echo "[Desktop Entry]
Version=$VERSION
Name=Firefox
Comment=Navegue na Internet
GenericName=Web Browser
Exec=/opt/firefox/firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=firefox
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;
StartupWMClass=Firefox
StartupNotify=true
X-Ayatana-Desktop-Shortcuts=NewWindow;
 
[NewWindow Shortcut Group]
Name=Abrir nova janela
Exec=firefox -new-window
TargetEnvironment=Unity" > firefox/usr/share/applications/firefox.desktop
 
# Tornando executável o lançador de menu.

chmod +x firefox/usr/share/applications/firefox.desktop
 
## Criação de ícones.

cp firefox/opt/firefox/browser/icons/mozicon128.png firefox/usr/share/pixmaps/firefox.png
  
## Script pós-instalação.
 
echo '#!/bin/sh

# postinst script.
 
set -e
 
echo "Definindo Firefox como browser padrão..."
update-alternatives --install /usr/bin/firefox firefox /opt/firefox/firefox 45
update-alternatives --install /usr/bin/x-www-browser x-www-browser /opt/firefox/firefox 210
update-alternatives --install /usr/bin/gnome-www-browser gnome-www-browser /opt/firefox/firefox 210
 
exit 0' > firefox/DEBIAN/postinst
chmod +x firefox/DEBIAN/postinst
 
## Script pré-remoção.

echo '#!/bin/sh
# prerm script
 
set -e
 
echo "Removendo Firefox como browser padrão..."
update-alternatives --remove gnome-www-browser /opt/firefox/firefox
update-alternatives --remove x-www-browser /opt/firefox/firefox
update-alternatives --remove firefox /opt/firefox/firefox
rm -rf /opt/firefox
 
exit 0' > firefox/DEBIAN/prerm
chmod +x firefox/DEBIAN/prerm
 
## Construção do pacote .deb.

echo ""
dpkg -b firefox firefox-$VERSION-$ARCH.deb
 
## Removendo diretórios e arquivos temporários.

rm -rf firefox
 
# FIM.

echo ""
echo "Criação do pacote deb completa!"
echo ""
echo "Agora, basta instalar o pacote deb criado com o seguinte comando:
 
sudo dpkg -i firefox-$VERSION-$ARCH.deb
"
exit 0

Copie o texto apresentado acima num novo arquivo e salve-o como firefox-beta.sh, em seguida dê-lhe permissão de execução, seja pelo modo gráfico (propriedades do arquivo) ou via shell:

$ chmod +x firefox-beta.sh

Em seguida basta executá-lo:

$ ./firefox-beta.sh

Ao término do empacotamento um arquivo .deb será criado no diretório corrente, instale-o com o dpkg ou gdebi. aqui usei o primeiro:

$ sudo dpkg -i firefox-22.0b1-i386.deb

Este slideshow necessita de JavaScript.

Downloads.

Abaixo seguem os links para download dos scripts para empacotamento do Firefox no Debian:

Firefox Stable: https://www.dropbox.com/s/zkfldm3nrniew7g/firefox.sh

Firefox Beta: https://www.dropbox.com/s/rgfhmnzlkwrn7hf/firefox-beta.sh

Espelho alternativo.

Em caso de problemas de download com o espelho oficial da Mozilla Software, modifique o endereço existente no script para os seguintes:

x86: http://mirror.rit.edu/mozilla/firefox/releases/latest/linux-i686/pt-BR/

x86_64: http://mirror.rit.edu/mozilla/firefox/releases/latest/linux-x86_64/pt-BR/

Firefox Stable.

Caso deseje utilizar a versão estável do Firefox, vejam a dica abaixo, na qual como dito, esta baseou-se:

Firefox – Script para empacotamento e instalação ao modo Debian

Iceweasel.

Se pelo contrário, se apenas quiser utilizar o Iceweasel mais atualizado, vejam a dica abaixo:

Iceweasel atualizado no Debian Wheezy (update)

Agradecimento.

Aqui vai meu agradecimento ao grande colega Leandro que vem aqui compartilhar seu conhecimento, um abraço brother!

Anúncios
Script para empacotamento do Firefox Beta no Debian

4 comentários sobre “Script para empacotamento do Firefox Beta no Debian

  1. Leandro Nkz disse:

    Eu que agradeço pela oportunidade.

    Sobre o Firefox, eu simplesmente não fico sem ele. Já tentei trocar de navegador, testar o Chrome, Opera, IE (brincadeira, rs)… mas sempre acabo voltando à ele.

    Mas tem um bug chato que até agora não consegui solucionar (sumiu com as atualizações, mas nesta última ele voltou): ao tentar imprimir algo de uma página web (ou utilizar qualquer opção do menu “Imprimir…”) o Firefox trava. Daí aparecem aquelas opções “Enviar relatório”, “Sair”, “Reiniciar”.

    Ocorre o mesmo com você, ou é só comigo?

    Curtir

    1. edps disse:

      Eu venho usando o Chromium com muita frequência, já que o Opera e o WordPress não se dão bem, é um tal de ter que dá um reload em páginas onde tenho que me autenticar que irrita!

      Não uso o FF nem o Iceweasel, os que usam são minha esposa e filhos. Fiz o teste da impressão e não ocorreu comigo erro algum.

      Curtir

  2. edps disse:

    Dica atualizada, adicionados os endereços de referência das dicas sobre o Firefox estável, do Iceweasel via Backports e de um espelho alternativo para download dos pacotes da Mozilla Software.

    Curtir

  3. Ótima dica! Funciona muito bem, e bem fácil como é o modo debian.
    Só uma dúvida, eu gostaria muito de remover o iceweasel, já vi 1000 posts que é só remover.
    Uso o debian wheezy, com gnome ou kde, porém ao tentar remover o apt diz que vai junto remover o gnome inteiro.

    Curtir

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s