Esta dica pode não ser tão original, mas é simples e muito útil (na minha opinião). Pois você mesmo pode criar um pacote de qualquer versão do
BrOffice,
OpenOffice e/ou
LibreOffice que esteja disponível nos repositórios do SlackBuilds.org, disponível em
slackbuilds.org.
Existem várias outras dicas e tutoriais de como instalar o BrOffice no
Slackware sem ter que criar um pacote único. Porém, empacotar este software tem como principais vantagens facilitar a instalação, remoção e/ou atualização do mesmo.
Vale ressaltar que não há compilação do código fonte do BrOffice nesta dica.
Vamos supor, como exemplo, que queremos empacotar e instalar o BrOffice 3.3.2 (que é composto pelo LibreOffice 3.3.2 e o pacote para o nosso idioma pt_BR) no Slackware 13.37 de 32 bits.
Vejamos os passos para a criação do pacote:
Selecionando e baixando os arquivos necessários
Vá ao site
slackbuilds.org. No campo de buscas, digite o nome do pacote desejado e escolha a versão do Slackware (no nosso caso, Libreoffice e 13.37, respectivamente). Ao efetuar a busca, devem aparecer opções como as mostradas na Figura 1, abaixo:
Figura 1: Resultados da busca por "Libreoffice" para "Slackware 13.37"
Primeiramente, selecionaremos o link para o Libreoffice. Na sequência veremos uma breve descrição sobre o LibreOffice e o SlackBuild em questão, além de diversos links relacionados. Os links que nos interessam são mostrados na Figura 2:
- link para o programa LibreOffice (arquivo LibO_3.3.2_Linux_x86_install-rpm_en-US.tar.gz)
- link para o SlackBuild (arquivo libreoffice.tar.gz )
Por enquanto, apenas baixe estes dois arquivos em um local de sua preferência.
Figura 2: Links para download dos arquivos necessários
Agora voltamos à página com os resultados da busca e selecionamos o link para o
libreoffice-langpack. Aqui baixaremos apenas o SlackBuild para o pacote do idioma em Português do Brasil (arquivo libreoffice-langpack.tar.gz). O pacote para o português pode ser baixado diretamente neste link:
LibO_3.3.3_Linux_x86_langpack-rpm_pt-BR.tar.gz. Se tiver que escolher outra arquitetura, vá à página de downloads,
libreoffice.org/download, do LibreOffice e escolha as melhores opções para você no campo mostrado na Figura 3:
Figura 3: Opções de arquitetura e idioma
Extraindo os SlackBuilds e colocando os arquivos nos lugares certos
Como o uso da linha de comando é praticamente inevitável* quando se utiliza um SlackBuild, vamos partir para isso desde a extração dos arquivos.
Abra um terminal (Konsole, Xterm ou outro que prefira) e acesse a pasta onde estão os arquivos baixados:
cd /caminho/para/a/pasta/
Em seguida, descompacte o arquivo libreoffice.tar.gz:
tar -zxvf libreoffice.tar.gz
Com isto, será criada a pasta libreoffice, com alguns arquivos no seu interior.
Copie agora o arquivo LibO_3.3.2_Linux_x86_install-rpm_en-US.tar.gz para a pasta libreoffice/:
cp LibO_3.3.2_Linux_x86_install-rpm_en-US.tar.gz libreoffice/
Extraia também o arquivo libreoffice-langpack.tar.gz e copie o arquivo LibO_3.3.2_Linux_x86_langpack-rpm_pt-BR.tar.gz para a pasta libreoffice-langpack/
tar -zxvf libreoffice-langpack.tar.gz
cp LibO_3.3.2_Linux_x86_langpack-rpm_pt-BR.tar.gz libreoffice-langpack/
Tudo pronto para o próximo passo.
*Na verdade, é possível fazer tudo sem
abrir um terminal para digitar comandos. Mas isto é assunto para uma outra dica (ou para comentários dos leitores :-D).
Preparar e executar os SlackBuilds e instalar os pacotes
Mude as permissões dos arquivos libreoffice.SlackBuild e libreoffice-langpack.SlackBuild tornando-os executáveis:
chmod +x libreoffice/libreoffice.SlackBuild
chmod +x libreoffice-langpack/libreoffice-langpack.SlackBuild
Podemos, então, executar os SlackBuilds. Começando pelo libreoffice.SlackBuild (apenas por opção, não por necessidade).
Acesse a pasta libreoffice/:
cd libreoffice/
Como alguns comandos contidos no SlackBuild necessitam de privilégios de superusuário, tais scripts devem ser executados como root:
# ./libreoffice.SlackBuild
Se tudo estiver certo no libreoffice.SlackBuild, "veremos" o pacote sendo criado e, ao final, será exibida a mensagem:
Slackware package /tmp/libreoffice-3.3.2_en_US-i586-1_SBo.tgz created.
Vamos partir agora para o pacote de idioma. Do diretório onde estamos, acessamos a pasta onde está o libreoffice-langpack.SlackBuild:
# cd ../libreoffice-langpack/
E executamos o script da seguinte maneira:
# LOLANG=pt-BR ALIEN=yes ./libreoffice-langpack.SlackBuild
Ao final do processo, receberemos a mensagem:
Slackware package /tmp/libreoffice-langpack-3.3.2_pt_BR-i586-1_SBo.tgz created.
Agora é só instalar os pacotes criados:
# installpkg tmp/libreoffice-*.t?z
E teremos o BrOffice instalado no nosso Slackware 13.37.
Dicas extras
- Você pode alterar os SlackBuilds de acordo com suas necessidades e conhecimentos;
- Se você optou por outra arquitetura, altere, nos comandos onde aparece x86, para a arquitetura correta. Exemplo:
cp LibO_3.3.2_Linux_x86-64_install-rpm_en-US.tar.gz libreoffice/
.
- Do Slackware 13.0 em diante, podemos empacotar utilizando o formato .txz ao invés de .tgz, como vem nos SlackBuilds que utilizamos. Para isto, basta editar os scripts, alterando a variável PKGTYPE de tgz para txz na linha que começa com /sbin/makepkg (geralmente a última linha);
- Para a criação de pacotes usando outras versões do LibreOffice é necessário alterar o número na variável VERSION, no início do script.
- No caso específico do LibreOffice, é necessário prestar atenção na linha referente ao freedesktop-menus. Nos scripts mais atuais, o comando nesta linha está escrito da seguinte maneira:
mv desktop-integration/libreoffice$SRCSHORT-freedesktop-menus-$SRCBUILD.noarch.rpm
Note as variáveis $SRCSHORT e $SRCBUILD nesta linha. Elas também devem ser alteradas, no início do script, se quisermos criar um pacote com uma versão diferente do LibreOffice 3.3.2.
O número da variável $SRCSHORT costuma ser composto dos dois primeiros números da versão do LibreOffice (3.3, neste nosso exemplo). Já o número da variável $SRCBUILD não está explícito no nome do pacote do LibreOffice e a melhor maneira de descobri-lo é descompactar o arquivo LibO_{número_da_versão}_Linux_{arquitetura}_install-rpm_en-US.tar.gz, navegar pela pasta criada até o diretório RPMS/desktop-integration/ e ler os números que estão entre as palavras menus- e .noarch nos nomes dos arquivos contidos na pasta.
No nosso exemplo temos: libreoffice3.3-freedesktop-menus-3.3-202.noarch.rpm. Logo, o número utilizado na variável $SRCBUILD é 0 3.3-202. Nos scripts mais antigos disponíveis no SlackBuilds.org, o pessoal não usava as variáveis $SRCSHORT e $SRCBUILD no comando da linha referente ao freedesktop-menus, mas escreviam explicitamente o número da versão utilizada.
Espero que esta seja tão útil para vocês quanto foi pra mim e que seja um estímulo à criação de pacotes para Slackware dos softwares que vem distribuídos em forma binária.
Um abraço.